fuliqi
2024-04-30 7d312ba048cd9767286c6bc5b8c3f7e94c160c9f
src/views/system/score/default/index.vue
@@ -44,12 +44,13 @@
    <el-table v-loading="loading" :data="auditingList" @selection-change="handleSelectionChange">
      <el-table-column type="selection" width="55" align="center" />
      <el-table-column label="考核单位" align="center" prop="unitName" width="180" />
      <el-table-column label="考核合同" align="center" prop="contractName" width="180" />
      <el-table-column label="考核规则" align="center" prop="ruleName" width="120" :show-overflow-tooltip="true" />
      <el-table-column label="考核指标" align="center" prop="num" width="120" />
      <el-table-column label="考核扣分" align="center" prop="score" width="120" />
      <el-table-column label="创建人" align="center" prop="createUser" />
      <el-table-column label="考核单位" align="center" prop="unitName"/>
      <el-table-column label="考核合同" align="center" prop="contractName"/>
      <el-table-column label="考核规则" align="center" prop="ruleName" :show-overflow-tooltip="true" />
      <el-table-column label="扣减方式" align="center" prop="deductCategory"/>
      <el-table-column label="考核指标" align="center" prop="num"/>
      <el-table-column label="考核扣分" align="center" prop="score"/>
      <el-table-column label="创建时间" align="center" prop="createTime" width="180px"/>
      <el-table-column label="审核状态" align="center" prop="auditingStatus">
        <template slot-scope="scope">
          <el-tag
@@ -60,6 +61,7 @@
      <el-table-column label="审核人" align="center" prop="auditingUser" />
      <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width">
        <template slot-scope="scope">
          <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)">详情</el-button>
          <el-button size="mini" type="text" icon="el-icon-s-check" @click="handleAuditing(scope.row)"
            v-hasPermi="['default:audit']" v-if="scope.row.auditingStatus === '待审核'">审核</el-button>
          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
@@ -120,7 +122,14 @@
                  <el-cascader ref="cascader" v-model="form.ruleIdsArray" :options="options" @change="handleChange">
                    <template slot-scope="{ data }">
                      <el-tooltip class="item" :disabled="data.label.length < 16 && !data.deductCategory" effect="dark"
                        :content="data.label.length < 16 ? data.deductCategory ? data.deductCategory + ' ' + data.calcFraction + (data.calcUnit ? '/' + data.calcUnit : '') : '' : (data.deductCategory ? data.label + ' ' + data.deductCategory + ' ' + data.calcFraction + (data.calcUnit ? '/' + data.calcUnit : '') : data.label)"
                        :content="
                          data.label.length < 16 ?
                            data.deductCategory ?
                                data.deductCategory == '分数乘以数量' ? '扣' + data.calcFraction  + '分*数量 ' : data.deductCategory == '除以数量后乘以分数' ? '扣' + data.calcFraction + '分/' +  data.calcUnit + '小时' : '扣' + data.calcFraction + '分' :
                                '' :
                            (data.deductCategory ?
                                data.label + ' ' + (data.deductCategory == '分数乘以数量' ? '扣' + data.calcFraction  + '分*数量 ' : data.deductCategory == '除以数量后乘以分数' ? '扣' + data.calcFraction + '分/' +  data.calcUnit + '小时' : '扣' + data.calcFraction + '分') :
                                data.label)"
                        placement="left">
                        <span>{{ data.label }}</span>
                      </el-tooltip>
@@ -146,6 +155,31 @@
        <el-button @click="cancel">取 消</el-button>
      </div>
    </el-dialog>
    <!-- 详情 -->
    <el-dialog title="运维考核详情" :visible.sync="openView" width="800px" append-to-body>
      <el-form ref="form" :model="view" label-width="150px" size="mini">
        <el-row>
          <el-col>
            <el-form-item label="考核单位:">{{ view.unitName }}</el-form-item>
            <el-form-item label="考核合同:">{{ view.contractName }} </el-form-item>
            <el-form-item label="考核规则:">{{ view.ruleName }} </el-form-item>
            <el-form-item label="考核指标:">{{ view.num }} </el-form-item>
            <el-form-item label="考核扣分:">{{ view.score }} </el-form-item>
            <el-form-item label="创建人:">{{ view.createUser }} </el-form-item>
            <el-form-item label="创建时间:">{{ view.createTime }} </el-form-item>
            <el-form-item label="审核状态:">{{ view.auditingStatus }} </el-form-item>
            <el-form-item label="审核备注:">{{ view.remark }} </el-form-item>
            <el-form-item label="审核人:">{{ view.auditingUser }} </el-form-item>
            <el-form-item label="审核时间:">{{ view.auditingTime }} </el-form-item>
          </el-col>
        </el-row>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button @click="openView = false">关 闭</el-button>
      </div>
    </el-dialog>
  </div>
</template>
@@ -158,6 +192,8 @@
  name: "Auditing",
  data() {
    return {
      view: {},
      openView: false,
      needNum: false,
      options: [],
      auditingOpen: false,
@@ -241,6 +277,11 @@
    this.getUnitSelect();
  },
  methods: {
    /** 详细按钮操作 */
    handleView(row) {
      this.openView = true;
      this.view = row;
    },
    /**
     * 选择规则
     */
@@ -248,6 +289,7 @@
      let item = this.$refs['cascader'].getCheckedNodes()[0].data;
      this.calcObj = item;
      this.form.contractId = item.contractId;
      this.form.deductCategory = item.deductCategory == '分数乘以数量' ? '扣' + item.calcFraction  + '分*数量 ' : item.deductCategory == '除以数量后乘以分数' ? '扣' + item.calcFraction + '分/' +  item.calcUnit + '小时' : '扣' + item.calcFraction + '分';
      if (item.deductCategory == "扣指定分数") {
        this.needNum = false;
        this.form.score = item.calcFraction;
@@ -366,6 +408,7 @@
      this.daterangeAuditingTime = [];
      this.daterangeCreateTime = [];
      this.resetForm("queryForm");
      this.queryParams = {};
      this.handleQuery();
    },
    // 多选框选中数据