xiangpei
2024-09-30 61e8824e7e45020c4fc9b0df18c4d5c94bb7db55
src/views/system/check/result/detail/detail.vue
@@ -1,5 +1,13 @@
<template>
  <div class="app-container">
  <div style="padding: 0px 10px">
      <div >
        <el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect"
               >
          <el-menu-item index="0">省厅考核</el-menu-item>
          <el-menu-item index="1">区县考核</el-menu-item>
          <el-menu-item index="2">公安部考核</el-menu-item>
        </el-menu>
      </div>
    <el-container>
      <el-main>
        <h2>考核规则</h2>
@@ -30,6 +38,7 @@
                  type="text"
                  icon="el-icon-edit"
                  @click="handleRuleUpdate(item)"
                  v-hasPermi="['check:template:edit']"
                  >修改
                </el-button>
              </div>
@@ -38,35 +47,6 @@
            </el-card>
          </el-col>
        </el-row>
        <!-- <div></div>
        <el-table
          v-loading="loading"
          :data="checkRuleList"
          @selection-change="handleSelectionChange"
        >
          <el-table-column type="selection" width="55" align="center" />
          <el-table-column
            label="规则名称"
            align="center"
            prop="checkRuleName"
          />
          <el-table-column label="规则权重" align="center" prop="weight" />
          <el-table-column
            label="操作"
            align="center"
            class-name="small-padding fixed-width"
          >
            <template slot-scope="scope">
              <el-button
                size="mini"
                type="text"
                icon="el-icon-edit"
                @click="handleRuleUpdate(scope.row)"
                >修改
              </el-button>
            </template>
          </el-table-column>
        </el-table> -->
      </el-main>
    </el-container>
@@ -81,6 +61,7 @@
              icon="el-icon-download"
              size="mini"
              @click="handleExport"
              v-hasPermi="['check:result:detail:export']"
              >导出
            </el-button>
          </el-col>
@@ -91,15 +72,19 @@
            :inline="true"
            v-show="showSearch"
          >
            <el-form-item label="考核日期" prop="name">
            <el-form-item label="考核时间">
              <el-date-picker
                v-model="date"
                :clearable="false"
                v-model="queryParams.quarter"
                type="monthrange"
                format="yyyy-MM"
                value-format="yyyy-MM"
                type="month"
                placeholder="选择日期"
                @change="dateChange"
              >
                unlink-panels
                range-separator="至"
                start-placeholder="开始月份"
                end-placeholder="结束月份"
                @change="quarterChange"
                :picker-options="pickerOptions">
              </el-date-picker>
            </el-form-item>
            <el-form-item>
@@ -141,6 +126,21 @@
              <span>{{ translateDeptId(scope.row.dept_id) }}</span>
            </template>
          </el-table-column>
          <el-table-column
            label="考核标签"
            align="center"
            prop="dept_id"
            width="120px"
            fixed
          >
            <template slot-scope="scope">
              {{
                scope.row.examine_tag === 0 ? '省厅考核' :
                  scope.row.examine_tag === 1 ? '区县考核' :
                    scope.row.examine_tag === 2 ? '公安部考核' : '未知'
              }}
            </template>
          </el-table-column>
          <template v-for="item in tableData">
            <el-table-column
              :key="item.ruleName"
@@ -149,7 +149,7 @@
              width="180px"
            >
              <template slot-scope="scope">
                <span>{{ scope.row[item.ruleIndex] }}</span>
                <span>{{ (scope.row[item.ruleIndex] * 100).toFixed(2) + '%'}}</span>
              </template>
            </el-table-column>
          </template>
@@ -192,8 +192,8 @@
        </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>
@@ -221,8 +221,8 @@
        </div>
      </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>
  </div>
@@ -244,6 +244,32 @@
  dicts: ["platform_audit_state"],
  data() {
    return {
      pickerOptions: {
          shortcuts: [{
            text: '第一季度',
            onClick(picker) {
              picker.$emit('pick', [new Date(new Date().getFullYear() + "-01"), new Date(new Date().getFullYear() + "-03")]);
            }
          },
          {
            text: '第二季度',
            onClick(picker) {
              picker.$emit('pick', [new Date(new Date().getFullYear() + "-04"), new Date(new Date().getFullYear() + "-06")]);
            }
          },
          {
            text: '第三季度',
            onClick(picker) {
              picker.$emit('pick', [new Date(new Date().getFullYear() + "-07"), new Date(new Date().getFullYear() + "-09")])
            }
          },
          {
            text: '第四季度',
            onClick(picker) {
              picker.$emit('pick', [new Date(new Date().getFullYear() + "-10"), new Date(new Date().getFullYear() + "-12")])
            }
          }]
        },
      id: null,
      examineCategory: null,
      date: "",
@@ -284,6 +310,10 @@
      queryParams: {
        id: null,
        date: null,
        quarter: null,
        examineTag: null,
        examineTags: [],
        deptId: null
      },
      // 表单校验
      rules: {},
@@ -302,6 +332,13 @@
    if (this.$route.query.id) {
      this.queryParams.id = this.$route.query.id;
    }
    if(this.$route.query.deptId){
      this.queryParams.deptId = this.$route.query.deptId;
    }
    let examineTag = this.$route.query.examineTag;
    this.activeIndex = examineTag;
    this.queryParams.examineTag = examineTag;
    this.queryParams.examineTags.push(examineTag);
    // 考核积分列表
    this.getList();
    this.areaSelect();
@@ -363,8 +400,11 @@
      }
    },
    dateChange() {
      this.queryParams.date = this.date;
      console.log(this.queryParams);
      this.queryParams.quarter = null;
      this.getList();
    },
    quarterChange() {
      this.queryParams.date = null;
      this.getList();
    },
    /** 搜索按钮操作 */
@@ -396,10 +436,19 @@
      this.indexOpen = true;
      this.title = "修改考核指标";
    },
    /** 导航切换 */
    handleSelect(key) {
      this.activeIndex = key;
      this.queryParams.examineTag = key;
      // 考核积分列表
      this.getList();
    },
    /** 修改按钮操作 */
    handleRuleUpdate(row) {
      this.reset("ruleForm");
      this.ruleForm = row;
      this.ruleForm = JSON.parse(JSON.stringify(row));
      this.ruleOpen = true;
      this.title = "修改考核规则";
    },
@@ -420,15 +469,12 @@
    /** 导出按钮操作 */
    handleExport() {
      this.download(
        "/check/score/export",
        "/check/score/detailExport",
        {
          ...this.queryParams,
        },
        `考核指标_${new Date().getTime()}.xlsx`
      );
    },
    handleSelect(key, keyPath) {
      console.log(key, keyPath);
    },
  },
};