Commit 5206520d authored by 李苏's avatar 李苏 💬

新增风险设置

parent 1b5745ef
import request from 'common/src/utils/request'
export function doQuery(query) {
return request({
url: '/aqgl/fxyk/fxsz/query',
method: 'post',
data: query||{}
})
}
/* 更新 */
export function doUpdate(query) {
return request({
url: '/aqgl/fxyk/fxsz/update',
method: 'post',
data: query||{}
})
}
export function doAdd(query) {
return request({
url: '/aqgl/fxyk/fxsz/add',
method: 'post',
data: query||{}
})
}
export function doDelete(query) {
return request({
url: '/aqgl/fxyk/fxsz/delete',
method: 'post',
data: query||{}
})
}
// 细节
export function doQueryDetail(query) {
return request({
url: '/aqgl/fxyk/fxsz/query/detail',
method: 'post',
data: query||{}
})
}
......@@ -306,7 +306,21 @@ export const powerRoutes=[
},
name:'queryRisk',
path:"queryRisk"
},
{
component:'riskPrecontrol/riskSet/index',
hidden:false,
meta:{
"title": "风险设置",
"icon": "",
"noCache": false,
"link": null,
"mkid":'903000300',
},
name:'riskSet',
path:"riskSet"
}
]
},
/* 三违管理*/
......
......@@ -87,7 +87,7 @@ const permission = {
(item)=>{
let hasMkid=false
asymenus.forEach(e=>{
if(e.mkid==item.meta.mkid){
if((e.mkid==item.meta.mkid)||(item.meta.mkid=='test')){
item.meta.icon=e.icon
/* 额外参数*/
e.mkid&&(item.mkid=e.mkid)
......
<template>
<div class="login">
<!-- <div class="newTitle">
</div> -->
<vue-particles
class="login-bg"
color="#34a4ea"
......@@ -22,7 +19,7 @@
clickMode="push"
>
</vue-particles>
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form" style="position: relative;background-color:rgba(0, 0, 0, 0.4) ;">
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form" style="position: absolute;background-color:rgba(0, 0, 0, 0.4) ;">
<ul class="bg-bubbles" >
<li v-for="i in 10" :key="i"></li>
</ul>
......
<template>
<RelDialog :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<!-- 填写表单内容,slot=form必写-->
<el-form style="max-height: 75vh;overflow: auto;overflow-x:hidden;padding-right: 10px;" slot="form" ref="form" :model="form" label-width="100px" :rules="rules">
<Selecter v-if="showDialog" :app='this' ></Selecter>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="任务名称" ref="name" prop="name">
<el-input :readonly="readonly" v-model="form.name" ></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="12">
<el-form-item label="检查人" ref="jcrid" prop="jcrid">
<personSelector :label="form.jcrName||form.jcrid||'暂无'" @selected='jcrSelected' ></personSelector>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="检查时间" ref="sjjcsj" prop="sjjcsj">
<el-date-picker style="width: 100%;" value-format='timestamp' type="datetime" v-model="form.sjjcsj" ></el-date-picker>
</el-form-item>
</el-col> -->
<el-col :span="12">
<el-form-item label="岗位" ref="gwid" prop="gwid">
<RelSelect style="width:100%" src='/aqgl/jcsj/scgw/query' :match="{value:'id',label:'name'}" v-model='form.gwid' ></RelSelect>
<!-- <el-input :readonly="readonly" v-model="form.gwid" ></el-input> -->
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="检查周期" ref="jldw" prop="jldw">
<el-select :readonly="readonly" style="width: 100%;" v-model="form.jldw" placeholder="请选择">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col v-show="form.jldw&&form.jldw!='once'" :span="12">
<el-form-item label="开始时间" ref="begintime" prop="begintime">
<el-date-picker :readonly="readonly" style="width: 100%;" value-format='timestamp' type="datetime" v-model="form.begintime" ></el-date-picker>
</el-form-item>
</el-col>
<el-col v-show="form.jldw&&form.jldw=='year'" :span="12">
<el-form-item label="每几年" ref="year" prop="year">
<el-input v-model="form.year" type="number"></el-input>
</el-form-item>
</el-col>
<el-col v-show="form.jldw&&(form.jldw=='month'||form.jldw=='year')" :span="12">
<el-form-item label="月份" ref="month" prop="month">
<el-select style="width: 100%;" v-model="form.month" placeholder="请选择">
<el-option
v-for="item in 12"
:key="item"
:label="item"
:value="item">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col v-show="form.jldw&&form.jldw=='week'" :span="12">
<el-form-item label="周" ref="week" prop="week">
<el-input v-model="form.week" type="number"></el-input>
</el-form-item>
</el-col>
<el-col :span="12" v-show="form.jldw&&(form.jldw=='month'||form.jldw=='year'||form.jldw=='week'||form.jldw=='day')" >
<el-form-item label="日" ref="day" prop="day">
<el-select :readonly="readonly" style="width: 100%;" v-model="form.day" placeholder="请选择">
<el-option
v-for="item in days"
:key="item"
:label="item"
:value="item">
</el-option>
</el-select>
<!-- <el-input v-model="form.day" type="number"></el-input> -->
</el-form-item>
</el-col>
<el-col v-show="form.jldw&&(form.jldw=='month'||form.jldw=='year'||form.jldw=='week'||form.jldw=='hour'||form.jldw=='day')" :span="12">
<el-form-item label="时" ref="hour" prop="hour">
<el-input v-model="form.hour" type="number"></el-input>
</el-form-item>
</el-col>
<el-col v-show="form.jldw&&(form.jldw=='month'||form.jldw=='year'||form.jldw=='week'||form.jldw=='minute'||form.jldw=='day')" :span="12">
<el-form-item label="分" ref="minute" prop="minute">
<el-input v-model="form.minute" type="number"></el-input>
</el-form-item>
</el-col>
<el-col v-show="form.jldw&&(form.jldw=='month'||form.jldw=='year'||form.jldw=='week'||form.jldw=='second'||form.jldw=='day')" :span="12">
<el-form-item label="秒" ref="second" prop="second">
<el-input v-model="form.second" type="number"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-form-item label="" ref="year" prop="year" >
<div style="height: 200px;">
<div style="display: flex;transform: translateY(-10px);">
<el-button @click.native='showDialog=true' size='mini' type="primary">添加指标</el-button>
</div>
<EditTable :editTableData='formDetail' staticHeader :app='this' ></EditTable>
</div>
</el-form-item>
</el-row>
</el-form>
</RelDialog>
</template>
<script>
import Selecter from './selecter'
import {editMixin} from 'common'
export default {
components:{
Selecter
},
mixins: [editMixin],
/* 存放index页面传递的额外参数*/
mounted() {
},
computed:{
jldw(){
let jldw=this.form.jldw
return jldw
}
},
watch:{
jldw(val){
if(val=='week'){
this.days=7
}else{
this.days=31
}
}
},
/* 组件名称*/
name: "aqglFxsjEdit",
/* 传递props模式一样必填,用于index,button,REdialog之间的组件通信*/
data() {
return {
formDetail:[],
showDialog:false,
DialogTitle:'排查标准',
days:31,
/* 额外初始化,根据需求*/
options: [{
value: 'year',
label: '年'
}, {
value: 'month',
label: '月'
}, {
value: 'week',
label: '周'
}, {
value: 'day',
label: '天'
}, {
value: 'hour',
label: '时'
},
{
value: 'minute',
label: '分'
},
{
value: 'second',
label: '秒'
},
{
value: 'once',
label: '一次'
}],
/* 当前表单初始值,默认由RelDialog查询indexQuery赋值,copy时不赋值id,初始化时所有query的值都会赋值给form*/
form: {
table:'FXSZMX',
gwid:'',
// sjjcsj:'',
// jcrid:'',
name:'',
jldw:'',
begintime:'',
/* 每几年*/
year:'',
month:'',
day:1,
week:''
},
/* form提交时的规则,具体规则参考官网*/
rules: {
},
/* 多表表头*/
editTableTitle:[
{label: "部门", prop: "bmName", fieldType: "ftString",width:192},
{label: "车间", prop: "cjName", fieldType: "ftString",width:192},
{label: "岗位", prop: "gwName", fieldType: "ftString",width:192},
{label: "风险地点", prop: "fxpcdd", fieldType: "ftString",width:300},
{label: "风险点", prop: "fxd", fieldType: "ftString",width:300},
{label: "事故类型", prop: "sglx", fieldType: "ftString",width:192},
{label: "危险等级", prop: "wxdj", fieldType: "ftString",width:160,transform:{
url:'/aqgl/fxyk/fxpc/init/wxdj',label:'name',value:'id'
}},
{label: "分值", prop: "fz", fieldType: "float"},
{label: "风险类型", prop: "fxlx", fieldType: "ftString",width:192},
{label: "管控落实后等级", prop: "lsdj", fieldType: "ftString",width:160},
{label: "管理层级", prop: "glcj",width:160,transform:{
url:'/aqgl/fxyk/fxpc/init/glcj',label:'name',value:'id'
}},
{label: "拍照选项", prop: "pzxx", fieldType: "ftString",width:160,transform:{
url:'/aqgl/fxyk/fxpc/init/pzxx',label:'name',value:'id'
}},
{label: "序号", prop: "xh", fieldType: "int"},
{label: "图形编号", prop: "txcode", fieldType: "ftString",width:180},
{label: "措施类型", prop: "cslx", fieldType: "ftString",width:192},
]
}
},
methods: {
jcrSelected(row){
console.log(row)
this.form.jcrid=row.id
},
}
}
</script>
<style scoped lang="scss">
</style>
<template>
<div class="min_full">
<!-- 查询条件-->
<div class="search" v-condition>
<SearchButton :app='app'></SearchButton>
<el-row :gutter="20" class="search-row-1">
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">名称:</span>
<el-input v-model="queryParams.name"></el-input>
</div>
</el-col>
</el-row>
</div>
<!-- 按钮操作-->
<el-row class="tool-bar">
<!-- <PrintButton :app='app'></PrintButton> -->
<ViewButton ref="view" :app='app'></ViewButton>
<AddButton ref="add" :app='app'></AddButton>
<CopyButton ref="copy" :app='app'></CopyButton>
<EditButton ref="edit" :app='app'></EditButton>
<AttachFileButton :app='app'></AttachFileButton>
<!-- <FieldButton :app='app'></FieldButton>
<ExcelButton :app='app'></ExcelButton> -->
<!-- 额外按钮-->
</el-row>
<!-- 表格-->
<div class="tablePagers">
<TablePager @getData='getData' :ref="'TablePager'" :app='app' :query='query' @selectItem='selectItem'
@getRow='getRow'>
</TablePager>
</div>
</div>
</template>
<script>
/* 引入需要的接口*/
import {
doQuery,
doAdd,
doUpdate,
doDelete,
doQueryDetail
} from '@/api/riskPrecontrol/riskSet';
/* edit页面*/
import Edit from './edit'
import {
tableMixin
} from 'common'
export default {
mixins: [tableMixin],
name: 'maintenanceRisk',
/* 初始额外赋值*/
async mounted() {
this.$refs['TablePager'].pageQuery()
},
data() {
return {
/*需要的额外参数 */
showDialog: false,
DialogName: '',
type: '',
DialogTitle: '',
/* 基础url*/
baseUrl: '/aqgl/fxsj',
/* 查询参数*/
queryParams: {
name:'',
},
/* 表格标题对应参数*/
tableTitle: [
{label:"名称", prop:"name"},
{label:"岗位", prop:"gwid",transform:{
url:'/aqgl/jcsj/scgw/query',label:'name',value:'id'
}},
{label: "描述", prop: "desc",width: 230},
{label: "上次执行时间", prop: "pretime",width: 200},
{label: "下次执行时间", prop: "nexttime",width: 200},
{label: "状态", prop: "status",width:90,formatter:function (a,b,value) {
var map={1:"正在运行",0:"停止"};
return map[value]||map[0];
}},
{label: "执行结果", prop: "result",width: 390}
]
}
},
methods: {
query: doQuery,
/* 基础增*/
apiAdd: doAdd,
/* 基础更新*/
apiUpdate: doUpdate,
/* 删除操作*/
apiDelete: doDelete,
/* 初始化赋值操作*/
queryDetail:doQueryDetail,
init() {
},
},
components: {
Edit,
}
}
</script>
<style scoped>
</style>
<template>
<DefaultDialog :app='app'>
<div slot="form" style="height: 70vh;">
<!-- 按钮-->
<div style='height:100%;width: 100%;'>
<TablePager :delButton='false' @getData='getData' :ref="'TablePager'" :app='this' :query='query' @selectItem='selectItem'
@getRow='getRow'>
</TablePager>
</div>
<!-- 表格-->
</div>
<div slot="reFooter" class="refooter">
<span slot="footer" class="dialog-footer" style="position: absolute;right: 10px;top: 12px;">
<el-button @click="app.showDialog=false">取 消</el-button>
<el-button type="primary" @click="save()">保 存</el-button>
</span>
</div>
</DefaultDialog>
</template>
<script>
import {
doQuery,
doAdd,
doUpdate,
doDelete,
doQueryJcnr,
doAddJcnr,
doUpdateJcnr,
doDeleteJcnr,
doAutoGen,
doQueryScgw
} from "@/api/riskPrecontrol/screeningCriteria.js";
import {
tableMixin_noapp
} from 'common'
export default {
mixins:[tableMixin_noapp],
props: {
app: {
type: Object,
default: {}
}
},
async mounted() {
this.$nextTick(()=>{
this.$refs['TablePager'].pageQuery()
})
},
methods: {
query: doQuery,
/* 基础增*/
apiAdd: doAdd,
/* 基础更新*/
apiUpdate: doUpdate,
/* 删除操作*/
apiDelete: doDelete,
save(){
if(this.multipleSelection.length==0){
this.$warning('请勾选一条数据')
return
}else{
let idList=[]
this.app.formDetail.forEach(e=>{
idList.push(e.id)
})
this.multipleSelection.forEach(item=>{
item.fxbzid=item.id
item.id=''
})
let addData=this.multipleSelection.filter((item)=>{
if(idList.indexOf(item.fxbzid)==-1){
return true
}else{
return false
}
})
this.app.formDetail=[...this.app.formDetail,...addData]
console.log(this.app.formDetail)
this.app.showDialog=false
}
}
},
data() {
return {
queryParams:{},
tableTitle: [
{label: "部门", prop: "bmName", fieldType: "ftString",width:192},
{label: "车间", prop: "cjName", fieldType: "ftString",width:192},
{label: "岗位", prop: "gwName", fieldType: "ftString",width:192},
{label: "风险地点", prop: "fxpcdd", fieldType: "ftString",width:300},
{label: "风险点", prop: "fxd", fieldType: "ftString",width:300},
{label: "事故类型", prop: "sglx", fieldType: "ftString",width:192},
{label: "危险等级", prop: "wxdj", fieldType: "ftString",width:160,transform:{
url:'/aqgl/fxyk/fxpc/init/wxdj',label:'name',value:'id'
}},
{label: "分值", prop: "fz", fieldType: "float"},
{label: "风险类型", prop: "fxlx", fieldType: "ftString",width:192},
{label: "管控落实后等级", prop: "lsdj", fieldType: "ftString",width:160},
{label: "管理层级", prop: "glcj",width:160,transform:{
url:'/aqgl/fxyk/fxpc/init/glcj',label:'name',value:'id'
}},
{label: "拍照选项", prop: "pzxx", fieldType: "ftString",width:160,transform:{
url:'/aqgl/fxyk/fxpc/init/pzxx',label:'name',value:'id'
}},
{label: "序号", prop: "xh", fieldType: "int"},
{label: "图形编号", prop: "txcode", fieldType: "ftString",width:180},
{label: "措施类型", prop: "cslx", fieldType: "ftString",width:192},
// {label: "基准精度", prop: "jzjd", fieldType: "ftString",width:160},
// {label: "基准维度", prop: "jzwd", fieldType: "ftString",width:160},
// {label: "检查要点", prop: "jcyd", fieldType: "ftString",width:300},
// {label: "危害因素", prop: "whys", fieldType: "ftString",width:300},
// {label: "事故后果", prop: "sghg", fieldType: "ftString",width:300},
// {label: "检查措施描述", prop: "jccsms", fieldType: "ftString",width:300},
// {label: "备注", prop: "bz", fieldType: "ftString",width:300},
// {label: "责任人", prop: "zrr", fieldType: "ftString",width:300},
// {label: "维护人", prop: "whr", fieldType: "ftString"},
// {label: "维护时间", prop: "whsj", fieldType: "ftDateTime"},
// {label: "创建人", prop: "cjr", fieldType: "ftString"},
// {label: "创建时间", prop: "cjsj", fieldType: "ftDateTime"},
],
baseUrl: '/aqgl/fxyk/fxbz',
}
}
}
</script>
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