From c2463c02a17f92df55ec77ed2da3fb724290c072 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期一, 20 十月 2025 17:34:30 +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