From bb576469eb1e2cb2bf8e1717902702ca28f5ef65 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期一, 28 七月 2025 17:20:56 +0800
Subject: [PATCH] '-'

---
 src/views/register/registernav.vue |  107 +++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 79 insertions(+), 28 deletions(-)

diff --git a/src/views/register/registernav.vue b/src/views/register/registernav.vue
index 27338d8..1ccf111 100644
--- a/src/views/register/registernav.vue
+++ b/src/views/register/registernav.vue
@@ -113,7 +113,11 @@
           <!-- <p class="text-center xieyi">娉ㄥ唽鍗忚</p> -->
         </div>
       </div>
-      <div v-else-if="active == 1" class="flex justify-center mt-5">
+      <div
+        v-else-if="active == 1"
+        v-loading="isLoading"
+        class="flex justify-center mt-5"
+      >
         <el-form
           ref="ruleFormRef"
           style="width: 95%"
@@ -124,7 +128,20 @@
           <el-row>
             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
               <el-form-item label="浼佷笟绫诲瀷" prop="enterpriseType">
-                <el-select
+                <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-select
                   v-model="state.ruleForm.enterpriseType"
                   placeholder="璇烽�夋嫨"
                   clearable
@@ -136,7 +153,7 @@
                     :label="item.name"
                     :value="item.code"
                   />
-                </el-select>
+                </el-select> -->
               </el-form-item>
             </el-col>
           </el-row>
@@ -390,7 +407,7 @@
       <div v-if="active !== 3" class="mx-auto pt-2 pb-5 flex justify-center">
         <el-button :disabled="active == 1" @click="backStep">涓婁竴姝�</el-button>
         <el-button type="primary" @click="nextStep(ruleFormRef)"
-          ><span v-if="active == 1">鍚屾剰</span>涓嬩竴姝�</el-button
+          ><span v-if="active == 0">鍚屾剰</span>涓嬩竴姝�</el-button
         >
       </div>
     </div>
@@ -412,17 +429,21 @@
 import {
   enterpriseTypes,
   createrExRolsInformation
-} from "@/api/register/index.ts";
+} from "@/api/register/index";
 import { cloneDeep } from "@pureadmin/utils";
 import { getToken } from "@/utils/auth";
 import { useRoute, useRouter } from "vue-router";
+import { changeCusExtend } from "@/api/mine";
+
 const router = useRouter();
-const { route, username, userRoles } = useNav();
+const { route } = useNav();
 
 defineOptions({
   name: "RegisterNav"
 });
 const ruleFormRef = ref<FormInstance>();
+const isLoading = ref(false);
+const isFirst = ref(true);
 const state = reactive({
   headers: {
     // Accept: "application/json, text/plain, */*",
@@ -485,13 +506,6 @@
     enterpriseType: [
       { required: true, message: "璇烽�夋嫨浼佷笟绫诲瀷", trigger: "change" }
     ],
-    // transactionCode: [
-    //   { required: true, message: "璇疯緭鍏ヤ氦鏄撲富浣撲唬鐮�", trigger: "blur" },
-    //   { min: 1, message: "浜ゆ槗涓讳綋浠g爜鏈�灏忛暱搴︿负1", trigger: "blur" }
-    // ],
-    // transactionName: [
-    //   { required: true, message: "璇疯緭鍏ヤ氦鏄撲富浣撳悕绉�", trigger: "blur" }
-    // ],
     businessLicense: [
       { required: true, message: "璇蜂笂浼犺惀涓氭墽鐓�", trigger: "change" }
     ],
@@ -598,18 +612,49 @@
 };
 // 椤甸潰鍒濆鍖�
 onMounted(async () => {
-  // console.log(
-  //   userRoles.code,
-  //   username.value,
-  //   "hhhhhhh",
-  //   storageLocal().getItem<DataInfo<number>>(userKey)?.roles
-  // );
-  // console.log(useUserStoreHook()?.roles, "useUserStoreHook()?.roles");
+  // let res = await useUserStoreHook().getCusExtendInfo();
+  // if (res.code == 200) {
+  //   state.ruleForm = res.result;
+  //   if (res.result.enterpriseType) {
+  //     isFirst.value = false;
+  //   }
+  //   state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(",");
+  //   console.log(state.ruleForm.enterpriseType, "state.ruleForm.enterpriseType");
+  // } else {
+  //   message(res.message, {
+  //     type: "error"
+  //   });
+  // }
+
+  let nowRole = useUserStoreHook()?.nowRole;
+  console.log(nowRole);
   state.ruleForm.transactionCode = route.query.code;
-  // 浼佷笟绫诲瀷
-  let res = await enterpriseTypes();
-  state.enterpriseList = res?.result;
+  if (nowRole?.code == useUserStoreHook().enterpriseInfo.transactionCode) {
+    state.ruleForm = cloneDeep(useUserStoreHook().enterpriseInfo);
+    state.ruleForm.enterpriseType = state.ruleForm.enterpriseType.split(",");
+    isFirst.value = false;
+  }
+  let resTypes = await enterpriseTypes();
+  state.enterpriseList = resTypes?.result;
 });
+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([]);
+  }
+};
 let active = ref(0);
 const nextStep = async (formEl: FormInstance | undefined) => {
   if (active.value >= 1) {
@@ -638,14 +683,10 @@
           }
         });
         return;
-      } else {
-        return;
-        console.log("error submit!", fields);
       }
     });
     return;
   }
-
   active.value += 1;
 };
 const backStep = () => {
@@ -655,8 +696,14 @@
 const sumbitData = async () => {
   let obj = cloneDeep(state.ruleForm);
   obj.enterpriseType = state.ruleForm.enterpriseType.join(",");
-  let res = await createrExRolsInformation(obj);
+  let res = isFirst.value
+    ? await createrExRolsInformation(obj)
+    : await changeCusExtend(obj);
   if (res.code == "200") {
+    await useUserStoreHook().changeLogoInExRule({
+      ruleCode: state.ruleForm.transactionCode
+    });
+    await useUserStoreHook().getCusExtendInfo();
     active.value = 3;
   } else {
     message(res.message, {
@@ -684,6 +731,7 @@
       type: "error"
     });
   }
+  isLoading.value = false;
 };
 
 const handleAvatarSuccessLegalRepresentative: UploadProps["onSuccess"] = (
@@ -701,6 +749,7 @@
       type: "error"
     });
   }
+  isLoading.value = false;
 };
 
 const handleAvatarSuccessOperator: UploadProps["onSuccess"] = (
@@ -718,9 +767,11 @@
       type: "error"
     });
   }
+  isLoading.value = false;
 };
 
 const beforeAvatarUpload: UploadProps["beforeUpload"] = rawFile => {
+  isLoading.value = true;
   // if (rawFile.type !== "image/jpeg") {
   //   message(`璇蜂笂浼爅peg绫诲瀷鐨勫浘鐗嘸, {
   //     type: "error"

--
Gitblit v1.9.1