From 7c50e4ce6be2929057b61afb9ef1ee7a61beb6f6 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 16 七月 2025 11:49:12 +0800 Subject: [PATCH] 前端 --- admin/src/components/business/OperaOrderDetailWindow.vue | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 154 insertions(+), 5 deletions(-) diff --git a/admin/src/components/business/OperaOrderDetailWindow.vue b/admin/src/components/business/OperaOrderDetailWindow.vue index 36eb0f9..f01963f 100644 --- a/admin/src/components/business/OperaOrderDetailWindow.vue +++ b/admin/src/components/business/OperaOrderDetailWindow.vue @@ -11,9 +11,10 @@ <div class="renzheng" > <div class="info" > <span class="m10">璁㈠崟淇℃伅</span> - <el-tag type="primary" class="ml10 tag2" v-if="info.status == 0||info.status == 1||info.status == 3">{{ info.statusName }}</el-tag> + <el-tag type="primary" class="ml10 tag2" v-if="info.status == 0||info.status == 1||info.status == 2||info.status == 3">{{ info.statusName }}</el-tag> <el-tag type="success" class="ml10 tag2" v-if="info.status == 4">{{ info.statusName }}</el-tag> <el-tag type="danger" class="ml10 tag2" v-if="info.status == 99">{{ info.statusName }}</el-tag> + <div style="display: inline-block;float: right;font-size: 12px"><el-button icon="el-icon-timer" type="primary" @click="showLogList" >璁㈠崟娴佽浆鏃ュ織</el-button></div> </div> <div class="detail" > <div class="line"> @@ -82,7 +83,7 @@ <div class="line" v-if="info.multifileList && info.multifileList.length>0"> <div class="cont"> <template v-if="info.multifileList && info.multifileList.length>0"> - <div v-for="item in info.multifileList" style="display: inline-block" :key="item"> + <div v-for="item in info.multifileList" style="display: inline-block" :key="'aaa'+item.id"> <el-image v-if="item.fileurlFull" style="width: 50px; height: 50px; margin-right: 10px" :src="item.fileurlFull" :preview-src-list="[info.fileurlFull]"> </el-image> @@ -95,23 +96,152 @@ <div style="margin-top: 20px"> <span class="label"> 瀹℃牳淇℃伅锛�</span> <span class="txt">{{info.auditRemark || '' }}</span></div> </div> </div> + <div class="detail" v-if="info.type==1"> + <div class="line"> + <div class="cont"><span class="label"> 璁㈠崟绫诲瀷锛�</span> <span class="txt">{{(info.type==0?'鐢ㄥ伐鍗�':(info.type==1?'璐ц繍鍗�':'璁㈠崟鍗�')) }}</span></div> + <div class="cont"><span class="label">杞﹁締锛�</span> <span class="txt">{{info.categoryName || ''}}</span></div> + <div class="cont"><span class="label">鐢ㄨ溅鏃堕棿锛�</span> <span class="txt">{{info.startDate|| '' }}-{{info.endDate|| '' }}</span></div> + </div> + <div class="line"> + <div class="cont" > <span class="label"> 鍦板潃淇℃伅锛�</span> <span class="label" v-if="!wayList || wayList.length==0">-</span> </div> + </div> + <div class="line" v-if="wayList && wayList.length>0"> + <div class="cont" style="padding-left: 40px;background-color: #e4ecfe"> + <div v-for="(item,index) in wayList" style="display: block;margin: 10px" :key="'bbb'+index"> + <span v-if="index == 0">鐢ㄨ溅璧风偣锛歿{item.location || ''}}</span> + <span v-if="index >0 && index < wayList.length-1">閫旂粡鍦扮偣锛歿{item.location || ''}}</span> + <span v-if="index == wayList.length-1">鐢ㄨ溅缁堢偣锛歿{item.location || ''}}</span> + </div> + </div> + </div> + <div class="line"> + <div class="cont"><span class="label">鐢ㄥ伐澶╂暟锛�</span><span class="txt">{{info.totalDays || 0 }}</span></div> + <div class="cont"><span class="label">杩愯緭閲嶉噺/鏁伴噺锛�</span> <span class="txt">{{info.priceNum1 || '' }}鏂�</span></div> + <div class="cont"><span class="label">璐圭敤鏍囧噯锛�</span><span class="txt">{{((info.price||0)/100).toFixed(2) }}{{info.priceUnit || '' }}</span></div> + </div> + <div class="line"> + <div class="cont"><span class="label">棰勪及鎬昏垂鐢細</span><span class="txt yellowbtn">{{((info.estimatedAccount||0)/100).toFixed(2) }}鍏�</span></div> + </div> + <div class="line"> + <div class="cont" ><span class="label">闇�姹傝ˉ鍏咃細</span><span class="txt">{{info.supplement || '' }}</span></div> + </div> + <div class="line"> + <div class="cont"> + <span class="label">鍥剧墖锛�</span> + <span class="txt" v-if="!info.multifileList || info.multifileList.length ==0">鏃�</span> + </div> + </div> + <div class="line" v-if="info.multifileList && info.multifileList.length>0"> + <div class="cont"> + <template v-if="info.multifileList && info.multifileList.length>0"> + <div v-for="item in info.multifileList" style="display: inline-block" :key="item.id"> + <el-image v-if="item.fileurlFull" style="width: 50px; height: 50px; margin-right: 10px" :src="item.fileurlFull" + :preview-src-list="[info.fileurlFull]"> + </el-image> + </div> + </template> + </div> + </div> + </div> + <div class="detail" v-if="info.type==2"> + <div class="line"> + <div class="cont"><span class="label">璁㈠崟绫诲瀷锛�</span> <span class="txt">{{(info.type==0?'鐢ㄥ伐鍗�':(info.type==1?'璐ц繍鍗�':'璁㈠崟鍗�')) }}</span></div> + <div class="cont"><span class="label">鐢ㄩ鏃堕棿锛�</span><span class="txt">{{info.startDate|| '' }}-{{info.endDate|| '' }}</span></div> + <div class="cont"><span class="label">鐢ㄩ澶╂暟锛�</span><span class="txt">{{info.totalDays || 0 }}</span></div> + </div> + <div class="line"> + <div class="cont"><span class="label">鐢ㄩ鍦扮偣锛�</span><span class="txt">{{info.location || '' }}</span></div> + <div class="cont" style="flex: 2"><span class="label" >椁愭爣鍜屼唤鏁帮細</span><span class="txt">{{info.locationRemark || '' }}</span></div> + </div> + <div class="line"> + <div class="cont"><span class="label">鍦扮偣鎻忚堪锛�</span><span class="txt">{{info.locationRemark || '' }}</span></div> + </div> + <div class="line"> + <div class="cont" ><span class="label">闇�姹傛弿杩帮細</span><span class="txt">{{info.supplement || '' }}</span></div> + </div> + <div class="line"> + <div class="cont"> + <span class="label">鍥剧墖锛�</span> + <span class="txt" v-if="!info.multifileList || info.multifileList.length ==0">鏃�</span> + </div> + </div> + <div class="line" v-if="info.multifileList && info.multifileList.length>0"> + <div class="cont"> + <template v-if="info.multifileList && info.multifileList.length>0"> + <div v-for="item in info.multifileList" style="display: inline-block" :key="'aaa'+item.id"> + <el-image v-if="item.fileurlFull" style="width: 50px; height: 50px; margin-right: 10px" :src="item.fileurlFull" + :preview-src-list="[info.fileurlFull]"> + </el-image> + </div> + </template> + </div> + </div> + </div> + </div> + <div class="renzheng" > + <div class="info" > + <span class="m10">鍙戝崟鏂逛俊鎭�</span> + </div> + <div class="detail" > + <div class="line"> + <div class="cont"><span class="label">鏄电О锛�</span> <span class="txt">{{ info.releaseName||'' }}</span></div> + <div class="cont" ><span class="label">鑱旂郴鏂瑰紡锛�</span> <span class="txt ">{{ info.releasePhone||'' }}</span></div> + <div class="cont" ><span class="label">鍏朵粬鑱旂郴浜猴細</span> <span class="txt ">{{ info.linkName||'鍖垮悕' }}-{{ info.linkPhone||'鏈缃�' }}</span></div> + </div> + </div> + </div> + <div class="renzheng" > + <div class="info" > + <span class="m10">鎺ュ崟鏂逛俊鎭�</span> + </div> + <div class="detail" > + <div class="line"> + <div class="cont"><span class="label">濮撳悕/鍗曚綅锛�</span> <span class="txt">{{ info.acceptName||'' }}</span></div> + <div class="cont" style="flex: 2"><span class="label">鑱旂郴鏂瑰紡锛�</span> <span class="txt ">{{ info.acceptPhone||'' }}</span></div> + </div> + </div> + </div> + <div class="renzheng" > + <div class="info" > + <span class="m10">璇勪环淇℃伅</span> + </div> + <div class="detail" > + <div class="line"> + <div class="cont"><span class="label">{{info.commentType ==1 ?'绯荤粺鑷姩璇勪环':'鍙戝崟鏂硅瘎浠�'}}</span> <span class="txt">{{ info.commentTime}}</span></div> + </div> + <div class="line"> + <div class="cont"> + <el-button class="label" :class="getScoreLevel(1)" style="border: none;cursor: default" icon="el-icon-star-on"></el-button> + <el-button class="label" :class="getScoreLevel(2)" style="border: grey;cursor: default" icon="el-icon-star-on"></el-button> + <el-button class="label" :class="getScoreLevel(3)" style="border: grey;cursor: default" icon="el-icon-star-on"></el-button> + <el-button class="label" :class="getScoreLevel(4)" style="border: grey;cursor: default" icon="el-icon-star-on"></el-button> + <el-button class="label" :class="getScoreLevel(5)" style="border: grey;cursor: default" icon="el-icon-star-on"></el-button> + </div> + </div> + <div class="line"> + <div class="cont"><span class="label">璇勪环鍐呭锛�</span> <span class="txt">{{ info.commentInfo || '-'}}</span></div> + </div> + </div> </div> </div> + <orderProgress ref ='orderProgress'></orderProgress> </GlobalWindow> </template> <script> import GlobalWindow from '@/components/common/GlobalWindow' import BaseOpera from '@/components/base/BaseOpera' -import { getById,cancel } from '@/api/business/orders' +import orderProgress from '@/components/business/orderProgress' +import { getById, cancel } from '@/api/business/orders' export default { components: { - GlobalWindow + GlobalWindow, orderProgress }, extends: BaseOpera, data () { return { id: '', + wayList:[], info: {}, loading: false } @@ -122,6 +252,7 @@ this.visible = true this.tableData2 = [] this.id = row.id + this.wayList=[] this.getData() }, getData () { @@ -129,11 +260,23 @@ .then(res => { this.info = res this.visible = true - console.log(this.info) + if(this.info.wayInfo){ + this.wayList = JSON.parse(this.info.wayInfo) + } + console.log(this.wayList) }) }, close () { + }, + showLogList () { + this.$refs.orderProgress.open('璁㈠崟娴佽浆鏃ュ織', this.info.orderLogList||[]) + }, + getScoreLevel (num) { + if (this.info.commentLevel && this.info.commentLevel >= num) { + return 'staron' + } + return 'staroff' }, checkDo (status) { console.log(this.$refs.formCheck.length) @@ -178,6 +321,12 @@ z-index: 999; padding: 16px; } +.staroff{ + color: #8c939d !important; +} +.staron{ + color: #ff4d00 !important; +} .renzheng{ margin: 0px 0px 50px 20px; width: calc(100% - 60px); -- Gitblit v1.9.3