xiangpei
2024-07-19 032f47cfabb2d1960f8bb4774ea79a93e1709947
src/views/system/work-order/index.vue
@@ -12,8 +12,7 @@
      </el-form-item>
      <el-form-item label="故障类型" prop="workOrderNo">
        <el-select v-model="queryParams.errorType" placeholder="故障类型" clearable @clear="handleQuery">
          <el-option label="市政施工" value="市政施工"></el-option>
          <el-option label="设备遗失" value="设备遗失"></el-option>
          <el-option v-for="item, index in errorTypeOptions" :label="item.dictLabel" :value="item.dictValue" :key="index"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="审核状态" prop="status">
@@ -49,12 +48,12 @@
          type="primary"
          plain
          size="mini"
          @click="batchAuditingVisible = true"
          @click="batchAuditingVisible = true; batchAuditingWorkOrder = {}"
          v-hasPermi="['work:order:audit']"
        >批量审核</el-button>
      </el-col>
    </el-row>
    <el-row :gutter="20">
      <el-col :xl="6" :lg="8" :md="12" :sm="24"  v-for="item in workOrderList" :key="item.id" style="margin-bottom: 20px;">
        <el-card :body-style="{ padding: '0px',display: 'flex' }">
@@ -200,9 +199,9 @@
    <el-dialog title="运维批量审核" :visible.sync="batchAuditingVisible" width="500px" append-to-body>
      <el-form ref="batchAuditingWorkOrder" :model="batchAuditingWorkOrder" label-width="80px" :rules="batchAuditingRules">
        <el-form-item label="工单编号" prop="ids">
          <el-select v-model="batchAuditingWorkOrder.ids" placeholder="请选择工单" multiple clearable>
            <el-option v-for="item in workOrderList" :key="item.id" :label="item.workOrderNo" :value="item.id" />
        <el-form-item label="故障类型" prop="errorType">
          <el-select v-model="batchAuditingWorkOrder.errorTypes" multiple placeholder="故障类型">
            <el-option v-for="(item, index) in errorTypeOptions" :label="item.dictLabel" :value="item.dictValue" :key="index"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="审核说明" prop="auditingRemark">
@@ -210,8 +209,8 @@
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="batchAuditing('AUDITING_SUCCESS')">审 核</el-button>
        <el-button type="danger" @click="batchAuditing('AUDITING_FAIL')">驳 回</el-button>
        <el-button type="primary" @click="batchAuditing('AUDITING_SUCCESS')" size="small">通 过</el-button>
        <el-button type="danger" @click="batchAuditing('AUDITING_FAIL')" size="small">驳 回</el-button>
      </div>
    </el-dialog>
@@ -247,9 +246,9 @@
                <div class="y-item-1">
                  <div class="flow-item-x">
                    现场情况:
                    <el-tooltip class="item" effect="dark" :content="item.ywCondition" placement="top">
                      <el-tag size="small" class="line-limit-length">{{ item.ywCondition }}</el-tag>
                    </el-tooltip>
                    <!-- <el-tooltip class="item" effect="dark" :content="item.ywCondition" placement="top"> -->
                    <span v-html="item.ywCondition"></span>
                    <!-- </el-tooltip> -->
                  </div>
                  <!-- <div class="flow-item-x">
                    <el-tag size="small" v-for="file in item.ywProofMaterials != null ? item.ywProofMaterials.split(',') : item.ywProofMaterials" :key="file" @click="handleDownload(file)">{{ file.substring(file.lastIndexOf("/") + 1) }}</el-tag>
@@ -260,7 +259,7 @@
                    {{ parseTime(item.createTime) }}
                  </div>
                  <div >
                    第几次:{{ index + 1 }}
                    第{{ index + 1 }}次
                  </div>
                </div>
              </div>
@@ -274,7 +273,7 @@
                    审核结果:<el-tag :type="item.result == '审核通过' ? 'success' : 'danger'" size="small">{{ item.result }}</el-tag>
                  </div>
                  <div class="flow-item-x">
                    审核说明:<el-tag size="small" v-if="item.remark">{{ item.remark }}</el-tag>
                    审核说明:<span v-html="item.remark"></span>
                  </div>
                </div>
                <div class="y-item-2">
@@ -282,7 +281,7 @@
                    {{ parseTime(item.createTime) }}
                  </div>
                  <div >
                    第几次:{{ index + 1 }}
                    第{{ index + 1 }}次
                  </div>
                </div>
              </div>
@@ -316,15 +315,21 @@
<script>
import { listWorkOrder, getWorkOrder, delWorkOrder, addWorkOrder, updateWorkOrder, auditing, batchAuditing, ywCondition, getYwCondition, getYwConditionList, getYwAuditingList } from "@/api/platform/work-order";
import { addReport } from "@/api/platform/report";
import { getDicts } from "@/api/system/dict/data";
export default {
  name: "Work-order",
  components: {
  },
  data() {
    return {
      errorTypeOptions: [],
      ywConditions: [],
      batchAuditingVisible: false,
      batchAuditingWorkOrder: {},
      batchAuditingWorkOrder: {
        errorTypes: [],
        auditingRemark: '',
        auditingResult: ''
      },
      ywHandleList: [],
      ywAuditingList: [],
      reportFormRules: {
@@ -424,8 +429,8 @@
      },
      // 批量审核校验
      batchAuditingRules: {
        ids: [
          { required: true, message: "请选择要审核的工单", trigger: "blur" }
        errorTypes: [
          { required: true, message: "请选择故障类型", trigger: "change" }
        ],
      }
    };
@@ -597,6 +602,10 @@
        this.total = response.total;
        this.loading = false;
      });
      // 获取故障类型
      getDicts("error_type").then(response => {
        this.errorTypeOptions = response.data;
      });
    },
    // 取消按钮
    cancel() {