From 84aedf23b13386576a70b21ebdf5d6ddd9c947ec Mon Sep 17 00:00:00 2001 From: wupengfei <834520024@qq.com> Date: 星期一, 20 十月 2025 09:43:32 +0800 Subject: [PATCH] fix: bug --- apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue | 82 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 78 insertions(+), 4 deletions(-) diff --git a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue index 6087e03..e2d71ef 100644 --- a/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue +++ b/apps/bMiniApp/src/subpackages/task/publishTask/InnerPage.vue @@ -32,7 +32,12 @@ <div class="form-input-unit">{{ BillingMethodEnumUnit[form.billingMethod] }}</div> </div> </nut-form-item> - <template v-if="form.billingMethod === EnumBillingMethod.Hour"> + <template + v-if=" + form.billingMethod === EnumBillingMethod.Hour || + form.billingMethod === EnumBillingMethod.Day + " + > <nut-form-item label="鏍稿畾宸ユ椂:" class="bole-form-item" @@ -194,6 +199,7 @@ v-model="form.beginTime" :minDate="nowDate" placeholder="璇烽�夋嫨浠诲姟寮�濮嬫棩鏈�" + @change="timeChange" ></ChooseInputWithDatePicker> </nut-form-item> <nut-form-item label="浠诲姟缁撴潫鏃ユ湡:" class="bole-form-item" prop="endTime" label-width="90px"> @@ -223,7 +229,7 @@ > <ChooseInputWithDatePicker v-model="form.applyEndTime" - :max-date="form.endTime ? dayjs(form.endTime).toDate() : nowDate" + :minDate="form.beginTime ? dayjs(form.beginTime).toDate() : nowDate" placeholder="璇烽�夋嫨鎶ュ悕缁撴潫鏃ユ湡" ></ChooseInputWithDatePicker> </nut-form-item> @@ -241,6 +247,20 @@ >{{ val }}</BlRadio > </nut-radio-group> + </nut-form-item> + <nut-form-item + label="缁撶畻鏂瑰紡:" + class="bole-form-item" + prop="settlementAccess" + label-width="90px" + required + > + <ChooseInputWithPicker + v-model="form.settlementAccess" + placeholder="璇烽�夋嫨缁撶畻鏂瑰紡" + :value-enum="settlementAccessList" + :disabled="isEdit" + /> </nut-form-item> </nut-form> </ContentScrollView> @@ -266,6 +286,8 @@ EnumSettlementCycleDateMonthArray, EnumTaskCheckReceiveMethod, EnumTaskCheckReceiveMethodText, + EnumEnterpriseWalletAccess, + EnumEnterpriseWalletAccessText, } from '@12333/constants'; import { ChooseInputWithPicker, @@ -277,12 +299,15 @@ ChooseInputWithCheckbox, } from '@12333/components'; import { FormValidator, Message } from '@12333/utils'; -import * as flexWorkerServices from '@12333/services/api/FlexWorker'; import * as taskServices from '@12333/services/apiV2/task'; import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types'; import Taro from '@tarojs/taro'; import { goBack } from '@/utils'; -import { useAllAreaList, useDictionaryDataSelect } from '@12333/hooks'; +import { + useAllAreaList, + useDictionaryDataSelect, + useEnterpriseWalletAccessSelect, +} from '@12333/hooks'; import { useQuery } from '@tanstack/vue-query'; import dayjs from 'dayjs'; @@ -292,12 +317,20 @@ const { userDetail } = useUser(); const { findAreaNameFromCode } = useAllAreaList(); +const { settlementAccessList } = useEnterpriseWalletAccessSelect(); const router = Taro.useRouter(); const taskId = router.params?.id ?? ''; const isEdit = !!taskId; const isCopy = router.params?.isCopy === 'true'; const nowDate = dayjs().toDate(); +const applyBeginTimeMinDate = computed(() => { + return form.applyBeginTime + ? dayjs(form.applyBeginTime).toDate() + : form.beginTime + ? dayjs(form.beginTime).toDate() + : nowDate; +}); const { dictionaryDataList: WelfareTypeList } = useDictionaryDataSelect({ categoryCode: CategoryCode.Welfare, @@ -339,12 +372,14 @@ checkReceiveMethod: EnumTaskCheckReceiveMethod.CheckIn, applyBeginTime: '', applyEndTime: '', + settlementAccess: '' as any as EnumEnterpriseWalletAccess, }); const rules = reactive<FormRules>({ name: [{ required: true, message: '璇疯緭鍏ヤ换鍔″悕绉�' }], genderLimit: [{ required: true, message: '璇烽�夋嫨鎬у埆瑕佹眰' }], settlementCycleDate: [{ required: true, message: '璇疯缃粨绠楁棩鏈�' }], + settlementAccess: [{ required: true, message: '璇烽�夋嫨缁撶畻鏂瑰紡' }], // addressDetail: [{ required: true, message: '璇疯緭鍏ヨ缁嗗湴鍧�' }], billingMethod: [ { @@ -402,6 +437,34 @@ }, }, ], + applyBeginTime: [ + { + required: true, + message: '璇烽�夋嫨鎶ュ悕寮�濮嬫棩鏈�', + validator(value) { + if (!value) return Promise.reject('璇烽�夋嫨鎶ュ悕寮�濮嬫棩鏈�'); + if (dayjs(value).isBefore(dayjs(form.beginTime))) + return Promise.reject('鎶ュ悕寮�濮嬫棩鏈熼渶澶т簬浠诲姟寮�濮嬫棩鏈�'); + if (dayjs(value).isAfter(dayjs(form.endTime))) + return Promise.reject('鎶ュ悕寮�濮嬫棩鏈熼渶灏忎簬浠诲姟缁撴潫鏃ユ湡'); + return Promise.resolve(true); + }, + }, + ], + applyEndTime: [ + { + required: true, + message: '璇烽�夋嫨鎶ュ悕缁撴潫鏃ユ湡', + validator(value) { + if (!value) return Promise.reject('璇烽�夋嫨鎶ュ悕缁撴潫鏃ユ湡'); + if (dayjs(value).isBefore(dayjs(form.applyBeginTime))) + return Promise.reject('鎶ュ悕缁撴潫鏃ユ湡闇�澶т簬鎶ュ悕寮�濮嬫棩鏈�'); + if (dayjs(value).isAfter(dayjs(form.endTime))) + return Promise.reject('鎶ュ悕缁撴潫鏃ユ湡闇�灏忎簬浠诲姟缁撴潫鏃ユ湡'); + return Promise.resolve(true); + }, + }, + ], }); const { @@ -450,6 +513,7 @@ form.checkReceiveMethod = data.checkReceiveMethod; form.applyBeginTime = dayjs(data.applyBeginTime).format('YYYY-MM-DD'); form.applyEndTime = dayjs(data.applyEndTime).format('YYYY-MM-DD'); + form.settlementAccess = data.settlementAccess; }, }); @@ -490,6 +554,7 @@ checkReceiveMethod: form.checkReceiveMethod, applyBeginTime: dayjs(form.applyBeginTime).format('YYYY-MM-DD 00:00:00'), applyEndTime: dayjs(form.applyEndTime).format('YYYY-MM-DD 23:59:59'), + settlementAccess: form.settlementAccess, }; if (isEdit) { params.id = taskId; @@ -508,6 +573,15 @@ } catch (error) {} } +function timeChange() { + form.applyBeginTime = ''; + form.applyEndTime = ''; +} + +function applyTimeChange() { + form.applyEndTime = ''; +} + function settleTypeChange() { form.settlementDate = null as number; } -- Gitblit v1.9.1