New file |
| | |
| | | import request from '@/utils/request' |
| | | |
| | | // 查询核算记录列表 |
| | | export function listRecord(query) { |
| | | return request({ |
| | | url: '/calculate/record/list', |
| | | method: 'get', |
| | | params: query |
| | | }) |
| | | } |
| | | |
| | | // 查询核算记录详细 |
| | | export function getRecord(id) { |
| | | return request({ |
| | | url: '/calculate/record/' + id, |
| | | method: 'get' |
| | | }) |
| | | } |
| | | |
| | | // 新增核算记录 |
| | | export function addRecord(data) { |
| | | return request({ |
| | | url: '/calculate/record', |
| | | method: 'post', |
| | | data: data |
| | | }) |
| | | } |
| | | |
| | | // 修改核算记录 |
| | | export function updateRecord(data) { |
| | | return request({ |
| | | url: '/calculate/record', |
| | | method: 'put', |
| | | data: data |
| | | }) |
| | | } |
| | | |
| | | // 删除核算记录 |
| | | export function delRecord(id) { |
| | | return request({ |
| | | url: '/calculate/record/' + id, |
| | | method: 'delete' |
| | | }) |
| | | } |
| | |
| | | import request from '@/utils/request' |
| | | |
| | | // 查询核算规则列表 |
| | | export function listRules(query) { |
| | | export function listRule(query) { |
| | | return request({ |
| | | url: '/check/calculateRule/list', |
| | | url: '/calculate/rule/list', |
| | | method: 'get', |
| | | params: query |
| | | }) |
| | | } |
| | | |
| | | // 查询核算规则详细 |
| | | export function getRules(id) { |
| | | export function getRule(id) { |
| | | return request({ |
| | | url: '/check/calculateRule/' + id, |
| | | url: '/calculate/rule/' + id, |
| | | method: 'get' |
| | | }) |
| | | } |
| | | |
| | | // 新增核算规则 |
| | | export function addRules(data) { |
| | | export function addRule(data) { |
| | | return request({ |
| | | url: '/check/calculateRule', |
| | | url: '/calculate/rule', |
| | | method: 'post', |
| | | data: data |
| | | }) |
| | | } |
| | | |
| | | // 修改核算规则 |
| | | export function updateRules(data) { |
| | | export function updateRule(data) { |
| | | return request({ |
| | | url: '/check/calculateRule', |
| | | url: '/calculate/rule', |
| | | method: 'put', |
| | | data: data |
| | | }) |
| | | } |
| | | |
| | | // 删除核算规则 |
| | | export function delRules(id) { |
| | | export function delRule(id) { |
| | | return request({ |
| | | url: '/check/calculateRule/' + id, |
| | | url: '/calculate/rule/' + id, |
| | | method: 'delete' |
| | | }) |
| | | } |
| | |
| | | <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="rulesName"> |
| | | <el-input |
| | | v-model="queryParams.rulesName" |
| | | placeholder="请输入规则名称" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-form-item label="单位名" prop="checkUnitId"> |
| | | <el-select v-model="queryParams.checkUnitId" clearable @clear="handleQuery" placeholder="请选择单位"> |
| | | <el-option |
| | | label="成都x运维" |
| | | value="1"> |
| | | </el-option> |
| | | <el-option |
| | | label="成都a运维" |
| | | value="2"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="合同名称" prop="contractName"> |
| | | <el-input |
| | | v-model="queryParams.contractName" |
| | | placeholder="请输入合同名称" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-form-item label="核算日期" prop="date" > |
| | | <el-date-picker clearable |
| | | v-model="queryParams.date" |
| | | type="date" |
| | | value-format="yyyy-MM-dd" |
| | | placeholder="请选择核算日期"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
| | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | v-hasPermi="['system:record:add']" |
| | | >新增</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="success" |
| | | plain |
| | | icon="el-icon-edit" |
| | | size="mini" |
| | | :disabled="single" |
| | | @click="handleUpdate" |
| | | v-hasPermi="['system:record:edit']" |
| | | >修改</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="danger" |
| | | plain |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | :disabled="multiple" |
| | | @click="handleDelete" |
| | | v-hasPermi="['system:record:remove']" |
| | | >删除</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-download" |
| | | size="mini" |
| | | @click="handleExport" |
| | | >导出 |
| | | </el-button> |
| | | v-hasPermi="['system:record:export']" |
| | | >导出</el-button> |
| | | </el-col> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | </el-row> |
| | | |
| | | <el-table v-loading="loading" :data="rulesList" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center"/> |
| | | <el-table-column label="规则名称" align="center" prop="rulesName"/> |
| | | <el-table-column label="合同名称" align="center" prop="contractName"/> |
| | | <el-table-column label="金额(元)" align="center" prop="amount"/> |
| | | <el-table-column label="数量" align="center" prop="num"> |
| | | 100 |
| | | </el-table-column> |
| | | <el-table-column label="合计(元)" align="center" prop="money"> |
| | | <template slot-scope="scope" > |
| | | {{scope.row.amount*100}} |
| | | <el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="核算记录日期" align="center" prop="date" width="180"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| | | <el-table-column label="核算规则" align="center" prop="ruleId"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span> |
| | | <div v-if="scope.row.ruleId == 1">成都x运维考核结果应用规则</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="单位名" align="center" prop="unitId" > |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.unitId == 2">成都x运维</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="总服务费" align="center" prop="totalMount" /> |
| | | <el-table-column label="扣减服务费" align="center" prop="deductAmount" /> |
| | | <el-table-column label="考核分数" align="center" prop="score" /> |
| | | <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="handleUpdate(scope.row)" |
| | | v-hasPermi="['system:record:edit']" |
| | | >修改</el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | v-hasPermi="['system:record:remove']" |
| | | >删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | @pagination="getList" |
| | | /> |
| | | |
| | | <!-- 添加或修改核算规则对话框 --> |
| | | <!-- 添加或修改核算记录对话框 --> |
| | | <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
| | | <el-form-item label="规则名称" prop="rulesName"> |
| | | <el-input v-model="form.rulesName" placeholder="请输入规则名称"/> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="100px"> |
| | | <el-form-item label="核算对象" prop="checkUnitId"> |
| | | <el-select v-model="queryParams.checkUnitId" clearable @clear="handleQuery" placeholder="核算对象"> |
| | | <el-option |
| | | label="成都x运维" |
| | | value="1"> |
| | | </el-option> |
| | | <el-option |
| | | label="成都a运维" |
| | | value="2"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="合同名称" prop="contractName"> |
| | | <el-input v-model="form.contractName" placeholder="请输入合同名称"/> |
| | | <el-form-item label="核算记录日期" prop="date" > |
| | | <el-date-picker clearable |
| | | v-model="form.date" |
| | | type="date" |
| | | value-format="yyyy-MM-dd" |
| | | placeholder="请选择核算记录日期"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="金额" prop="amount"> |
| | | <el-input v-model="form.amount" placeholder="请输入金额"/> |
| | | <el-form-item label="总服务费" prop="totalMount"> |
| | | <el-input v-model="form.totalMount" placeholder="请输入总服务费" /> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="扣减服务费" prop="deductAmount"> |
| | | <el-input v-model="form.deductAmount" placeholder="请输入扣减服务费" /> |
| | | </el-form-item> |
| | | <el-form-item label="考核分数" prop="score"> |
| | | <el-input v-model="form.score" placeholder="请输入考核分数" /> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitForm">确 定</el-button> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { listRules, getRules, delRules, addRules, updateRules } from '@/api/platform/calculate-rule' |
| | | import { listRecord, getRecord, delRecord, addRecord, updateRecord } from "@/api/platform/calculate-record"; |
| | | |
| | | export default { |
| | | name: 'Rules', |
| | | name: "Record", |
| | | data() { |
| | | return { |
| | | num: 100, |
| | | // 遮罩层 |
| | | loading: true, |
| | | // 选中数组 |
| | |
| | | showSearch: true, |
| | | // 总条数 |
| | | total: 0, |
| | | // 核算规则表格数据 |
| | | rulesList: [], |
| | | // 核算记录表格数据 |
| | | recordList: [], |
| | | // 弹出层标题 |
| | | title: '', |
| | | title: "", |
| | | // 是否显示弹出层 |
| | | open: false, |
| | | // 查询参数 |
| | | queryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | rulesName: null, |
| | | contractName: null, |
| | | deleted: null |
| | | date: null, |
| | | ruleId: null, |
| | | unitId: null, |
| | | totalMount: null, |
| | | deductAmount: null, |
| | | score: null |
| | | }, |
| | | // 表单参数 |
| | | form: {}, |
| | | // 表单校验 |
| | | rules: {} |
| | | } |
| | | rules: { |
| | | id: [ |
| | | { required: true, message: "$comment不能为空", trigger: "blur" } |
| | | ], |
| | | } |
| | | }; |
| | | }, |
| | | created() { |
| | | this.getList() |
| | | this.getList(); |
| | | }, |
| | | methods: { |
| | | /** 查询核算规则列表 */ |
| | | /** 查询核算记录列表 */ |
| | | getList() { |
| | | this.loading = true |
| | | listRules(this.queryParams).then(response => { |
| | | this.rulesList = response.rows |
| | | this.total = response.total |
| | | this.loading = false |
| | | }) |
| | | this.loading = true; |
| | | listRecord(this.queryParams).then(response => { |
| | | this.recordList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | // 取消按钮 |
| | | cancel() { |
| | | this.open = false |
| | | this.reset() |
| | | this.open = false; |
| | | this.reset(); |
| | | }, |
| | | // 表单重置 |
| | | reset() { |
| | | this.form = { |
| | | id: null, |
| | | rulesName: null, |
| | | contractName: null, |
| | | amount: null, |
| | | createTime: null, |
| | | updateTime: null, |
| | | deleted: null |
| | | } |
| | | this.resetForm('form') |
| | | date: null, |
| | | ruleId: null, |
| | | unitId: null, |
| | | totalMount: null, |
| | | deductAmount: null, |
| | | score: null |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | this.queryParams.pageNum = 1 |
| | | this.getList() |
| | | this.queryParams.pageNum = 1; |
| | | this.getList(); |
| | | }, |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.resetForm('queryForm') |
| | | this.handleQuery() |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | // 多选框选中数据 |
| | | handleSelectionChange(selection) { |
| | | this.ids = selection.map(item => item.id) |
| | | this.single = selection.length !== 1 |
| | | this.single = selection.length!==1 |
| | | this.multiple = !selection.length |
| | | }, |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | this.reset() |
| | | this.open = true |
| | | this.title = '添加核算规则' |
| | | this.reset(); |
| | | this.open = true; |
| | | this.title = "添加核算记录"; |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | this.reset() |
| | | this.reset(); |
| | | const id = row.id || this.ids |
| | | getRules(id).then(response => { |
| | | this.form = response.data |
| | | this.open = true |
| | | this.title = '修改核算规则' |
| | | }) |
| | | getRecord(id).then(response => { |
| | | this.form = response.data; |
| | | this.open = true; |
| | | this.title = "修改核算记录"; |
| | | }); |
| | | }, |
| | | /** 提交按钮 */ |
| | | submitForm() { |
| | | this.$refs['form'].validate(valid => { |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | if (this.form.id != null) { |
| | | updateRules(this.form).then(response => { |
| | | this.$modal.msgSuccess('修改成功') |
| | | this.open = false |
| | | this.getList() |
| | | }) |
| | | updateRecord(this.form).then(response => { |
| | | this.$modal.msgSuccess("修改成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | } else { |
| | | addRules(this.form).then(response => { |
| | | this.$modal.msgSuccess('新增成功') |
| | | this.open = false |
| | | this.getList() |
| | | }) |
| | | addRecord(this.form).then(response => { |
| | | this.$modal.msgSuccess("新增成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | } |
| | | } |
| | | }) |
| | | }); |
| | | }, |
| | | /** 删除按钮操作 */ |
| | | handleDelete(row) { |
| | | const ids = row.id || this.ids |
| | | this.$modal.confirm('是否确认删除核算规则编号为"' + ids + '"的数据项?').then(function() { |
| | | return delRules(ids) |
| | | const ids = row.id || this.ids; |
| | | this.$modal.confirm('是否确认删除核算记录编号为"' + ids + '"的数据项?').then(function() { |
| | | return delRecord(ids); |
| | | }).then(() => { |
| | | this.getList() |
| | | this.$modal.msgSuccess('删除成功') |
| | | }).catch(() => { |
| | | }) |
| | | this.getList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }).catch(() => {}); |
| | | }, |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | | this.download('platform/rules/export', { |
| | | this.download('system/record/export', { |
| | | ...this.queryParams |
| | | }, `rules_${new Date().getTime()}.xlsx`) |
| | | }, `record_${new Date().getTime()}.xlsx`) |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | |
| | | |
| | | <el-card class="box-card" v-for="(item) in checkResultList"> |
| | | <div slot="header" class="clearfix"> |
| | | <span>{{ item.checkUnitName }}</span> |
| | | <span>{{ checkUnitName }}</span> |
| | | <el-button style="float: right; padding: 3px 0" type="text" @click="handleDetail(item)">详情</el-button> |
| | | </div> |
| | | <div class="text item">合同<span class="time">{{ item.checkUnitName }}</span></div> |
| | | <div class="text item">核算金额<span class="time">{{ "40090" }}</span></div> |
| | | <div class="text item">考核分数<span class="time">{{ item.checkScore }}</span></div> |
| | | <div class="text item">核算时间 |
| | | <div class="text item">合同<span class="time">{{ checkUnitName }}</span></div> |
| | | <div class="text item">总金额<span class="time">{{ "1000元" }}</span></div> |
| | | <div class="text item">扣减金额<span class="time">{{ "10元" }}</span></div> |
| | | <div class="text item">剩余金额<span class="time">{{ "990元" }}</span></div> |
| | | <div class="text item">最新核算时间 |
| | | <span class="time">{{ item.checkTime }}</span> |
| | | </div> |
| | | <el-button size="small" round style="float: right;margin-bottom: 18px;" @click="handlePublish(item)" v-show="item.publish != 1" v-hasPermi="['result:contract:publish']">确认发布</el-button> |
| | | <el-button size="small" round style="float: right;margin-bottom: 18px;" @click="handlePublish(item)" v-show="item.publish == 1" v-hasPermi="['result:contract:publish']">已发布</el-button> |
| | | </el-card> |
| | | |
| | | <!-- <el-table v-loading="loading" :data="checkResultList" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="考核对象" align="center" prop="checkUnitName" /> |
| | | <el-table-column label="考核" align="center" prop="examineName" /> |
| | | <el-table-column label="考核范围":formatter="examineRangeFormatter" align="center" prop="examineRange" /> |
| | | <el-table-column label="考核频率" :formatter="frequencyFormatter" align="center" prop="frequency" /> |
| | | <el-table-column label="考核分数" falign="center" prop="checkScore" /> |
| | | <el-table-column label="考核时间" align="center" prop="checkTime" /> |
| | | <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-view" |
| | | @click="handleDetail(scope.row)" |
| | | >详情</el-button> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | icon="el-icon-edit" |
| | | @click="handleSetManualScore(scope.row)" |
| | | >人工打分</el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | >删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | |
| | | <pagination |
| | | v-show="total>0" |
| | |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> --> |
| | | |
| | | <el-dialog :title="manualScoreTitle" :visible.sync="manualScoreOpen" width="500px" append-to-body> |
| | | <el-input v-model="manualScoreForm.manualScore" type="number" placeholder="请为该单位打分"/> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitManualScore">确 定</el-button> |
| | | <el-button @click="cancelManualScore">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | /> |
| | | |
| | | <el-dialog :title="detailTitle" :visible.sync="detailOpen" width="700px" append-to-body> |
| | | <el-descriptions class="margin-top" :column="3" border> |
| | |
| | | <i class="el-icon-user"></i> |
| | | 核算对象 |
| | | </template> |
| | | {{detail.checkUnitName}} |
| | | {{checkUnitName}} |
| | | </el-descriptions-item> |
| | | <el-descriptions-item> |
| | | <template slot="label"> |
| | | <i class="el-icon-s-management"></i> |
| | | 合同名称 |
| | | </template> |
| | | {{detail.checkUnitName}} |
| | | {{checkUnitName}} |
| | | </el-descriptions-item> |
| | | </el-descriptions> |
| | | <el-table |
| | | :data="tableData" |
| | | show-summary |
| | | :summary-method="getSummaries" |
| | | style="width: 100%"> |
| | | <el-table-column |
| | | prop="name" |
| | | label="规则名" |
| | | prop="time" |
| | | label="核算日期" |
| | | width="180"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="amount" |
| | | label="数量" |
| | | width="180"> |
| | | prop="score" |
| | | label="考核分数" |
| | | width="180" |
| | | doNotSum> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="money" |
| | | label="金额(元)"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="total" |
| | | label="合计(元)"> |
| | | label="扣减金额(元)"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-dialog> |
| | |
| | | detail:{ |
| | | |
| | | }, |
| | | checkUnitName:'成都x运维', |
| | | tableData: [{ |
| | | name: '存储故障', |
| | | amount: '100', |
| | | money: '100', |
| | | total: '10000' |
| | | time: '2024-03-03', |
| | | score: '94', |
| | | money: '10', |
| | | }, { |
| | | name: '时钟不同步24小时未修复', |
| | | amount: '100', |
| | | money: '100.45', |
| | | total: '10045' |
| | | }, { |
| | | name: '一机一档24小时未修复', |
| | | amount: '100', |
| | | money: '100', |
| | | total: '10000' |
| | | }, { |
| | | name: '视频运行率(96%)', |
| | | amount: '100', |
| | | money: '100.45', |
| | | total: '10045' |
| | | }], |
| | | time: '2024-04-03', |
| | | score: '95', |
| | | money: '0', |
| | | }, ], |
| | | manualScoreOpen: false, |
| | | manualScoreForm: {}, |
| | | manualScoreTitle: '', |
| | |
| | | this.queryParams["end"] = this.daterangeCheckTime[1]; |
| | | } |
| | | listCheckResult(this.queryParams).then(response => { |
| | | this.checkResultList = response.data; |
| | | this.checkResultList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | |
| | | this.cancelManualScore(); |
| | | this.getList(); |
| | | }) |
| | | }, |
| | | handleSetManualScore(row) { |
| | | this.manualScoreForm.id = row.id; |
| | | this.manualScoreForm.manualScore = parseInt(row.manualScore); |
| | | this.manualScoreTitle = row.checkUnitName + '人工打分' |
| | | this.manualScoreOpen = true; |
| | | }, |
| | | handleDetail(row) { |
| | | this.detail = row; |
| | |
| | | this.download('system/checkResult/export', { |
| | | ...this.queryParams |
| | | }, `checkResult_${new Date().getTime()}.xlsx`) |
| | | }, |
| | | getSummaries(param) { |
| | | const { columns, data } = param; |
| | | const sums = []; |
| | | columns.forEach((column, index) => { |
| | | if (index === 0) { |
| | | sums[index] = '合计'; |
| | | return; |
| | | } |
| | | const values = data.map(item => Number(item[column.property])); |
| | | if (!values.every(value => isNaN(value))) { |
| | | sums[index] = values.reduce((prev, curr) => { |
| | | const value = Number(curr); |
| | | if (!isNaN(value)) { |
| | | return prev + curr; |
| | | } else { |
| | | return prev; |
| | | } |
| | | }, 0); |
| | | sums[index] += ' 元'; |
| | | if (column.property === 'score') { |
| | | sums[index] = '-'; // 或者其他你想要显示的内容 |
| | | } |
| | | } else { |
| | | sums[index] = 'N/A'; |
| | | } |
| | | }); |
| | | |
| | | return sums; |
| | | } |
| | | } |
| | | }; |
| | |
| | | <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="rulesName"> |
| | | <el-input |
| | | v-model="queryParams.rulesName" |
| | | placeholder="请输入规则名称" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="合同名称" prop="contractName"> |
| | | <el-input |
| | | v-model="queryParams.contractName" |
| | | placeholder="请输入合同名称" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="逻辑删除" prop="deleted"> |
| | | <el-input |
| | | v-model="queryParams.deleted" |
| | | placeholder="请输入逻辑删除" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </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> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | >新增 |
| | | </el-button> |
| | | v-hasPermi="['system:rule:add']" |
| | | >新增</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="success" |
| | | type="info" |
| | | plain |
| | | icon="el-icon-edit" |
| | | icon="el-icon-sort" |
| | | size="mini" |
| | | :disabled="single" |
| | | @click="handleUpdate" |
| | | >修改 |
| | | </el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="danger" |
| | | plain |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | :disabled="multiple" |
| | | @click="handleDelete" |
| | | >删除 |
| | | </el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-download" |
| | | size="mini" |
| | | @click="handleExport" |
| | | >导出 |
| | | </el-button> |
| | | @click="toggleExpandAll" |
| | | >展开/折叠</el-button> |
| | | </el-col> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | </el-row> |
| | | |
| | | <el-table v-loading="loading" :data="rulesList" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center"/> |
| | | <el-table-column label="规则名称" align="center" prop="rulesName"/> |
| | | <el-table-column label="合同名称" align="center" prop="contractName"/> |
| | | <el-table-column label="金额" align="center" prop="amount"/> |
| | | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| | | <el-table |
| | | v-if="refreshTable" |
| | | v-loading="loading" |
| | | :data="ruleList" |
| | | row-key="id" |
| | | :default-expand-all="isExpandAll" |
| | | :tree-props="{children: 'children', hasChildren: 'hasChildren'}" |
| | | > |
| | | <el-table-column label="规则名称" prop="name" /> |
| | | <el-table-column label="单位id" align="center" prop="unitId" > |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span> |
| | | <div v-if="scope.row.unitId == 2">成都x运维</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="扣分系数" align="center" prop="value" /> |
| | | <el-table-column label="规则描述" align="center" prop="description" /> |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | >修改 |
| | | </el-button> |
| | | v-hasPermi="['system:rule:edit']" |
| | | >修改</el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-plus" |
| | | @click="handleAdd(scope.row)" |
| | | v-hasPermi="['system:rule:add']" |
| | | >新增</el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | >删除 |
| | | </el-button> |
| | | v-hasPermi="['system:rule:remove']" |
| | | >删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <pagination |
| | | v-show="total>0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | |
| | | <!-- 添加或修改核算规则对话框 --> |
| | | <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
| | | <el-form-item label="规则名称" prop="rulesName"> |
| | | <el-input v-model="form.rulesName" placeholder="请输入规则名称"/> |
| | | <el-form-item label="规则名" prop="name"> |
| | | <el-input v-model="form.name" placeholder="请输入" /> |
| | | </el-form-item> |
| | | <el-form-item label="合同名称" prop="contractName"> |
| | | <el-input v-model="form.contractName" placeholder="请输入合同名称"/> |
| | | <el-form-item label="模板名" prop="templateId"> |
| | | <el-input v-model="form.templateId" placeholder="请输入" /> |
| | | </el-form-item> |
| | | <el-form-item label="金额" prop="amount"> |
| | | <el-input v-model="form.amount" placeholder="请输入金额"/> |
| | | <el-form-item label="父规则" prop="parentId"> |
| | | <treeselect v-model="form.parentId" :options="ruleOptions" :normalizer="normalizer" placeholder="请选择" /> |
| | | </el-form-item> |
| | | <el-form-item label="考核对象" prop="unitId"> |
| | | <el-input v-model="form.unitId" placeholder="请输入单位id" /> |
| | | </el-form-item> |
| | | <el-form-item label="扣分系数" prop="value"> |
| | | <el-input v-model="form.value" placeholder="请输入扣分系数" /> |
| | | </el-form-item> |
| | | <el-form-item label="规则描述" prop="description"> |
| | | <el-input v-model="form.description" placeholder="请输入规则描述" /> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { listRules, getRules, delRules, addRules, updateRules } from '@/api/platform/calculate-rule' |
| | | import { listRule, getRule, delRule, addRule, updateRule } from "@/api/platform/calculate-rule"; |
| | | import Treeselect from "@riophae/vue-treeselect"; |
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; |
| | | |
| | | export default { |
| | | name: 'Rules', |
| | | name: "Rule", |
| | | components: { |
| | | Treeselect |
| | | }, |
| | | data() { |
| | | return { |
| | | // 遮罩层 |
| | | loading: true, |
| | | // 选中数组 |
| | | ids: [], |
| | | // 非单个禁用 |
| | | single: true, |
| | | // 非多个禁用 |
| | | multiple: true, |
| | | // 显示搜索条件 |
| | | showSearch: true, |
| | | // 总条数 |
| | | total: 0, |
| | | // 核算规则表格数据 |
| | | rulesList: [], |
| | | ruleList: [], |
| | | // 核算规则树选项 |
| | | ruleOptions: [], |
| | | // 弹出层标题 |
| | | title: '', |
| | | title: "", |
| | | // 是否显示弹出层 |
| | | open: false, |
| | | // 是否展开,默认全部展开 |
| | | isExpandAll: true, |
| | | // 重新渲染表格状态 |
| | | refreshTable: true, |
| | | // 查询参数 |
| | | queryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | rulesName: null, |
| | | contractName: null, |
| | | deleted: null |
| | | name: null, |
| | | templateId: null, |
| | | parentId: null, |
| | | unitId: null, |
| | | value: null, |
| | | description: null |
| | | }, |
| | | // 表单参数 |
| | | form: {}, |
| | | // 表单校验 |
| | | rules: {} |
| | | } |
| | | rules: { |
| | | } |
| | | }; |
| | | }, |
| | | created() { |
| | | this.getList() |
| | | this.getList(); |
| | | }, |
| | | methods: { |
| | | /** 查询核算规则列表 */ |
| | | getList() { |
| | | this.loading = true |
| | | listRules(this.queryParams).then(response => { |
| | | this.rulesList = response.rows |
| | | this.total = response.total |
| | | this.loading = false |
| | | }) |
| | | this.loading = true; |
| | | listRule(this.queryParams).then(response => { |
| | | this.ruleList = this.handleTree(response.data, "id", "parentId"); |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | /** 转换核算规则数据结构 */ |
| | | normalizer(node) { |
| | | if (node.children && !node.children.length) { |
| | | delete node.children; |
| | | } |
| | | return { |
| | | id: node.id, |
| | | label: node.name, |
| | | children: node.children |
| | | }; |
| | | }, |
| | | /** 查询核算规则下拉树结构 */ |
| | | getTreeselect() { |
| | | listRule().then(response => { |
| | | this.ruleOptions = []; |
| | | const data = { id: 0, name: '顶级节点', children: [] }; |
| | | data.children = this.handleTree(response.data, "id", "parentId"); |
| | | this.ruleOptions.push(data); |
| | | }); |
| | | }, |
| | | // 取消按钮 |
| | | cancel() { |
| | | this.open = false |
| | | this.reset() |
| | | this.open = false; |
| | | this.reset(); |
| | | }, |
| | | // 表单重置 |
| | | reset() { |
| | | this.form = { |
| | | id: null, |
| | | rulesName: null, |
| | | contractName: null, |
| | | amount: null, |
| | | createTime: null, |
| | | updateTime: null, |
| | | deleted: null |
| | | } |
| | | this.resetForm('form') |
| | | name: null, |
| | | templateId: null, |
| | | parentId: null, |
| | | unitId: null, |
| | | value: null, |
| | | description: null |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | this.queryParams.pageNum = 1 |
| | | this.getList() |
| | | this.getList(); |
| | | }, |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.resetForm('queryForm') |
| | | this.handleQuery() |
| | | }, |
| | | // 多选框选中数据 |
| | | handleSelectionChange(selection) { |
| | | this.ids = selection.map(item => item.id) |
| | | this.single = selection.length !== 1 |
| | | this.multiple = !selection.length |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | this.reset() |
| | | this.open = true |
| | | this.title = '添加核算规则' |
| | | handleAdd(row) { |
| | | this.reset(); |
| | | this.getTreeselect(); |
| | | if (row != null && row.id) { |
| | | this.form.parentId = row.id; |
| | | } else { |
| | | this.form.parentId = 0; |
| | | } |
| | | this.open = true; |
| | | this.title = "添加核算规则"; |
| | | }, |
| | | /** 展开/折叠操作 */ |
| | | toggleExpandAll() { |
| | | this.refreshTable = false; |
| | | this.isExpandAll = !this.isExpandAll; |
| | | this.$nextTick(() => { |
| | | this.refreshTable = true; |
| | | }); |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | this.reset() |
| | | const id = row.id || this.ids |
| | | getRules(id).then(response => { |
| | | this.form = response.data |
| | | this.open = true |
| | | this.title = '修改核算规则' |
| | | }) |
| | | this.reset(); |
| | | this.getTreeselect(); |
| | | if (row != null) { |
| | | this.form.parentId = row.id; |
| | | } |
| | | getRule(row.id).then(response => { |
| | | this.form = response.data; |
| | | this.open = true; |
| | | this.title = "修改核算规则"; |
| | | }); |
| | | }, |
| | | /** 提交按钮 */ |
| | | submitForm() { |
| | | this.$refs['form'].validate(valid => { |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | if (this.form.id != null) { |
| | | updateRules(this.form).then(response => { |
| | | this.$modal.msgSuccess('修改成功') |
| | | this.open = false |
| | | this.getList() |
| | | }) |
| | | updateRule(this.form).then(response => { |
| | | this.$modal.msgSuccess("修改成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | } else { |
| | | addRules(this.form).then(response => { |
| | | this.$modal.msgSuccess('新增成功') |
| | | this.open = false |
| | | this.getList() |
| | | }) |
| | | addRule(this.form).then(response => { |
| | | this.$modal.msgSuccess("新增成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | } |
| | | } |
| | | }) |
| | | }); |
| | | }, |
| | | /** 删除按钮操作 */ |
| | | handleDelete(row) { |
| | | const ids = row.id || this.ids |
| | | this.$modal.confirm('是否确认删除核算规则编号为"' + ids + '"的数据项?').then(function() { |
| | | return delRules(ids) |
| | | this.$modal.confirm('是否确认删除核算规则编号为"' + row.id + '"的数据项?').then(function() { |
| | | return delRule(row.id); |
| | | }).then(() => { |
| | | this.getList() |
| | | this.$modal.msgSuccess('删除成功') |
| | | }).catch(() => { |
| | | }) |
| | | }, |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | | this.download('platform/rules/export', { |
| | | ...this.queryParams |
| | | }, `rules_${new Date().getTime()}.xlsx`) |
| | | this.getList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }).catch(() => {}); |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | |
| | | <el-container> |
| | | <el-main style="padding-top: 0px"> |
| | | <h2>考核分数明细</h2> |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-form-item label="考核对象" prop="ruleName"> |
| | | <el-select |
| | | v-model="queryParams.address" |
| | | placeholder="请选择区域" |
| | | clearable |
| | | > |
| | | <el-option label="自贡市" value="自贡市"/> |
| | | <el-option label="沿滩区" value="沿滩区"/> |
| | | <el-option label="大安区" value="大安区"/> |
| | | <el-option label="贡井区" value="贡井区"/> |
| | | <el-option label="自流井区" value="自流井区"/> |
| | | <el-option label="高新区" value="高新区"/> |
| | | <el-option label="荣县" value="荣县"/> |
| | | <el-option label="富顺县" value="富顺县"/> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="考核日期" prop="createTime"> |
| | | <div class="block"> |
| | | <el-date-picker |
| | | v-model="value2" |
| | | align="right" |
| | | type="date" |
| | | placeholder="选择日期" |
| | | :picker-options="pickerOptions"> |
| | | </el-date-picker> |
| | | </div> |
| | | </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> |
| | | </el-form-item> |
| | | </el-form> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | |
| | | |
| | | <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="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 label="考核规则" align="center" prop="ruleId"> |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.ruleId == 5">一机一档注册率</div> |
| | | <div v-else-if="scope.row.ruleId == 4">一机一档合格率</div> |
| | | <div v-else-if="scope.row.ruleId == 3">平台在线率</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="考核对象" align="center" prop="unitName"> |
| | | <template slot-scope="scope"> |
| | |
| | | </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" /> |
| | | <el-table-column label="考核时间" align="center" prop="createTime" /> |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <pagination |
| | | v-show="total>0" |
| | | :total="scoreTotal" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getRuleList" |
| | | /> |
| | | </el-main> |
| | | </el-container> |
| | | <el-container> |
| | |
| | | @click="handleDelete" |
| | | >删除</el-button> |
| | | </el-col> |
| | | <!-- <el-col :span="1.5">--> |
| | | <!-- <el-button--> |
| | | <!-- type="warning"--> |
| | | <!-- plain--> |
| | | <!-- icon="el-icon-download"--> |
| | | <!-- size="mini"--> |
| | | <!-- @click="handleExport"--> |
| | | <!-- v-hasPermi="['system:checkRule:export']"--> |
| | | <!-- >导出</el-button>--> |
| | | <!-- </el-col>--> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getRuleList"></right-toolbar> |
| | | </el-row> |
| | | |
| | | <el-table v-loading="loading" :data="ruleList" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="规则名称" align="center" prop="ruleName" /> |
| | | <el-table-column label="运维类别" align="center" prop="category"> |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.category === 1">视频监控</div> |
| | | <div v-else-if="scope.row.category === 2">车辆识别</div> |
| | | <div v-else-if="scope.row.category === 3">人脸识别</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则描述" align="center" prop="ruleDetail" /> |
| | | <el-table-column label="创建时间" align="center" prop="createTime" /> |
| | | <el-table-column label="审核状态" align="center" prop="auditState"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.platform_audit_state" :value="scope.row.auditState"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="审核人" align="center" prop="auditUser" /> |
| | | <el-table-column label="审核时间" align="center" prop="auditTime" /> |
| | | <el-table-column label="审核意见" align="center" prop="auditDescription" /> |
| | | <el-table-column label="规则权重" align="center" prop="ruleWeight" /> |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | |
| | | <el-container> |
| | | <el-main> |
| | | <h2>考核成绩</h2> |
| | | <el-collapse v-model="activeNames" @change="handleChange" > |
| | | <el-collapse-item name="1"> |
| | | <template slot="title"> |
| | | <div style="width: 10%" >自流井区</div><div style="margin-left: 75%">得分:0.97</div> |
| | | </template> |
| | | <div>视图库对接稳定性:95.32%</div> |
| | | <div>点位在线率:96.46%</div> |
| | | <div>联网卡口设备目录一致率:97.26%</div> |
| | | <div>车辆卡口信息采集准确率:92.33%</div> |
| | | <div>车辆卡口设备抓拍数据完整性:94.26%</div> |
| | | <div>车辆卡口设备抓拍数据准确性:94.78%</div> |
| | | <div>车辆卡口设备时钟准确性:93.98%</div> |
| | | <div>车辆卡口设备抓拍数据上传及时性:95.86%</div> |
| | | <div>车辆卡口设备url可用性:94.56%</div> |
| | | <div>车辆卡口设备抓拍数据大图可用性:91.77%</div> |
| | | </el-collapse-item> |
| | | <el-collapse-item name="2"> |
| | | <template slot="title"> |
| | | <div style="width: 10%">贡井区</div><div style="margin-left: 75%">得分:0.94</div> |
| | | </template> |
| | | <div>视图库对接稳定性:95.32%</div> |
| | | <div>点位在线率:96.46%</div> |
| | | <div>联网卡口设备目录一致率:97.26%</div> |
| | | <div>车辆卡口信息采集准确率:92.33%</div> |
| | | <div>车辆卡口设备抓拍数据完整性:94.26%</div> |
| | | <div>车辆卡口设备抓拍数据准确性:94.78%</div> |
| | | <div>车辆卡口设备时钟准确性:93.98%</div> |
| | | <div>车辆卡口设备抓拍数据上传及时性:95.86%</div> |
| | | <div>车辆卡口设备url可用性:94.56%</div> |
| | | <div>车辆卡口设备抓拍数据大图可用性:91.77%</div> |
| | | </el-collapse-item> |
| | | <el-collapse-item title="大安区" name="3"> |
| | | <template slot="title"> |
| | | <div style="width: 10%">大安区</div><div style="margin-left: 75%">得分:0.95</div> |
| | | </template> |
| | | <div>视图库对接稳定性:95.32%</div> |
| | | <div>点位在线率:96.46%</div> |
| | | <div>联网卡口设备目录一致率:97.26%</div> |
| | | <div>车辆卡口信息采集准确率:92.33%</div> |
| | | <div>车辆卡口设备抓拍数据完整性:94.26%</div> |
| | | <div>车辆卡口设备抓拍数据准确性:94.78%</div> |
| | | <div>车辆卡口设备时钟准确性:93.98%</div> |
| | | <div>车辆卡口设备抓拍数据上传及时性:95.86%</div> |
| | | <div>车辆卡口设备url可用性:94.56%</div> |
| | | <div>车辆卡口设备抓拍数据大图可用性:91.77%</div> |
| | | </el-collapse-item> |
| | | <el-collapse-item title="沿滩区" name="4"> |
| | | <template slot="title"> |
| | | <div style="width: 10%">沿滩区</div><div style="margin-left: 75%">得分:0.94</div> |
| | | </template> |
| | | <div>视图库对接稳定性:95.32%</div> |
| | | <div>点位在线率:96.46%</div> |
| | | <div>联网卡口设备目录一致率:97.26%</div> |
| | | <div>车辆卡口信息采集准确率:92.33%</div> |
| | | <div>车辆卡口设备抓拍数据完整性:94.26%</div> |
| | | <div>车辆卡口设备抓拍数据准确性:94.78%</div> |
| | | <div>车辆卡口设备时钟准确性:93.98%</div> |
| | | <div>车辆卡口设备抓拍数据上传及时性:95.86%</div> |
| | | <div>车辆卡口设备url可用性:94.56%</div> |
| | | <div>车辆卡口设备抓拍数据大图可用性:91.77%</div> |
| | | </el-collapse-item> |
| | | <el-collapse-item title="荣县" name="5"> |
| | | <template slot="title"> |
| | | <div style="width: 10%">荣县</div><div style="margin-left: 75%">得分:0.93</div> |
| | | </template> |
| | | <div>视图库对接稳定性:95.32%</div> |
| | | <div>点位在线率:96.46%</div> |
| | | <div>联网卡口设备目录一致率:97.26%</div> |
| | | <div>车辆卡口信息采集准确率:92.33%</div> |
| | | <div>车辆卡口设备抓拍数据完整性:94.26%</div> |
| | | <div>车辆卡口设备抓拍数据准确性:94.78%</div> |
| | | <div>车辆卡口设备时钟准确性:93.98%</div> |
| | | <div>车辆卡口设备抓拍数据上传及时性:95.86%</div> |
| | | <div>车辆卡口设备url可用性:94.56%</div> |
| | | <div>车辆卡口设备抓拍数据大图可用性:91.77%</div> |
| | | </el-collapse-item> |
| | | <el-collapse-item title="富顺区" name="6"> |
| | | <template slot="title"> |
| | | <div style="width: 10%">富顺区</div><div style="margin-left: 75%">得分:0.95</div> |
| | | </template> |
| | | <div>视图库对接稳定性:95.32%</div> |
| | | <div>点位在线率:96.46%</div> |
| | | <div>联网卡口设备目录一致率:97.26%</div> |
| | | <div>车辆卡口信息采集准确率:92.33%</div> |
| | | <div>车辆卡口设备抓拍数据完整性:94.26%</div> |
| | | <div>车辆卡口设备抓拍数据准确性:94.78%</div> |
| | | <div>车辆卡口设备时钟准确性:93.98%</div> |
| | | <div>车辆卡口设备抓拍数据上传及时性:95.86%</div> |
| | | <div>车辆卡口设备url可用性:94.56%</div> |
| | | <div>车辆卡口设备抓拍数据大图可用性:91.77%</div> |
| | | </el-collapse-item> |
| | | <el-collapse-item title="高新区" name="7"> |
| | | <template slot="title"> |
| | | <div style="width: 10%">高新区</div><div style="margin-left: 75%;">得分:0.96</div> |
| | | </template> |
| | | <div>视图库对接稳定性:95.32%</div> |
| | | <div>点位在线率:96.46%</div> |
| | | <div>联网卡口设备目录一致率:97.26%</div> |
| | | <div>车辆卡口信息采集准确率:92.33%</div> |
| | | <div>车辆卡口设备抓拍数据完整性:94.26%</div> |
| | | <div>车辆卡口设备抓拍数据准确性:94.78%</div> |
| | | <div>车辆卡口设备时钟准确性:93.98%</div> |
| | | <div>车辆卡口设备抓拍数据上传及时性:95.86%</div> |
| | | <div>车辆卡口设备url可用性:94.56%</div> |
| | | <div>车辆卡口设备抓拍数据大图可用性:91.77%</div> |
| | | </el-collapse-item> |
| | | </el-collapse> |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-form-item label="考核对象" prop="ruleName"> |
| | | <el-select |
| | | v-model="queryParams.address" |
| | | placeholder="请选择区域" |
| | | clearable |
| | | > |
| | | <el-option label="自贡市" value="自贡市"/> |
| | | <el-option label="沿滩区" value="沿滩区"/> |
| | | <el-option label="大安区" value="大安区"/> |
| | | <el-option label="贡井区" value="贡井区"/> |
| | | <el-option label="自流井区" value="自流井区"/> |
| | | <el-option label="高新区" value="高新区"/> |
| | | <el-option label="荣县" value="荣县"/> |
| | | <el-option label="富顺县" value="富顺县"/> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="考核日期" prop="createTime"> |
| | | <div class="block"> |
| | | <el-date-picker |
| | | v-model="value2" |
| | | align="right" |
| | | type="date" |
| | | placeholder="选择日期" |
| | | :picker-options="pickerOptions"> |
| | | </el-date-picker> |
| | | </div> |
| | | </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> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-download" |
| | | size="mini" |
| | | @click="handleExport" |
| | | v-hasPermi="['system:checkRule:export']" |
| | | >导出</el-button> |
| | | </el-col> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getRuleList"></right-toolbar> |
| | | </el-row> |
| | | <el-table v-loading="loading" :data="checkResultList" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="考核日期" align="center" prop="date" width="120px"/> |
| | | <el-table-column label="考核对象" align="center" prop="target" width="120px"/> |
| | | <el-table-column label="平台在线率(权重:0.5)" align="center" prop="platformOnline" width="120px"/> |
| | | <el-table-column label="一机一档合格率(权重:0.5)" align="center" prop="monitorQualification" width="120px"/> |
| | | <el-table-column label="一机一档注册率(权重:0.5)" align="center" prop="monitorRegistration" width="120px"/> |
| | | <el-table-column label="档案考核比(权重:0.5)" align="center" prop="archivesRate" width="120px"/> |
| | | <el-table-column label="点位在线率(权重:1)" align="center" prop="siteOnline" width="120px"/> |
| | | <el-table-column label="录像可用率(权重:1)" align="center" prop="videoAvailable" width="120px"/> |
| | | <el-table-column label="标注正确率(权重:0.5)" align="center" prop="annotationAccuracy" width="120px"/> |
| | | <el-table-column label="校时正确率(权重:0.5)" align="center" prop="timingAccuracy" width="120px"/> |
| | | <el-table-column label="重点点位在线率(权重:0.5)" align="center" prop="keySiteOnline" width="120px"/> |
| | | <el-table-column label="重点点位录像可用率(权重:0.5)" align="center" prop="keyVideoAvailable" width="120px"/> |
| | | <el-table-column label="重点点位标注正确率(权重:0.5)" align="center" prop="keyAnnotationAccuracy" width="120px"/> |
| | | <el-table-column label="重点点位按时正确率(权重:0.5)" align="center" prop="keyTimingAccuracy" width="120px"/> |
| | | <el-table-column label="重点指挥图像公安部巡检结果(权重:0.2)" align="center" prop="keyCommandImageInspection" width="120px"/> |
| | | <el-table-column label="重点指挥图像目录树(权重:0.8)" align="center" prop="keyCommandImageDirectoryTree" width="120px"/> |
| | | <el-table-column label="在线检查平台部署及运行率(权重:0.075)" align="center" prop="onlineInspectionPlatform" width="120px"/> |
| | | <el-table-column label="视频传输网资产准确率(权重:0.075)" align="center" prop="videoTransmissionAssetsAccuracy" width="120px"/> |
| | | <el-table-column label="视频传输网资产弱口令得分比例(权重:0.075)" align="center" prop="videoTransmissionAssetsWeakPasswordScore" width="120px"/> |
| | | <el-table-column label="视频传输网危险资产得分比重(权重:0.075)" align="center" prop="videoTransmissionDangerousAssetsScore" width="120px"/> |
| | | <el-table-column label="视频传输网边界完整性检测扣分项(权重:0.2)" align="center" prop="videoTransmissionBoundaryIntegrityDetection" width="120px"/> |
| | | <el-table-column label="月运行率" align="center" prop="operatingRate"/> |
| | | </el-table> |
| | | </el-main> |
| | | </el-container> |
| | | |
| | |
| | | // 总条数 |
| | | total: 0, |
| | | // 考核结果表格数据 |
| | | checkResultList: [], |
| | | checkResultList: [ |
| | | { |
| | | date: '2024-04-02', |
| | | target: '自流井区', |
| | | platformOnline: '97%', |
| | | monitorQualification: '97%', |
| | | monitorRegistration: '97%', |
| | | archivesRate: '97%', |
| | | siteOnline: '97%', |
| | | videoAvailable: '97%', |
| | | annotationAccuracy: '97%', |
| | | timingAccuracy: '97%', |
| | | keySiteOnline: '97%', |
| | | keyVideoAvailable: '97%', |
| | | keyAnnotationAccuracy: '97%', |
| | | keyTimingAccuracy: '97%', |
| | | keyCommandImageInspection: '97%', |
| | | keyCommandImageDirectoryTree: '97%', |
| | | onlineInspectionPlatform: '97%', |
| | | videoTransmissionAssetsAccuracy: '97%', |
| | | videoTransmissionAssetsWeakPasswordScore: '97%', |
| | | videoTransmissionDangerousAssetsScore: '97%', |
| | | videoTransmissionBoundaryIntegrityDetection: '97%', |
| | | operatingRate: '97%', |
| | | }, |
| | | { |
| | | date: '2024-04-03', |
| | | target: '自流井区', |
| | | platformOnline: '97%', |
| | | monitorQualification: '97%', |
| | | monitorRegistration: '97%', |
| | | archivesRate: '97%', |
| | | siteOnline: '97%', |
| | | videoAvailable: '97%', |
| | | annotationAccuracy: '97%', |
| | | timingAccuracy: '97%', |
| | | keySiteOnline: '97%', |
| | | keyVideoAvailable: '97%', |
| | | keyAnnotationAccuracy: '97%', |
| | | keyTimingAccuracy: '97%', |
| | | keyCommandImageInspection: '97%', |
| | | keyCommandImageDirectoryTree: '97%', |
| | | onlineInspectionPlatform: '97%', |
| | | videoTransmissionAssetsAccuracy: '97%', |
| | | videoTransmissionAssetsWeakPasswordScore: '97%', |
| | | videoTransmissionDangerousAssetsScore: '97%', |
| | | videoTransmissionBoundaryIntegrityDetection: '97%', |
| | | operatingRate: '97%', |
| | | } |
| | | |
| | | ], |
| | | scoreTotal: 3, |
| | | // 弹出层标题 |
| | | title: "", |
| | | // 是否显示弹出层 |
| | |
| | | ruleDetailOpen: false, |
| | | // 逻辑删除时间范围 |
| | | daterangeCheckTime: [], |
| | | |
| | | // 表单参数 |
| | | form: {}, |
| | | scoreForm: {}, |
| | | ruleForm: {}, |
| | | jsonRule: {}, |
| | | // 考核规则列表 |
| | | ruleList: [], |
| | | ruleList: [ |
| | | {ruleName: '平台在线率',ruleWeight: 0.5}, |
| | | {ruleName: '一机一档合格率',ruleWeight: 0.5}, |
| | | {ruleName: '一机一档在线率',ruleWeight: 0.5}, |
| | | ], |
| | | // 考核计分表格数据 |
| | | scoreList: [], |
| | | //违约规则请求参数 |
| | |
| | | pageSize: 10, |
| | | examineCategory: 2, |
| | | }, |
| | | pickerOptions: { |
| | | disabledDate(time) { |
| | | return time.getTime() > Date.now(); |
| | | }, |
| | | shortcuts: [{ |
| | | text: '今天', |
| | | onClick(picker) { |
| | | picker.$emit('pick', new Date()); |
| | | } |
| | | }, { |
| | | text: '昨天', |
| | | onClick(picker) { |
| | | const date = new Date(); |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24); |
| | | picker.$emit('pick', date); |
| | | } |
| | | }, { |
| | | text: '一周前', |
| | | onClick(picker) { |
| | | const date = new Date(); |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24 * 7); |
| | | picker.$emit('pick', date); |
| | | } |
| | | }] |
| | | }, |
| | | value1: '', |
| | | value2: '', |
| | | // 表单校验 |
| | | rules: { |
| | | } |
| | |
| | | console.log(this.$route.query.detail,"detail------------") |
| | | } |
| | | // 考核规则列表 |
| | | this.getRuleList(); |
| | | // this.getRuleList(); |
| | | // 考核积分列表 |
| | | this.getScoreList(); |
| | | // this.selectUnit(); |
| | |
| | | <div class="text item">考核标签<span class="time">{{ "四区天网二期" }}</span></div> |
| | | <div class="text item">考核范围<span class="time">{{ "市区考核" }}</span></div> |
| | | <div class="text item">考核频率<span class="time">{{ "季度" }}</span></div> |
| | | <div class="text item">考核时间 |
| | | <span class="time">{{ item.checkTime }}</span> |
| | | <el-button size="small" round style="float: right;" @click="handlePublish(item)" v-show="item.publish != 1" v-hasPermi="['result:city:publish']">确认发布</el-button> |
| | | <el-button size="small" round style="float: right;" v-show="item.publish == 1" disabled="true" v-hasPermi="['result:city:publish']">已发布</el-button> |
| | | </div> |
| | | <el-tooltip effect="dark" placement="right-start"> |
| | | <div slot="content"> |
| | | 富顺县:6.5 |
| | | <br/>沿滩区:6.5 |
| | | <br/>贡井区:6.5 |
| | | <br/>高新区:6.5 |
| | | <br/>大安区:6.5 |
| | | <br/>自流井区:6.5 |
| | | <br/>荣县:6.5 |
| | | </div> |
| | | <span class="text item">{{ "考核成绩" }}</span> |
| | | </el-tooltip> |
| | | <el-button size="small" round style="float: right;margin-bottom: 18px;" @click="handlePublish(item)" v-show="item.publish != 1" v-hasPermi="['result:contract:publish']">确认发布</el-button> |
| | | <el-button size="small" round style="float: right;margin-bottom: 18px;" @click="handlePublish(item)" v-show="item.publish == 1" v-hasPermi="['result:contract:publish']">已发布</el-button> |
| | | </el-card> |
| | | |
| | | <!-- <pagination |
| | | <pagination |
| | | v-show="total>0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> --> |
| | | /> |
| | | |
| | | <el-dialog :title="detailName" :visible.sync="detail" width="800px" append-to-body> |
| | | <el-form label-position="left" inline class="table-expand"> |
| | |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | this.queryParams["end"] = this.daterangeCheckTime[1]; |
| | | } |
| | | listCheckResult(this.queryParams).then(response => { |
| | | this.checkResultList = response.data; |
| | | this.checkResultList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | |
| | | .item { |
| | | margin-bottom: 18px; |
| | | } |
| | | |
| | | .clearfix:before, |
| | | .clearfix:after { |
| | | display: table; |
| | |
| | | </div> |
| | | </el-card> |
| | | |
| | | <pagination |
| | | v-show="total>0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | <el-dialog :title="manualScoreTitle" :visible.sync="manualScoreOpen" width="500px" append-to-body> |
| | | <el-input v-model="manualScoreForm.manualScore" type="number" placeholder="请为该单位打分"/> |
| | | <div slot="footer" class="dialog-footer"> |
| | |
| | | </div> |
| | | </el-card> |
| | | |
| | | <!-- <pagination |
| | | <pagination |
| | | v-show="total>0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> --> |
| | | /> |
| | | |
| | | <el-dialog :title="detailName" :visible.sync="detail" width="800px" append-to-body> |
| | | <el-form label-position="left" inline class="table-expand"> |
| | |
| | | <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="ruleName" /> |
| | | <el-table-column label="运维类别" align="center" prop="examineCategory"> |
| | | <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> |
| | | <dict-tag :options="dict.type.platform_examine_category" :value="scope.row.examineCategory"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="运维类别" align="center" prop="category"> |
| | | <el-table-column label="规则类型" align="center" prop="ruleCategory"> |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.category === 1">视频监控</div> |
| | | <div v-else-if="scope.row.category === 2">车辆识别</div> |
| | | <div v-else-if="scope.row.category === 3">人脸识别</div> |
| | | <dict-tag :options="dict.type.platform_rule_category" :value="scope.row.ruleCategory"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则描述" align="center" prop="ruleDetail" /> |
| | | <el-table-column label="创建时间" align="center" prop="createTime" /> |
| | | <el-table-column label="审核状态" align="center" prop="auditState"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.platform_audit_state" :value="scope.row.auditState"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="审核人" align="center" prop="auditUser" /> |
| | | <el-table-column label="审核时间" align="center" prop="auditTime" /> |
| | | <el-table-column label="审核意见" align="center" prop="auditDescription" /> |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | |
| | | <el-input v-model="form.ruleName" placeholder="请输入规则名称" /> |
| | | </el-form-item> |
| | | <el-form-item label="考核类型" prop="examineCategory"> |
| | | <el-select v-model="form.examineCategory" placeholder="规则类型"> |
| | | <el-option |
| | | v-for="item in examineList" |
| | | :key="item.id" |
| | | :label="item.value" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-radio-group v-model="form.examineCategory" placeholder="考核类型"> |
| | | <el-radio |
| | | v-for="dict in dict.type.plateform_examine_category" |
| | | :key="dict.value" |
| | | :value="dict.value"> |
| | | {{dict.label}}</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="规则类型" prop="category"> |
| | | <el-select v-model="form.category" placeholder="规则类型"> |
| | | <el-option |
| | | v-for="item in categoryList" |
| | | :key="item.id" |
| | | :label="item.value" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-radio-group v-model="form.examineCategory" placeholder="考核类型"> |
| | | <el-radio |
| | | v-for="dict in dict.type.plateform_rule_category" |
| | | :key="dict.value" |
| | | :value="dict.value"> |
| | | {{dict.label}}</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="规则描述" prop="ruleDetail"> |
| | | <el-form-item label="规则描述" prop="ruleDescription"> |
| | | <el-input v-model="form.ruleDetail" type="textarea" show-word-limit maxlength="150" placeholder="请输入规则描述"/> |
| | | </el-form-item> |
| | | <el-form-item label="参数配置" prop="ruleDetail"> |
| | |
| | | <el-input v-model="form.ruleName" placeholder="请输入规则名称" disabled/> |
| | | </el-form-item> |
| | | <el-form-item label="考核类型" prop="examineCategory"> |
| | | <el-select v-model="form.examineCategory" placeholder="规则类型"> |
| | | <el-option |
| | | v-for="item in examineList" |
| | | :key="item.id" |
| | | :label="item.value" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-radio-group v-model="form.examineCategory" placeholder="考核类型"> |
| | | <el-radio |
| | | v-for="dict in dict.type.plateform_examine_category" |
| | | :key="dict.value" |
| | | :value="dict.value"> |
| | | {{dict.label}}</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="规则类型" prop="category"> |
| | | <el-select v-model="form.category" placeholder="规则类型" disabled> |
| | | <el-option |
| | | v-for="item in categoryList" |
| | | :key="item.id" |
| | | :label="item.value" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-radio-group v-model="form.examineCategory" placeholder="考核类型"> |
| | | <el-radio |
| | | v-for="dict in dict.type.plateform_rule_category" |
| | | :key="dict.value" |
| | | :value="dict.value"> |
| | | {{dict.label}}</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="规则描述" prop="ruleDetail"> |
| | | <el-form-item label="规则描述" prop="ruleDescription"> |
| | | <el-input v-model="form.ruleDetail" type="textarea" show-word-limit maxlength="150" placeholder="请输入规则描述" disabled/> |
| | | </el-form-item> |
| | | <el-form-item label="参数配置" prop="ruleDetail" disabled> |
| | |
| | | |
| | | export default { |
| | | name: "CheckRule", |
| | | dicts: ['platform_audit_state'], |
| | | dicts: ['platform_audit_state','platform_examine_category','platform_rule_category'], |
| | | data() { |
| | | return { |
| | | // 遮罩层 |
| | |
| | | showSearch: true, |
| | | // 总条数 |
| | | total: 0, |
| | | // 运维类型 |
| | | categoryList: [ |
| | | { id: 1, value: '视频监控' }, |
| | | { id: 2, value: '车辆识别' }, |
| | | { id: 3, value: '人脸识别' }, |
| | | ], |
| | | // 运维类型 |
| | | examineList: [ |
| | | { id: 1, value: '省厅考核' }, |
| | | { id: 2, value: '区县考核' }, |
| | | { id: 3, value: '人脸识别' }, |
| | | ], |
| | | // 考核规则表格数据 |
| | | checkRuleList: [], |
| | | daterangeCreateTime: [], |
| | |
| | | this.queryParams["end"] = this.daterangeCreateTime[1]; |
| | | } |
| | | listCheckRule(this.queryParams).then(response => { |
| | | this.checkRuleList = response.data; |
| | | this.checkRuleList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | |
| | | <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="ruleName" /> |
| | | <el-table-column label="运维类别" align="center" prop="examineCategory"> |
| | | <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> |
| | | <dict-tag :options="dict.type.examineCategory" :value="scope.row.examineCategory"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="运维类别" align="center" prop="category"> |
| | | <el-table-column label="规则类型" align="center" prop="ruleCategory"> |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.category === 1">视频监控</div> |
| | | <div v-else-if="scope.row.category === 2">车辆识别</div> |
| | | <div v-else-if="scope.row.category === 3">人脸识别</div> |
| | | <dict-tag :options="dict.type.ruleCategory" :value="scope.row.ruleCategory"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则描述" align="center" prop="ruleDetail" /> |
| | |
| | | <dict-tag :options="dict.type.platform_audit_state" :value="scope.row.auditState"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="审核人" align="center" prop="auditUser" /> |
| | | <el-table-column label="审核时间" align="center" prop="auditTime" /> |
| | | <el-table-column label="审核意见" align="center" prop="auditDescription" /> |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | |
| | | showSearch: true, |
| | | // 总条数 |
| | | total: 0, |
| | | // 运维类型 |
| | | categoryList: [ |
| | | { id: 1, value: '视频监控' }, |
| | | { id: 2, value: '车辆识别' }, |
| | | { id: 3, value: '人脸识别' }, |
| | | ], |
| | | // 运维类型 |
| | | examineList: [ |
| | | { id: 1, value: '省厅考核' }, |
| | | { id: 2, value: '区县考核' }, |
| | | { id: 3, value: '人脸识别' }, |
| | | ], |
| | | // 考核规则表格数据 |
| | | checkRuleList: [], |
| | | daterangeCreateTime: [], |