From 376f3de70bfdd7905876123ba5a331c0aa176199 Mon Sep 17 00:00:00 2001
From: 小飞侠 <8277136+liaoxujun@user.noreply.gitee.com>
Date: 星期四, 25 九月 2025 09:10:29 +0800
Subject: [PATCH] 修改注册时可以多模块注册
---
Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue | 235 ++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 160 insertions(+), 75 deletions(-)
diff --git a/Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue b/Web/src/views/Customer/fBS_CusExtend/component/editDialog.vue
index 9d15c02..c5be1ca 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:[] as any[],
+ roleList:[] as any[]
});
// 鑷娣诲姞鍏朵粬瑙勫垯
@@ -46,10 +49,13 @@
});
// 鎵撳紑寮圭獥
-const openDialog = async (row: any, title: string) => {
+const openDialog = async (row: any, title: string, qiyeList: any[], roleList: any[]) => {
+ 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&&state.ruleForm.enterpriseType.split(",");
state.showDialog = true;
};
@@ -74,13 +80,30 @@
}
});
};
-
+const isLeaf = (data: any[]) => {
+ data.forEach(item => {
+ if (!item.child) {
+ item.leaf = true;
+ }
+ });
+};
+const loadNode = (node: { level: number; data: any; }, resolve: (arg0: never[]) => any) => {
+ 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,183 @@
<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-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-form-item label="涓氬姟缁忓姙浜哄鍚�" prop="operatorName">
- <el-input v-model="state.ruleForm.operatorName" 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="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="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-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-form-item label="涓氬姟缁忓姙浜虹數璇�" prop="operatorPhone">
- <el-input v-model="state.ruleForm.operatorPhone" 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="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="24" :md="24" :lg="24" :xl="24" class="mb20" >
+ <el-form-item label="閾惰鏀舵浜岀淮鐮�" prop="bankAccountIMG">
+ <el-image
+ :src="state.ruleForm.bankAccountIMG"
+ :zoom-rate="1.2"
+ :preview-src-list="[state.ruleForm.bankAccountIMG]"
+ 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="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="璇疯緭鍏ヤ笟鍔$粡鍔炰汉濮撳悕" 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="涓氬姟缁忓姙浜鸿韩浠借瘉鍙风爜" 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="6" :xl="6" class="mb20" >
+ <el-form-item label="涓氬姟缁忓姙浜虹數璇�" prop="operatorPhone">
+ <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="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>
--
Gitblit v1.9.1