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 | 195 +++++++++++++++++++++++++++--------------------- 1 files changed, 108 insertions(+), 87 deletions(-) diff --git a/src/views/EnterpriseManage/components/AddOrEditEnterpriseView.vue b/src/views/EnterpriseManage/components/AddOrEditEnterpriseView.vue index 84c2d09..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,7 +199,7 @@ ProFormColItem, } from '@bole-core/components'; import { FormRules, FormInstance } from 'element-plus'; -import { SearchType } from '@/constants'; +import * as enterpriseServices from '@/services/api/enterprise'; import { useRouteView, useGlobalEventContext, GlobalEvent } from '@/hooks'; import _ from 'lodash'; import { validateFormList, filterCN } from '@/utils'; @@ -206,54 +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 typeList = ref([]); 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>(); @@ -275,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