From 650a84730f4418ebbcdc58bbadd4d56f5dd3c8fd Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 07 八月 2025 14:01:40 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobAdmin

---
 src/views/EnterpriseManage/components/AddOrEditEnterpriseView.vue |  200 +++++++++++++++++++++++++++----------------------
 1 files changed, 109 insertions(+), 91 deletions(-)

diff --git a/src/views/EnterpriseManage/components/AddOrEditEnterpriseView.vue b/src/views/EnterpriseManage/components/AddOrEditEnterpriseView.vue
index b5a01b5..13f762d 100644
--- a/src/views/EnterpriseManage/components/AddOrEditEnterpriseView.vue
+++ b/src/views/EnterpriseManage/components/AddOrEditEnterpriseView.vue
@@ -4,7 +4,7 @@
       <ChunkCell title="浼佷笟鍩烘湰淇℃伅">
         <ProForm :model="form" ref="formRef" label-width="140px" :is-read="isDetail">
           <ProFormCol>
-            <ProFormColItem :span="12">
+            <ProFormColItem :span="8">
               <ProFormItemV2
                 label="浼佷笟鍚嶇О:"
                 prop="enterpriseName"
@@ -17,23 +17,19 @@
                 />
               </ProFormItemV2>
             </ProFormColItem>
-          </ProFormCol>
-          <ProFormCol>
-            <ProFormColItem :span="12">
-              <ProFormItemV2 label="娉曚汉濮撳悕:" prop="legalPersonName">
+            <ProFormColItem :span="8">
+              <ProFormItemV2 label="娉曚汉濮撳悕:" prop="legalPerson">
                 <ProFormText
-                  v-model.trim="form.legalPersonName"
+                  v-model.trim="form.legalPerson"
                   :maxlength="30"
                   placeholder="璇疯緭鍏ユ硶浜哄鍚�"
                 />
               </ProFormItemV2>
             </ProFormColItem>
-          </ProFormCol>
-          <ProFormCol>
-            <ProFormColItem :span="12">
-              <ProFormItemV2 label="娉曚汉韬唤璇佸彿:" prop="legalPersonIdNumber">
+            <ProFormColItem :span="8">
+              <ProFormItemV2 label="娉曚汉韬唤璇佸彿:" prop="legalIdentity">
                 <ProFormText
-                  v-model.trim="form.legalPersonIdNumber"
+                  v-model.trim="form.legalIdentity"
                   :maxlength="30"
                   placeholder="璇疯緭鍏ユ硶浜鸿韩浠借瘉鍙�"
                 />
@@ -41,7 +37,7 @@
             </ProFormColItem>
           </ProFormCol>
           <ProFormCol>
-            <ProFormColItem :span="12">
+            <ProFormColItem :span="8">
               <ProFormItemV2
                 label="缁熶竴绀句細淇$敤浠g爜:"
                 prop="societyCreditCode"
@@ -53,48 +49,39 @@
                 />
               </ProFormItemV2>
             </ProFormColItem>
-          </ProFormCol>
-          <ProFormCol>
-            <ProFormColItem :span="12">
-              <ProFormItemV2 label="鎵�鍦ㄧ渷浠�:" prop="proviceName">
-                <ProFormText
-                  v-model.trim="form.proviceName"
-                  :maxlength="30"
-                  placeholder="璇疯緭鍏ユ墍鍦ㄧ渷浠�"
+            <!-- <ProFormColItem :span="8">
+              <ProFormItemV2
+                label="鎵�鍦ㄥ湴鍖�:"
+                prop="areaList"
+                :check-rules="[
+                  {
+                    type: 'array',
+                    message: '璇烽�夋嫨',
+                  },
+                ]"
+              >
+                <ProFromAddressSelectV2
+                  v-model:areaList="form.areaList"
+                  areaListPlaceholder="璇烽�夋嫨"
                 />
               </ProFormItemV2>
-            </ProFormColItem>
-          </ProFormCol>
-          <ProFormCol>
-            <ProFormColItem :span="12">
-              <ProFormItemV2 label="鎵�灞炶涓�:" prop="belongIndustryType">
+            </ProFormColItem> -->
+            <ProFormColItem :span="8">
+              <ProFormItemV2 label="鎵�灞炶涓�:" prop="industryTypeId">
                 <ProFormSelect
+                  v-model="form.industryTypeId"
                   placeholder="璇烽�夋嫨鎵�灞炶涓�"
-                  :value-enum="typeList"
-                  enum-value-key="id"
-                  enum-label-key="name"
+                  :value-enum="dictionaryDataList"
                   clearable
