From 715d5d9675a524648b0aea2b961fe5a4430ea4fa Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期二, 16 九月 2025 13:24:32 +0800 Subject: [PATCH] feat: 接口对接 --- src/views/EmploymentManage/components/AddOrEditEmploymentView.vue | 78 +++++++++++++++++++++++++++++++++----- 1 files changed, 67 insertions(+), 11 deletions(-) diff --git a/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue b/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue index 7704888..dd76add 100644 --- a/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue +++ b/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue @@ -62,7 +62,25 @@ v-model="form.settlementCycle" :value-enum="EnumSettlementCycleText" :button-style="false" + @change="handleSettlementCycleChange" ></ProFormRadio> + </ProFormItemV2> + </ProFormColItem> + </ProFormCol> + <ProFormCol> + <ProFormColItem :span="12" class="settlement-cycle-date-form-item"> + <ProFormItemV2 + label="缁撶畻鏃ユ湡:" + prop="settlementCycle" + :check-rules="[{ message: '璇烽�夋嫨缁撶畻鏃ユ湡' }]" + > + {{ EnumSettlementCycleDateText[form.settlementCycle] }} + <ProFormSelect + v-model="form.settlementDate" + :value-enum="settlementDateList" + :button-style="false" + ></ProFormSelect> + {{ '缁撶畻' }} </ProFormItemV2> </ProFormColItem> </ProFormCol> @@ -110,17 +128,18 @@ > <ProFormInputNumber :controls="false" - :min="1" + :min="0" v-model="form.ageMinLimit" placeholder="璇疯緭鍏�" ></ProFormInputNumber> <div class="form-input-separator">鑷�</div> <ProFormInputNumber :controls="false" - :min="1" + :min="0" v-model="form.ageMaxLimit" placeholder="璇疯緭鍏�" ></ProFormInputNumber> + 宀� </ProFormItemV2> </ProFormColItem> </ProFormCol> @@ -162,9 +181,7 @@ <ProFormItemV2 label="浠诲姟鍦扮偣:" prop="weMapInfo" - :check-rules="[ - { message: '璇烽�夋嫨浠诲姟鍦扮偣', validator: FormValidator.validatorWeMap }, - ]" + :check-rules="[{ message: '璇烽�夋嫨浠诲姟鍦扮偣', type: 'weMap' }]" > <WeMap v-if="!isDetail" v-model="form.weMapInfo" /> <div v-else> @@ -229,6 +246,7 @@ ProFormRadio, ProFormDatePicker, ProFormCheckbox, + ProFormSelect, } from '@bole-core/components'; import { FormInstance, ModelValueType } from 'element-plus'; import { Message } from '@bole-core/core'; @@ -240,6 +258,9 @@ EnumBillingMethodText, EnumBillingMethodUnitText, EnumSettlementCycleText, + EnumSettlementCycleDateText, + EnumSettlementCycleDateMonthArray, + EnumSettlementCycleDateWeekArray, } from '@/constants'; import { format, FormValidator } from '@/utils'; import dayjs from 'dayjs'; @@ -269,6 +290,16 @@ categoryCode: CategoryCode.CertificateType, }); +const settlementDateList = computed(() => { + if (form.settlementCycle === EnumSettlementCycle.Month) { + return EnumSettlementCycleDateMonthArray; + } + if (form.settlementCycle === EnumSettlementCycle.Week) { + return EnumSettlementCycleDateWeekArray; + } + return []; +}); + const state = reactive({ checkBenefitsAll: false, isBenefitsIndeterminate: false, @@ -279,12 +310,13 @@ const form = reactive({ name: '', - billingMethod: EnumBillingMethod.Month, - serviceFee: 0, - settlementCycle: EnumSettlementCycle.Month, + billingMethod: EnumBillingMethod.Day, + serviceFee: null, + settlementCycle: EnumSettlementCycle.Day, + settlementDate: null as number, benefits: [] as string[], - ageMinLimit: 0, - ageMaxLimit: 0, + ageMinLimit: null, + ageMaxLimit: null, genderLimit: 0 as any as EnumUserGender, credentialLimits: [] as string[], time: [] as unknown as ModelValueType, @@ -308,6 +340,7 @@ form.billingMethod = data.billingMethod; form.serviceFee = data.serviceFee; form.settlementCycle = data.settlementCycle; + form.settlementDate = data.settlementDate; form.benefits = data.benefits?.map((x) => x.benefitCode) ?? []; form.ageMinLimit = data.ageMinLimit; form.ageMaxLimit = data.ageMaxLimit; @@ -331,6 +364,10 @@ enabled: isEdit, }); +function handleSettlementCycleChange() { + form.settlementDate = null as number; +} + function handleBack() { closeViewPush(route, { name: 'TaskManageList', @@ -349,12 +386,12 @@ } async function submit() { try { - console.log('form.weMapInfo: ', form.weMapInfo); let params: API.SaveTaskInfoCommand = { name: form.name, billingMethod: form.billingMethod, serviceFee: form.serviceFee, settlementCycle: form.settlementCycle, + settlementDate: form.settlementDate, benefits: form.benefits, ageMinLimit: form.ageMinLimit, ageMaxLimit: form.ageMaxLimit, @@ -425,5 +462,24 @@ width: auto; } } + + .settlement-cycle-date-form-item { + color: inherit; + + .el-form-item__content { + flex-wrap: nowrap; + + .el-select { + margin: 0 20px; + width: auto; + min-width: 0; + flex: 1; + } + + .pro-from-item-read-content-wrapper { + width: auto; + } + } + } } </style> -- Gitblit v1.9.1