zzw
11 小时以前 c12046de999994bbb4a2be2986e8c3a9555c240c
emergency-repair-web/src/views/fault/SimpleApproval.vue
@@ -9,7 +9,7 @@
    </div>
    <div class="toolbar">
      <el-input v-model="keyword" placeholder="故障编号 / 装备名称 / 工程名称及损坏情况" clearable style="width:320px" @keyup.enter.native="load"></el-input>
      <el-input v-model="keyword" placeholder="故障编号 / 设备名称 / 工程名称及损坏情况" clearable style="width:320px" @keyup.enter.native="load"></el-input>
      <el-button icon="el-icon-search" type="primary" @click="load">查询</el-button>
      <el-button icon="el-icon-refresh" @click="load">刷新</el-button>
      <div class="spacer"></div>
@@ -17,19 +17,19 @@
    </div>
    <div class="table-panel">
      <el-table :data="rows" border stripe height="calc(100vh - 230px)" :header-cell-style="{ textAlign: 'center' }" @selection-change="selection = $event">
      <el-table :data="rows" border stripe height="calc(100vh - 270px)" :header-cell-style="{ textAlign: 'center' }" @selection-change="selection = $event">
        <el-table-column type="selection" width="46"></el-table-column>
        <el-table-column prop="taskStatus" label="任务状态" width="145" fixed>
          <template slot-scope="{ row }"><el-tag size="mini" :type="taskMeta(row.taskStatus).type">{{ taskMeta(row.taskStatus).text }}</el-tag></template>
        </el-table-column>
        <el-table-column prop="faultCode" label="故障编号" width="180" fixed></el-table-column>
        <el-table-column prop="xNo" label="X号" width="64"></el-table-column>
        <el-table-column prop="equipmentName" label="装备名称" min-width="210" show-overflow-tooltip></el-table-column>
        <el-table-column prop="xNo" label="rk_X号" width="64"></el-table-column>
        <el-table-column prop="equipmentName" label="设备名称" min-width="210" show-overflow-tooltip></el-table-column>
        <el-table-column prop="parentSystem" label="所属上级系统" min-width="120"></el-table-column>
        <el-table-column prop="engineeringNameDesc" label="工程名称及损坏情况" min-width="210" show-overflow-tooltip></el-table-column>
        <el-table-column prop="repairRequirement" label="修理技术要求" min-width="200" show-overflow-tooltip></el-table-column>
        <el-table-column prop="engineeringMajor" label="工程专业" width="100"></el-table-column>
        <el-table-column prop="teamMajor" label="T队专业" width="100"></el-table-column>
        <el-table-column prop="teamMajor" label="rk_T队专业" width="100"></el-table-column>
        <el-table-column prop="owner" label="负责人" width="90"></el-table-column>
        <el-table-column prop="reportUnit" label="上报单位" min-width="130"></el-table-column>
        <el-table-column prop="reportDate" label="上报日期" width="110" align="center"></el-table-column>
@@ -39,7 +39,7 @@
        <el-table-column label="是否自修" width="90" align="center">
          <template slot-scope="{ row }">{{ yesNo(row.isSelfRepair) }}</template>
        </el-table-column>
        <el-table-column label="是否涉H" width="90" align="center">
        <el-table-column label="是否涉rk_H" width="90" align="center">
          <template slot-scope="{ row }">{{ yesNo(row.isHRelated) }}</template>
        </el-table-column>
        <el-table-column label="监测项目" width="90" align="center">
@@ -66,7 +66,7 @@
        <el-form-item label="审批意见">
          <el-input v-model="form.opinion" type="textarea" :rows="3" placeholder="请填写审批意见"></el-input>
        </el-form-item>
        <el-alert v-if="form.result === 'REJECT'" :closable="false" type="warning" show-icon title="审批不通过时直接退回XCB助理,任务状态变为“上级打回”。"></el-alert>
        <el-alert v-if="form.result === 'REJECT'" :closable="false" type="warning" show-icon title="审批不通过时直接退回rk_XCB助理,任务状态变为“上级打回”。"></el-alert>
      </el-form>
      <template slot="footer">
        <el-button @click="dialogVisible = false">取消</el-button>
@@ -81,19 +81,21 @@
export default {
  name: 'SimpleApproval',
  props: {
    stage: { type: String, required: true }
  },
  data() {
    return { rows: [], selection: [], keyword: '', dialogVisible: false, saving: false, form: { result: 'PASS', opinion: '' } }
  },
  computed: {
    stage() { return this.$route.meta.stage },
    pageTitle() {
      return { CMB: 'CMB领导审批', JCC_ASSISTANT: 'JCC助理审批', JCC_DIRECTOR: 'JCC处长审批' }[this.stage]
      return { CMB: 'rk_CMB领导审批', JCC_ASSISTANT: 'rk_JCC助理审批', JCC_DIRECTOR: 'rk_JCC处长审批' }[this.stage]
    },
    subtitle() {
      return {
        CMB: '对XCB助理审核完成的故障进行批量通过或退回',
        JCC_ASSISTANT: '对CMB领导审批完成的故障进行批量通过或退回',
        JCC_DIRECTOR: '对JCC助理审批完成的故障进行最终审批,通过后进入派单'
        CMB: '对rk_XCB助理审核完成的故障进行批量通过或退回',
        JCC_ASSISTANT: '对rk_CMB领导审批完成的故障进行批量通过或退回',
        JCC_DIRECTOR: '对rk_JCC助理审批完成的故障进行最终审批,通过后进入派单'
      }[this.stage]
    },
    status() {
@@ -101,7 +103,19 @@
    },
    selectedCodes() { return this.selection.map(item => item.faultCode).join('、') }
  },
  watch: {
    stage() {
      this.keyword = ''
      this.selection = []
      this.rows = []
      this.load()
    }
  },
  created() { this.load() },
  activated() {
    if (this._hasBeenActivated) this.load()
    else this._hasBeenActivated = true
  },
  methods: {
    taskMeta(value) { return statusMeta(taskStatuses, value) },
    yesNo(value) { return Number(value) === 1 ? '是' : '否' },