wupengfei
2 天以前 318a7bbb40a8f37f825f9eb4ee1bcd84c6020a09
apps/cMiniApp/src/subpackages/task/taskSubmitCheck/InnerPage.vue
@@ -1,9 +1,9 @@
<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"
@@ -20,18 +20,24 @@
<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';
defineOptions({
  name: 'InnerPage',
});
const route = Taro.useRouter();
const id = route.params?.id as string;
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);
@@ -40,9 +46,27 @@
  if (!formRef.value) return;
  formRef.value.validate().then(({ valid, errors }: any) => {
    if (valid) {
      submitCheckReceiveTask();
    }
  });
}
async function submitCheckReceiveTask() {
  try {
    let params: API.SubmitCheckReceiveTaskCommand = {
      taskInfoId: id,
      files: form.files.map((x) => x.path),
    };
    let res = await taskCheckReceiveServices.submitCheckReceiveTask(params);
    if (res) {
      Message.success('提交成功', {
        onClosed() {
          goBack();
        },
      });
    }
  } catch (error) {}
}
</script>
<style lang="scss">