Commit 36a89fe1 authored by 李苏's avatar 李苏 💬

隐患完善

parent 50d3a942
......@@ -334,6 +334,32 @@ export const powerRoutes=[
name:'yhtj',
path:"yhtj"
},
{
component:'dangerManagement/cxcqyh/index',
hidden:false,
meta:{
"title": "查询超期隐患记录",
"icon": "",
"noCache": false,
"link": null,
"mkid":'test',
},
name:'cxcqyh',
path:"cxcqyh"
},
{
component:'dangerManagement/yhznytj/index',
hidden:false,
meta:{
"title": "安全隐患逐年汇总",
"icon": "",
"noCache": false,
"link": null,
"mkid":'test',
},
name:'yhznytj',
path:"yhznytj"
},
{
component:'dangerManagement/yhslhz/index',
hidden:false,
......
<template>
<RelDialog :type='type' :editApp='editApp' :app='app' :buttonApp='buttonApp'>
<!-- 填写表单内容,slot=form必写-->
<el-form slot="form" style="height: 65vh;overflow: auto;overflow-x: hidden;padding-right: 20px;" ref="form" :model="form" label-width="100px" :rules="rules">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="发现日期" ref="fxrq" prop="fxrq">
<el-date-picker value-format="timestamp" style="width: 100%;" :readonly="readonly" type="date"
v-model="form.fxrq" placeholder="选择日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="公司" ref="gsid" prop="gsid">
<RelSelect style="width: 100%;" :readonly="readonly" src='jcsj/common/bm/queryGs' :match="{value:'id',label:'bmmc'}" v-model='form.gsid' ></RelSelect>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="风险点" ref="fxd" prop="fxd">
<RelSelect linkage :linkParams="{gsid:form.gsid}" style="width: 100%;" :readonly="readonly" src='aqgl/fxyk/fxd/init/fxd' :match="{value:'id',label:'fxdName'}" v-model='form.fxd' ></RelSelect>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="隐患地点" ref="yhdd" prop="yhdd">
<el-input :readonly="readonly" v-model="form.yhdd" ></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="隐患类型" ref="flid" prop="flid">
<RelSelect style="width: 100%;" :readonly="readonly" src='aqgl/yhgl/yhfl/query' :match="{value:'id',label:'name'}" v-model='form.flid' ></RelSelect>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="隐患等级" ref="dj" prop="dj">
<RelSelect style='width: 100%;' src='aqgl/fxyk/fxpc/init/wxdj' clearable :match="{value:'id',label:'name'}" v-model='form.dj' ></RelSelect>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="班组" ref="bmid" prop="bmid">
<RelSelect linkage :linkParams="{pid:form.gsid}" :readonly="readonly" style="width: 100%;" src='jcsj/common/bm/queryBz' filterable clearable :match="{value:'id',label:'bmmc'}" v-model='form.bmid' ></RelSelect>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="隐患内容" ref="nr" prop="nr">
<el-input type='textarea' :readonly="readonly" v-model="form.nr" ></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="整改措施" ref="zgfa" prop="zgfa">
<el-input type='textarea' :readonly="readonly" v-model="form.zgfa" ></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="管控措施" ref="gkcs" prop="gkcs">
<el-input type='textarea' :readonly="readonly" v-model="form.gkcs" ></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="整改说明" ref="clff" prop="clff">
<el-input type='textarea' :readonly="readonly" v-model="form.clff" ></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="复查说明" ref="fcsm" prop="fcsm">
<el-input type='textarea' :readonly="readonly" v-model="form.fcsm" ></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="整改完成日期" ref="yqzgsj" prop="yqzgsj">
<el-date-picker value-format="timestamp" style="width: 100%;" :readonly="readonly" type="date"
v-model="form.yqzgsj" placeholder="选择日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="上报人" ref="sbr" prop="sbr">
<!-- <el-input :readonly="readonly" v-model="form.zrr" ></el-input> -->
<personSelector :label="form.sbrName||'暂无'" @selected='sbrSelected' ></personSelector>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="备注" ref="bz" prop="bz">
<el-input type='textarea' :readonly="readonly" v-model="form.bz" ></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</RelDialog>
</template>
<script>
import {editMixin} from 'common'
export default {
mixins: [editMixin],
/* 存放index页面传递的额外参数*/
mounted() {
/* 赋值*/
this.form.sbr=localStorage.getItem('userid')
this.form.sbrName=localStorage.getItem('username')
},
/* 组件名称*/
name: "aqgl/yhglYhjlEdit",
/* 传递props模式一样必填,用于index,button,REdialog之间的组件通信*/
data() {
return {
/* 额外初始化,根据需求*/
systemType: [],
bmList: [],
/* 当前表单初始值,默认由RelDialog查询indexQuery赋值,copy时不赋值id,初始化时所有query的值都会赋值给form*/
form: {
fcsm:'',
clff:'',
sbr:'',
sbrName:'',
gkcs:'',
zgfa:'',
zrrName:'',
id:'',
fxrq:new Date().getTime(),
fxd:'',
yhdd:'',
sbjb:'',
nr:'',
bmid:'',
zdzgfa:'',
zrr:'',
dj:'',
flid:'',
clr:'',
yqzgsj:new Date().getTime(),
clsj:new Date().getTime(),
clff:'',
fcr:'',
fcsj:new Date().getTime(),
fcjg:'',
czr:'',
czsj:new Date().getTime(),
czyj:'',
zt:'',
attachcount:'',
bz:'',
wfid:'',
wfinstid:'',
wfpid:'',
wfpname:'',
wfwuserid:'',
wfwusername:'',
wfhuserid:'',
wfhusername:'',
whrid:'',
whr:'',
whsj:new Date().getTime(),
cjrid:'',
cjr:'',
cjsj:new Date().getTime(),
sysversion:'',
},
/* form提交时的规则,具体规则参考官网*/
rules: {
}
}
},
methods: {
sbrSelected(row){
this.form.sbr=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-date-picker value-format="timestamp" v-model="queryParams.ksrq"></el-date-picker>
</div>
</el-col>
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">结束日期:</span>
<el-date-picker value-format="timestamp" v-model="queryParams.jsrq"></el-date-picker>
</div>
</el-col>
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">公司:</span>
<RelSelect style="width: 100%;" src='jcsj/common/bm/queryGs' filterable clearable :match="{value:'id',label:'bmmc'}" v-model='queryParams.gsid' ></RelSelect>
</div>
</el-col>
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">班组:</span>
<RelSelect linkage :linkParams="{pid:queryParams.gsid}" style="width: 100%;" src='jcsj/common/bm/queryBz' filterable clearable :match="{value:'id',label:'bmmc'}" v-model='queryParams.bmid' ></RelSelect>
</div>
</el-col>
</el-row>
<el-row :gutter="20" class="search-row-1">
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">隐患类型:</span>
<RelSelect src='aqgl/yhgl/yhfl/query' :match="{value:'id',label:'name'}" v-model='queryParams.flid' ></RelSelect>
</div>
</el-col>
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">处理状态:</span>
<RelSelect src='aqgl/yhgl/yhjl/init/zt' filterable clearable :match="{value:'id',label:'name'}" v-model='queryParams.zt' ></RelSelect>
</div>
</el-col>
<!-- <el-col :span="6" class="search-col">
<div class="search-item">
<el-checkbox v-model="queryParams.yq" true-label='Y' false-label="N" >逾期</el-checkbox>
</div>
</el-col> -->
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">风险点:</span>
<!-- <el-input v-model="queryParams.fxd"></el-input> -->
<RelSelect linkage :linkParams="{gsid:queryParams.gsid}" style="width: 100%;" src='aqgl/fxyk/fxd/init/fxd' :match="{value:'id',label:'fxdName'}" v-model='queryParams.fxd' ></RelSelect>
</div>
</el-col>
</el-row>
</div>
<!-- 按钮操作-->
<el-row class="tool-bar">
<PrintButton :app='app'></PrintButton>
<ViewButton ref="view" :app='app'></ViewButton>
<AttachFileButton_aqyh :params="{childPath:'',allowAddFile:'none'}" :app='this'></AttachFileButton_aqyh>
<!-- <AddButton ref="add" :app='app'></AddButton>
<CopyButton ref="copy" :app='app'></CopyButton>
<EditButton ref="edit" :app='app'></EditButton> -->
<!-- <DeleteButton :app='app'></DeleteButton> -->
<!--<FieldButton :app='app'></FieldButton>-->
<!--<ExcelButton :app='app'></ExcelButton>-->
<!-- <AttachFileButton_aqyh :app='app' ></AttachFileButton_aqyh> -->
<!-- 权限-->
</el-row>
<!-- 表格-->
<div class="tablePagers">
<TablePager :delButton='false' @getData='getData' :ref="'TablePager'" :app='app' :query='query' @selectItem='selectItem'
@getRow='getRow'>
</TablePager>
</div>
</div>
</template>
<script>
/* 引入需要的接口*/
import {
doQuery,
doAdd,
doUpdate,
doDelete
} from "@/api/dangerManagement/enterSafetyRecords.js"
import {
QueryBm,
} from "common/src/api/system/dmgSystem.js";
/* edit页面*/
import Edit from './edit'
import {
tableMixin
} from 'common'
export default {
mixins: [tableMixin],
name: 'appVersion',
/* 初始额外赋值*/
async mounted() {
this.$refs['TablePager'].pageQuery()
},
data() {
return {
/*需要的额外参数 */
showDialog: false,
DialogName: '',
type: '',
DialogTitle: '',
/* 基础url*/
baseUrl: '/aqgl/yhgl/yhjl',
/* 查询参数*/
queryParams: {
gsid:'',
ksrq:new Date().getTime()-1000*60*60*24*30,
jsrq:new Date().getTime(),
bmid:'',
zt:'',
yq:'Y',
fxd:''
},
/* 树的标题 */
treeTitle: '单位列表',
treeDefaultProps: {
children: 'children',
label: 'bmmc'
},
/* 表格标题对应参数*/
tableTitle: [
{label: "状态", prop: "ztName", fieldType: "ftString",width:60},
{label: "公司", prop: "gsid", fieldType: "ftString",width:192,transform:{
url:'jcsj/common/bm/queryGs',label:'bmmc',value:'id'
}},
{label: "班组", prop: "bmid", fieldType: "ftString",width:192,transform:{
url:'jcsj/common/bm/queryBz',label:'bmmc',value:'id'
}},
//
// {label: "状态", prop: "zt", fieldType: "ftString",transform:{
// url:'aqgl/yhgl/yhjl/init/zt',label:'name',value:'id'
// }},
// {label: "整改说明", prop: "clff", fieldType: "ftString",width:300},
// {label: "整改完成时间", prop: "clsj", fieldType: "ftDateTime"},
{label: "发现日期", prop: "fxrq", fieldType: "ftDateTime"},
/* */
{label: "整改日期", prop: "clsj", fieldType: "ftDateTime"},
{label: "复查日期", prop: "fcsj", fieldType: "ftDateTime"},
/* */
{label: "风险点", prop: "fxdName", fieldType: "ftString",width:300},
{label: "隐患地点", prop: "yhdd", fieldType: "ftString",width:300},
{label: "隐患类型", prop: "flid", fieldType: "ftString",width:192,transform:{
url:'aqgl/yhgl/yhfl/query',label:'name',value:'id'
}},
{label: "隐患等级", prop: "dj", fieldType: "ftString",width:192,transform:{
url:'aqgl/fxyk/fxpc/init/wxdj',label:'name',value:'id'
}},
{label: "内容", prop: "nr", fieldType: "ftString",width:300},
// {label: "责任部门", prop: "bmName", fieldType: "ftString",width:192},
// {label: "制定整改方案", prop: "zdzgfa", fieldType: "ftString",width:6},
{label: "责任人", prop: "zrrName", fieldType: "ftString",width:192},
{label: "整改方案", prop: "zgfa", fieldType: "ftString",width:300},
{label: "管控措施", prop: "gkcs", fieldType: "ftString",width:300},
{label: "要求整改完成时间", prop: "yqzgsj", fieldType: "ftDateTime"},
// {label: "隐患分类", prop: "flid", fieldType: "ftString",width:192},
{label: "处理人", prop: "clrName", fieldType: "ftString",width:192},
// {label: "处理时间", prop: "clsj", fieldType: "ftDateTime"},
// {label: "处理方法", prop: "clff", fieldType: "ftString",width:300},
{label: "复查人", prop: "fcrName", fieldType: "ftString",width:192},
{label: "上报人", prop: "sbrName", fieldType: "ftString",width:192},
/* 检查人 */
// {label: "复查时间", prop: "fcsj", fieldType: "ftDateTime"},
// {label: "复查结果", prop: "fcjg", fieldType: "ftString",width:300},
// {label: "处置人", prop: "czr", fieldType: "ftString",width:192},
// {label: "处置时间", prop: "czsj", fieldType: "ftDateTime"},
// {label: "处置意见", prop: "czyj", fieldType: "ftString",width:300},
// {label: "状态", prop: "zt", fieldType: "ftString",width:6},
// {label: "附件数", prop: "attachcount", fieldType: "int"},
{label: "备注", prop: "bz", fieldType: "ftString",width:300},
// {label: "工作流状态", prop: "wfpname", fieldType: "ftString",width:300},
{label: "维护人", prop: "whr", fieldType: "ftString"},
{label: "维护时间", prop: "whsj", fieldType: "ftDateTime"},
// {label: "创建人", prop: "cjr", fieldType: "ftString"},
// {label: "创建时间", prop: "cjsj", fieldType: "ftDateTime"},
]
}
},
methods: {
selectedTree(e){
this.queryParams.bmid=e.id||'root'
this.$refs['TablePager'].pageQuery()
},
tybz(a) {
let nTy = false
nTy = (a.row.tybz == 'N' ? true : false)
return nTy
},
query: doQuery,
/* 基础增*/
apiAdd: doAdd,
/* 基础更新*/
apiUpdate: doUpdate,
/* 删除操作*/
apiDelete: doDelete,
/* treeQuery */
apiTreeQuery: QueryBm,
/* 初始化赋值操作*/
init() {
},
/* 启用停用*/
},
components:{
Edit
}
}
</script>
<style scoped>
</style>
<template>
<RelDialog :type='type' :editApp='editApp' :app='app' >
<!-- 填写表单内容,slot=form必写-->
<el-form slot="form" ref="form" :model="form" label-width="80px" :rules="rules">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="检验项目" ref="userid" prop="userid">
<el-input :readonly="readonly" v-toUpperCase v-model="form.userid"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="隐患等级" ref="username" prop="username">
<el-select style="width: 100%;" >
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item :span="12" label="处罚金额">
<el-input :readonly="readonly" v-toUpperCase v-model="form.userid"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="考核分数">
<el-input :readonly="readonly" v-model="form.phone"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="检验内容">
<el-input type="textarea" :readonly="readonly" v-model="form.bz"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!-- 按钮重写, -->
<!-- <div slot="reFooter">
<span slot="footer">
重写按钮写在这里,根据需要重写 slot(reFooter,foorer) 节点样式 重写方法需要在此页重新定义
</span>
</div> -->
</RelDialog>
</template>
<script>
import {editMixin} from 'common'
export default {
mixins: [editMixin],
/* 存放index页面传递的额外参数*/
mounted() {
this.app.apiTreeQuery({}).then(res=>{
this.bmList=res.data.records
})
},
/* 组件名称*/
name: 'roleManagementEdit',
/* 传递props模式一样必填,用于index,button,REdialog之间的组件通信*/
data() {
return {
/* 额外初始化,根据需求*/
bmList: [],
/* 当前表单初始值,默认由RelDialog查询indexQuery赋值,copy时不赋值id,初始化时所有query的值都会赋值给form*/
form: {
bmid:'',
userid: '',
username: '',
phone:'',
email:'',
bz: "",
},
/* form提交时的规则,具体规则参考官网*/
rules: {
userid: [{
required: true,
trigger: 'blur'
}, ],
username: [{
required: true,
trigger: 'blur'
}, ]
}
}
},
methods: {
}
}
</script>
<style scoped lang="scss">
</style>
<template>
<div>汇总,等待对接</div>
<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-date-picker value-format="timestamp" v-model="queryParams.ksrq"></el-date-picker>
</div>
</el-col>
<el-col :span="6" class="search-col">
<div class="search-item">
<span class="search-span">结束日期:</span>
<el-date-picker value-format="timestamp" v-model="queryParams.jsrq"></el-date-picker>
</div>
</el-col>
<el-col :span="6" class="search-col">
<div class="search-item">
<el-radio v-model="radio" label="gs">按公司</el-radio>
<el-radio v-model="radio" label="bz">按班组</el-radio>
<el-radio v-model="radio" label="ry">按人员</el-radio>
</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 :delButton='false' @getData='getData' :ref="'TablePager'" :app='app' :query='query' @selectItem='selectItem'
@getRow='getRow'>
</TablePager>
</div>
</div>
</template>
<script>
/* 引入需要的接口*/
import {
QueryKzzxRole,
QueryApptype,
AddKzzxRole,
DeleteKzzxRole,
UpdateKzzxRole,
QtKzzxRole
} from "common/src/api/system/dmgSystem.js";
/* edit页面*/
import Edit from './edit'
import {
tableMixin
} from 'common'
export default {
mixins: [tableMixin],
name: 'appVersion',
/* 初始额外赋值*/
async mounted() {
this.$refs['TablePager'].pageQuery()
},
data() {
return {
radio:'ry',
/*需要的额外参数 */
showDialog: false,
DialogName: '',
type: '',
DialogTitle: '',
/* 基础url*/
baseUrl: 'kzzx/role',
/* 查询参数*/
queryParams: {
ksrq: new Date().getTime()-1000*60*60*24*30,
jsrq: new Date().getTime()
},
/* 表格标题对应参数*/
tableTitle: [
{
prop: 'gsid',
label: '公司',
width:292,transform:{
url:'jcsj/common/bm/queryGs',label:'bmmc',value:'id'
}
},
{
prop: 'bmid',
label: '班组',
width:292,transform:{
url:'jcsj/common/bm/queryBz',label:'bmmc',value:'id'
}
},
{
prop: 'zrrName',
label: '责任人',
width: 300
},
{
prop: 'sl',
label: '数量',
width: 100
},
{
prop: 'fxrq',
label: '起始时间',
width: 300
},
{
prop: 'yqzgsj',
label: '结束时间',
width:300
}
]
}
},
watch:{
radio(val){
val=='gs'&&this.$refs['TablePager']['newGridList'].forEach(item=>{item.prop=='bmid'&&(item.show=false);item.prop=='zrrName'&&(item.show=false);item.prop=='gsid'&&(item.show=true)})
val=='bz'&&this.$refs['TablePager']['newGridList'].forEach(item=>{item.prop=='bmid'&&(item.show=true);item.prop=='zrrName'&&(item.show=false);item.prop=='gsid'&&(item.show=true)})
val=='ry'&&this.$refs['TablePager']['newGridList'].forEach(item=>{item.prop=='bmid'&&(item.show=true);item.prop=='zrrName'&&(item.show=true);item.prop=='gsid'&&(item.show=true)})
}
},
methods: {
/* 基础查询*/
query: QueryKzzxRole,
/* 基础增*/
apiAdd: AddKzzxRole,
/* 基础更新*/
apiUpdate: UpdateKzzxRole,
/* 删除操作*/
apiDelete: DeleteKzzxRole,
/* 初始化赋值操作*/
init() {
},
/* 启用停用*/
setEnable(id) {
this.$confirm('是否启用/停用该角色, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
let params = {
id: id
}
QtKzzxRole(params).then(res => {
if (res.success) {
this.$success('操作成功')
this.app.$refs['TablePager'].reLoad()
} else {
this.$error(res.message || '操作失败')
}
})
})
}
},
components: {
Edit,
}
}
</script>
<style>
</style>
\ No newline at end of file
<style scoped>
</style>
<template>
<div>隐患逐年月统计</div>
</template>
<script>
</script>
<style>
</style>
\ No newline at end of file
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