|  |  | 
 |  |  | <template> | 
 |  |  |   <ContentScrollView :paddingH="false"> | 
 |  |  |     <nut-form :model-value="form" ref="formRef" :rules="rules"> | 
 |  |  |       <nut-form-item label="上传照片:" class="bole-form-item alignTop" prop="imgUrl" required> | 
 |  |  |       <nut-form-item label="上传照片:" class="bole-form-item alignTop" prop="files" required> | 
 |  |  |         <Uploader | 
 |  |  |           v-model:file-list="form.imgUrl" | 
 |  |  |           v-model:file-list="form.files" | 
 |  |  |           :maximum="9" | 
 |  |  |           :limitFileSize="10" | 
 |  |  |           class="bole-uploader nopaddingtop" | 
 |  |  | 
 |  |  | <script setup lang="ts"> | 
 |  |  | import { FormRules } from '@nutui/nutui-taro/dist/types/__VUE/form/types'; | 
 |  |  | import { FileItem } from '@nutui/nutui-taro/dist/types/__VUE/uploader/type'; | 
 |  |  | import { FormValidator } from '@12333/utils'; | 
 |  |  | import { FormValidator, Message } from '@12333/utils'; | 
 |  |  | import * as taskCheckReceiveServices from '@12333/services/apiV2/taskCheckReceive'; | 
 |  |  | import Taro from '@tarojs/taro'; | 
 |  |  | import { goBack } from '@/utils'; | 
 |  |  | import { useQueryClient } from '@tanstack/vue-query'; | 
 |  |  | import dayjs from 'dayjs'; | 
 |  |  |  | 
 |  |  | defineOptions({ | 
 |  |  |   name: 'InnerPage', | 
 |  |  | }); | 
 |  |  |  | 
 |  |  | const route = Taro.useRouter(); | 
 |  |  | const id = route.params?.id as string; | 
 |  |  | const date = route.params?.date as string; | 
 |  |  | const queryClient = useQueryClient(); | 
 |  |  |  | 
 |  |  | const form = reactive({ | 
 |  |  |   imgUrl: [] as FileItem[], | 
 |  |  |   files: [] as FileItem[], | 
 |  |  | }); | 
 |  |  |  | 
 |  |  | const rules = reactive<FormRules>({ | 
 |  |  |   imgUrl: [{ required: true, message: '请上传照片', validator: FormValidator.validatorArray }], | 
 |  |  |   files: [{ required: true, message: '请上传照片', validator: FormValidator.validatorArray }], | 
 |  |  | }); | 
 |  |  |  | 
 |  |  | const formRef = ref<any>(null); | 
 |  |  | 
 |  |  |   if (!formRef.value) return; | 
 |  |  |   formRef.value.validate().then(({ valid, errors }: any) => { | 
 |  |  |     if (valid) { | 
 |  |  |       submitCheckReceiveTask(); | 
 |  |  |     } | 
 |  |  |   }); | 
 |  |  | } | 
 |  |  |  | 
 |  |  | async function submitCheckReceiveTask() { | 
 |  |  |   try { | 
 |  |  |     let params: API.SubmitCheckReceiveTaskCommand = { | 
 |  |  |       taskInfoId: id, | 
 |  |  |       date: dayjs(date).format('YYYY-MM-DD'), | 
 |  |  |       files: form.files.map((x) => x.path), | 
 |  |  |     }; | 
 |  |  |     let res = await taskCheckReceiveServices.submitCheckReceiveTask(params); | 
 |  |  |     if (res) { | 
 |  |  |       Message.success('提交成功', { | 
 |  |  |         onClosed() { | 
 |  |  |           goBack(); | 
 |  |  |           queryClient.invalidateQueries(['taskServices/getTaskInfo', id]); | 
 |  |  |         }, | 
 |  |  |       }); | 
 |  |  |     } | 
 |  |  |   } catch (error) {} | 
 |  |  | } | 
 |  |  | </script> | 
 |  |  |  | 
 |  |  | <style lang="scss"> |