riku
2023-12-26 4253da96a80b36aa66a1322b0379ec624e01101c
修复表单FYForm不传入初始数据时报错问题
已修改3个文件
86 ■■■■■ 文件已修改
src/components/bg-task/FYBgTaskCard.vue 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/form/FYForm.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/composables/formConfirm.js 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/bg-task/FYBgTaskCard.vue
@@ -1,31 +1,46 @@
<template>
  <el-card class="bg-task-card" shadow="hover" :body-style="{ padding: '8px' }">
    <!-- <template #header> -->
    <el-row>
      <el-space>
        <el-tag>{{ nameToLabel(model.type) }}</el-tag>
        <el-text tag="b" size="large" truncated>{{ model.name }}啊实打实大苏打啊实打实大苏打阿大撒大撒</el-text>
      </el-space>
    <el-row style="background-color: aliceblue">
      <!-- <el-space> -->
      <el-tag>{{ nameToLabel(model.type) }}</el-tag>
      <el-text style="width: 80%" tag="b" size="large" truncated>{{ model.name }}</el-text>
      <!-- <div>{{ model.name }}asdasdasdasdasdasdaasdasdasdasdasdasdaasdasdasdasdasdasdaasdasdasdasdasdasda</div> -->
      <!-- </el-space> -->
    </el-row>
    <!-- <div>
      <el-text truncated>{{ model.name }}asdasdasdasdasdasdaasdasdasdasdasdasdaasdasdasdasdasdasdaasdasdasdasdasdasda</el-text>
        </div> -->
    <!-- </template> -->
    <el-text type="info" size="small">状态:{{ nameToLabel(model.status) }}</el-text>
    <el-text type="info" size="small">开始:{{ model.startTime }}</el-text>
    <el-text type="info" size="small">结束:{{ model.endTime }}</el-text>
    <div>
      <el-text type="info" size="small">ID:{{ model.id }}</el-text>
    </div>
    <div>
      <el-text type="info" size="small">状态:{{ nameToLabel(model.status) }}</el-text>
    </div>
    <div>
      <el-text type="info" size="small">开始:{{ model.startTime }}</el-text>
    </div>
    <div>
      <el-text type="info" size="small">结束:{{ model.endTime }}</el-text>
    </div>
    <!-- <template #footer> -->
    <el-button type="primary" size="small" :loading="false" @click="$emit('start', model)"
      >开始任务</el-button
    >
    <el-button type="danger" size="small" :loading="false" @click="$emit('shutDown', model)"
      >强制结束</el-button
    >
    <el-button type="danger" size="small" :loading="false" @click="$emit('remove', model)"
      >移除任务</el-button
    >
    <el-button type="danger" size="small" :loading="false" @click="$emit('gotoResult', model)"
      >查看结果</el-button
    >
    <el-text type="info" size="small">ID:{{ model.id }}</el-text>
    <el-row justify="end">
      <el-button type="primary" size="small" :loading="false" @click="$emit('start', model)"
        >开始任务</el-button
      >
      <el-button type="danger" size="small" :loading="false" @click="$emit('shutDown', model)"
        >强制结束</el-button
      >
      <el-button type="danger" size="small" :loading="false" @click="$emit('remove', model)"
        >移除任务</el-button
      >
      <el-button type="danger" size="small" :loading="false" @click="$emit('gotoResult', model)"
        >查看结果</el-button
      >
    </el-row>
    <!-- </template> -->
  </el-card>
</template>
src/components/form/FYForm.vue
@@ -31,7 +31,12 @@
const props = defineProps({
  //表单基本信息
  formInfo: Object,
  formInfo: {
    type: Object,
    default: () => {
      return {};
    }
  },
  //表单检验规则
  rules: Object,
  showButtons: {
@@ -63,7 +68,7 @@
    {
      required: true,
      message: '行政区划不能为空',
      trigger: 'change',
      trigger: 'change'
      // validator: (rule, value, callback) => {
      //   if (!value) {
      //     callback(new Error('Please input the age'));
@@ -77,7 +82,7 @@
    {
      required: true,
      message: '场景类型不能为空',
      trigger: 'change',
      trigger: 'change'
      // validator: (rule, value, callback) => {
      //   if (!value) {
      //     callback(new Error('Please input the age'));
src/composables/formConfirm.js
@@ -96,15 +96,15 @@
    formRef.value.validate(async (valid) => {
      if (valid) {
        if (messageBox) {
          useMessageBoxTip({
            confirmMsg: submit.msg,
            confirmTitle: submit.title,
            onConfirm: async () => {
              const res = await submit.do();
              submited();
              return res;
            }
          });
        useMessageBoxTip({
          confirmMsg: submit.msg,
          confirmTitle: submit.title,
          onConfirm: async () => {
            const res = await submit.do();
            submited();
            return res;
          }
        });
        } else {
          await submit.do();
          submited();