-                  v-model="form.belongIndustryType"
                 ></ProFormSelect>
               </ProFormItemV2>
             </ProFormColItem>
           </ProFormCol>
           <ProFormCol>
-            <ProFormColItem :span="12">
-              <ProFormItemV2 label="鎵�鍦ㄥ煄甯�:" prop="cityName">
-                <ProFormText
-                  v-model.trim="form.cityName"
-                  :maxlength="30"
-                  placeholder="璇疯緭鍏ユ墍鍦ㄥ煄甯�"
-                />
-              </ProFormItemV2>
-            </ProFormColItem>
-          </ProFormCol>
-          <ProFormCol>
             <ProFormColItem :span="24">
-              <ProFormItemV2 label="涓昏惀涓氬姟:" prop="cityName">
+              <ProFormItemV2 label="涓昏惀涓氬姟:" prop="mainBusiness">
                 <ProFormTextArea
-                  v-model="form.cityName"
+                  v-model="form.mainBusiness"
                   maxlength="200"
                   :rows="6"
                   show-word-limit
@@ -117,11 +104,11 @@
             <ProFormColItem :span="12">
               <ProFormItemV2
                 label="鑱旂郴浜�:"
-                prop="contact"
+                prop="contacts"
                 :check-rules="[{ message: '璇疯緭鍏ヨ仈绯讳汉' }]"
               >
                 <ProFormText
-                  v-model.trim="form.contact"
+                  v-model.trim="form.contacts"
                   :maxlength="30"
                   placeholder="璇疯緭鍏ヨ仈绯讳汉"
                 />
@@ -132,18 +119,18 @@
             <ProFormColItem :span="12">
               <ProFormItemV2
                 label="鑱旂郴鐢佃瘽:"
-                prop="contactPhone"
+                prop="contactPhoneNumber"
                 :check-rules="[{ message: '璇疯緭鍏ヨ仈绯荤數璇�', type: 'phone' }]"
               >
-                <ProFormText v-model.trim="form.contactPhone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
+                <ProFormText v-model.trim="form.contactPhoneNumber" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
               </ProFormItemV2>
             </ProFormColItem>
           </ProFormCol>
           <ProFormCol>
             <ProFormColItem :span="12">
-              <ProFormItemV2 label="閭:" prop="email">
+              <ProFormItemV2 label="閭:" prop="contactEmail">
                 <ProFormText
-                  v-model.trim="form.email"
+                  v-model.trim="form.contactEmail"
                   :maxlength="30"
                   placeholder="璇疯緭鍏ラ偖绠�"
                   :formatter="filterCN"
@@ -162,13 +149,30 @@
           :is-read="isDetail"
         >
           <ProFormCol>
-            <ProFormColItem :span="12">
+            <ProFormColItem :span="8">
               <ProFormItemV2
                 label="璐﹀彿:"
-                prop="contact"
+                prop="userName"
                 :check-rules="[{ message: '璇疯緭鍏ヨ处鍙�' }]"
               >
-                <ProFormText v-model.trim="form.contact" :maxlength="30" placeholder="璇疯緭鍏ヨ处鍙�" />
+                <ProFormText
+                  v-model.trim="form.userName"
+                  :maxlength="30"
+                  placeholder="璇疯緭鍏ヨ处鍙�"
+                />
+              </ProFormItemV2>
+            </ProFormColItem>
+            <ProFormColItem :span="8" v-if="!isEdit">
+              <ProFormItemV2
+                label="瀵嗙爜:"
+                prop="password"
+                :check-rules="[{ message: '璇疯緭鍏ュ瘑鐮�' }]"
+              >
+                <ProFormText
+                  v-model.trim="form.password"
+                  :maxlength="30"
+                  placeholder="璇疯緭鍏ュ瘑鐮�"
+                />
               </ProFormItemV2>
             </ProFormColItem>
           </ProFormCol>
@@ -195,9 +199,8 @@
   ProFormColItem,
 } from '@bole-core/components';
 import { FormRules, FormInstance } from 'element-plus';
-import { SearchType } from '@/constants';
-import * as flexEnterpriseServices from '@/services/api/FlexEnterprise';
-import { useRouteView, useGlobalEventContext, GlobalEvent, useSearchSettingType } from '@/hooks';
+import * as enterpriseServices from '@/services/api/enterprise';
+import { useRouteView, useGlobalEventContext, GlobalEvent } from '@/hooks';
 import _ from 'lodash';
 import { validateFormList, filterCN } from '@/utils';
 import { Message, BoleRegExp } from '@bole-core/core';
