|  |  | 
 |  |  |         <ChooseInputWithDatePicker | 
 |  |  |           v-model="form.beginTime" | 
 |  |  |           :minDate="nowDate" | 
 |  |  |           placeholder="请选择任务开始日期" | 
 |  |  |         ></ChooseInputWithDatePicker> | 
 |  |  |       </nut-form-item> | 
 |  |  |       <nut-form-item label="任务结束日期:" class="bole-form-item" prop="endTime" label-width="90px"> | 
 |  |  |         <ChooseInputWithDatePicker | 
 |  |  |           v-model="form.endTime" | 
 |  |  |           :minDate="nowDate" | 
 |  |  |           placeholder="请选择任务结束日期" | 
 |  |  |         ></ChooseInputWithDatePicker> | 
 |  |  |       </nut-form-item> | 
 |  |  |     </nut-form> | 
 |  |  | 
 |  |  | const { userDetail } = useUser(); | 
 |  |  | const { findAreaNameFromCode } = useAllAreaList(); | 
 |  |  | const router = Taro.useRouter(); | 
 |  |  | const taskId = router.params?.taskId ?? ''; | 
 |  |  | const taskId = router.params?.id ?? ''; | 
 |  |  | const isEdit = !!taskId; | 
 |  |  | const isCopy = router.params?.isCopy === 'true'; | 
 |  |  | console.log('isCopy: ', router.params?.isCopy); | 
 |  |  | 
 |  |  |  | 
 |  |  | const form = reactive({ | 
 |  |  |   name: '', | 
 |  |  |   billingMethod: EnumBillingMethod.Month, | 
 |  |  |   billingMethod: EnumBillingMethod.Day, | 
 |  |  |   serviceFee: '' as any as number, | 
 |  |  |   settlementCycle: EnumSettlementCycle.Month, | 
 |  |  |   settlementCycle: EnumSettlementCycle.Day, | 
 |  |  |   benefits: [] as string[], | 
 |  |  |   ageMinLimit: 0, | 
 |  |  |   ageMaxLimit: 0, | 
 |  |  |   ageMinLimit: '' as any as number, | 
 |  |  |   ageMaxLimit: '' as any as number, | 
 |  |  |   genderLimit: 0 as any as EnumUserGender, | 
 |  |  |   credentialLimits: [] as string[], | 
 |  |  |   // address: '', | 
 |  |  | 
 |  |  |   name: [{ required: true, message: '请输入任务名称' }], | 
 |  |  |   genderLimit: [{ required: true, message: '请选择性别要求' }], | 
 |  |  |   addressDetail: [{ required: true, message: '请输入详细地址' }], | 
 |  |  |  | 
 |  |  |   billingMethod: [ | 
 |  |  |     { | 
 |  |  |       required: true, | 
 |  |  |       message: '请选择收费方式', | 
 |  |  |       validator: () => { | 
 |  |  |         if (!form.billingMethod) { | 
 |  |  |           return Promise.reject('请选择服务费类型'); | 
 |  |  |         } | 
 |  |  |         if (!form.serviceFee) { | 
 |  |  |           return Promise.reject('请输入服务费'); | 
 |  |  |         } | 
 |  |  |         return Promise.resolve(true); | 
 |  |  |       }, | 
 |  |  |     }, | 
 |  |  |   ], | 
 |  |  |   weMapInfo: [ | 
 |  |  |     { required: true, message: '请设置工作地点', validator: FormValidator.validatorWeMap }, | 
 |  |  |   ], | 
 |  |  | 
 |  |  |       required: true, | 
 |  |  |       message: '请输入年龄要求', | 
 |  |  |       validator: () => { | 
 |  |  |         if (!form.ageMinLimit) { | 
 |  |  |         if (!form.ageMinLimit && form.ageMinLimit > 0) { | 
 |  |  |           return Promise.reject('请输入年龄要求'); | 
 |  |  |         } | 
 |  |  |         if (!form.ageMaxLimit) { | 
 |  |  |         if (!form.ageMaxLimit && form.ageMaxLimit > 0) { | 
 |  |  |           return Promise.reject('请输入年龄要求'); | 
 |  |  |         } | 
 |  |  |         if (Number(form.ageMaxLimit) <= Number(form.ageMinLimit)) { | 
 |  |  | 
 |  |  |       message: '请选择结束日期', | 
 |  |  |       validator(value) { | 
 |  |  |         if (!value) return Promise.reject('请选择结束日期'); | 
 |  |  |         if (value <= form.beginTime) return Promise.reject('结束日期不能小于开始日期'); | 
 |  |  |         if (dayjs(value).isBefore(dayjs(form.beginTime))) | 
 |  |  |           return Promise.reject('结束日期需大于开始日期'); | 
 |  |  |         return Promise.resolve(true); | 
 |  |  |       }, | 
 |  |  |     }, | 
 |  |  | 
 |  |  |     form.ageMaxLimit = data.ageMaxLimit; | 
 |  |  |     form.genderLimit = data.genderLimit; | 
 |  |  |     form.credentialLimits = (data.credentialLimits ?? []).map((item) => item.typeCode); | 
 |  |  |     form.beginTime = dayjs(data.beginTime).format('YYYY-MM-DD 00:00:00'); | 
 |  |  |     form.endTime = dayjs(data.endTime).format('YYYY-MM-DD 23:59:59'); | 
 |  |  |     form.beginTime = dayjs(data.beginTime).format('YYYY-MM-DD'); | 
 |  |  |     form.endTime = dayjs(data.endTime).format('YYYY-MM-DD'); | 
 |  |  |     form.addressDetail = data.addressDetail; | 
 |  |  |     form.weMapInfo = { | 
 |  |  |       provinceName: data.provinceContent, | 
 |  |  | 
 |  |  |     } | 
 |  |  |     let res = await taskServices.saveTaskInfo(params); | 
 |  |  |     if (res) { | 
 |  |  |       Message.success(isEdit ? '编辑成功' : '发布成功', { | 
 |  |  |       Message.success(isEdit && !isCopy ? '编辑成功' : '发布成功', { | 
 |  |  |         onClosed() { | 
 |  |  |           goBack(); | 
 |  |  |         }, |