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