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