xiangpei
2024-08-24 cfa6fbe23b5aea9b400fab78e04239b64d0dda92
src/views/system/work-order/distribute/index.vue
@@ -18,11 +18,19 @@
        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
          <el-form-item label="关键词" prop="keyword">
            <el-input
              v-model="queryParams.menuName"
              v-model="queryParams.keyword"
              placeholder="关键词搜索"
              clearable
              @keyup.enter.native="page"
              @clear="page"
            />
          </el-form-item>
          <el-form-item label="故障类型" prop="errorTypeList">
            <el-select v-model="queryParams.errorTypeList" multiple placeholder="故障类型" clearable @change="page" @clear="page">
              <el-option v-for="dict in dict.type.error_type"
                         :value="dict.value"
                         :label="dict.label"/>
            </el-select>
          </el-form-item>
          <el-form-item label="下发状态" prop="status">
            <el-select v-model="queryParams.status" @change="page" placeholder="下发状态" clearable>
@@ -71,10 +79,11 @@
              </el-date-picker>
            </el-form-item>
            <el-form-item label="故障类型" prop="errorType">
              <el-select v-model="fastDistributeForm.errorType">
                <el-option label="市政施工" value="市政施工"/>
                <el-option label="设备故障" value="设备故障"/>
                <el-option label="设备遗失" value="设备遗失"/>
              <el-select v-model="fastDistributeForm.errorType" multiple>
                <el-option v-for="dict in dict.type.error_type"
                           :value="dict.value"
                           :key="dict.value"
                           :label="dict.label"/>
              </el-select>
            </el-form-item>
            <el-form-item label="数量限制" prop="fastNumLimit">
@@ -96,10 +105,22 @@
        <el-table v-loading="loading" :data="workOrderList" @selection-change="handleSelectionChange">
          <el-table-column type="selection" width="55" align="center" />
          <el-table-column label="工单号" align="center" prop="workOrderNo"/>
          <el-table-column label="运维单位" align="center" prop="unitName"/>
          <el-table-column label="工单来源" align="center" prop="source"/>
          <el-table-column label="故障点位" align="center" prop="source">
            <template slot-scope="scope">
              <el-popover
                placement="right"
                :title="scope.row.important ? '重点点位': '正常点位'"
                width="200"
                trigger="hover">
                <span :class="{important: scope.row.important}" slot="reference">{{ scope.row.source }}</span>
              </el-popover>
            </template>
          </el-table-column>
          <el-table-column label="故障类型" align="center" prop="errorType"/>
          <el-table-column label="运维单位" align="center" prop="unitName"/>
          <el-table-column label="产生时间" align="center" prop="createTime"/>
          <el-table-column v-if="queryParams.status === 'DISTRIBUTED'" label="下发人" align="center" prop="realName"/>
          <el-table-column v-if="queryParams.status === 'DISTRIBUTED'" label="下发时间" align="center" prop="distributeTime"/>
        </el-table>
        <pagination
@@ -145,16 +166,17 @@
          </el-select>
        </el-form-item>
        <el-form-item label="故障类型" prop="errorType">
          <el-select v-model="form.errorType">
          <el-select v-model="form.errorType" multiple>
            <el-option v-for="dict in dict.type.error_type"
                       :value="dict.value"
                       :key="dict.value"
                       :label="dict.label"/>
          </el-select>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitForm">确 定</el-button>
        <el-button @click="cancel">取 消</el-button>
        <el-button type="primary" @click="submitForm">确 定</el-button>
      </div>
    </el-dialog>
@@ -276,7 +298,7 @@
  methods: {
    setPointId(selectedValue) {
      const selectedItem = this.pointList.find(item => item.value === selectedValue);
      this.form.pointId = selectedItem.id
      this.form.serialNumber = selectedItem.id
    },
    submitSetting() {
      this.$refs['settingForm'].validate((valid) => {
@@ -420,6 +442,12 @@
</script>
<style scoped>
.important {
  color: red;
}
/deep/ .el-popover__title {
  margin-bottom: 0px;
}
.row {
  padding: 0 20px;
}