ZhangXianQiang
2024-05-24 aa05304d221b1883d746e686f390d6f3fba598a7
src/views/system/score/index.vue
@@ -1,14 +1,7 @@
<template>
  <div class="app-container">
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
      <el-form-item label="单位名" prop="unitId">
        <el-input
          v-model="queryParams.unitId"
          placeholder="请输入单位名"
          clearable
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="考核名" prop="examineId">
        <el-input
          v-model="queryParams.examineId"
@@ -17,14 +10,16 @@
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="积分类型" prop="scoreCategory">
        <el-input
          v-model="queryParams.scoreCategory"
          placeholder="请输入积分类型"
          clearable
          @keyup.enter.native="handleQuery"
        />
      <el-form-item label="考核对象" prop="unitName">
        <el-cascader
          v-model="value"
          :options="options"
          :props = "props"
          :show-all-levels="false"
          @change="handleChange"></el-cascader>
      </el-form-item>
      <el-form-item>
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@@ -32,15 +27,6 @@
    </el-form>
    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-plus"
          size="mini"
          @click="handleAdd"
        >新增</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="success"
@@ -76,14 +62,28 @@
    <el-table v-loading="loading" :data="scoreList" @selection-change="handleSelectionChange">
      <el-table-column type="selection" width="55" align="center" />
      <el-table-column label="考核名" align="center" prop="examineName" />
      <el-table-column label="单位名" align="center" prop="unitName" />
      <el-table-column label="分值" align="center" prop="score" />
      <el-table-column label="积分类型" align="center" prop="scoreCategory">
      <el-table-column label="考核类型" align="center" prop="examineCategory">
        <template slot-scope="scope">
          <div v-if="scope.row.examineCategory == 1">省厅考核</div>
          <div v-else-if="scope.row.examineCategory == 2">市局考核</div>
          <div v-else-if="scope.row.examineCategory == 3">合同考核</div>
        </template>
      </el-table-column>
      <el-table-column label="考核对象" align="center" prop="unitName">
      <template slot-scope="scope">
        <div v-if="scope.row.scoreCategory === 1">视频在线率</div>
        <div v-else-if="scope.row.scoreCategory === 2">存储故障</div>
        <div v-else-if="scope.row.scoreCategory === 3">保障工作</div>
        <div v-if="scope.row.unitName ==='成都x运维' ">成都x运维</div>
        <div v-else>自流井区</div>
      </template>
      </el-table-column>
      <el-table-column label="分值" align="center" prop="score" />
      <el-table-column label="考核规则" align="center" prop="ruleCategory">
        <template slot-scope="scope">
          <div v-if="scope.row.ruleCategory == 1">视频在线率</div>
          <div v-else-if="scope.row.ruleCategory == 2">存储故障</div>
          <div v-else-if="scope.row.ruleCategory == 3">视图库对接稳定性</div>
          <div v-else-if="scope.row.ruleCategory == 4">一机一档24小时未修复</div>
          <div v-else-if="scope.row.ruleCategory == 5">时钟不同步24小时未修复</div>
        </template>
      </el-table-column>
      <el-table-column label="创建人" align="center" prop="createBy" />
      <el-table-column label="创建时间" align="center" prop="createTime" />
@@ -119,16 +119,6 @@
        <el-form-item label="分值" prop="score">
          <el-input v-model="form.score" placeholder="请输入分值" />
        </el-form-item>
        <el-form-item label="单位名" prop="unitId">
          <el-select v-model="form.unitId" placeholder="请选择">
            <el-option
              v-for="item in unitList"
              :key="item.id"
              :label="item.value"
              :value="item.id">
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="考核名" prop="examineId">
          <el-select v-model="form.examineId" placeholder="请选择">
            <el-option
@@ -139,10 +129,20 @@
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="积分类型" prop="scoreCategory">
          <el-select v-model="form.scoreCategory" placeholder="请选择">
        <el-form-item label="考核对象" prop="unitId">
          <el-select v-model="form.unitId" placeholder="请选择">
            <el-option
              v-for="item in scoreCategoryList"
              v-for="item in unitList"
              :key="item.id"
              :label="item.value"
              :value="item.id">
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="考核规则" prop="ruleCategory">
          <el-select v-model="form.ruleCategory" placeholder="请选择">
            <el-option
              v-for="item in ruleCategoryList"
              :key="item.id"
              :label="item.value"
              :value="item.id">
@@ -159,27 +159,65 @@
</template>
<script>
import { listScore, getScore, delScore, addScore, updateScore } from "@/api/platform/score";
import {unitSelect} from "../../../api/platform/unit";
import {publishSelect} from "../../../api/platform/publish";
import { listScore, getScore, delScore, addScore, updateScore } from "@/api/platform/check-score";
import {unitSelect} from "@/api/platform/unit";
import {publishSelect} from "@/api/platform/check-publish";
export default {
  name: "Score",
  dicts: ['platform_operate_category'],
  data() {
    return {
      operateCategoryList: [
        { id: 2, value: '人工打分' },
        { id: 1, value: '系统打分' },
      options: [{
        value: 'city',
        label: '区县',
        children: [{
          value: 'fushun',
          label: '富顺县',
        }, {
          value: 'rong',
          label: '荣县',
        },{
          value: 'gaoxin',
          label: '高新区',
        },{
          value: 'ziliujing',
          label: '自流井区',
        },{
          value: 'gongjing',
          label: '贡井区',
        },{
          value: 'daan',
          label: '大安区',
        },{
          value: 'yantan',
          label: '沿滩区',
        },
        ]
      }, {
        value: 'company',
        label: '公司',
        children: [{
          value: 'yunwei',
          label: '成都x运维',
        }, {
          value: 'yunwei2',
          label: '自贡x运维',
        }, ]
      },
      ],
      scoreCategoryList: [
        { id: 2, value: '存储故障' },
      ruleCategoryList: [
        { id: 1, value: '视频在线率' },
        { id: 3, value: '保障工作' },
        { id: 2, value: '存储故障' },
        { id: 3, value: '视图库对接稳定性' },
        { id: 4, value: '一机一档24小时未修复' },
        { id: 5, value: '时钟不同步24小时未修复' },
      ],
      unitList: [],
      examineList: [],
      unitList: [
        {id:2,value: '成都x运维'},
        {id:3,value: '自流井区'},
      ],
      // 遮罩层
      loading: true,
      // 选中数组
@@ -217,16 +255,16 @@
  },
  created() {
    this.getList();
    this.selectUnit();
    // this.selectUnit();
    this.selectExamine();
  },
  methods: {
    // 运维公司下拉数据
    selectUnit() {
      unitSelect().then(res => {
        this.unitList = res.data;
      })
    },
    // selectUnit() {
    //   unitSelect().then(res => {
    //     this.unitList = res.data;
    //   })
    // },
    // 考核下拉数据
    selectExamine() {
      publishSelect().then(res => {