From e3271aaeb41fd1b5203b2926b7eeb132651417a7 Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期一, 11 八月 2025 17:32:34 +0800 Subject: [PATCH] feat: 接口 --- .eslintrc-auto-import.json | 1 auto-imports.d.ts | 3 - src/views/EmploymentManage/components/AddOrEditEmploymentView.vue | 80 +++++++++++++++++++++++++++++++++++---- 3 files changed, 72 insertions(+), 12 deletions(-) diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json index 564f90a..ce487ce 100644 --- a/.eslintrc-auto-import.json +++ b/.eslintrc-auto-import.json @@ -31,7 +31,6 @@ "EnumSettlementCycle": true, "EnumSettlementCycleText": true, "EnumSmsAccess": true, - "EnumSmsTemplateType": true, "EnumTaskCheckReceiveStatus": true, "EnumTaskRecommendStatus": true, "EnumTaskRecommendStatusText": true, diff --git a/auto-imports.d.ts b/auto-imports.d.ts index 89fcfda..6e70521 100644 --- a/auto-imports.d.ts +++ b/auto-imports.d.ts @@ -191,7 +191,7 @@ export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue' import('vue') // @ts-ignore - export type { EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsTemplateType, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumUserGender, EnumUserStatus, EnumUserType, EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumSmsTemplateType, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumUserGender, EnumUserStatus, EnumUserType } from './src/constants/apiEnum' + export type { EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumUserGender, EnumUserStatus, EnumUserType, EnumBillingMethod, EnumClientType, EnumMenuType, EnumMenuVisitLevel, EnumPagedListOrder, EnumRealAccess, EnumResourceController, EnumResourceMethod, EnumRoleWebApiDataPower, EnumSettlementCycle, EnumSmsAccess, EnumTaskCheckReceiveStatus, EnumTaskRecommendStatus, EnumTaskReleaseStatus, EnumTaskSettlementStatus, EnumTaskStatus, EnumUserGender, EnumUserStatus, EnumUserType } from './src/constants/apiEnum' import('./src/constants/apiEnum') // @ts-ignore export type { CategoryCode, IdentityCodeEnum, EducationCodeEnum, CertificateTypeCodeEnum, WelfareCodeEnum } from './src/constants/dic' @@ -248,7 +248,6 @@ readonly EnumSettlementCycle: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumSettlementCycle']> readonly EnumSettlementCycleText: UnwrapRef<typeof import('./src/constants/task')['EnumSettlementCycleText']> readonly EnumSmsAccess: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumSmsAccess']> - readonly EnumSmsTemplateType: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumSmsTemplateType']> readonly EnumTaskCheckReceiveStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskCheckReceiveStatus']> readonly EnumTaskRecommendStatus: UnwrapRef<typeof import('./src/constants/apiEnum')['EnumTaskRecommendStatus']> readonly EnumTaskRecommendStatusText: UnwrapRef<typeof import('./src/constants/task')['EnumTaskRecommendStatusText']> diff --git a/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue b/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue index 3d0d1d1..47fdecc 100644 --- a/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue +++ b/src/views/EmploymentManage/components/AddOrEditEmploymentView.vue @@ -5,14 +5,34 @@ <ProForm :model="form" ref="productFormRef" label-width="110px" :is-read="isDetail"> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="浠诲姟鍚嶇О:" prop="name"> + <ProFormItemV2 + label="浠诲姟鍚嶇О:" + prop="name" + :check-rules="[{ message: '璇疯緭鍏ヤ换鍔″悕绉�' }]" + > <ProFormText v-model.trim="form.name" placeholder="璇疯緭鍏ヤ换鍔″悕绉�" /> </ProFormItemV2> </ProFormColItem> </ProFormCol> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="鏈嶅姟璐�:" prop="billingMethod"> + <ProFormItemV2 + label="鏈嶅姟璐�:" + prop="billingMethod" + :check-rules="[ + { + validator: (rule, value, callback) => { + if (!form.billingMethod) { + callback(new Error('璇烽�夋嫨鏈嶅姟璐圭被鍨�')); + } + if (!form.serviceFee) { + callback(new Error('璇疯緭鍏ユ湇鍔¤垂')); + } + callback(); + }, + }, + ]" + > <RadioWithExtra v-model="form.billingMethod" :value-enum="EnumBillingMethodText" @@ -33,7 +53,11 @@ </ProFormCol> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="缁撶畻鏂瑰紡:" prop="settlementCycle"> + <ProFormItemV2 + label="缁撶畻鏂瑰紡:" + prop="settlementCycle" + :check-rules="[{ message: '璇烽�夋嫨缁撶畻鏂瑰紡' }]" + > <ProFormRadio v-model="form.settlementCycle" :value-enum="EnumSettlementCycleText" @@ -63,7 +87,27 @@ </ProFormCol> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="骞撮緞鑼冨洿:" prop="ageRange" class="form-age-range"> + <ProFormItemV2 + label="骞撮緞鑼冨洿:" + prop="ageRange" + class="form-age-range" + :check-rules="[ + { + validator: (rule, value, callback) => { + if (!form.ageMinLimit) { + callback(new Error('璇疯緭鍏ュ勾榫勮姹�')); + } + if (!form.ageMaxLimit) { + callback(new Error('璇疯緭鍏ュ勾榫勮姹�')); + } + if (Number(form.ageMaxLimit) <= Number(form.ageMinLimit)) { + callback(new Error('鏈�澶у勾榫勪笉鑳藉皬浜庢渶灏忓勾榫�')); + } + callback(); + }, + }, + ]" + > <ProFormInputNumber :controls="false" :min="1" @@ -82,7 +126,11 @@ </ProFormCol> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="鎬у埆瑕佹眰:" prop="genderLimit"> + <ProFormItemV2 + label="鎬у埆瑕佹眰:" + prop="genderLimit" + :check-rules="[{ message: '璇烽�夋嫨鎬у埆瑕佹眰' }]" + > <ProFormRadio v-model="form.genderLimit" :value-enum="EnumUserGenderTextForEdit" @@ -114,7 +162,13 @@ </ProFormCol> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="浠诲姟鍦扮偣:" prop="weMapInfo"> + <ProFormItemV2 + label="浠诲姟鍦扮偣:" + prop="weMapInfo" + :check-rules="[ + { message: '璇烽�夋嫨浠诲姟鍦扮偣', validator: FormValidator.validatorWeMap }, + ]" + > <WeMap v-if="!isDetail" v-model="form.weMapInfo" /> <div v-else> {{ @@ -128,14 +182,22 @@ </ProFormCol> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="璇︾粏鍦板潃:" prop="addressDetail"> + <ProFormItemV2 + label="璇︾粏鍦板潃:" + prop="addressDetail" + :check-rules="[{ message: '璇疯緭鍏ヨ缁嗗湴鍧�' }]" + > <ProFormText v-model.trim="form.addressDetail" placeholder="璇疯緭鍏ヨ缁嗗湴鍧�" /> </ProFormItemV2> </ProFormColItem> </ProFormCol> <ProFormCol> <ProFormColItem :span="12"> - <ProFormItemV2 label="浠诲姟鏃堕棿:" prop="time"> + <ProFormItemV2 + label="浠诲姟鏃堕棿:" + prop="time" + :check-rules="[{ message: '璇烽�夋嫨浠诲姟鏃堕棿', type: 'array' }]" + > <ProFormDatePicker v-model="form.time" type="daterange" @@ -181,7 +243,7 @@ EnumBillingMethodUnitText, EnumSettlementCycleText, } from '@/constants'; -import { format } from '@/utils'; +import { format, FormValidator } from '@/utils'; import dayjs from 'dayjs'; defineOptions({ -- Gitblit v1.9.1