Commit 798f490a by mr.wang

算法评分

parent 76702dea
...@@ -31,6 +31,14 @@ const menuLayouts = [ ...@@ -31,6 +31,14 @@ const menuLayouts = [
title: '模型列表' title: '模型列表'
}, },
component: () => import("@/views/mxgl/cxmxlb/queryMxlb.vue") component: () => import("@/views/mxgl/cxmxlb/queryMxlb.vue")
},
{
path: "/wjpj",
name: "wjpj",
meta: {
title: '微决评价完善中心'
},
component: () => import("@/views/wjpj/queryWjpj.vue")
} }
] ]
......
...@@ -341,6 +341,14 @@ export default { ...@@ -341,6 +341,14 @@ export default {
disabled: false, disabled: false,
} }
] ]
},
{
id: "wjpj",
label: "微决评价完善中心",
newAuth: "M04",
index: "wjpj",
className: "iconfont icongongnengfuwu",
hasChildren: false
} }
], ],
rules: { rules: {
......
...@@ -71,14 +71,17 @@ ...@@ -71,14 +71,17 @@
<el-table-column <el-table-column
prop="sfcs" prop="sfcs"
label="算法参数" label="算法参数"
width="200"> width="300">
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="sffb" prop="sffb"
label="操作"> label="操作"
width="420">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" v-if="tableData[scope.$index].sffb" @click="updateMxzt(false, tableData[scope.$index].xxzjbh)">下线</el-button> <el-button type="text" v-if="tableData[scope.$index].sffb" @click="updateMxzt(false, tableData[scope.$index].xxzjbh)">下线</el-button>
<el-button type="text" v-if="!tableData[scope.$index].sffb" @click="updateMxzt(true, tableData[scope.$index].xxzjbh)">发布</el-button> <el-button type="text" v-if="!tableData[scope.$index].sffb" @click="updateMxzt(true, tableData[scope.$index].xxzjbh)">发布</el-button>
<el-button type="text" @click="showGxlfxDialog">业务贡献率分析</el-button>
<el-button type="text" @click="showGxlfxDialog">辅助决策贡献率分析</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -137,6 +140,31 @@ ...@@ -137,6 +140,31 @@
> >
</div> </div>
</el-dialog> </el-dialog>
<el-dialog title="贡献率分析" :visible.sync="dialogFormVisiblePj" class="diolog" width="36%">
<el-form :model="pjForm" :label-width="formLabelWidth" style="margin-top: 15px;">
<el-form-item v-for="(item, index) in gxlfxList" :key="index" :label="item.name" class="one-form">
<el-rate
@change="change"
v-model="item.value"
:colors="colors">
</el-rate>
</el-form-item>
<el-form-item label="总分:" class="one-form">
<el-rate
v-model="value"
disabled
show-score
text-color="#ff9900"
score-template="{value}">
</el-rate>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisiblePj = false">取 消</el-button>
<el-button type="primary" @click="submitPj">确 定</el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
...@@ -160,7 +188,28 @@ export default { ...@@ -160,7 +188,28 @@ export default {
tableDataLength: 0, tableDataLength: 0,
tableLoading: false, tableLoading: false,
dialogFormVisible: false, dialogFormVisible: false,
formLabelWidth: '120px', dialogFormVisiblePj: false,
formLabelWidth: '130px',
gxlfxList: [
{
name: '发现工作问题:',
value: 0
},
{
name: '发现证据问题:',
value: 0
},
{
name: '引导工作方向:',
value: 0
},
{
name: '减少审批环节:',
value: 0
}
],
value: 0,
colors: ['#99A9BF', '#F7BA2A', '#FF9900'] ,
cxUrl: "/mxclzx/pageTbYwWjcsfzx", cxUrl: "/mxclzx/pageTbYwWjcsfzx",
options: [{ options: [{
value: 'true', value: 'true',
...@@ -177,6 +226,8 @@ export default { ...@@ -177,6 +226,8 @@ export default {
page: 1, page: 1,
limit: 10 limit: 10
}, },
pjForm: {
},
sfForm: { sfForm: {
sfmc: "", sfmc: "",
sflj: "", sflj: "",
...@@ -224,6 +275,17 @@ export default { ...@@ -224,6 +275,17 @@ export default {
} }
); );
}, },
// 计算平均分
change() {
const arr = this.gxlfxList.map(item => {
return item.value
})
let num=0
for(let i = 0; i < arr.length; i++){
num += arr[i]
}
this.value = num / arr.length
},
handleCurrentChange(val) { handleCurrentChange(val) {
this.form.page = val this.form.page = val
this.doQuery() this.doQuery()
...@@ -290,6 +352,21 @@ export default { ...@@ -290,6 +352,21 @@ export default {
return false; return false;
} }
}); });
},
showGxlfxDialog() {
this.dialogFormVisiblePj = true
},
submitPj() {
console.log('res', this.gxlfxList)
this.dialogFormVisiblePj = false
},
},
watch: {
dialogFormVisiblePj(newVal, oldVal) {
if(!newVal) {
Object.assign(this.$data.gxlfxList, this.$options.data().gxlfxList)
this.value = 0
}
} }
} }
}; };
...@@ -370,6 +447,9 @@ export default { ...@@ -370,6 +447,9 @@ export default {
} }
} }
} }
.one-form{
margin-bottom: 5px !important ;
}
::v-deep .el-input{ ::v-deep .el-input{
width: auto !important; width: auto !important;
.el-input__inner{ .el-input__inner{
...@@ -393,9 +473,19 @@ export default { ...@@ -393,9 +473,19 @@ export default {
display: inline-block; display: inline-block;
} }
} }
.el-rate{
margin-top: 10px;
}
} }
::v-deep .el-table .cell{ ::v-deep .el-table .cell{
text-align: center; text-align: center;
.el-button{
span{
margin-right: 16px !important;
// display: block;
// margin-bottom: 10px;
}
}
} }
::v-deep .el-table th{ ::v-deep .el-table th{
background: #F5F7FA; background: #F5F7FA;
......
<!--
* @Author: your name
* @Date: 2021-11-22 17:23:43
* @LastEditTime: 2021-11-24 10:31:31
* @LastEditors: Please set LastEditors
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath: \刑侦二期(1)\founder_vue\src\views\sf\ssfmn.vue
-->
<template> <template>
<div style="padding: 20px" v-loading="loading"> <div style="padding: 20px; min-height: 450px;" v-loading="loading">
<div class="boxsf" v-for="(item, idx) in list" :key="idx"> <div class="boxsf" v-for="(item, idx) in list" :key="idx">
<div class="rybq"> <div class="rybq">
<span> {{ item.sfmc }}</span> <span> {{ item.sfmc }}</span>
<!-- <span> Server-Naotu</span> -->
<span style="margin-left: 10px; color: rgb(75, 72, 72)"> <span style="margin-left: 10px; color: rgb(75, 72, 72)">
{{ item.sflj }}</span {{ item.sflj }}</span
> >
...@@ -23,7 +14,7 @@ ...@@ -23,7 +14,7 @@
style="width: 50%" style="width: 50%"
></el-input> ></el-input>
<el-button size="medium" type="success" style="margin-left: 25px" <el-button size="medium" type="success" style="margin-left: 25px"
@click="sendCs(item.sfcs, idx)">发送参数</el-button @click="sendCs(item.sfcs, idx)" :loading="Object.is(num, idx) ? true : false">发送参数</el-button
> >
<el-input <el-input
v-model="input" v-model="input"
...@@ -75,6 +66,7 @@ export default { ...@@ -75,6 +66,7 @@ export default {
input: "正常", input: "正常",
list: [], list: [],
num: '', num: '',
flag: null,
loading: false, loading: false,
form: { form: {
sffb: true, sffb: true,
...@@ -88,14 +80,6 @@ export default { ...@@ -88,14 +80,6 @@ export default {
cxUrl: "/mxclzx/pageTbYwWjcsfzx", cxUrl: "/mxclzx/pageTbYwWjcsfzx",
row: "空", row: "空",
Menu: [ Menu: [
// {
// id: "sfgl",
// label: "算法管理",
// index: "sfgl",
// auth: "M0101",
// className: "iconfont iconrizhi",
// disabled: false,
// },
{ {
id: "sfmn", id: "sfmn",
label: "算法模拟", label: "算法模拟",
...@@ -115,30 +99,26 @@ export default { ...@@ -115,30 +99,26 @@ export default {
}, },
methods: { methods: {
doQuery() { doQuery() {
let self = this this.loading = true
post(`${url.alyIP}${this.cxUrl}`, this.form).then( post(`${url.alyIP}${this.cxUrl}`, this.form).then(
(response) => { (response) => {
if (response.success === true) { if (response.success === true) {
this.list = response.data.rows this.list = response.data.rows
} else { } else {
} }
this.loading = false
} }
); );
}, },
/**
* @description: 详细信息
* @param {*}
* @return {*}
*/
information(idx) { information(idx) {
console.log(idx, this.num) console.log(idx, this.flag)
this.showFlag = idx == this.num ? true : false this.showFlag = idx == this.flag ? true : false
this.centerDialogVisible = true; this.centerDialogVisible = true;
}, },
sendCs(sfcs, idx) { sendCs(sfcs, idx) {
console.log(idx) console.log(idx)
this.num = idx this.num = idx
this.loading = true this.flag = idx
const param = { const param = {
sfcs sfcs
} }
...@@ -151,7 +131,7 @@ export default { ...@@ -151,7 +131,7 @@ export default {
this.row = res.data.result this.row = res.data.result
} else { } else {
} }
this.loading = false this.num = ''
}) })
} }
}, },
......
<template>
<div class="Content">
<div class="top">
<el-col :span="24">
<span class="flTtitle">查询条件</span>
</el-col>
<el-form>
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="名称:" label-width="140px">
<el-input v-model="form.mc" placeholder="请输入名称"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div class="btn">
<div @click="clearData" class="zdybtn">重置</div>
<div
@click="doQuery()"
style="background: #007aff; color: #ffffff"
class="zdybtn"
>
查询
</div>
</div>
</div>
<div class="bottom">
<el-col :span="24">
<span class="flTtitle">信息列表</span>
<span class="info">{{ tableDataLength }}条信息</span>
</el-col>
<el-table
:header-cell-style="headStyle"
v-loading="tableLoading"
:data="tableData"
style="width: 100%">
<el-table-column
prop=""
label="模型/算法"
width="200">
</el-table-column>
<el-table-column
prop=""
label="名称"
width="200">
</el-table-column>
<el-table-column
prop=""
label="单位"
width="200">
</el-table-column>
<el-table-column
prop=""
label="平均分"
width="200">
</el-table-column>
<el-table-column
prop=""
label="操作">
<template slot-scope="scope">
<el-button type="text" @click="getDetail(tableData[scope.$index])">查看详情</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination
background
@current-change="handleCurrentChange"
:page-sizes="[10]"
:page-size="10"
layout="sizes, prev, pager, next"
:total="tableDataLength">
</el-pagination>
</div>
<el-dialog title="详情信息" :visible.sync="dialogFormVisible" width="36%">
<el-card class="box-card" style="margin: 10px 0 10px 0">
<div>
{{ msg }}
</div>
</el-card>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible = false">取 消</el-button>
<el-button type="primary" @click="dialogFormVisible = false">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { post } from "@/utils/http.js";
import url from "@/api/base";
import {
xxx
} from "@/api/fzjc.js";
export default {
name: "queryWjpj",
components: {
},
data() {
return {
header: "微决评价完善中心",
pageBs: "wjpj",
tableData: [{}],
tableDataLength: 0,
tableLoading: false,
dialogFormVisible: false,
msg: '无',
cxUrl: "",
form: {
mc: '',
page: 1,
limit: 10
},
Menu: [
{
id: "queryWjpj",
label: "微决评价完善中心",
index: "queryWjpj",
auth: "M0101",
className: "iconfont iconrizhi",
disabled: false,
}
],
};
},
computed: {
},
created() {
this.$store.commit("user/SET_Menu", this.Menu);
},
mounted() {
this.doQuery()
},
methods: {
doQuery() {
// this.showLoading()
// let self = this
// post(`${url.alyIP}${this.cxUrl}`, this.form).then(
// (response) => {
// if (response.success === true) {
// self.tableData = response.data.rows;
// self.tableDataLength = response.data.total
// console.log('self.tableData', typeof(self.tableDataLength))
// self.closeLoading();
// } else {
// self.closeLoading();
// }
// }
// );
},
handleCurrentChange(val) {
this.form.page = val
this.doQuery()
},
closeLoading() {
this.tableLoading = false;
},
showLoading() {
this.tableLoading = true;
},
clearData() {
},
headStyle() {
return "text-align: center"
},
getDetail(a) {
this.dialogFormVisible = true
// const form = {
// }
// xxx(form).then((res) => {
// if (res.success && res.code == 200) {
// // this.msg = res.data.result
// }
// })
}
}
};
</script>
<style scoped lang="scss">
.Content{
padding: 20px;
.top, .bottom{
margin-bottom: 25px;
padding: 0 20px;
background: #fff;
overflow: hidden;
border-radius: 4px;
border: 1px solid #EAEAEA;
box-shadow: none;
opacity: 1;
.flTtitle{
font-size: 15px;
font-weight: bold;
line-height: 21px;
color: #363636;
margin: 16px 12px 14px 0;
display: inline-block;
}
}
.top{
.zhi{
display: inline-block;
vertical-align: top;
margin: 0 8px;
}
.zdybtn{
width: 76px;
height: 32px;
background: #FFFFFF;
border: 1px solid #D9D9D9;
opacity: 1;
border-radius: 4px;
line-height: 32px;
text-align: center;
margin-left: 12px;
cursor: pointer;
display: inline-block;
}
.btn{
text-align: right;
margin-right: 30px;
margin-bottom: 15px;
}
}
.bottom{
padding-bottom: 15px;
.info{
font-size: 12px;
font-family: Source Han Sans CN;
font-weight: 400;
line-height: 20px;
color: #999999;
}
}
::v-deep .el-input{
width: auto !important;
.el-input__inner{
width: auto !important;
height: 32px;
line-height: 32px;
}
}
}
::v-deep .el-table .cell{
text-align: center;
}
::v-deep .el-table th{
background: #F5F7FA;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment