ZhangXianQiang
2024-04-03 7ff4b3e519ca214668e335547f9a570d37b8ba24
src/views/system/report/index.vue
@@ -17,6 +17,16 @@
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="报备类型" prop="reportType">
        <el-select
          v-model="queryParams.reportType"
          placeholder="报备类型"
          clearable
        >
          <el-option label="事前报备" value="事前报备" />
          <el-option label="事后报备" value="事后报备" />
        </el-select>
      </el-form-item>
      <el-form-item label="报备时间">
        <el-date-picker
          v-model="daterangeCreateTime"
@@ -81,6 +91,7 @@
      <el-table-column label="运维单位" align="center" prop="unitName" />
      <el-table-column label="报备人员" align="center" prop="peopleName" />
      <el-table-column label="点位" align="center" prop="pointName" />
      <el-table-column label="报备类型" align="center" prop="reportType" />
      <el-table-column label="报备内容" align="center" prop="reportContent" />
      <el-table-column label="上报材料" align="center" prop="reportMaterials" />
      <el-table-column label="故障类型" align="center" prop="errorType" />
@@ -103,7 +114,7 @@
            type="text"
            icon="el-icon-edit"
            @click="handleAuditing(scope.row)"
            v-hasPermi="['system:report:auditing']"
            v-hasPermi="['system:report:audit']"
          >审核</el-button>
          <el-button
            size="mini"
@@ -138,10 +149,16 @@
            :loading="selectLoading">
            <el-option
              v-for="item in pointList"
              :key="item.value"
              :label="item.label"
              :value="item.value">
              :key="item.id"
              :label="item.value"
              :value="item.id">
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="报备类型" prop="reportType">
          <el-select v-model="form.reportType">
            <el-option label="事前报备" value="事前报备"/>
            <el-option label="事后报备" value="事后报备"/>
          </el-select>
        </el-form-item>
        <el-form-item label="故障类型" prop="errorType">
@@ -150,6 +167,17 @@
            <el-option label="设备故障" value="设备故障"/>
            <el-option label="设备遗失" value="设备遗失"/>
          </el-select>
        </el-form-item>
        <el-form-item label="有效时间">
          <el-date-picker
            v-model="expirTime"
            style="width: 240px"
            value-format="yyyy-MM-dd"
            type="daterange"
            range-separator="-"
            start-placeholder="生效日期"
            end-placeholder="失效日期"
          ></el-date-picker>
        </el-form-item>
        <el-form-item label="报备内容" prop="reportContent">
          <editor v-model="form.reportContent" :min-height="192"/>
@@ -177,6 +205,9 @@
        <el-form-item label="报备人员">
          <el-input v-model="auditingForm.peopleName" disabled />
        </el-form-item>
        <el-form-item label="报备类型">
          <el-input v-model="auditingForm.reportType" disabled />
        </el-form-item>
        <el-form-item label="故障类型">
          <el-input v-model="auditingForm.errorType" disabled />
        </el-form-item>
@@ -196,6 +227,7 @@
        <el-button @click="auditingCancel">取 消</el-button>
      </div>
    </el-dialog>
  </div>
</template>
@@ -231,6 +263,7 @@
      open: false,
      // 故障类型时间范围
      daterangeCreateTime: [],
      expirTime: [],
      // 故障类型时间范围
      daterangeAuditingTime: [],
      auditingOpen: false,
@@ -242,7 +275,8 @@
        errorType: "",
        reportContent: "",
        auditing: "",
        suggest: ""
        suggest: "",
        reportType: "",
      },
      // 查询参数
      queryParams: {
@@ -273,6 +307,9 @@
        reportMaterials: [
          { required: true, message: "上报材料不能为空", trigger: "blur" }
        ],
        reportType: [
          { required: true, message: "请选择报备类型", trigger: "blur" }
        ],
      }
    };
  },
@@ -291,6 +328,7 @@
      this.auditingForm.peopleName =row.peopleName
      this.auditingForm.errorType =row.errorType
      this.auditingForm.reportContent =row.reportContent
      this.auditingForm.reportType =row.reportType
    },
    // 远程搜索点位
    remoteGetPoints(query) {
@@ -382,6 +420,14 @@
    },
    /** 提交按钮 */
    submitForm() {
      if (null != this.expirTime && '' != this.expirTime) {
        this.form["beginCreateTime"] = this.expirTime[0];
        this.form["endCreateTime"] = this.expirTime[1];
      }
      // todo 判断是事前报备
      this.$refs["form"].validate(valid => {
        if (valid) {
          if (this.form.id != null) {
@@ -392,7 +438,7 @@
            });
          } else {
            addReport(this.form).then(response => {
              this.$modal.msgSuccess("新增成功");
              this.$modal.msgSuccess("成功提交报备");
              this.open = false;
              this.getList();
            });