admin/src/components/business/OperaIdentityDetailWindow.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
admin/src/components/business/OperaMemberDetailWindow.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
admin/src/layouts/TableLayout.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
admin/src/router/index.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
admin/src/views/business/identityInfo.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
admin/src/views/business/member.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
server/services/src/main/java/com/doumee/dao/business/model/IdentityInfo.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
admin/src/components/business/OperaIdentityDetailWindow.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,327 @@ <template> <GlobalWindow :title="title" :visible.sync="visible" :withFooter="false" width="calc(100% - 250px)" :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="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> <el-image v-else style="width: 50px; height: 50px;border-radius: 50%;margin-right: 10px" src="avatar/man.png" > </el-image> </div> </div> <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> <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> </div> <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> </div> </div> </div> </div> <div class="main"> <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> </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 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> <script> import GlobalWindow from '@/components/common/GlobalWindow' import BaseOpera from '@/components/base/BaseOpera' import { getById } from '@/api/business/member' import { fetchList as renzhengList} from '@/api/business/identityInfo' export default { components: { GlobalWindow }, extends: BaseOpera, data () { return { id: '', memberId: '', visible: false, activeTabs: 0, type: 0, info: {}, pageSize: 10, page: 1, total: 0, tableData: {}, tableData1: {}, tableData2:[], page0: 1, page1: 1, loading: false, export0: false, searchForm: { type: 0, startTime: null, endTime: null, optType: null, acceptMemberId: -1, releaseMemberId: -1, transactionNo: null } } }, methods: { open (title, row) { this.title = title this.visible = true this.activeTabs = 0 this.type = 0 this.page0 = 1 this.pageSize = 10 this.tableData = {} this.tableData1 = {} this.tableData2 = [] this.id = row.id this.memberId = row.memberId this.searchForm = { type: 0, startTime: null, endTime: null, optType: null, acceptMemberId: -1, releaseMemberId: -1, transactionNo: null } this.getData() }, getData () { getById(this.memberId) .then(res => { this.info = res this.visible = true this.getRenzhengList() }) }, close () { }, getRenzhengList () { this.loading = true renzhengList({ page: 1, capacity: 1000000, model:{ memberId: this.memberId || -1, id: this.id || -1 } }).then(res => { this.loading = false this.tableData2 = res.records }).catch(e => { this.$tip.apiFailed(e) }).finally(() => { this.loading = false }) } } } </script> <style lang="scss" scoped> @import '@/assets/style/variables.scss'; .renzheng{ margin: 0px 0px 50px 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; } .m10{ margin: 10px; } .bluebtn{ color: #2985f7; } .tag1{ border-radius: 10px; font-size: 10px; padding: 0px 15px; height: 24px; } display: flex; justify-content: space-between; align-items: center; .left { font-weight: 500; font-size: 14px; margin-right: 10px; display: flex; align-items: center; .status { padding: 0 6px; height: 22px; line-height: 22px; border-radius: 2px; border: 1px solid #00BA92; color: #00BA92; font-weight: 400; font-size: 12px; color: #00BA92; } } } .tab{ width: 20%; } .remark { //background: #E8EBF7; border-radius: 2px; font-size: 14px; margin: 10px 10px 0px -10px; button{ border: none; cursor: default; margin-right: 20px; background: #e4ecfe; } } .bluebtn{ font-weight: bold; color: #2985f7; } .redbtn{ font-weight: bold; color: #ff1b1b; } .yellowbtn{ font-weight: bold; color: #fc9d20; } .tabs { border-bottom: 1px solid #DFE2E8; display: flex; margin-bottom: 20px; .tab { height: 58px; line-height: 58px; font-size: 14px; color: #666666; margin-right: 30px; cursor: pointer; } .active { font-weight: 500; color: $primary-color; border-bottom: 2px solid $primary-color; } } .main { padding: 12px 16px; .title { font-weight: 500; font-size: 12px; color: $primary-color; margin-bottom: 15px; } /deep/ .el-form-item__label{ font-size: 12px; } .list { display: flex; flex-wrap: wrap; /*background: #F7F7F7;*/ border-radius: 2px; /*padding: 15px 20px;*/ margin-bottom: 20px; .item { font-size: 14px; width: 25%; margin-bottom: 16px; .la { color: #7f7f7f; margin-bottom: 10px; } } } } /deep/ .window__body { padding: 0px !important; } </style> admin/src/components/business/OperaMemberDetailWindow.vue
@@ -141,9 +141,9 @@ <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="mr10 tag2" v-if="item.auditStatus == 0">认è¯ä¸</el-tag> <el-tag type="success" class="mr10 tag2" v-if="item.auditStatus == 1">认è¯éè¿</el-tag> <el-tag type="danger" class="mr10 tag2" v-if="item.auditStatus == 2">认è¯å¤±è´¥</el-tag> <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"> @@ -162,12 +162,16 @@ <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"> <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> @@ -385,6 +389,9 @@ margin-top: 15px; } } .ml10{ margin-left: 10px; } .info{ font-size: 14px; font-weight: bold; admin/src/layouts/TableLayout.vue
@@ -189,4 +189,13 @@ } } } .redstate{ color: #a10e0e; } .greenstate{ color: #157713; } .bluestate{ color: #2080f7; } </style> admin/src/router/index.js
@@ -104,12 +104,12 @@ const height = window.innerHeight // console.log('beforeEach========================ï¼' + height) const height13 = getEleHeghtByClassName('common-header', 0) const height4 = getEleHeghtByClassName('table-pagination', 0,-20) const height4 = getEleHeghtByClassName('table-pagination', 0,16) const height1 = getEleHeghtByClassName('table-search-form', 40, 16) const height3 = getEleHeghtByClassName('main-header', 0) const height2 = getEleHeghtByClassName('toolbar', 0) const height5 = getEleHeghtByClassName('status-bar', 0) router.app.$store.commit('setTableHeightNew', height - height4 - height3 - height2 - height1 - height13-height5) router.app.$store.commit('setTableHeightNew', height - height4 - height3 - height2 - height1 - height13 - height5) } function getEleHeghtByClassName (name, dv, margin) { admin/src/views/business/identityInfo.vue
@@ -2,11 +2,18 @@ <TableLayout :permissions="['business:identityinfo:query']"> <!-- æç´¢è¡¨å --> <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> <el-form-item label="ç±»å:0=ç¨å·¥èº«ä»½ï¼1=è´§è¿èº«ä»½ï¼2=ä¾é¤èº«ä»½ï¼" prop="type"> <el-input v-model="searchForm.type" placeholder="请è¾å ¥ç±»å:0=ç¨å·¥èº«ä»½ï¼1=è´§è¿èº«ä»½ï¼2=ä¾é¤èº«ä»½ï¼" @keypress.enter.native="search"></el-input> <el-form-item label="身份类å" prop="type"> <el-select v-model="searchForm.type" clearable placeholder="è¯·éæ©èº«ä»½ç±»å" @change="search"> <el-option :value="0" label="ç¨å·¥èº«ä»½"></el-option> <el-option :value="1" label="è´§è¿èº«ä»½"></el-option> <el-option :value="2" label="ä¾é¤èº«ä»½"></el-option> </el-select> </el-form-item> <el-form-item label="认è¯ç±»å:0=个人ï¼1=ä¼ä¸" prop="authType"> <el-input v-model="searchForm.authType" placeholder="请è¾å ¥è®¤è¯ç±»å:0=个人ï¼1=ä¼ä¸" @keypress.enter.native="search"></el-input> <el-form-item label="认è¯ç±»å " prop="authType"> <el-select v-model="searchForm.authType" clearable placeholder="è¯·éæ©è®¤è¯ç±»å" @change="search"> <el-option :value="0" label="个人"></el-option> <el-option :value="1" label="ä¼ä¸"></el-option> </el-select> </el-form-item> <el-form-item label="è系人" prop="linkName"> <el-input v-model="searchForm.linkName" placeholder="请è¾å ¥è系人" @keypress.enter.native="search"></el-input> @@ -27,10 +34,10 @@ </el-form> <!-- è¡¨æ ¼åå页 --> <template v-slot:table-wrap> <ul class="toolbar" v-permissions="['business:identityinfo:create', 'business:identityinfo:delete']"> <!-- <ul class="toolbar" v-permissions="['business:identityinfo:create', 'business:identityinfo:delete']"> <li><el-button type="primary" @click="$refs.operaIdentityInfoWindow.open('æ°å»ºä¼å身份认è¯ä¿¡æ¯è¡¨')" icon="el-icon-plus" v-permissions="['business:identityinfo:create']">æ°å»º</el-button></li> <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:identityinfo:delete']">å é¤</el-button></li> </ul> </ul>--> <el-table :height="tableHeightNew" v-loading="isWorking.search" @@ -39,41 +46,50 @@ @selection-change="handleSelectionChange" > <el-table-column type="selection" width="55"></el-table-column> <el-table-column prop="id" label="主é®" min-width="100px"></el-table-column> <el-table-column prop="deleted" label="æ¯å¦å·²å é¤ 0æªå é¤ 1å·²å é¤" min-width="100px"></el-table-column> <el-table-column prop="createUser" label="å建人ç¼ç " min-width="100px"></el-table-column> <el-table-column prop="createTime" label="å建æ¶é´" min-width="100px"></el-table-column> <el-table-column prop="updateUser" label="æ´æ°äººç¼ç " min-width="100px"></el-table-column> <el-table-column prop="updateTime" label="æ´æ°æ¶é´" min-width="100px"></el-table-column> <el-table-column prop="remark" label="夿³¨" min-width="100px"></el-table-column> <el-table-column prop="type" label="ç±»å:0=ç¨å·¥èº«ä»½ï¼1=è´§è¿èº«ä»½ï¼2=ä¾é¤èº«ä»½ï¼" min-width="100px"></el-table-column> <el-table-column prop="memberId" label="ä¼å鿏" min-width="100px"></el-table-column> <el-table-column prop="authType" label="认è¯ç±»å:0=个人ï¼1=ä¼ä¸" min-width="100px"></el-table-column> <el-table-column prop="openid" label="openid" min-width="100px"></el-table-column> <el-table-column prop="memberName" label="ä¼åæµç§°" min-width="100px"></el-table-column> <el-table-column prop="type" label="ç±»å" min-width="100px"> <template slot-scope="{row}"> <span v-if="row.type ==0">ç¨å·¥èº«ä»½</span> <span v-if="row.type ==1">è´§è¿èº«ä»½</span> <span v-if="row.type ==2">ä¾é¤èº«ä»½</span> </template> </el-table-column> <el-table-column prop="auditStatus" label="å®¡æ ¸ç¶æ" min-width="100px"> <template slot-scope="{row}"> <span class="bluestate" v-if="row.auditStatus ==1">ç³è¯·ä¸</span> <span class="greenstate" v-if="row.auditStatus ==2">å·²éè¿</span> <span class="redstate" v-if="row.auditStatus ==3">æªéè¿</span> </template> </el-table-column> <el-table-column prop="authType" label="认è¯ç±»å" min-width="100px"> <template slot-scope="{row}"> <span v-if="row.authType ==0">个人</span> <span v-if="row.authType ==1">ä¼ä¸</span> </template> </el-table-column> <el-table-column prop="linkName" label="è系人" min-width="100px"></el-table-column> <el-table-column prop="telephone" label="èç³»æ¹å¼" min-width="100px"></el-table-column> <el-table-column prop="location" label="æ¥åä½ç½®" min-width="100px"></el-table-column> <el-table-column prop="companyName" label="åä½åç§°" min-width="100px"></el-table-column> <el-table-column prop="lat" label="纬度" min-width="100px"></el-table-column> <el-table-column prop="lgt" label="ç»åº¦" min-width="100px"></el-table-column> <el-table-column prop="identityFront" label="身份è¯äººåé¢" min-width="100px"></el-table-column> <el-table-column prop="identityBack" label="身份è¯å½å¾½é¢" min-width="100px"></el-table-column> <el-table-column prop="businessLicense" label="è¥ä¸æ§ç §ï¼ä¼ä¸ç±»ä½¿ç¨ï¼" min-width="100px"></el-table-column> <el-table-column prop="otherFile" label="å ¶ä»è®¤è¯èµæï¼ä¼ä¸ç±»ä½¿ç¨ï¼" min-width="100px"></el-table-column> <el-table-column prop="transportFile" label="éè·¯è¿è¾ç»éªè®¸å¯è¯ï¼ä¼ä¸ç±»è´§è¿èº«ä»½ä½¿ç¨ï¼" min-width="100px"></el-table-column> <el-table-column prop="foodBusinessFile" label="é£åç»è¥è®¸å¯è¯ï¼ä¼ä¸ç±»ä¾é¤èº«ä»½ä½¿ç¨ï¼" min-width="100px"></el-table-column> <el-table-column prop="healthFile" label="ä»ä¸äººåå¥åº·è¯" min-width="100px"></el-table-column> <el-table-column prop="auditStatus" label="认è¯å®¡æ¹ç¶æ:1=ç³è¯·ä¸ï¼2=å·²éè¿ï¼3=æªéè¿ï¼" min-width="100px"></el-table-column> <el-table-column prop="createTime" label="ç³è¯·æ¶é´" min-width="100px"></el-table-column> <el-table-column prop="updateUser" label="å®¡æ ¸äºº" min-width="100px"></el-table-column> <el-table-column prop="auditTime" label="认è¯å®¡æ¹æ¶é´" min-width="100px"></el-table-column> <el-table-column prop="auditRemark" label="认è¯å®¡æ¹å¤æ³¨" min-width="100px"></el-table-column> <el-table-column v-if="containPermissions(['business:identityinfo:update', 'business:identityinfo:delete'])" v-if="containPermissions(['business:identityinfo:update','business:identityinfo:query'])" label="æä½" min-width="120" min-width="160" fixed="right" > <template slot-scope="{row}"> <template slot-scope="{row}"> <el-button type="text" v-if="row.auditStatus==1" @click="$refs.OperaIdentityDetailWindow.open('ç¨æ·è®¤è¯å®¡æ ¸', row)" icon="el-icon-edit" v-permissions="['business:identityinfo:update']">å®¡æ ¸</el-button> <el-button type="text" @click="$refs.OperaIdentityDetailWindow.open('ç¨æ·è®¤è¯è¯¦æ ', row)" icon="el-icon-info" >详æ </el-button> <!-- <el-button type="text" @click="$refs.operaIdentityInfoWindow.open('ç¼è¾ä¼å身份认è¯ä¿¡æ¯è¡¨', row)" icon="el-icon-edit" v-permissions="['business:identityinfo:update']">ç¼è¾</el-button> <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:identityinfo:delete']">å é¤</el-button> --> </template> </el-table-column> </el-table> @@ -85,7 +101,7 @@ </pagination> </template> <!-- æ°å»º/ä¿®æ¹ --> <OperaIdentityInfoWindow ref="operaIdentityInfoWindow" @success="handlePageChange"/> <OperaIdentityDetailWindow ref="OperaIdentityDetailWindow" @success="handlePageChange"/> </TableLayout> </template> @@ -93,11 +109,11 @@ import BaseTable from '@/components/base/BaseTable' import TableLayout from '@/layouts/TableLayout' import Pagination from '@/components/common/Pagination' import OperaIdentityInfoWindow from '@/components/business/OperaIdentityInfoWindow' import OperaIdentityDetailWindow from '@/components/business/OperaIdentityDetailWindow' export default { name: 'IdentityInfo', extends: BaseTable, components: { TableLayout, Pagination, OperaIdentityInfoWindow }, components: { TableLayout, Pagination, OperaIdentityDetailWindow }, data () { return { // æç´¢ admin/src/views/business/member.vue
@@ -10,7 +10,7 @@ </el-form-item> <el-form-item label="ç±»å" prop="type"> <el-select v-model="searchForm.type" clearable placeholder="è¯·éæ©ç±»å" @change="search"> <el-option :value="0" label="ååæ¹"></el-option> <el-option :value="0" label="å ¨é¨"></el-option> <el-option :value="1" label="æ¥åæ¹"></el-option> </el-select> </el-form-item> @@ -22,10 +22,10 @@ </el-form-item> <el-form-item label="æ³¨åæ¶é´" prop="eventType"> <el-date-picker type="datetime" v-model="searchForm.startTime" clearable value-format="yyyy-MM-dd HH:mm:ss" placeholder="è¯·éæ©å¼å§æ¶é´" />- <el-date-picker type="datetime" v-model="searchForm.endTime" clearable value-format="yyyy-MM-dd HH:mm:ss" placeholder="è¯·éæ©ç»ææ¶é´" /> <el-date-picker type="datetime" style="width: 120px" v-model="searchForm.startTime" clearable value-format="yyyy-MM-dd HH:mm:ss" placeholder="å¼å§æ¶é´" />- <el-date-picker type="datetime" style="width: 120px" v-model="searchForm.endTime" clearable value-format="yyyy-MM-dd HH:mm:ss" placeholder="ç»ææ¶é´" /> </el-form-item> <section> <el-button type="primary" @click="search">æç´¢</el-button> @@ -34,10 +34,10 @@ </el-form> <!-- è¡¨æ ¼åå页 --> <template v-slot:table-wrap> <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']"> <!-- <ul class="toolbar" v-permissions="['business:member:create', 'business:member:delete']"> <li><el-button type="primary" @click="$refs.operaMemberWindow.open('æ°å»ºä¼åä¿¡æ¯è¡¨')" icon="el-icon-plus" v-permissions="['business:member:create']">æ°å»º</el-button></li> <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:member:delete']">å é¤</el-button></li> </ul> </ul>--> <el-table :height="tableHeightNew" v-loading="isWorking.search" @@ -77,7 +77,7 @@ </el-switch> </template> </el-table-column> <el-table-column <!-- <el-table-column v-if="containPermissions(['business:member:update', 'business:member:delete'])" label="æä½" min-width="120" @@ -87,7 +87,7 @@ <el-button type="text" @click="$refs.operaMemberWindow.open('ç¼è¾ä¼åä¿¡æ¯è¡¨', row)" icon="el-icon-edit" v-permissions="['business:member:update']">ç¼è¾</el-button> <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:member:delete']">å é¤</el-button> </template> </el-table-column> </el-table-column>--> </el-table> <pagination @size-change="handleSizeChange" server/services/src/main/java/com/doumee/dao/business/model/IdentityInfo.java
@@ -124,6 +124,12 @@ @ApiModelProperty(value = "å®¡æ ¸äººå§å") @TableField(exist = false) private String editorName; @ApiModelProperty(value = "ç¨æ·openid") @TableField(exist = false) private String openid; @ApiModelProperty(value = "ç¨æ·æµç§°") @TableField(exist = false) private String memberName; @ApiModelProperty(value = "å¾çéå") @TableField(exist = false) private List<String> imgList; server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
@@ -233,7 +233,8 @@ private void addMemberModelByType(Integer id,Integer type, List<IdentityInfo> list,String path) { MPJLambdaWrapper<IdentityInfo> wrapper = new MPJLambdaWrapper<IdentityInfo>() .selectAll(IdentityInfo.class).selectAs(SystemUser::getUsername,IdentityInfo::getEditorName) .selectAll(IdentityInfo.class) .selectAs(SystemUser::getUsername,IdentityInfo::getEditorName) .leftJoin(SystemUser.class,SystemUser::getId,IdentityInfo::getUpdateUser) .orderByDesc(IdentityInfo::getCreateTime )//åææ°ä¸æ¡ .eq(IdentityInfo::getMemberId,id) @@ -242,23 +243,7 @@ .last("limit 1"); IdentityInfo model = identityInfoMapper.selectJoinOne(IdentityInfo.class,wrapper); if(model !=null){ model.setImgList(new ArrayList<>()); if(StringUtils.isNotBlank(model.getImg1())){ model.setImg1(path+model.getImg1()); model.getImgList().add(model.getImg1()); } if(StringUtils.isNotBlank(model.getImg2())){ model.setImg2(path+model.getImg2()); model.getImgList().add(model.getImg2()); } if(StringUtils.isNotBlank(model.getImg3())) { model.setImg3(path + model.getImg3()); model.getImgList().add(model.getImg3()); } if(StringUtils.isNotBlank(model.getImg4())){ model.setImg4(path+model.getImg4()); model.getImgList().add(model.getImg4()); } initModelImage(model,path); list.add(model); } } @@ -269,7 +254,11 @@ MPJLambdaWrapper<IdentityInfo> queryWrapper = new MPJLambdaWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); pageWrap.getModel().setDeleted(Constants.ZERO); queryWrapper.selectAll(IdentityInfo.class).selectAs(SystemUser::getUsername,IdentityInfo::getEditorName) queryWrapper.selectAll(IdentityInfo.class) .selectAs(Member::getNickName,IdentityInfo::getMemberName) .selectAs(Member::getOpenid,IdentityInfo::getOpenid) .selectAs(SystemUser::getUsername,IdentityInfo::getEditorName) .leftJoin(Member.class,Member::getId,IdentityInfo::getMemberId) .leftJoin(SystemUser.class,SystemUser::getId,IdentityInfo::getUpdateUser); if (pageWrap.getModel().getId() != null) { queryWrapper.eq(IdentityInfo::getId, pageWrap.getModel().getId()); @@ -338,7 +327,37 @@ queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(identityInfoMapper.selectJoinPage(page,IdentityInfo.class, queryWrapper)); PageData<IdentityInfo> result = PageData.from(identityInfoMapper.selectJoinPage(page,IdentityInfo.class, queryWrapper)); if(result!=null && result.getRecords()!=null){ String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INENTITY_FILES).getCode(); for (IdentityInfo model :result.getRecords()){ initModelImage(model,path); } } return result; } private void initModelImage(IdentityInfo model, String path) { model.setImgList(new ArrayList<>()); if(StringUtils.isNotBlank(model.getImg1())){ model.setImg1(path+model.getImg1()); model.getImgList().add(model.getImg1()); } if(StringUtils.isNotBlank(model.getImg2())){ model.setImg2(path+model.getImg2()); model.getImgList().add(model.getImg2()); } if(StringUtils.isNotBlank(model.getImg3())) { model.setImg3(path + model.getImg3()); model.getImgList().add(model.getImg3()); } if(StringUtils.isNotBlank(model.getImg4())){ model.setImg4(path+model.getImg4()); model.getImgList().add(model.getImg4()); } } @Override