@@ -207,56 +210,68 @@
 
 type Props = {
   isDetail: boolean;
-  id?: string;
   emitAddEvent?: keyof GlobalEvent;
   emitEditEvent?: keyof GlobalEvent;
   backRouteName?: string;
 };
 
 const props = withDefaults(defineProps<Props>(), {
-  id: '',
   emitAddEvent: 'enterprise:add',
   emitEditEvent: 'enterprise:edit',
   backRouteName: 'EnterpriseManageList',
 });
 
 const route = useRoute();
-const isEdit = computed(() => !!props.id);
+const id = route.params.id as string;
+const isEdit = computed(() => !!id);
+const { dictionaryDataList } = useDictionaryDataSelect({
+  categoryCode: computed(() => CategoryCode.IndustryCategory),
+});
 const { closeViewPush } = useRouteView();
 const eventContext = useGlobalEventContext();
-
-const { searchSettingTypeList: typeList } = useSearchSettingType({
-  searchType: SearchType.IndustryCategory,
-});
 
 const form = reactive({
   id: '',
   enterpriseName: '',
-  legalPersonName: '',
-  legalPersonIdNumber: '',
+  legalPerson: '',
+  legalIdentity: '',
   societyCreditCode: '',
-  proviceName: '',
-  cityName: '',
-  belongIndustryType: '',
-  contact: '',
-  contactPhone: '',
-  email: '',
+  industryTypeId: '',
+  mainBusiness: '',
+  areaList: [130000, 131000] as number[],
+  contacts: '',
+  contactPhoneNumber: '',
+  contactEmail: '',
+  userName: '',
+  password: '',
 });
 
 onMounted(async () => {});
 
 const { isLoading } = useQuery({
-  //   queryKey: ['insureSupplierService/getInsureSupplierInfoById', props.id],
-  //   queryFn: async () => {
-  //     return await insureSupplierService.getInsureSupplierInfoById(
-  //       { id: props.id },
-  //       {
-  //         showLoading: false,
-  //       }
-  //     );
-  //   },
-  onSuccess(data) {},
-  enabled: computed(() => !!props.id),
+  queryKey: ['enterpriseServices/getEnterprise', id],
+  queryFn: async () => {
+    return await enterpriseServices.getEnterprise(
+      { id: id },
+      {
+        showLoading: false,
+      }
+    );
+  },
+  onSuccess(data) {
+    form.id = data.id;
+    form.enterpriseName = data.enterpriseName;
+    form.legalPerson = data.legalPerson;
+    form.legalIdentity = data.legalIdentity;
+    form.societyCreditCode = data.societyCreditCode;
+    form.industryTypeId = data.industryTypeId;
+    form.mainBusiness = data.mainBusiness;
+    form.contacts = data.contacts;
+    form.contactPhoneNumber = data.contactPhoneNumber;
+    form.contactEmail = data.contactEmail;
+    form.userName = data.userName;
+  },
+  enabled: computed(() => !!id),
 });
 
 const formRef = ref<FormInstance>();
@@ -278,22 +293,25 @@
 
 async function handleCreateOrEditFlexEnterprise() {
   try {
-    let params: API.CreateOrEditFlexEnterpriseInput = {
+    let params: API.SaveEnterpriseCommand = {
       enterpriseName: form.enterpriseName,
-      legalPersonName: form.legalPersonName,
-      legalPersonIdNumber: form.legalPersonIdNumber,
+      legalPerson: form.legalPerson,
+      legalIdentity: form.legalIdentity,
       societyCreditCode: form.societyCreditCode,
-      proviceName: form.proviceName,
-      cityName: form.cityName,
-      belongIndustryType: form.belongIndustryType,
-      contact: form.contact,
-      contactPhone: form.contactPhone,
-      // email: form.email,
+      provinceId: '',
+      cityId: '',
+      industryTypeId: form.industryTypeId,
+      mainBusiness: form.mainBusiness,
+      contacts: form.contacts,
+      contactPhoneNumber: form.contactPhoneNumber,
+      contactEmail: form.contactEmail,
+      userName: form.userName,
+      password: form.password,
     };
     if (isEdit.value) {
-      params.id = props.id;
+      params.id = id;
     }
-    let res = await flexEnterpriseServices.createOrEditFlexEnterprise(params);
+    let res = await enterpriseServices.saveEnterprise(params);
     if (res) {
       Message.successMessage(isEdit ? '缂栬緫鎴愬姛' : '鍙戝竷鎴愬姛');
       eventContext.emit(isEdit ? 'enterprise:edit' : 'enterprise:add');

--
Gitblit v1.9.1