From bd6229ebd9cb543a22944ecb1142fad92b675dce Mon Sep 17 00:00:00 2001 From: rk <94314517@qq.com> Date: 星期一, 13 十月 2025 14:26:25 +0800 Subject: [PATCH] bug 修复 --- admin/src/components/business/OperaMemberDetailWindow.vue | 322 +++++++++++++++++++++++++++-------------------------- 1 files changed, 165 insertions(+), 157 deletions(-) diff --git a/admin/src/components/business/OperaMemberDetailWindow.vue b/admin/src/components/business/OperaMemberDetailWindow.vue index b524198..7f96edc 100644 --- a/admin/src/components/business/OperaMemberDetailWindow.vue +++ b/admin/src/components/business/OperaMemberDetailWindow.vue @@ -7,12 +7,12 @@ :confirm-working="isWorking" @close="close" @confirm="confirm"> - <div style="width: 100%; position: sticky;padding: 12px 16px; top: 0px; left: 0; z-index: 999; background-color: white"> + <div style="width: calc(100% - 32px); position: sticky;padding: 12px 16px; top: 0px; left: 0; z-index: 999; background-color: white"> <div style="display: flex;background: #e4ecfe;padding: 20px"> <div style="width: 60px;"> <div class="home_title" v-if="info"> - <el-image v-if="info.imgurlFull" style="width: 50px; height: 50px;border-radius: 50%;margin-right: 10px" :src="info.imgurlFull" - :preview-src-list="[info.imgurlFull]"> + <el-image v-if="info.fullCoverImage" style="width: 50px; height: 50px;border-radius: 50%;margin-right: 10px" :src="info.fullCoverImage" + :preview-src-list="[info.fullCoverImage]"> </el-image> <el-image v-else style="width: 50px; height: 50px;border-radius: 50%;margin-right: 10px" src="avatar/man.png" > </el-image> @@ -21,8 +21,7 @@ <div style="width: calc(100% - 60px);"> <div class="home_title" v-if="info"> <div class="left"> - <span class="m10">鏄电О锛歿{info.nickName }}</span> - <span class="mr10 bluebtn" :title="'濮撳悕锛�'+(info.name||'鏈缃鍚�')" >({{(info.name||'鏈缃鍚�') }})</span> + <span class="m10">鏄电О锛歿{info.nickName }} <span class="ml10 bluebtn" :title="'濮撳悕锛�'+(info.name||'鏈缃鍚�')" >({{(info.name||'鏈缃鍚�') }})</span></span> <el-tag type="primary" class="mr10 tag1">鍙戝崟鏂�</el-tag> <el-tag type="success" class="mr10 tag1" v-if="info.workerIdentity == 2 || info.driverIdentity == 2 || info.chefIdentity == 2">鎺ュ崟鏂�</el-tag> </div> @@ -30,7 +29,7 @@ <div class="remark" v-if="info"> <el-button class="bluebtn" icon="el-icon-phone" title="鎵嬫満鍙�"> {{info.telephone||'鏈缃�' }}</el-button> <el-button class="yellowbtn" icon="el-icon-star-on" title="骞冲潎璇勫垎"> {{info.score||'0' }}鍒�</el-button> - <el-button class="redbtn" icon="el-icon-coin" title="璐﹀彿浣欓(鍏冿級"> {{(info.amount||0).toFixed(2)}}鍏�</el-button> + <el-button class="redbtn" icon="el-icon-coin" title="璐﹀彿浣欓(鍏冿級"> {{((info.amount||0)/100).toFixed(2)}}鍏�</el-button> </div> </div> </div> @@ -83,7 +82,11 @@ </el-table-column> <el-table-column prop="createTime" label="鏀舵敮鏃堕棿" min-width="150px" align="center"></el-table-column> <el-table-column prop="typeName" label="涓氬姟绫诲瀷" min-width="100px" align="center"></el-table-column> - <el-table-column prop="transactionNo" label="璁㈠崟/浜ゆ槗鍙�" min-width="100px" align="center"> </el-table-column> + <el-table-column prop="transactionNo" label="璁㈠崟/浜ゆ槗鍙�" min-width="100px" align="center"> + <template slot-scope="{row}"> + <span >{{ row.transactionNo }}</span> + </template> + </el-table-column> </el-table> <el-pagination @current-change="handleCurrentChange0" @@ -93,122 +96,93 @@ :total="tableData.total"> </el-pagination> </div> - <div class="main" v-if="activeTabs === 1 && info"> + <div class="main" v-if="activeTabs === 1 && info"> <el-radio-group v-model="type" @change="changeType" style="margin-bottom: 20px;"> <el-radio-button :label="0">鏀跺埌鐨勮瘎浠�</el-radio-button> <el-radio-button :label="1">鍙戝竷鐨勮瘎浠�</el-radio-button> </el-radio-group> <el-table - :data="tableData" - border - v-loading="loading" - style="width: 100%"> - <el-table-column - width="150" - label="璐﹀崟缂栧彿"> - </el-table-column> - <el-table-column - label="璐圭敤绫诲瀷"> - </el-table-column> - <el-table-column - prop="totleFee" - label="璐﹀崟閲戦"> - </el-table-column> - <el-table-column - :key="Date.now()" - prop="receivableFee" - :label="`搴�${type === 0 ? '鏀�' : '浠�'}閲戦`"> - </el-table-column> - <el-table-column - prop="actReceivableFee" - :label="`瀹�${type === 0 ? '鏀�' : '浠�'}閲戦`"> - </el-table-column> - <el-table-column - :label="`闇�${type === 0 ? '鏀�' : '浠�'}閲戦`"> + v-loading="isWorking.search" + :data="tableData1.records" + stripe + > + <el-table-column prop="commentTime" label="璇勪环鏃堕棿" min-width="150px" align="center"> <template slot-scope="{row}"> - <template v-if="type === 0"> - <el-tag type="success" v-if="row.needReceivableFee > 0">鏀�</el-tag> - <el-tag type="warning" v-else-if="row.needReceivableFee < 0">浠�</el-tag> - </template> - <template v-else> - <el-tag type="warning" v-if="row.needReceivableFee !== 0">浠�</el-tag> - </template> - <span style="margin-left: 10px;">{{Math.abs(row.needReceivableFee)}}</span> + <span >{{ row.commentTime }}</span> </template> </el-table-column> - <el-table-column - label="璐﹀崟鏉ユ簮"> + <el-table-column prop="commentLevel" label="璇勫垎" width="120px" align="center"> <template slot-scope="{row}"> - <span v-if="row.type === 0">鍚堝悓璐﹀崟</span> - <span v-else>鑷缓璐﹀崟</span> + <span class="yellowbtn">{{ row.commentLevel || 0 }}鍒�</span> </template> </el-table-column> - <el-table-column - width="200" - label="璁¤垂鍛ㄦ湡"> + <el-table-column prop="commentInfo" label="璇勪环鍐呭" min-width="100px" align="center"></el-table-column> + <el-table-column prop="code" label="璁㈠崟鍙�" min-width="100px" align="center"> </el-table-column> + <el-table-column prop="type" label="璁㈠崟绫诲瀷" min-width="100px" align="center"> <template slot-scope="{row}"> - {{ row.startDate }} ~ {{ row.endDate }} + <span v-if="row.type ==0" >鐢ㄥ伐鍗� + <span v-if="row.workType ==0">/閲囨憳宸�</span> + <span v-if="row.workType ==1">/鍒嗘嫞宸�</span> + <span v-if="row.workType ==2">/鍖呰宸�</span> + </span> + <span v-if="row.type ==1" >杩愯揣鍗�</span> + <span v-if="row.type ==2" >璁㈤鍗�</span> </template> - </el-table-column> - <el-table-column - prop="planPayDate" - label="搴旀敹鏃ユ湡"> - </el-table-column> - <el-table-column - label="鏄惁閫炬湡"> - </el-table-column> - <el-table-column - fixed="right" - label="鐘舵��"> </el-table-column> </el-table> <el-pagination - @size-change="handleSizeChange" - @current-change="handleCurrentChange" - :current-page="page" - :page-sizes="[10, 15, 20, 25]" - :page-size="pageSize" - layout="total, sizes, prev, pager, next, jumper" - :total="total"> + @current-change="handleCurrentChange0" + :current-page="page1" + :page-size="pageSize" + layout="total, prev, pager, next, jumper" + :total="tableData1.total"> </el-pagination> </div> <div class="main" v-if="activeTabs === 2 && info"> - <div class="title">鎿嶄綔璁板綍</div> - <el-table - :data="info.logList" - border - style="width: 100%"> - <el-table-column - :key="Date.now()" - width="200" - prop="param1" - label="鎿嶄綔浜�"> - </el-table-column> - <el-table-column - :key="Date.now()" - width="200" - prop="createDate" - label="鎿嶄綔鏃堕棿"> - </el-table-column> - <el-table-column - :key="Date.now()" - width="150" - label="鎿嶄綔"> - <template slot-scope="{row}"> - <span v-if="row.objType === 0">宸ュ崟鍒涘缓</span> - <span v-if="row.objType === 1">鎸囨淳</span> - <span v-if="row.objType === 2">澶勭悊</span> - <span v-if="row.objType === 3">鍚堝悓鍒涘缓</span> - <span v-if="row.objType === 4">鍚堝悓鍙樻洿</span> - <span v-if="row.objType === 5">鍚堝悓閫�绉�</span> - </template> - </el-table-column> - <el-table-column - :key="Date.now()" - prop="content" - label="鎿嶄綔鍐呭"> - </el-table-column> - </el-table> + <div class="renzheng" v-for="item in tableData2"> + <div class="info" > + <span class="m10" v-if="item.type ==0">鐢ㄥ伐璁よ瘉</span> + <span class="m10" v-if="item.type ==1">璐ц繍璁よ瘉</span> + <span class="m10" v-if="item.type ==2">渚涢璁よ瘉</span> + <el-tag type="primary" class="ml10 tag2" v-if="item.auditStatus == 1">鐢宠涓�</el-tag> + <el-tag type="success" class="ml10 tag2" v-if="item.auditStatus == 2">璁よ瘉閫氳繃</el-tag> + <el-tag type="danger" class="ml10 tag2" v-if="item.auditStatus == 3">璁よ瘉澶辫触</el-tag> + </div> + <div class="detail" > + <div class="line"> + <span class="label"> 璁よ瘉绫诲瀷锛�</span> <span class="txt">{{item.authType == 0? '涓汉':'浼佷笟' }}</span> + <span class="label"> 鑱旂郴浜猴細</span> <span class="txt">{{item.linkName || '' }}</span> + <span class="label"> 鑱旂郴鏂瑰紡锛�</span> <span class="txt">{{item.telephone || '' }}</span> + <span class="label"> 鐢宠鏃堕棿锛�</span> <span class="txt">{{item.createTime || '' }}</span> + </div> + <template v-if="item.authType ==1"> + <div class="line"> + <span class="label">鎺ュ崟浣嶇疆锛�</span><span class="txt">{{item.location || '' }}</span> + <span class="label">鍗曚綅鍚嶇О锛�</span><span class="txt">{{item.companyName || '' }}</span> + </div> + <div class="line"> <span class="label">璁よ瘉璧勬枡锛�</span> <span v-if="!item.imgList || item.imgList.length==0" class="txt">鏃�</span> </div> + </template> + <template v-else> + <div class="line"> + <span class="label">鎺ュ崟浣嶇疆锛�</span><span class="txt">{{item.location || '' }}</span> + </div> + <div class="line"> + <span class="label">韬唤淇℃伅锛�</span> <span v-if="!item.imgList || item.imgList.length==0" class="txt">鏃�</span> + </div> + </template> + <div class="line" v-if="item.imgList && item.imgList.length>0"> + <div v-for="info in item.imgList" style="display: inline-block"> + <el-image v-if="info" style="width: 50px; height: 50px; margin-right: 10px" :src="info" + :preview-src-list="[info]"> + </el-image> + </div> + </div> + <div class="line" v-if="item.auditStatus == 3 || item.auditStatus == 2" :style="'background-color: '+(item.auditStatus==2?'#eff8ea':'rgb(253 226 226)')+';padding: 20px'"> + <span class="label"> 瀹℃牳浜猴細</span> <span class="txt">{{item.editorName}} </span><span class="label">{{item.auditTime || '' }} </span> + <div style="margin-top: 20px"> <span class="label"> 瀹℃牳淇℃伅锛�</span> <span class="txt">{{item.auditRemark || '' }}</span></div> + </div> + </div> + </div> </div> </GlobalWindow> </template> @@ -218,8 +192,8 @@ import BaseOpera from '@/components/base/BaseOpera' import { getById } from '@/api/business/member' import { fetchList as yueList, exportExcel as yueExportExcel } from '@/api/business/memberRevenue' -import { commentList } from '@/api/business/orders' -import { fetchList as renzhengList } from '@/api/business/identityInfo' +import { fetchList as commentList } from '@/api/business/orders' +import { allList as renzhengList} from '@/api/business/identityInfo' export default { components: { GlobalWindow @@ -236,9 +210,10 @@ page: 1, total: 0, tableData: {}, + tableData1: {}, + tableData2: [], page0: 1, - totalPage0: 0, - total0: 0, + page1: 1, loading: false, export0: false, searchForm: { @@ -246,6 +221,8 @@ startTime: null, endTime: null, optType: null, + acceptMemberId: -1, + releaseMemberId: -1, transactionNo: null } } @@ -257,11 +234,20 @@ this.activeTabs = 0 this.type = 0 this.page0 = 1 - this.totalPage0 = 0 - this.total0 = 0 this.pageSize = 10 this.tableData = {} + this.tableData1 = {} + this.tableData2 = [] this.id = id + this.searchForm = { + type: 0, + startTime: null, + endTime: null, + optType: null, + acceptMemberId: -1, + releaseMemberId: -1, + transactionNo: null + } this.getData() }, getData () { @@ -269,7 +255,9 @@ .then(res => { this.info = res this.visible = true - this.handleCurrentChange0(0) + this.handleCurrentChange0(1) + this.changeType(0) + this.getRenzhengList() }) }, exportExcel0 () { @@ -287,8 +275,8 @@ transactionNo: this.searchForm.transactionNo } }).then(response => { - this.download(response) - }) + this.download(response) + }) .catch(e => { this.$tip.apiFailed(e) }) @@ -310,6 +298,10 @@ this.page0 = page this.getYueList() }, + handleCurrentChange1 (page) { + this.page1 = page + this.getCommentList() + }, getYueList () { this.loading = true yueList({ @@ -325,9 +317,27 @@ }).then(res => { this.loading = false this.tableData = res - this.total0 = res.total - this.totalPage0 = res.total console.log(this.tableData) + }).catch(e => { + this.$tip.apiFailed(e) + }).finally(() => { + this.loading = false + }) + }, + getCommentList () { + this.loading = true + commentList({ + capacity: this.pageSize, + page: this.page1, + model: { + acceptMemberId: this.searchForm.acceptMemberId, + releaseMemberId: this.searchForm.releaseMemberId, + commentStatus: 1 + } + }).then(res => { + this.loading = false + this.tableData1 = res + console.log(this.tableData1) }).catch(e => { this.$tip.apiFailed(e) }).finally(() => { @@ -340,60 +350,32 @@ getRenzhengList () { this.loading = true renzhengList({ - capacity: this.pageSize, - page: this.page, - model: { - startTime: this.searchForm.startTime, - endTime: this.searchForm.endTime, - optType: this.searchForm.optType, - transactionNo: this.searchForm.transactionNo - } + memberId: this.id || -1 }).then(res => { this.loading = false - this.tableData = res.records - this.total = res.total + this.tableData2 = res }).catch(e => { this.$tip.apiFailed(e) }).finally(() => { this.loading = false }) }, - getCommentList () { - this.loading = true - commentList({ - capacity: this.pageSize, - page: this.page, - model: { - status: 0, - billType: this.type, - contractId: this.info.id - } - }).then(res => { - this.loading = false - this.tableData = res.records - this.total = res.total - }) - }, changeType (e) { - this.type = e - this.page = 1 - this.pageSize = 10 - this.tableData = [] - this.getList() + this.searchForm.acceptMemberId = -1 + this.searchForm.releaseMemberId = -1 + if (e == 1) { + this.searchForm.releaseMemberId = this.info.id || -1 + this.searchForm.acceptMemberId = null + } else { + this.searchForm.acceptMemberId = this.info.id || -1 + this.searchForm.releaseMemberId =null + } + this.page1 = 1 + this.tableData1 = {} + this.handleCurrentChange1(0) }, tabsClick (val) { this.activeTabs = val - }, - getDetail () { - - }, - handleSizeChange (e) { - this.pageSize = e - this.getList() - }, - handleCurrentChange (e) { - this.page = e - this.getList() } } } @@ -401,6 +383,32 @@ <style lang="scss" scoped> @import '@/assets/style/variables.scss'; +.renzheng{ + margin: 0px 0px 30px 20px; + width: calc(100% - 60px); + .detail{ + font-size: 14px; + .label{ + color: #8c939d; + } + .txt{ + margin-right: 30px; + } + .line{ + margin-top: 15px; + } + } + .ml10{ + margin-left: 10px; + } + .info{ + font-size: 14px; + font-weight: bold; + } + .tag2{ + font-size: 12px; + } +} .home_title { .mr10{ margin-right: 10px; -- Gitblit v1.9.3