From 157476e37c39931ee026a2ca6fde0d09383884d3 Mon Sep 17 00:00:00 2001 From: zhangwei <1504152376@qq.com> Date: 星期五, 01 八月 2025 15:53:50 +0800 Subject: [PATCH] '企业资料审核' --- Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue | 210 +++++++--- Web/src/api/base/index.ts | 13 Web/src/views/Customer/fBS_CusExtend/index.vue | 241 +++++++----- Web/src/views/Customer/fBS_CusExtendExamine/component/editDialog.vue | 273 ++++++++++++++ Web/src/api/Customer/fBS_CusExtend.ts | 2 Web/src/views/Customer/fBS_CusExtendExamine/index.vue | 361 +++++++++++++++++++ 6 files changed, 932 insertions(+), 168 deletions(-) diff --git a/Web/src/api/Customer/fBS_CusExtend.ts b/Web/src/api/Customer/fBS_CusExtend.ts index f1cea0c..8ab47f8 100644 --- a/Web/src/api/Customer/fBS_CusExtend.ts +++ b/Web/src/api/Customer/fBS_CusExtend.ts @@ -12,6 +12,8 @@ add: baseApi.add, // 鏇存柊浼佷笟璧勬枡 update: baseApi.update, + getParam: baseApi.getParam, + changeSteps:baseApi.changeSteps, // 鍒犻櫎浼佷笟璧勬枡 delete: baseApi.delete, // 鎵归噺鍒犻櫎浼佷笟璧勬枡 diff --git a/Web/src/api/base/index.ts b/Web/src/api/base/index.ts index e554f78..ca2df9e 100644 --- a/Web/src/api/base/index.ts +++ b/Web/src/api/base/index.ts @@ -28,6 +28,19 @@ data: { id }, }, cancel); }, + getParam: function (id: any, cancel: boolean = false) { + return request({ + url: baseUrl + "getParam", + method: 'get', + data: { id }, + }, cancel); + }, + changeSteps: function (id: any, step, cancel: boolean = false) { + return request({ + url: baseUrl + `changeSteps/${id}/${step}`, + method: 'get', + }, cancel); + }, dropdownData: function (data: any, cancel: boolean = false) { return request({ url: baseUrl + "dropdownData", diff --git a/Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue b/Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue index 9d15c02..d335c35 100644 --- a/Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue +++ b/Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue @@ -4,6 +4,7 @@ import type { FormRules } from "element-plus"; import { formatDate } from '/@/utils/formatTime'; import { useFBS_CusExtendApi } from '/@/api/Customer/fBS_CusExtend'; +import { deepClone } from '/@/utils/other' //鐖剁骇浼犻�掓潵鐨勫嚱鏁帮紝鐢ㄤ簬鍥炶皟 const emit = defineEmits(["reloadTable"]); @@ -17,6 +18,8 @@ ruleForm: {} as any, stores: {}, dropdownData: {} as any, + enterpriseList:[], + roleList:[] }); // 鑷娣诲姞鍏朵粬瑙勫垯 @@ -46,10 +49,13 @@ }); // 鎵撳紑寮圭獥 -const openDialog = async (row: any, title: string) => { +const openDialog = async (row: any, title: string, qiyeList,roleList) => { + state.roleList = roleList + state.enterpriseList = qiyeList state.title = title; row = row ?? { }; state.ruleForm = row.id ? await fBS_CusExtendApi.detail(row.id).then(res => res.data.result) : JSON.parse(JSON.stringify(row)); + state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(","); state.showDialog = true; }; @@ -74,13 +80,30 @@ } }); }; - +const isLeaf = data => { + data.forEach(item => { + if (!item.child) { + item.leaf = true; + } + }); +}; +const loadNode = (node, resolve) => { + if (node.level === 0) { + isLeaf(node.data); + return resolve(node.data); + } else if (node.level > 0 && node.data.child) { + isLeaf(node.data.child); + return resolve(node.data.child); + } else { + return resolve([]); + } +}; //灏嗗睘鎬ф垨鑰呭嚱鏁版毚闇茬粰鐖剁粍浠� defineExpose({ openDialog }); </script> <template> <div class="fBS_CusExtend-container"> - <el-dialog v-model="state.showDialog" :width="800" draggable :close-on-click-modal="false"> + <el-dialog v-model="state.showDialog" :width="'80%'" draggable :close-on-click-modal="false"> <template #header> <div style="color: #fff"> <span>{{ state.title }}</span> @@ -91,121 +114,170 @@ <el-form-item v-show="false"> <el-input v-model="state.ruleForm.id" /> </el-form-item> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > <el-form-item label="鐢ㄦ埛ID" prop="customerId"> <el-input v-model="state.ruleForm.customerId" placeholder="璇疯緭鍏ョ敤鎴稩D" maxlength="19" show-word-limit clearable /> </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + </el-col> --> + <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" > <el-form-item label="浼佷笟绫诲瀷 " prop="enterpriseType"> - <el-input v-model="state.ruleForm.enterpriseType" placeholder="璇疯緭鍏ヤ紒涓氱被鍨� " maxlength="255" show-word-limit clearable /> + <el-tree-select + v-model="state.ruleForm.enterpriseType" + :data="state.enterpriseList" + multiple + node-key="name" + :render-after-expand="false" + show-checkbox + check-strictly + check-on-click-node + :load="loadNode" + lazy + :props="{ label: 'name', children: 'child', isLeaf: 'leaf' }" + /> + <!-- <el-input v-model="state.ruleForm.enterpriseType" placeholder="璇疯緭鍏ヤ紒涓氱被鍨� " show-word-limit clearable /> --> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="浜ゆ槗涓讳綋code" prop="transactionCode"> - <el-input v-model="state.ruleForm.transactionCode" placeholder="璇疯緭鍏ヤ氦鏄撲富浣揷ode" maxlength="255" show-word-limit clearable /> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="钀ヤ笟鎵х収鏂囦欢璺緞" prop="businessLicense"> - <el-input v-model="state.ruleForm.businessLicense" placeholder="璇疯緭鍏ヨ惀涓氭墽鐓ф枃浠惰矾寰�" maxlength="255" show-word-limit clearable /> + <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" > + <el-form-item label="钀ヤ笟鎵х収" prop="businessLicense"> + <el-image + :src="state.ruleForm.businessLicense" + :zoom-rate="1.2" + :preview-src-list="[state.ruleForm.businessLicense]" + preview-teleported + fit="cover" + style="width:200px;height:150px" + /> + <!-- <el-input v-model="state.ruleForm.businessLicense" placeholder="璇疯緭鍏ヨ惀涓氭墽鐓ф枃浠惰矾寰�" show-word-limit clearable /> --> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > <el-form-item label="浼佷笟鍚嶇О" prop="enterpriseName"> - <el-input v-model="state.ruleForm.enterpriseName" placeholder="璇疯緭鍏ヤ紒涓氬悕绉�" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.enterpriseName" placeholder="璇疯緭鍏ヤ紒涓氬悕绉�" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8" class="mb20" > <el-form-item label="缁熶竴绀句細淇$敤浠g爜" prop="unifiedSocialCreditCode"> - <el-input v-model="state.ruleForm.unifiedSocialCreditCode" placeholder="璇疯緭鍏ョ粺涓�绀句細淇$敤浠g爜" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.unifiedSocialCreditCode" placeholder="璇疯緭鍏ョ粺涓�绀句細淇$敤浠g爜" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > + <el-form-item label="浜ゆ槗涓讳綋" prop="transactionCode"> + <el-select + v-model="state.ruleForm.transactionCode" + placeholder="璇烽�夋嫨浜ゆ槗涓讳綋" + clearable + > + <el-option + v-for="item in state.roleList" + :key="item.id" + :label="item.name" + :value="item.code" + /> + </el-select> + <!-- <el-input v-model="state.ruleForm.transactionCode" placeholder="璇疯緭鍏ヤ氦鏄撲富浣�" show-word-limit clearable /> --> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="娉ㄥ唽璧勯噾" prop="registeredCapital"> - <el-input v-model="state.ruleForm.registeredCapital" placeholder="璇疯緭鍏ユ敞鍐岃祫閲�" maxlength="255" show-word-limit clearable /> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="娉曞畾浠h〃浜哄鍚�" prop="legalRepresentativeName"> - <el-input v-model="state.ruleForm.legalRepresentativeName" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕" maxlength="255" show-word-limit clearable /> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="娉曞畾浠h〃浜鸿韩浠借瘉鏂囦欢璺緞" prop="legalRepresentativeIdCard"> - <el-input v-model="state.ruleForm.legalRepresentativeIdCard" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉韬唤璇佹枃浠惰矾寰�" maxlength="255" show-word-limit clearable /> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="娉曞畾浠h〃浜哄鍚�" prop="legalRepresentativeIdNumber"> - <el-input v-model="state.ruleForm.legalRepresentativeIdNumber" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕" maxlength="255" show-word-limit clearable /> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="娉曞畾浠h〃浜哄鍚�" prop="legalRepresentativePhone"> - <el-input v-model="state.ruleForm.legalRepresentativePhone" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.registeredCapital" placeholder="璇疯緭鍏ユ敞鍐岃祫閲�" show-word-limit clearable /> </el-form-item> </el-col> <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > <el-form-item label="浼佷笟浣忔墍" prop="residence"> - <el-input v-model="state.ruleForm.residence" placeholder="璇疯緭鍏ヤ紒涓氫綇鎵�" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.residence" placeholder="璇疯緭鍏ヤ紒涓氫綇鎵�" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="浼佷笟鑱旂郴鐢佃瘽" prop="enterprisePhone"> - <el-input v-model="state.ruleForm.enterprisePhone" placeholder="璇疯緭鍏ヤ紒涓氳仈绯荤數璇�" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.enterprisePhone" placeholder="璇疯緭鍏ヤ紒涓氳仈绯荤數璇�" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="浼佷笟鎴愮珛鏃堕棿" prop="establishmentTime"> <el-date-picker v-model="state.ruleForm.establishmentTime" type="date" placeholder="浼佷笟鎴愮珛鏃堕棿" /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="浼佷笟涓昏惀涓氬姟" prop="mainBusiness"> - <el-input v-model="state.ruleForm.mainBusiness" placeholder="璇疯緭鍏ヤ紒涓氫富钀ヤ笟鍔�" show-word-limit clearable /> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="浼佷笟閭" prop="enterpriseEmail"> - <el-input v-model="state.ruleForm.enterpriseEmail" placeholder="璇疯緭鍏ヤ紒涓氶偖绠�" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.enterpriseEmail" placeholder="璇疯緭鍏ヤ紒涓氶偖绠�" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" > + <el-form-item label="浼佷笟涓昏惀涓氬姟" prop="mainBusiness"> + <el-input type="textarea" autosize v-model="state.ruleForm.mainBusiness" placeholder="璇疯緭鍏ヤ紒涓氫富钀ヤ笟鍔�" show-word-limit clearable /> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" > + <el-form-item label="娉曞畾浠h〃浜鸿韩浠借瘉" prop="legalRepresentativeIdCard"> + <el-image + :src="state.ruleForm.legalRepresentativeIdCard" + :zoom-rate="1.2" + :preview-src-list="[state.ruleForm.legalRepresentativeIdCard]" + preview-teleported + fit="cover" + style="width:200px;height:150px" + /> + <!-- <el-input v-model="state.ruleForm.legalRepresentativeIdCard" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉韬唤璇佹枃浠惰矾寰�" show-word-limit clearable /> --> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > + <el-form-item label="娉曞畾浠h〃浜哄鍚�" prop="legalRepresentativeName"> + <el-input v-model="state.ruleForm.legalRepresentativeName" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕" show-word-limit clearable /> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8" class="mb20" > + <el-form-item label="娉曞畾浠h〃浜鸿韩浠借瘉鍙风爜" prop="legalRepresentativeIdNumber"> + <el-input v-model="state.ruleForm.legalRepresentativeIdNumber" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕" show-word-limit clearable /> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > + <el-form-item label="娉曞畾浠h〃浜鸿仈绯荤數璇�" prop="legalRepresentativePhone"> + <el-input v-model="state.ruleForm.legalRepresentativePhone" placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕" show-word-limit clearable /> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" > + <el-form-item label="涓氬姟缁忓姙浜鸿韩浠借瘉" prop="operatorIdCard"> + <el-image + :src="state.ruleForm.operatorIdCard" + :zoom-rate="1.2" + :preview-src-list="[state.ruleForm.operatorIdCard]" + preview-teleported + fit="cover" + style="width:200px;height:150px" + /> + <!-- <el-input v-model="state.ruleForm.operatorIdCard" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉韬唤璇佹枃浠惰矾寰勬垨鏍囪瘑" show-word-limit clearable /> --> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="涓氬姟缁忓姙浜哄鍚�" prop="operatorName"> - <el-input v-model="state.ruleForm.operatorName" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉濮撳悕" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.operatorName" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉濮撳悕" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="涓氬姟缁忓姙浜鸿韩浠借瘉鏂囦欢璺緞鎴栨爣璇�" prop="operatorIdCard"> - <el-input v-model="state.ruleForm.operatorIdCard" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉韬唤璇佹枃浠惰矾寰勬垨鏍囪瘑" maxlength="255" show-word-limit clearable /> + <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8" class="mb20" > + <el-form-item label="涓氬姟缁忓姙浜鸿韩浠借瘉鍙风爜" prop="operatorIdNumber"> + <el-input v-model="state.ruleForm.operatorIdNumber" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉韬唤璇佸彿" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > - <el-form-item label="涓氬姟缁忓姙浜鸿韩鍙�" prop="operatorIdNumber"> - <el-input v-model="state.ruleForm.operatorIdNumber" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉韬唤璇佸彿" maxlength="255" show-word-limit clearable /> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="涓氬姟缁忓姙浜虹數璇�" prop="operatorPhone"> - <el-input v-model="state.ruleForm.operatorPhone" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉鐢佃瘽" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.operatorPhone" placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉鐢佃瘽" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="寮�鎴疯" prop="bankName"> - <el-input v-model="state.ruleForm.bankName" placeholder="璇疯緭鍏ュ紑鎴疯" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.bankName" placeholder="璇疯緭鍏ュ紑鎴疯" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="8" class="mb20" > <el-form-item label="閾惰璐﹀彿" prop="bankAccount"> - <el-input v-model="state.ruleForm.bankAccount" placeholder="璇疯緭鍏ラ摱琛岃处鍙�" maxlength="255" show-word-limit clearable /> + <el-input v-model="state.ruleForm.bankAccount" placeholder="璇疯緭鍏ラ摱琛岃处鍙�" show-word-limit clearable /> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" > + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb20" > <el-form-item label="瀹℃牳姝ラ" prop="steps"> <g-sys-dict v-model="state.ruleForm.steps" code="CusExtendStep" render-as="select" placeholder="璇烽�夋嫨瀹℃牳姝ラ" clearable filterable /> </el-form-item> - </el-col> + </el-col> --> </el-row> </el-form> <template #footer> diff --git a/Web/src/views/Customer/fBS_CusExtend/index.vue b/Web/src/views/Customer/fBS_CusExtend/index.vue index e7f12ba..11df09a 100644 --- a/Web/src/views/Customer/fBS_CusExtend/index.vue +++ b/Web/src/views/Customer/fBS_CusExtend/index.vue @@ -8,8 +8,12 @@ import printDialog from '/@/views/system/print/component/hiprint/preview.vue' import ModifyRecord from '/@/components/table/modifyRecord.vue'; import ImportData from "/@/components/table/importData.vue"; +import { useFBS_ExRoleApi } from '/@/api/Customer/fBS_ExRole'; +import { formatDate } from '/@/utils/formatTime'; + const fBS_CusExtendApi = useFBS_CusExtendApi(); +const fBS_ExRoleApi = useFBS_ExRoleApi(); const printDialogRef = ref(); const editDialogRef = ref(); const importDataRef = ref(); @@ -29,12 +33,33 @@ order: 'descending', // 鎺掑簭鏂瑰悜 descStr: 'descending', // 闄嶅簭鎺掑簭鐨勫叧閿瓧绗� }, + tableParams1: { + page: 1, + pageSize: 20, + total: 0, + field: 'createTime', // 榛樿鐨勬帓搴忓瓧娈� + order: 'descending', // 鎺掑簭鏂瑰悜 + descStr: 'descending', // 闄嶅簭鎺掑簭鐨勫叧閿瓧绗� + }, tableData: [], + roleList: [], + qiyeList:[], + shenheList:[] }); // 椤甸潰鍔犺浇鏃� onMounted(async () => { + handleQueryRole() + getParamList() }); + +const getParamList = async()=>{ + let res = await fBS_CusExtendApi.getParam().then(res => res.data.result); + state.qiyeList = res.enterpriseTypes + state.shenheList = res.stepsTypeItems + console.log(res,state.qiyeList,state.shenheList); + +} // 鏌ヨ鎿嶄綔 const handleQuery = async (params: any = {}) => { @@ -44,6 +69,12 @@ state.tableParams.total = result?.total; state.tableData = result?.items ?? []; state.tableLoading = false; +}; + +// 鏌ヨ瑙掕壊 +const handleQueryRole = async (params: any = {}) => { + const result = await fBS_ExRoleApi.page(Object.assign({}, state.tableParams1)).then(res => res.data.result); + state.roleList = result?.items ?? []; }; // 鍒楁帓搴� @@ -104,129 +135,84 @@ <template> <div class="fBS_CusExtend-container" v-loading="state.exportLoading"> <el-card shadow="hover" :body-style="{ paddingBottom: '0' }"> - <el-form :model="state.tableQueryParams" ref="queryForm" labelWidth="90"> + <el-form :model="state.tableQueryParams" ref="queryForm" labelWidth="120"> <el-row> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10"> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10"> <el-form-item label="鍏抽敭瀛�"> <el-input v-model="state.tableQueryParams.keyword" clearable placeholder="璇疯緭鍏ユā绯婃煡璇㈠叧閿瓧"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="鐢ㄦ埛ID"> <el-input v-model="state.tableQueryParams.customerId" clearable placeholder="璇疯緭鍏ョ敤鎴稩D"/> </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="浼佷笟绫诲瀷 "> <el-input v-model="state.tableQueryParams.enterpriseType" clearable placeholder="璇疯緭鍏ヤ紒涓氱被鍨� "/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="浜ゆ槗涓讳綋code"> - <el-input v-model="state.tableQueryParams.transactionCode" clearable placeholder="璇疯緭鍏ヤ氦鏄撲富浣揷ode"/> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浜ゆ槗涓讳綋"> + <el-input v-model="state.tableQueryParams.transactionCode" clearable placeholder="璇疯緭鍏ヤ氦鏄撲富浣�"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="钀ヤ笟鎵х収鏂囦欢璺緞"> - <el-input v-model="state.tableQueryParams.businessLicense" clearable placeholder="璇疯緭鍏ヨ惀涓氭墽鐓ф枃浠惰矾寰�"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="浼佷笟鍚嶇О"> <el-input v-model="state.tableQueryParams.enterpriseName" clearable placeholder="璇疯緭鍏ヤ紒涓氬悕绉�"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="缁熶竴绀句細淇$敤浠g爜"> <el-input v-model="state.tableQueryParams.unifiedSocialCreditCode" clearable placeholder="璇疯緭鍏ョ粺涓�绀句細淇$敤浠g爜"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="娉ㄥ唽璧勯噾"> <el-input v-model="state.tableQueryParams.registeredCapital" clearable placeholder="璇疯緭鍏ユ敞鍐岃祫閲�"/> </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="娉曞畾浠h〃浜哄鍚�"> - <el-input v-model="state.tableQueryParams.legalRepresentativeName" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="娉曞畾浠h〃浜鸿韩浠借瘉鏂囦欢璺緞"> - <el-input v-model="state.tableQueryParams.legalRepresentativeIdCard" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉韬唤璇佹枃浠惰矾寰�"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="娉曞畾浠h〃浜哄鍚�"> - <el-input v-model="state.tableQueryParams.legalRepresentativeIdNumber" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="娉曞畾浠h〃浜哄鍚�"> <el-input v-model="state.tableQueryParams.legalRepresentativePhone" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="浼佷笟浣忔墍"> <el-input v-model="state.tableQueryParams.residence" clearable placeholder="璇疯緭鍏ヤ紒涓氫綇鎵�"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="浼佷笟鑱旂郴鐢佃瘽"> <el-input v-model="state.tableQueryParams.enterprisePhone" clearable placeholder="璇疯緭鍏ヤ紒涓氳仈绯荤數璇�"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="浼佷笟鎴愮珛鏃堕棿"> <el-date-picker type="daterange" v-model="state.tableQueryParams.establishmentTimeRange" value-format="YYYY-MM-DD HH:mm:ss" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]" /> </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="浼佷笟涓昏惀涓氬姟"> <el-input v-model="state.tableQueryParams.mainBusiness" clearable placeholder="璇疯緭鍏ヤ紒涓氫富钀ヤ笟鍔�"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="浼佷笟閭"> <el-input v-model="state.tableQueryParams.enterpriseEmail" clearable placeholder="璇疯緭鍏ヤ紒涓氶偖绠�"/> </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="涓氬姟缁忓姙浜哄鍚�"> <el-input v-model="state.tableQueryParams.operatorName" clearable placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉濮撳悕"/> </el-form-item> </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="涓氬姟缁忓姙浜鸿韩浠借瘉鏂囦欢璺緞鎴栨爣璇�"> - <el-input v-model="state.tableQueryParams.operatorIdCard" clearable placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉韬唤璇佹枃浠惰矾寰勬垨鏍囪瘑"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="娉曞畾浠h〃浜哄鍚�"> - <el-input v-model="state.tableQueryParams.operatorIdNumber" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="娉曞畾浠h〃浜哄鍚�"> - <el-input v-model="state.tableQueryParams.operatorPhone" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="娉曞畾浠h〃浜哄鍚�"> - <el-input v-model="state.tableQueryParams.bankName" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> - <el-form-item label="娉曞畾浠h〃浜哄鍚�"> - <el-input v-model="state.tableQueryParams.bankAccount" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> - </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> <el-form-item label="瀹℃牳姝ラ"> <g-sys-dict v-model="state.tableQueryParams.steps" code="CusExtendStep" render-as="select" placeholder="璇烽�夋嫨瀹℃牳姝ラ" clearable filterable /> </el-form-item> - </el-col> - <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10"> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10"> <el-form-item > <el-button-group style="display: flex; align-items: center;"> <el-button type="primary" icon="ele-Search" @click="handleQuery" v-auth="'fBS_CusExtend:page'" v-reclick="1000"> 鏌ヨ </el-button> @@ -253,45 +239,102 @@ </el-form> </el-card> <el-card class="full-table" shadow="hover" style="margin-top: 5px"> - <el-table :data="state.tableData" @selection-change="(val: any[]) => { state.selectData = val; }" style="width: 100%" v-loading="state.tableLoading" tooltip-effect="light" row-key="id" @sort-change="sortChange" border> + <el-table :data="state.tableData" @selection-change="(val: any[]) => { state.selectData = val; }" fit style="width: 100%" v-loading="state.tableLoading" tooltip-effect="light" row-key="id" @sort-change="sortChange" border> <el-table-column type="selection" width="40" align="center" v-if="auth('fBS_CusExtend:batchDelete') || auth('fBS_CusExtend:export')" /> <el-table-column type="index" label="搴忓彿" width="55" align="center"/> - <el-table-column prop='customerId' label='鐢ㄦ埛ID' show-overflow-tooltip /> + <!-- <el-table-column prop='customerId' label='鐢ㄦ埛ID' show-overflow-tooltip /> --> <el-table-column prop='enterpriseType' label='浼佷笟绫诲瀷 ' show-overflow-tooltip /> - <el-table-column prop='transactionCode' label='浜ゆ槗涓讳綋code' show-overflow-tooltip /> - <el-table-column prop='businessLicense' label='钀ヤ笟鎵х収鏂囦欢璺緞' show-overflow-tooltip /> - <el-table-column prop='enterpriseName' label='浼佷笟鍚嶇О' show-overflow-tooltip /> - <el-table-column prop='unifiedSocialCreditCode' label='缁熶竴绀句細淇$敤浠g爜' show-overflow-tooltip /> - <el-table-column prop='registeredCapital' label='娉ㄥ唽璧勯噾' show-overflow-tooltip /> - <el-table-column prop='legalRepresentativeName' label='娉曞畾浠h〃浜哄鍚�' show-overflow-tooltip /> - <el-table-column prop='legalRepresentativeIdCard' label='娉曞畾浠h〃浜鸿韩浠借瘉鏂囦欢璺緞' show-overflow-tooltip /> - <el-table-column prop='legalRepresentativeIdNumber' label='娉曞畾浠h〃浜哄鍚�' show-overflow-tooltip /> - <el-table-column prop='legalRepresentativePhone' label='娉曞畾浠h〃浜哄鍚�' show-overflow-tooltip /> - <el-table-column prop='residence' label='浼佷笟浣忔墍' show-overflow-tooltip /> - <el-table-column prop='enterprisePhone' label='浼佷笟鑱旂郴鐢佃瘽' show-overflow-tooltip /> - <el-table-column prop='establishmentTime' label='浼佷笟鎴愮珛鏃堕棿' show-overflow-tooltip /> - <el-table-column prop='mainBusiness' label='浼佷笟涓昏惀涓氬姟' show-overflow-tooltip /> - <el-table-column prop='enterpriseEmail' label='浼佷笟閭' show-overflow-tooltip /> - <el-table-column prop='operatorName' label='涓氬姟缁忓姙浜哄鍚�' show-overflow-tooltip /> - <el-table-column prop='operatorIdCard' label='涓氬姟缁忓姙浜鸿韩浠借瘉鏂囦欢璺緞鎴栨爣璇�' show-overflow-tooltip /> - <el-table-column prop='operatorIdNumber' label='涓氬姟缁忓姙浜哄鍚�' show-overflow-tooltip /> - <el-table-column prop='operatorPhone' label='涓氬姟缁忓姙浜虹數璇�' show-overflow-tooltip /> - <el-table-column prop='bankName' label='寮�鎴疯鍚嶇О' show-overflow-tooltip /> - <el-table-column prop='bankAccount' label='寮�鎴疯璐﹀彿' show-overflow-tooltip /> - <el-table-column prop='steps' label='瀹℃牳姝ラ' show-overflow-tooltip> - <template #default="scope"> - <g-sys-dict v-model="scope.row.steps" code="CusExtendStep" /> + <el-table-column prop='transactionCode' label='浜ゆ槗涓讳綋' show-overflow-tooltip width="100"> + <template v-slot="scope"> + <span v-for="(item, index) in state.roleList" :key="index"> + <span v-if="item.code == scope.row.transactionCode">{{ item.name }}</span> + </span> </template> </el-table-column> - <el-table-column label="淇敼璁板綍" width="100" align="center" show-overflow-tooltip> + <el-table-column prop='businessLicense' label='钀ヤ笟鎵х収' show-overflow-tooltip width="120"> + <template v-slot="scope"> + <el-image + :src="scope.row.businessLicense" + :zoom-rate="1.2" + :preview-src-list="[scope.row.businessLicense]" + preview-teleported + fit="cover" + /> + </template> + </el-table-column> + <el-table-column prop='enterpriseName' label='浼佷笟鍚嶇О' show-overflow-tooltip width="180"/> + <el-table-column prop='unifiedSocialCreditCode' label='缁熶竴绀句細淇$敤浠g爜' show-overflow-tooltip width="150"/> + <el-table-column prop='registeredCapital' label='娉ㄥ唽璧勯噾' show-overflow-tooltip /> + <el-table-column prop='enterprisePhone' label='鑱旂郴鐢佃瘽' show-overflow-tooltip width="100"/> + <el-table-column prop='establishmentTime' label='鎴愮珛鏃堕棿' show-overflow-tooltip > + <template #default="scope"> + {{ formatDate(new Date(scope.row.establishmentTime), 'YYYY-mm-dd') }} + </template> + </el-table-column> + <!-- <el-table-column prop='mainBusiness' label='浼佷笟涓昏惀涓氬姟' show-overflow-tooltip /> --> + <el-table-column prop='enterpriseEmail' label='浼佷笟閭' show-overflow-tooltip width="150"/> + <el-table-column prop='legalRepresentativeName' label='娉曞畾浠h〃浜哄鍚�' show-overflow-tooltip width="110"/> + <el-table-column prop='legalRepresentativeIdCard' label='娉曞畾浠h〃浜鸿韩浠借瘉' show-overflow-tooltip width="120"> + <template v-slot="scope"> + <el-image + :src="scope.row.legalRepresentativeIdCard" + :zoom-rate="1.2" + :preview-src-list="[scope.row.legalRepresentativeIdCard]" + preview-teleported + fit="cover" + /> + </template></el-table-column> + <!-- <el-table-column prop='legalRepresentativeIdNumber' label='娉曞畾浠h〃浜鸿韩浠借瘉鍙风爜' show-overflow-tooltip width="120"/> --> + <el-table-column prop='legalRepresentativePhone' label='娉曞畾浠h〃浜鸿仈绯荤數璇�' show-overflow-tooltip width="130"/> + <!-- <el-table-column prop='residence' label='浼佷笟浣忔墍' show-overflow-tooltip /> --> + <el-table-column prop='operatorName' label='涓氬姟缁忓姙浜哄鍚�' show-overflow-tooltip width="110"/> + <el-table-column prop='operatorIdCard' label='涓氬姟缁忓姙浜鸿韩浠借瘉' show-overflow-tooltip width="120"> + <template v-slot="scope"> + <el-image + :src="scope.row.operatorIdCard" + :zoom-rate="1.2" + :preview-src-list="[scope.row.operatorIdCard]" + preview-teleported + fit="cover" + /> + </template> + </el-table-column> + <!-- <el-table-column prop='operatorIdNumber' label='涓氬姟缁忓姙浜鸿韩浠借瘉鍙风爜' show-overflow-tooltip width="120"/> --> + <el-table-column prop='operatorPhone' label='涓氬姟缁忓姙浜虹數璇�' show-overflow-tooltip width="120"/> + <!-- <el-table-column prop='bankName' label='寮�鎴疯鍚嶇О' show-overflow-tooltip /> --> + <!-- <el-table-column prop='bankAccount' label='寮�鎴疯璐﹀彿' show-overflow-tooltip width="120"/> --> + <el-table-column prop='steps' label='瀹℃牳姝ラ' show-overflow-tooltip> + <template v-slot="scope"> + <span v-for="(item, index) in state.shenheList" :key="index"> + <el-tag v-if="item.value == scope.row.steps">{{ item.description }}</el-tag> + </span> + </template> + <!-- <template #default="scope"> + + + <el-tag v-if="scope.row.steps==0" type='warning'> + 寰呭鏍� + </el-tag> + <el-tag v-else-if="scope.row.steps==1" type='primary'> + 鏇存敼 + </el-tag> + <el-tag v-else-if="scope.row.steps==2" type='success'> + 閫氳繃 + </el-tag> + <el-tag v-else-if="scope.row.steps==3" type='error'> + 鏈�氳繃 + </el-tag> + </template> --> + </el-table-column> + <!-- <el-table-column label="淇敼璁板綍" width="100" align="center" show-overflow-tooltip> <template #default="scope"> <ModifyRecord :data="scope.row" /> </template> - </el-table-column> - <el-table-column label="鎿嶄綔" width="140" align="center" fixed="right" show-overflow-tooltip v-if="auth('fBS_CusExtend:update') || auth('fBS_CusExtend:delete')"> + </el-table-column> --> + <el-table-column label="鎿嶄綔" width="70" align="center" fixed="right" show-overflow-tooltip v-if="auth('fBS_CusExtend:update') || auth('fBS_CusExtend:delete')"> <template #default="scope"> - <el-button icon="ele-Edit" size="small" text type="primary" @click="editDialogRef.openDialog(scope.row, '缂栬緫浼佷笟璧勬枡')" v-auth="'fBS_CusExtend:update'"> 缂栬緫 </el-button> - <el-button icon="ele-Delete" size="small" text type="primary" @click="delFBS_CusExtend(scope.row)" v-auth="'fBS_CusExtend:delete'"> 鍒犻櫎 </el-button> + <el-button icon="ele-Edit" size="small" text type="primary" @click="editDialogRef.openDialog(scope.row, '缂栬緫浼佷笟璧勬枡', state.qiyeList,state.roleList)" v-auth="'fBS_CusExtend:update'"> </el-button> + <el-button icon="ele-Delete" size="small" text type="primary" @click="delFBS_CusExtend(scope.row)" v-auth="'fBS_CusExtend:delete'"> </el-button> </template> </el-table-column> </el-table> diff --git a/Web/src/views/Customer/fBS_CusExtendExamine/component/editDialog.vue b/Web/src/views/Customer/fBS_CusExtendExamine/component/editDialog.vue new file mode 100644 index 0000000..b3c59dc --- /dev/null +++ b/Web/src/views/Customer/fBS_CusExtendExamine/component/editDialog.vue @@ -0,0 +1,273 @@ +锘�<script lang="ts" name="fBS_CusExtend" setup> +import { ref, reactive, onMounted } from "vue"; +import { ElMessage } from "element-plus"; +import type { FormRules } from "element-plus"; +import { formatDate } from '/@/utils/formatTime'; +import { useFBS_CusExtendApi } from '/@/api/Customer/fBS_CusExtend'; +import type { ImageInstance } from 'element-plus' + +//鐖剁骇浼犻�掓潵鐨勫嚱鏁帮紝鐢ㄤ簬鍥炶皟 +const emit = defineEmits(["reloadTable"]); +const fBS_CusExtendApi = useFBS_CusExtendApi(); +const ruleFormRef = ref(); + +const state = reactive({ + title: '', + loading: false, + showDialog: false, + ruleForm: {} as any, + stores: {}, + dropdownData: {} as any, + enterpriseList:[], + roleList:[], + shenheList:[], + srcList:[] +}); + +// 鑷娣诲姞鍏朵粬瑙勫垯 +const rules = ref<FormRules>({ + customerId: [{required: true, message: '璇烽�夋嫨鐢ㄦ埛ID锛�', trigger: 'blur',},], + enterpriseType: [{required: true, message: '璇烽�夋嫨浼佷笟绫诲瀷 锛�', trigger: 'blur',},], + transactionCode: [{required: true, message: '璇烽�夋嫨浜ゆ槗涓讳綋code锛�', trigger: 'blur',},], + businessLicense: [{required: true, message: '璇烽�夋嫨钀ヤ笟鎵х収鏂囦欢璺緞锛�', trigger: 'blur',},], + enterpriseName: [{required: true, message: '璇烽�夋嫨浼佷笟鍚嶇О锛�', trigger: 'blur',},], + unifiedSocialCreditCode: [{required: true, message: '璇烽�夋嫨缁熶竴绀句細淇$敤浠g爜锛�', trigger: 'blur',},], + registeredCapital: [{required: true, message: '璇烽�夋嫨娉ㄥ唽璧勯噾锛�', trigger: 'blur',},], + legalRepresentativeName: [{required: true, message: '璇烽�夋嫨娉曞畾浠h〃浜哄鍚嶏紒', trigger: 'blur',},], + legalRepresentativeIdCard: [{required: true, message: '璇烽�夋嫨娉曞畾浠h〃浜鸿韩浠借瘉鏂囦欢璺緞锛�', trigger: 'blur',},], + legalRepresentativeIdNumber: [{required: true, message: '璇烽�夋嫨娉曞畾浠h〃浜哄鍚嶏紒', trigger: 'blur',},], + legalRepresentativePhone: [{required: true, message: '璇烽�夋嫨娉曞畾浠h〃浜哄鍚嶏紒', trigger: 'blur',},], + residence: [{required: true, message: '璇烽�夋嫨浼佷笟浣忔墍锛�', trigger: 'blur',},], + enterprisePhone: [{required: true, message: '璇烽�夋嫨浼佷笟鑱旂郴鐢佃瘽锛�', trigger: 'blur',},], + establishmentTime: [{required: true, message: '璇烽�夋嫨浼佷笟鎴愮珛鏃堕棿锛�', trigger: 'change',},], + enterpriseEmail: [{required: true, message: '璇烽�夋嫨浼佷笟閭锛�', trigger: 'blur',},], + bankName: [{required: true, message: '璇烽�夋嫨娉曞畾浠h〃浜哄鍚嶏紒', trigger: 'blur',},], + bankAccount: [{required: true, message: '璇烽�夋嫨娉曞畾浠h〃浜哄鍚嶏紒', trigger: 'blur',},], + steps: [{required: true, message: '璇烽�夋嫨瀹℃牳姝ラ锛�', trigger: 'change',},], +}); + +// 椤甸潰鍔犺浇鏃� +onMounted(async () => { +}); + +// 鎵撳紑寮圭獥 +const openDialog = async (row: any, title: string, qiyeList,roleList,shenheList) => { + state.roleList = roleList + state.enterpriseList = qiyeList + state.shenheList = shenheList + state.title = title; + row = row ?? { }; + state.ruleForm = row.id ? await fBS_CusExtendApi.detail(row.id).then(res => res.data.result) : JSON.parse(JSON.stringify(row)); + // state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(","); + state.showDialog = true; +}; + +// 鍏抽棴寮圭獥 +const closeDialog = () => { + emit("reloadTable"); + state.showDialog = false; +}; + +// 鎻愪氦 +const submit = async () => { + let values = state.ruleForm; + await fBS_CusExtendApi.changeSteps(values.id,values.steps); + closeDialog(); +}; +const isLeaf = data => { + data.forEach(item => { + if (!item.child) { + item.leaf = true; + } + }); +}; +const showPreview = ref(false) +const showImg = name => { + showPreview.value=true + state.srcList = [state.ruleForm[name]] + +}; +const loadNode = (node, resolve) => { + if (node.level === 0) { + isLeaf(node.data); + return resolve(node.data); + } else if (node.level > 0 && node.data.child) { + isLeaf(node.data.child); + return resolve(node.data.child); + } else { + return resolve([]); + } +}; +//灏嗗睘鎬ф垨鑰呭嚱鏁版毚闇茬粰鐖剁粍浠� +defineExpose({ openDialog }); +</script> +<template> + <div class="fBS_CusExtend-container"> + <el-dialog v-model="state.showDialog" :width="'80%'" draggable :close-on-click-modal="false"> + <template #header> + <div style="color: #fff"> + <span>{{ state.title }}</span> + </div> + </template> + <div class="mb10"> + <el-row :gutter="10" justify="end"> + <span>鏄惁閫氳繃锛�</span> + <el-col :span="4"> + <el-select + v-model="state.ruleForm.steps" + placeholder="璇烽�夋嫨浜ゆ槗涓讳綋" + clearable + > + <el-option + v-for="item in state.shenheList" + :key="item.key" + :label="item.description" + :value="item.value" + /> + </el-select> + </el-col> + <!-- <el-col :span="1"><el-button type="primary">瀹℃牳</el-button></el-col> --> + </el-row> + </div> + <el-descriptions class="margin-top" title="" :column="3" border> + <el-descriptions-item :span="3"> + <template #label> + <div class="cell-item">浜ゆ槗涓讳綋</div> + </template> + <!-- {{ state.ruleForm.transactionName }} --> + <span v-for="(item, index) in state.roleList" :key="index"> + <span v-if="item.code == state.ruleForm.transactionCode">{{ item.name }}</span> + </span> + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">浼佷笟鍚嶇О</div> + </template> + {{ state.ruleForm.enterpriseName }} + <span @click="showImg('businessLicense')"> + <el-link type="primary" underline>鏌ョ湅钀ヤ笟鎵х収</el-link> + </span> + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">缁熶竴绀句細淇$敤浠g爜</div> + </template> + {{ state.ruleForm.unifiedSocialCreditCode }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">娉ㄥ唽璧勯噾</div> + </template> + {{ state.ruleForm.registeredCapital }} + </el-descriptions-item> + <el-descriptions-item :span="2"> + <template #label> + <div class="cell-item">浼佷笟绫诲瀷</div> + </template> + {{ state.ruleForm.enterpriseType }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">浣忔墍鍦�</div> + </template> + {{ state.ruleForm.residence }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">鑱旂郴鐢佃瘽</div> + </template> + {{ state.ruleForm.legalRepresentativePhone }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">鎴愮珛鏃堕棿</div> + </template> + {{ formatDate(new Date(state.ruleForm.establishmentTime), 'YYYY-mm-dd') }} + </el-descriptions-item> + <el-descriptions-item :span="2"> + <template #label> + <div class="cell-item">鐢靛瓙閭</div> + </template> + {{ state.ruleForm.enterpriseEmail }} + </el-descriptions-item> + <el-descriptions-item :span="3" label-width="100"> + <template #label> + <div class="cell-item">涓昏惀涓氬姟</div> + </template> + {{ state.ruleForm.mainBusiness }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">娉曞畾浠h〃浜�</div> + </template> + {{ state.ruleForm.legalRepresentativeName }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">韬唤璇�</div> + </template> + {{ state.ruleForm.legalRepresentativeIdNumber }} + <span @click="showImg('legalRepresentativeIdCard')"> + <el-link type="primary" underline>鏌ョ湅韬唤璇�</el-link> + </span> + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">鑱旂郴鐢佃瘽</div> + </template> + {{ state.ruleForm.legalRepresentativePhone }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">涓氬姟缁忓姙浜�</div> + </template> + {{ state.ruleForm.operatorName }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">韬唤璇�</div> + </template> + <el-image-viewer + v-if="showPreview" + :url-list="state.srcList" + show-progress + @close="showPreview = false" + /> + {{ state.ruleForm.operatorIdNumber }} + <span style="margin-right: auto" @click="showImg('operatorIdCard')"> + <el-link type="primary" underline>鏌ョ湅韬唤璇�</el-link> + </span> + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">鑱旂郴鐢佃瘽</div> + </template> + {{ state.ruleForm.operatorPhone }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">寮�鎴烽摱琛�</div> + </template> + {{ state.ruleForm.bankName }} + </el-descriptions-item> + <el-descriptions-item> + <template #label> + <div class="cell-item">閾惰璐﹀彿</div> + </template> + {{ state.ruleForm.bankAccount }} + </el-descriptions-item> + </el-descriptions> + <template #footer> + <span class="dialog-footer"> + <el-button @click="() => state.showDialog = false">鍙� 娑�</el-button> + <el-button @click="submit" type="primary" v-reclick="1000">瀹� 鏍�</el-button> + </span> + </template> + </el-dialog> + </div> +</template> +<style lang="scss" scoped> +:deep(.el-select), :deep(.el-input-number) { + width: 100%; +} +</style> \ No newline at end of file diff --git a/Web/src/views/Customer/fBS_CusExtendExamine/index.vue b/Web/src/views/Customer/fBS_CusExtendExamine/index.vue new file mode 100644 index 0000000..04124e9 --- /dev/null +++ b/Web/src/views/Customer/fBS_CusExtendExamine/index.vue @@ -0,0 +1,361 @@ +锘�<script lang="ts" setup name="fBS_CusExtend"> +import { ref, reactive, onMounted } from "vue"; +import { auth } from '/@/utils/authFunction'; +import { ElMessageBox, ElMessage } from "element-plus"; +import { downloadStreamFile } from "/@/utils/download"; +import { useFBS_CusExtendApi } from '/@/api/Customer/fBS_CusExtend'; +import editDialog from '/@/views/Customer/fBS_CusExtendExamine/component/editDialog.vue' +import printDialog from '/@/views/system/print/component/hiprint/preview.vue' +import ModifyRecord from '/@/components/table/modifyRecord.vue'; +import ImportData from "/@/components/table/importData.vue"; +import { useFBS_ExRoleApi } from '/@/api/Customer/fBS_ExRole'; +import { formatDate } from '/@/utils/formatTime'; + + +const fBS_CusExtendApi = useFBS_CusExtendApi(); +const fBS_ExRoleApi = useFBS_ExRoleApi(); +const printDialogRef = ref(); +const editDialogRef = ref(); +const importDataRef = ref(); +const state = reactive({ + exportLoading: false, + tableLoading: false, + stores: {}, + showAdvanceQueryUI: false, + dropdownData: {} as any, + selectData: [] as any[], + tableQueryParams: {} as any, + tableParams: { + page: 1, + pageSize: 20, + total: 0, + field: 'createTime', // 榛樿鐨勬帓搴忓瓧娈� + order: 'descending', // 鎺掑簭鏂瑰悜 + descStr: 'descending', // 闄嶅簭鎺掑簭鐨勫叧閿瓧绗� + }, + tableParams1: { + page: 1, + pageSize: 20, + total: 0, + field: 'createTime', // 榛樿鐨勬帓搴忓瓧娈� + order: 'descending', // 鎺掑簭鏂瑰悜 + descStr: 'descending', // 闄嶅簭鎺掑簭鐨勫叧閿瓧绗� + }, + tableData: [], + roleList: [], + qiyeList:[], + shenheList:[] +}); + +// 椤甸潰鍔犺浇鏃� +onMounted(async () => { + handleQueryRole() + getParamList() +}); + +const getParamList = async()=>{ + let res = await fBS_CusExtendApi.getParam().then(res => res.data.result); + state.qiyeList = res.enterpriseTypes + state.shenheList = res.stepsTypeItems + console.log(res,state.qiyeList,state.shenheList); + +} + +// 鏌ヨ鎿嶄綔 +const handleQuery = async (params: any = {}) => { + state.tableLoading = true; + state.tableParams = Object.assign(state.tableParams, params); + const result = await fBS_CusExtendApi.page(Object.assign(state.tableQueryParams, state.tableParams)).then(res => res.data.result); + state.tableParams.total = result?.total; + state.tableData = result?.items ?? []; + state.tableLoading = false; +}; + +// 鏌ヨ瑙掕壊 +const handleQueryRole = async (params: any = {}) => { + const result = await fBS_ExRoleApi.page(Object.assign({}, state.tableParams1)).then(res => res.data.result); + state.roleList = result?.items ?? []; +}; + +// 鍒楁帓搴� +const sortChange = async (column: any) => { + state.tableParams.field = column.prop; + state.tableParams.order = column.order; + await handleQuery(); +}; + +// 鍒犻櫎 +const delFBS_CusExtend = (row: any) => { + ElMessageBox.confirm(`纭畾瑕佸垹闄ゅ悧?`, "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + }).then(async () => { + await fBS_CusExtendApi.delete({ id: row.id }); + handleQuery(); + ElMessage.success("鍒犻櫎鎴愬姛"); + }).catch(() => {}); +}; + +// 鎵归噺鍒犻櫎 +const batchDelFBS_CusExtend = () => { + ElMessageBox.confirm(`纭畾瑕佸垹闄�${state.selectData.length}鏉¤褰曞悧?`, "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + }).then(async () => { + await fBS_CusExtendApi.batchDelete(state.selectData.map(u => ({ id: u.id }) )).then(res => { + ElMessage.success(`鎴愬姛鎵归噺鍒犻櫎${res.data.result}鏉¤褰昤); + handleQuery(); + }); + }).catch(() => {}); +}; + +// 瀵煎嚭鏁版嵁 +const exportFBS_CusExtendCommand = async (command: string) => { + try { + state.exportLoading = true; + if (command === 'select') { + const params = Object.assign({}, state.tableQueryParams, state.tableParams, { selectKeyList: state.selectData.map(u => u.id) }); + await fBS_CusExtendApi.exportData(params).then(res => downloadStreamFile(res)); + } else if (command === 'current') { + const params = Object.assign({}, state.tableQueryParams, state.tableParams); + await fBS_CusExtendApi.exportData(params).then(res => downloadStreamFile(res)); + } else if (command === 'all') { + const params = Object.assign({}, state.tableQueryParams, state.tableParams, { page: 1, pageSize: 99999999 }); + await fBS_CusExtendApi.exportData(params).then(res => downloadStreamFile(res)); + } + } finally { + state.exportLoading = false; + } +} + +handleQuery(); +</script> +<template> + <div class="fBS_CusExtend-container" v-loading="state.exportLoading"> + <el-card shadow="hover" :body-style="{ paddingBottom: '0' }"> + <el-form :model="state.tableQueryParams" ref="queryForm" labelWidth="120"> + <el-row> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10"> + <el-form-item label="鍏抽敭瀛�"> + <el-input v-model="state.tableQueryParams.keyword" clearable placeholder="璇疯緭鍏ユā绯婃煡璇㈠叧閿瓧"/> + </el-form-item> + </el-col> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="鐢ㄦ埛ID"> + <el-input v-model="state.tableQueryParams.customerId" clearable placeholder="璇疯緭鍏ョ敤鎴稩D"/> + </el-form-item> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浼佷笟绫诲瀷 "> + <el-input v-model="state.tableQueryParams.enterpriseType" clearable placeholder="璇疯緭鍏ヤ紒涓氱被鍨� "/> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浜ゆ槗涓讳綋"> + <el-input v-model="state.tableQueryParams.transactionCode" clearable placeholder="璇疯緭鍏ヤ氦鏄撲富浣�"/> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浼佷笟鍚嶇О"> + <el-input v-model="state.tableQueryParams.enterpriseName" clearable placeholder="璇疯緭鍏ヤ紒涓氬悕绉�"/> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="缁熶竴绀句細淇$敤浠g爜"> + <el-input v-model="state.tableQueryParams.unifiedSocialCreditCode" clearable placeholder="璇疯緭鍏ョ粺涓�绀句細淇$敤浠g爜"/> + </el-form-item> + </el-col> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="娉ㄥ唽璧勯噾"> + <el-input v-model="state.tableQueryParams.registeredCapital" clearable placeholder="璇疯緭鍏ユ敞鍐岃祫閲�"/> + </el-form-item> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="娉曞畾浠h〃浜哄鍚�"> + <el-input v-model="state.tableQueryParams.legalRepresentativePhone" clearable placeholder="璇疯緭鍏ユ硶瀹氫唬琛ㄤ汉濮撳悕"/> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浼佷笟浣忔墍"> + <el-input v-model="state.tableQueryParams.residence" clearable placeholder="璇疯緭鍏ヤ紒涓氫綇鎵�"/> + </el-form-item> + </el-col> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浼佷笟鑱旂郴鐢佃瘽"> + <el-input v-model="state.tableQueryParams.enterprisePhone" clearable placeholder="璇疯緭鍏ヤ紒涓氳仈绯荤數璇�"/> + </el-form-item> + </el-col> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浼佷笟鎴愮珛鏃堕棿"> + <el-date-picker type="daterange" v-model="state.tableQueryParams.establishmentTimeRange" value-format="YYYY-MM-DD HH:mm:ss" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" :default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]" /> + </el-form-item> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浼佷笟涓昏惀涓氬姟"> + <el-input v-model="state.tableQueryParams.mainBusiness" clearable placeholder="璇疯緭鍏ヤ紒涓氫富钀ヤ笟鍔�"/> + </el-form-item> + </el-col> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="浼佷笟閭"> + <el-input v-model="state.tableQueryParams.enterpriseEmail" clearable placeholder="璇疯緭鍏ヤ紒涓氶偖绠�"/> + </el-form-item> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="涓氬姟缁忓姙浜哄鍚�"> + <el-input v-model="state.tableQueryParams.operatorName" clearable placeholder="璇疯緭鍏ヤ笟鍔$粡鍔炰汉濮撳悕"/> + </el-form-item> + </el-col> + <!-- <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10" v-if="state.showAdvanceQueryUI"> + <el-form-item label="瀹℃牳姝ラ"> + <g-sys-dict v-model="state.tableQueryParams.steps" code="CusExtendStep" render-as="select" placeholder="璇烽�夋嫨瀹℃牳姝ラ" clearable filterable /> + </el-form-item> + </el-col> --> + <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="4" class="mb10"> + <el-form-item > + <el-button-group style="display: flex; align-items: center;"> + <el-button type="primary" icon="ele-Search" @click="handleQuery" v-auth="'fBS_CusExtend:page'" v-reclick="1000"> 鏌ヨ </el-button> + <el-button icon="ele-Refresh" @click="() => state.tableQueryParams = {}"> 閲嶇疆 </el-button> + <el-button icon="ele-ZoomIn" @click="() => state.showAdvanceQueryUI = true" v-if="!state.showAdvanceQueryUI" style="margin-left:5px;"> 楂樼骇鏌ヨ </el-button> + <el-button icon="ele-ZoomOut" @click="() => state.showAdvanceQueryUI = false" v-if="state.showAdvanceQueryUI" style="margin-left:5px;"> 闅愯棌 </el-button> + <!-- <el-button type="danger" style="margin-left:5px;" icon="ele-Delete" @click="batchDelFBS_CusExtend" :disabled="state.selectData.length == 0" v-auth="'fBS_CusExtend:batchDelete'"> 鍒犻櫎 </el-button> --> + <!-- <el-button type="primary" style="margin-left:5px;" icon="ele-Plus" @click="editDialogRef.openDialog(null, '鏂板浼佷笟璧勬枡')" v-auth="'fBS_CusExtend:add'"> 鏂板 </el-button> --> + <el-dropdown :show-timeout="70" :hide-timeout="50" @command="exportFBS_CusExtendCommand"> + <el-button type="primary" style="margin-left:5px;" icon="ele-FolderOpened" v-reclick="20000" v-auth="'fBS_CusExtend:export'"> 瀵煎嚭 </el-button> + <template #dropdown> + <el-dropdown-menu> + <el-dropdown-item command="select" :disabled="state.selectData.length == 0">瀵煎嚭閫変腑</el-dropdown-item> + <el-dropdown-item command="current">瀵煎嚭鏈〉</el-dropdown-item> + <el-dropdown-item command="all">瀵煎嚭鍏ㄩ儴</el-dropdown-item> + </el-dropdown-menu> + </template> + </el-dropdown> + <el-button type="warning" style="margin-left:5px;" icon="ele-MostlyCloudy" @click="importDataRef.openDialog()" v-auth="'fBS_CusExtend:import'"> 瀵煎叆 </el-button> + </el-button-group> + </el-form-item> + </el-col> + </el-row> + </el-form> + </el-card> + <el-card class="full-table" shadow="hover" style="margin-top: 5px"> + <el-table :data="state.tableData" @selection-change="(val: any[]) => { state.selectData = val; }" fit style="width: 100%" v-loading="state.tableLoading" tooltip-effect="light" row-key="id" @sort-change="sortChange" border> + <el-table-column type="selection" width="40" align="center" v-if="auth('fBS_CusExtend:batchDelete') || auth('fBS_CusExtend:export')" /> + <el-table-column type="index" label="搴忓彿" width="55" align="center"/> + <!-- <el-table-column prop='customerId' label='鐢ㄦ埛ID' show-overflow-tooltip /> --> + <el-table-column prop='enterpriseType' label='浼佷笟绫诲瀷 ' show-overflow-tooltip /> + <el-table-column prop='transactionCode' label='浜ゆ槗涓讳綋' show-overflow-tooltip width="100"> + <template v-slot="scope"> + <span v-for="(item, index) in state.roleList" :key="index"> + <span v-if="item.code == scope.row.transactionCode">{{ item.name }}</span> + </span> + </template> + </el-table-column> + <el-table-column prop='businessLicense' label='钀ヤ笟鎵х収' show-overflow-tooltip width="120"> + <template v-slot="scope"> + <el-image + :src="scope.row.businessLicense" + :zoom-rate="1.2" + :preview-src-list="[scope.row.businessLicense]" + preview-teleported + fit="cover" + /> + </template> + </el-table-column> + <el-table-column prop='enterpriseName' label='浼佷笟鍚嶇О' show-overflow-tooltip width="180"/> + <el-table-column prop='unifiedSocialCreditCode' label='缁熶竴绀句細淇$敤浠g爜' show-overflow-tooltip width="150"/> + <el-table-column prop='registeredCapital' label='娉ㄥ唽璧勯噾' show-overflow-tooltip /> + <el-table-column prop='enterprisePhone' label='鑱旂郴鐢佃瘽' show-overflow-tooltip width="100"/> + <el-table-column prop='establishmentTime' label='鎴愮珛鏃堕棿' show-overflow-tooltip > + <template #default="scope"> + {{ formatDate(new Date(scope.row.establishmentTime), 'YYYY-mm-dd') }} + </template> + </el-table-column> + <!-- <el-table-column prop='mainBusiness' label='浼佷笟涓昏惀涓氬姟' show-overflow-tooltip /> --> + <el-table-column prop='enterpriseEmail' label='浼佷笟閭' show-overflow-tooltip width="150"/> + <el-table-column prop='legalRepresentativeName' label='娉曞畾浠h〃浜哄鍚�' show-overflow-tooltip width="110"/> + <el-table-column prop='legalRepresentativeIdCard' label='娉曞畾浠h〃浜鸿韩浠借瘉' show-overflow-tooltip width="120"> + <template v-slot="scope"> + <el-image + :src="scope.row.legalRepresentativeIdCard" + :zoom-rate="1.2" + :preview-src-list="[scope.row.legalRepresentativeIdCard]" + preview-teleported + fit="cover" + /> + </template></el-table-column> + <!-- <el-table-column prop='legalRepresentativeIdNumber' label='娉曞畾浠h〃浜鸿韩浠借瘉鍙风爜' show-overflow-tooltip width="120"/> --> + <el-table-column prop='legalRepresentativePhone' label='娉曞畾浠h〃浜鸿仈绯荤數璇�' show-overflow-tooltip width="130"/> + <!-- <el-table-column prop='residence' label='浼佷笟浣忔墍' show-overflow-tooltip /> --> + <el-table-column prop='operatorName' label='涓氬姟缁忓姙浜哄鍚�' show-overflow-tooltip width="110"/> + <el-table-column prop='operatorIdCard' label='涓氬姟缁忓姙浜鸿韩浠借瘉' show-overflow-tooltip width="120"> + <template v-slot="scope"> + <el-image + :src="scope.row.operatorIdCard" + :zoom-rate="1.2" + :preview-src-list="[scope.row.operatorIdCard]" + preview-teleported + fit="cover" + /> + </template> + </el-table-column> + <!-- <el-table-column prop='operatorIdNumber' label='涓氬姟缁忓姙浜鸿韩浠借瘉鍙风爜' show-overflow-tooltip width="120"/> --> + <el-table-column prop='operatorPhone' label='涓氬姟缁忓姙浜虹數璇�' show-overflow-tooltip width="120"/> + <!-- <el-table-column prop='bankName' label='寮�鎴疯鍚嶇О' show-overflow-tooltip /> --> + <!-- <el-table-column prop='bankAccount' label='寮�鎴疯璐﹀彿' show-overflow-tooltip width="120"/> --> + <el-table-column prop='steps' label='瀹℃牳姝ラ' show-overflow-tooltip> + <template v-slot="scope"> + <span v-for="(item, index) in state.shenheList" :key="index"> + <el-tag v-if="item.value == scope.row.steps">{{ item.description }}</el-tag> + </span> + </template> + <!-- <template #default="scope"> + + + <el-tag v-if="scope.row.steps==0" type='warning'> + 寰呭鏍� + </el-tag> + <el-tag v-else-if="scope.row.steps==1" type='primary'> + 鏇存敼 + </el-tag> + <el-tag v-else-if="scope.row.steps==2" type='success'> + 閫氳繃 + </el-tag> + <el-tag v-else-if="scope.row.steps==3" type='error'> + 鏈�氳繃 + </el-tag> + </template> --> + </el-table-column> + <!-- <el-table-column label="淇敼璁板綍" width="100" align="center" show-overflow-tooltip> + <template #default="scope"> + <ModifyRecord :data="scope.row" /> + </template> + </el-table-column> --> + <el-table-column label="鎿嶄綔" width="70" align="center" fixed="right" show-overflow-tooltip v-if="auth('fBS_CusExtend:update') || auth('fBS_CusExtend:delete')"> + <template #default="scope"> + <el-button icon="ele-Check" size="small" text type="primary" @click="editDialogRef.openDialog(scope.row, '瀹℃牳浼佷笟璧勬枡', state.qiyeList,state.roleList,state.shenheList)" v-auth="'fBS_CusExtend:update'"> </el-button> + <!-- <el-button icon="ele-Delete" size="small" text type="primary" @click="delFBS_CusExtend(scope.row)" v-auth="'fBS_CusExtend:delete'"> </el-button> --> + </template> + </el-table-column> + </el-table> + <el-pagination + v-model:currentPage="state.tableParams.page" + v-model:page-size="state.tableParams.pageSize" + @size-change="(val: any) => handleQuery({ pageSize: val })" + @current-change="(val: any) => handleQuery({ page: val })" + layout="total, sizes, prev, pager, next, jumper" + :page-sizes="[10, 20, 50, 100, 200, 500]" + :total="state.tableParams.total" + size="small" + background /> + <ImportData ref="importDataRef" :import="fBS_CusExtendApi.importData" :download="fBS_CusExtendApi.downloadTemplate" v-auth="'fBS_CusExtend:import'" @refresh="handleQuery"/> + <printDialog ref="printDialogRef" :title="'鎵撳嵃浼佷笟璧勬枡'" @reloadTable="handleQuery" /> + <editDialog ref="editDialogRef" @reloadTable="handleQuery" /> + </el-card> + </div> +</template> +<style scoped> +:deep(.el-input), :deep(.el-select), :deep(.el-input-number) { + width: 100%; +} +</style> \ No newline at end of file -- Gitblit v1.9.1