双控模块添加json.Parameter22 = this.props.data.ORG_ID_HV;

This commit is contained in:
何美荣 2025-12-22 16:57:43 +08:00
parent f685435a77
commit c02396c64d
28 changed files with 3031 additions and 3027 deletions

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -20,15 +20,16 @@ class SK002ShowSummary extends React.Component {
};
componentDidMount() {
this.loadData();
this.loadData();
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = () => {
let json = initFilter(this.props.login.OrgId,"","",1,1);
let json = initFilter(this.props.login.OrgId, "", "", 1, 1);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendInclude(json, 'Nav_Type');
extendInclude(json, 'Nav_Area');
extendInclude(json, 'Nav_Details');
@ -37,23 +38,23 @@ class SK002ShowSummary extends React.Component {
extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailBasics.Nav_Law');
extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailHiddens.Nav_Question');
// extendIgnoreDataRule(json)
this.props.dispatch({
type: "app/getDataByPost",
url: "SK/BasicLibrary/OrderEntities",
payload: json,
onlyData: false,
onComplete: (ret) => {
if (ret && ret.Data) {
this.setState({
data : ret.Data
});
}
},
});
this.props.dispatch({
type: "app/getDataByPost",
url: "SK/BasicLibrary/OrderEntities",
payload: json,
onlyData: false,
onComplete: (ret) => {
if (ret && ret.Data) {
this.setState({
data: ret.Data
});
}
},
});
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
@ -62,66 +63,66 @@ class SK002ShowSummary extends React.Component {
render() {
const { data } = this.state;
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: "inline"}} type={'default'} icon={'printer'} >打印</Button>}
trigger={() => <Button style={{ marginLeft: '8px', display: "inline" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: "inline" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双重预防机制基础库</h1>
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='60px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>生产单元</td>
<td className={stylesStep.fontBold}>辨识区域</td>
<td className={stylesStep.fontBold}>风险名称</td>
<td className={stylesStep.fontBold}>风险描述</td>
<td className={stylesStep.fontBold}>风险类别</td>
{/* <td className={stylesStep.fontBold}>L</td>
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='60px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>生产单元</td>
<td className={stylesStep.fontBold}>辨识区域</td>
<td className={stylesStep.fontBold}>风险名称</td>
<td className={stylesStep.fontBold}>风险描述</td>
<td className={stylesStep.fontBold}>风险类别</td>
{/* <td className={stylesStep.fontBold}>L</td>
<td className={stylesStep.fontBold}>风险评价E</td>
<td className={stylesStep.fontBold}>风险评价C</td>
<td className={stylesStep.fontBold}>分值D</td> */}
<td className={stylesStep.fontBold}>风险等级</td>
<td className={stylesStep.fontBold}>应急处置</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控措施</td>
<td className={stylesStep.fontBold}>检查内容</td>
{/* <td className={stylesStep.fontBold}></td>
<td className={stylesStep.fontBold}>风险等级</td>
<td className={stylesStep.fontBold}>应急处置</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控措施</td>
<td className={stylesStep.fontBold}>检查内容</td>
{/* <td className={stylesStep.fontBold}></td>
<td className={stylesStep.fontBold}>判定标准</td> */}
<td className={stylesStep.fontBold}>隐患描述</td>
<td className={stylesStep.fontBold}>隐患等级</td>
<td className={stylesStep.fontBold}>整改措施</td>
</tr>
{
data && data.map((item,i)=>{
return <tr>
<td>
{i+1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}
</td>
<td>
{item.RISK_NAME}
</td>
<td>
{item.RISK_DESCRIPTION}
</td>
<td>
{item.Nav_Type?.NAME}
</td>
{/* <td>
<td className={stylesStep.fontBold}>隐患描述</td>
<td className={stylesStep.fontBold}>隐患等级</td>
<td className={stylesStep.fontBold}>整改措施</td>
</tr>
{
data && data.map((item, i) => {
return <tr>
<td>
{i + 1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}
</td>
<td>
{item.RISK_NAME}
</td>
<td>
{item.RISK_DESCRIPTION}
</td>
<td>
{item.Nav_Type?.NAME}
</td>
{/* <td>
{item.Nav_SCOREL? item.Nav_SCOREL?.SCORE : 0}
</td>
<td>
@ -133,49 +134,49 @@ class SK002ShowSummary extends React.Component {
<td>
{item.EVALUATE_SCORE}
</td> */}
<td>
{enums.SKEvaluateLevelEnum.enums[item.EVALUATE_LEVEL]}
</td>
<td>
{item.EMERGENCY}
</td>
<td>
{ item.DEPARTMENT_TYPE && item.DEPARTMENT_TYPE.split("_").map((item2, i) => {
if (item2) {
return <label> {enums.SKDepartmentTypeEnum.enums[item2]}</label>
}
})}
</td>
<td>
{ item.MEASURE}
{/* { item.Nav_Details && item.Nav_Details?.map((item2, i) => {
<td>
{enums.SKEvaluateLevelEnum.enums[item.EVALUATE_LEVEL]}
</td>
<td>
{item.EMERGENCY}
</td>
<td>
{item.DEPARTMENT_TYPE && item.DEPARTMENT_TYPE.split("_").map((item2, i) => {
if (item2) {
return <label> {enums.SKDepartmentTypeEnum.enums[item2]}</label>
}
})}
</td>
<td>
{item.MEASURE}
{/* { item.Nav_Details && item.Nav_Details?.map((item2, i) => {
if (item2) {
return <label> {(i+1)+"、"+item2.MEASURES_NAME}<br></br></label>
}
})} */}
</td>
<td>
{ item.CHECKCONTENTS}
</td>
{/* <td>
</td>
<td>
{item.CHECKCONTENTS}
</td>
{/* <td>
{item.CHECKBASICS }
</td>
<td>
{ item.CHECKSTANDARDS }
</td> */}
<td>
{ item.HIDDENSCRIPTION }
</td>
<td>
{ item.HIDDENLEVEL }
</td>
<td>
{item.RECIFYMEASURE }
</td>
</tr>
})
}
</table>:null
<td>
{item.HIDDENSCRIPTION}
</td>
<td>
{item.HIDDENLEVEL}
</td>
<td>
{item.RECIFYMEASURE}
</td>
</tr>
})
}
</table> : null
}
{/* <FormPage {...this.state.tmpData} /> */}
</div>
@ -184,4 +185,4 @@ class SK002ShowSummary extends React.Component {
}
export default connect(({ login,app }) => ({ login,app }))(SK002ShowSummary)
export default connect(({ login, app }) => ({ login, app }))(SK002ShowSummary)

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import React , { useState }from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React, { useState } from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -11,488 +11,485 @@ import { message } from "antd/lib/index";
import FormPage from '../../../components/FormPage'
import DropDownPagination from '../../common/DropDownPaginationEx'
class SK004CheckList extends React.Component {
constructor(props) {
super(props);
this.state = {
inputText:"",
inputText2:"",
inputText3:"",
checkType:{},
data: {},
dataList: [],
MineType:0,
CHECK_CYCLE:0,
CHECK_TYPE:0,
CHECK_CYCLE_ID:null,
BtnAgreeDisplay: 'none',
showDetail:false,
showDetailContent: false,
Details:[],
DetailContents:[],
columnContents : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "风险名称",
dataIndex: "RISK_NAME",
key: "RISK_NAME",
},
{
title: "检查区域",
dataIndex: "Nav_Area.NAME",
key: "Nav_Area.NAME",
},
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
// {
// title: "检查依据",
// dataIndex: "Nav_DetailBasics",
// key: "Nav_DetailBasics",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailBasics && record.Nav_DetailBasics.map((item, i) => {
// return item?.Nav_Law?.NAME+' '
// })
// }</label>
// }
// },
// {
// title: "判定标准",
// dataIndex: "CHECK_STANDARD",
// key: "CHECK_STANDARD",
// },
],
columns : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "检查岗位",
dataIndex: "POST_NAME",
key: "POST_NAME",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModalContent(record) }} icon='eye' />
}
}
],
columndatas : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "生产单元",
dataIndex: "Nav_ProductionUnit.NAME",
key: "Nav_ProductionUnit.NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.MineType]}</label>
// }
},
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
},
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
]
};
constructor(props) {
super(props);
this.state = {
inputText: "",
inputText2: "",
inputText3: "",
checkType: {},
data: {},
dataList: [],
MineType: 0,
CHECK_CYCLE: 0,
CHECK_TYPE: 0,
CHECK_CYCLE_ID: null,
BtnAgreeDisplay: 'none',
showDetail: false,
showDetailContent: false,
Details: [],
DetailContents: [],
columnContents: [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
{
title: "风险名称",
dataIndex: "RISK_NAME",
key: "RISK_NAME",
},
{
title: "检查区域",
dataIndex: "Nav_Area.NAME",
key: "Nav_Area.NAME",
},
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
// {
// title: "检查依据",
// dataIndex: "Nav_DetailBasics",
// key: "Nav_DetailBasics",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailBasics && record.Nav_DetailBasics.map((item, i) => {
// return item?.Nav_Law?.NAME+' '
// })
// }</label>
// }
// },
// {
// title: "判定标准",
// dataIndex: "CHECK_STANDARD",
// key: "CHECK_STANDARD",
// },
],
columns: [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "检查岗位",
dataIndex: "POST_NAME",
key: "POST_NAME",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModalContent(record) }} icon='eye' />
}
}
],
columndatas: [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
{
title: "生产单元",
dataIndex: "Nav_ProductionUnit.NAME",
key: "Nav_ProductionUnit.NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.MineType]}</label>
// }
},
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
},
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
]
};
};
componentDidMount() {
if (this.props.data?.btnConfig?.id)
{this.loadData();}
}
componentDidMount() {
if (this.props.data?.btnConfig?.id) { this.loadData(); }
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.btnConfig?.id && this.props.data?.btnConfig?.id != NextProps.data?.btnConfig?.id)
{this.loadData();}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.btnConfig?.id && this.props.data?.btnConfig?.id != NextProps.data?.btnConfig?.id) { this.loadData(); }
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = () => {
let json = initFilter(this.props.login.OrgId);
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckList',
onComplete: (ret) => {
if (ret) {
this.setState({data:ret, dataList: ret });
}
}
});
}
loadData2()
{
let temp=this.state.data
if(this.state.inputText)
{
// let minetype=0
// if(this.state.inputText.includes("露天"))
// {
// minetype=30
// }
// if(this.state.inputText.includes("选矿"))
// {
// minetype=10
// }
// if(this.state.inputText.includes("尾矿"))
// {
// minetype=20
// }
// if(this.state.inputText.includes("职能"))
// {
// minetype=31
// }
// if(this.state.inputText.includes("非金"))
// {
// minetype=32
// }
// if(this.state.inputText.includes("地下"))
// {
// minetype=40
// }
temp=temp.filter(t=>t.MineType ==this.state.inputText);
loadData = () => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckList',
onComplete: (ret) => {
if (ret) {
this.setState({ data: ret, dataList: ret });
}
}
if(this.state.inputText2)
{
// let checktype=3
// if(this.state.inputText2.includes("部门"))
// {
// checktype=0
// }
// if(this.state.inputText2.includes("车间"))
// {
// checktype=1
// }
// if(this.state.inputText2.includes("班组"))
// {
// checktype=2
// }
// if(this.state.inputText2.includes("岗位"))
// {
// checktype=4
// }
temp=temp.filter(t=>t.CHECK_TYPE==this.state.inputText2);
}
if(this.state.inputText3)
{
temp=temp.filter(t=>t.Nav_CheckType?.NAME.includes(this.state.inputText3));
}
this.setState({dataList :temp})
});
}
loadData2() {
let temp = this.state.data
if (this.state.inputText) {
// let minetype=0
// if(this.state.inputText.includes("露天"))
// {
// minetype=30
// }
// if(this.state.inputText.includes("选矿"))
// {
// minetype=10
// }
// if(this.state.inputText.includes("尾矿"))
// {
// minetype=20
// }
// if(this.state.inputText.includes("职能"))
// {
// minetype=31
// }
// if(this.state.inputText.includes("非金"))
// {
// minetype=32
// }
// if(this.state.inputText.includes("地下"))
// {
// minetype=40
// }
temp = temp.filter(t => t.MineType == this.state.inputText);
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "检查清单.xlsx")
if (this.state.inputText2) {
// let checktype=3
// if(this.state.inputText2.includes("部门"))
// {
// checktype=0
// }
// if(this.state.inputText2.includes("车间"))
// {
// checktype=1
// }
// if(this.state.inputText2.includes("班组"))
// {
// checktype=2
// }
// if(this.state.inputText2.includes("岗位"))
// {
// checktype=4
// }
temp = temp.filter(t => t.CHECK_TYPE == this.state.inputText2);
}
if (this.state.inputText3) {
temp = temp.filter(t => t.Nav_CheckType?.NAME.includes(this.state.inputText3));
}
this.setState({ dataList: temp })
}
onTableBtnExport() {
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "检查清单.xlsx")
}
showModalContent = (item) => {
this.setState({
showDetailContent: true,
},()=>{
this.setState({
DetailContents:item.Nav_ContentDatas,
});
// let json = initFilter(this.props.login.OrgId,'','','','',this.state.MineType,this.state.CHECK_CYCLE,this.state.CHECK_TYPE,this.state.CHECK_TYPE_ID,item.DEPARTMENT_ID,item.POST_ID);
// extendIgnoreDataRule(json)
// this.props.dispatch({
// type: 'app/getDataByPost',
// payload: json,
// url: 'SK/SKEnterpriseLibrary/GetCheckListContent',
// onComplete: (ret) => {
// if (ret) {
// this.setState({ DetailContents: ret });
// }
// }
// });
});
};
showModal = (item) => {
this.setState({
showDetail: true,
},()=>{
let json = initFilter(this.props.login.OrgId,item.MineType,'','','',item.CHECK_TYPE_ID,item.CHECK_CYCLE,item.CHECK_TYPE);
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckDetailList',
onComplete: (ret) => {
if (ret) {
this.setState({ Details: ret,
MineType:item.MineType,
CHECK_CYCLE:item.CHECK_CYCLE,
CHECK_TYPE:item.CHECK_TYPE,
CHECK_TYPE_ID:item.CHECK_TYPE_ID, });
}
}
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
Details:[],
MineType:0,
CHECK_CYCLE:0,
CHECK_TYPE:0,
CHECK_CYCLE_ID:null
});
};
closeModal = () => {
this.setState({
showDetail: false,
Details:[],
MineType:0,
CHECK_CYCLE:0,
CHECK_TYPE:0,
CHECK_CYCLE_ID:null
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
DetailContents:[]
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
DetailContents:[]
});
};
// handleSearch = (evt) => {
// const { value } = evt.target;
// this.setState({ inputText: value ? value : "" });
// };
handleSearch=(value)=>{
this.setState({
inputText: value
})
}
// handleSearch2 = (evt) => {
// const { value } = evt.target;
// this.setState({ inputText2: value ? value : "" });
// };
handleSearch2=(value)=>{
this.setState({
inputText2: value
})
}
handleSearch3 = ({data, record}) => {
// const { value } = evt.target;
// this.setState({ inputText3: value ? value : "" });
this.setState({
checkType: {
...this.state.checkType,
ID: data[0],
NAME: record?.NAME ,
},
inputText3: record?.NAME
})
};
render() {
const formItemLayout = {
labelCol: { span: 8 },
wrapperCol: { span: 16 },
}
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查内容"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<Table
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="检查部门岗位"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
{/* <div style={{ padding: '10px' }}>
showModalContent = (item) => {
this.setState({
showDetailContent: true,
}, () => {
this.setState({
DetailContents: item.Nav_ContentDatas,
});
// let json = initFilter(this.props.login.OrgId,'','','','',this.state.MineType,this.state.CHECK_CYCLE,this.state.CHECK_TYPE,this.state.CHECK_TYPE_ID,item.DEPARTMENT_ID,item.POST_ID);
// extendIgnoreDataRule(json)
// this.props.dispatch({
// type: 'app/getDataByPost',
// payload: json,
// url: 'SK/SKEnterpriseLibrary/GetCheckListContent',
// onComplete: (ret) => {
// if (ret) {
// this.setState({ DetailContents: ret });
// }
// }
// });
});
};
showModal = (item) => {
this.setState({
showDetail: true,
}, () => {
let json = initFilter(this.props.login.OrgId, item.MineType, '', '', '', item.CHECK_TYPE_ID, item.CHECK_CYCLE, item.CHECK_TYPE);
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckDetailList',
onComplete: (ret) => {
if (ret) {
this.setState({
Details: ret,
MineType: item.MineType,
CHECK_CYCLE: item.CHECK_CYCLE,
CHECK_TYPE: item.CHECK_TYPE,
CHECK_TYPE_ID: item.CHECK_TYPE_ID,
});
}
}
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
Details: [],
MineType: 0,
CHECK_CYCLE: 0,
CHECK_TYPE: 0,
CHECK_CYCLE_ID: null
});
};
closeModal = () => {
this.setState({
showDetail: false,
Details: [],
MineType: 0,
CHECK_CYCLE: 0,
CHECK_TYPE: 0,
CHECK_CYCLE_ID: null
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
DetailContents: []
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
DetailContents: []
});
};
// handleSearch = (evt) => {
// const { value } = evt.target;
// this.setState({ inputText: value ? value : "" });
// };
handleSearch = (value) => {
this.setState({
inputText: value
})
}
// handleSearch2 = (evt) => {
// const { value } = evt.target;
// this.setState({ inputText2: value ? value : "" });
// };
handleSearch2 = (value) => {
this.setState({
inputText2: value
})
}
handleSearch3 = ({ data, record }) => {
// const { value } = evt.target;
// this.setState({ inputText3: value ? value : "" });
this.setState({
checkType: {
...this.state.checkType,
ID: data[0],
NAME: record?.NAME,
},
inputText3: record?.NAME
})
};
render() {
const formItemLayout = {
labelCol: { span: 8 },
wrapperCol: { span: 16 },
}
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查内容"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<Table
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="检查部门岗位"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
{/* <div style={{ padding: '10px' }}>
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: dataList && dataList.STATUS === 30?"inline":"none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: dataList && dataList.STATUS === 30?"inline":"none" }}>导出</Button>
</div> */}
<br></br>
{/* <Row>
<br></br>
{/* <Row>
<Col span={1} style={{ marginLeft:"20px" }}><Button icon="export" onClick={() => this.onTableBtnExport()}>导出</Button></Col>
</Row> */}
<Row style={{width:"1250px",margin:"auto"}}>
<Col span={5} style={{ marginLeft: "10px" }}>
<Row style={{ width: "1250px", margin: "auto" }}>
<Col span={5} style={{ marginLeft: "10px" }}>
<Form.Item
label={'生产单元'}
{...formItemLayout}
>
<Select
// defaultValue="风险管理"
style={{width:'180px'}}
allowClear
onChange={this.handleSearch}
>
<Option value="0">全公司</Option>
<Option value="30">露天矿</Option>
<Option value="10">选矿厂</Option>
<Option value="20">尾矿库</Option>
<Option value="32">非金属</Option>
<Option value="31">职能口</Option>
<Option value="40">地下矿</Option>
</Select>
{/* <Input
label={'生产单元'}
{...formItemLayout}
>
<Select
// defaultValue="风险管理"
style={{ width: '180px' }}
allowClear
onChange={this.handleSearch}
>
<Option value="0">全公司</Option>
<Option value="30">露天矿</Option>
<Option value="10">选矿厂</Option>
<Option value="20">尾矿库</Option>
<Option value="32">非金属</Option>
<Option value="31">职能口</Option>
<Option value="40">地下矿</Option>
</Select>
{/* <Input
onChange={this.handleSearch}
style={{ width: "150px" }}
></Input> */}
</Form.Item>
</Col>
<Col span={5} style={{ marginLeft: "10px" }}>
</Form.Item>
</Col>
<Col span={5} style={{ marginLeft: "10px" }}>
<Form.Item
label={'检查层级'}
{...formItemLayout}
>
<Select
// defaultValue="风险管理"
allowClear
style={{width:'180px'}}
onChange={this.handleSearch2}
>
<Option value="2">班组级</Option>
<Option value="1">车间级</Option>
<Option value="0">部门级</Option>
<Option value="3">公司级</Option>
<Option value="4">岗位级</Option>
</Select>
{/* <Input
label={'检查层级'}
{...formItemLayout}
>
<Select
// defaultValue="风险管理"
allowClear
style={{ width: '180px' }}
onChange={this.handleSearch2}
>
<Option value="2">班组级</Option>
<Option value="1">车间级</Option>
<Option value="0">部门级</Option>
<Option value="3">公司级</Option>
<Option value="4">岗位级</Option>
</Select>
{/* <Input
onChange={this.handleSearch2}
style={{ width: "150px" }}
></Input> */}
</Form.Item>
</Col>
<Col span={5} style={{ marginLeft: "10px" }}>
</Form.Item>
</Col>
<Col span={5} style={{ marginLeft: "10px" }}>
<Form.Item
label={'检查类型'}
{...formItemLayout}
>
{/* <Input
label={'检查类型'}
{...formItemLayout}
>
{/* <Input
onChange={this.handleSearch3}
style={{ width: "150px" }}
></Input> */}
<DropDownPagination inputDataApi={'SK/CheckType/OrderPaged'} fieldName={'NAME'}
data={this.state.checkType} onSelect={this.handleSearch3} onFilter={({ params }) => {
params.OrderType = 1
params.OrgId = this.props.login.OrgId
}} />
</Form.Item>
</Col>
<Col span={1} style={{ marginLeft: "20px" }}><Button type='primary' onClick={() => this.loadData2()}>查询</Button></Col>
</Row>
<div>
<h1 style={{ textAlign: 'center', margin: '15px' }}>检查清单</h1>
{this.state.dataList?
<Table style={{ width:"1250px",margin:"auto",alignContent:"center",backgroundColor:"white"}}
dataSource={this.state.dataList}
columns={this.state.columndatas}
pagination={false}
bordered
loading={false}
size="small"
/>
:[]}
</div>
</div>
}
<DropDownPagination inputDataApi={'SK/CheckType/OrderPaged'} fieldName={'NAME'}
data={this.state.checkType} onSelect={this.handleSearch3} onFilter={({ params }) => {
params.OrderType = 1
params.OrgId = this.props.login.OrgId
}} />
</Form.Item>
</Col>
<Col span={1} style={{ marginLeft: "20px" }}><Button type='primary' onClick={() => this.loadData2()}>查询</Button></Col>
</Row>
<div>
<h1 style={{ textAlign: 'center', margin: '15px' }}>检查清单</h1>
{this.state.dataList ?
<Table style={{ width: "1250px", margin: "auto", alignContent: "center", backgroundColor: "white" }}
dataSource={this.state.dataList}
columns={this.state.columndatas}
pagination={false}
bordered
loading={false}
size="small"
/>
: []}
</div>
</div>
}
}
export default connect(({ login,app }) => ({ login,app }))(SK004CheckList)
export default connect(({ login, app }) => ({ login, app }))(SK004CheckList)

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import React , { useState }from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue,GetFileModel, guid, initQueryFilter,showFiles } from "../../../utils/common";
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React, { useState } from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, GetFileModel, guid, initQueryFilter, showFiles } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -11,401 +11,394 @@ import { message } from "antd/lib/index";
import FormPage from '../../../components/FormPage'
import DropDownPagination from '../../common/DropDownPaginationEx'
class SK004CheckPost extends React.Component {
constructor(props) {
super(props);
this.state = {
fileForm: {
title: "",
visible: false,
constructor(props) {
super(props);
this.state = {
fileForm: {
title: "",
visible: false,
},
inputText: "",
inputText2: "",
inputText3: "",
departId: null,
data: {},
depart: {},
departName: '',
postName: '',
phone: '',
post: {},
cards: {},
dataList: [],
MineType: 0,
CHECK_CYCLE: 0,
CHECK_TYPE: 0,
CHECK_CYCLE_ID: null,
BtnAgreeDisplay: 'none',
showDetail: false,
Details: [],
columns: [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
inputText:"",
inputText2:"",
inputText3:"",
departId:null,
data: {},
depart: {},
departName:'',
postName:'',
phone:'',
post: {},
cards: {},
dataList: [],
MineType:0,
CHECK_CYCLE:0,
CHECK_TYPE:0,
CHECK_CYCLE_ID:null,
BtnAgreeDisplay: 'none',
showDetail:false,
Details:[],
columns : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "生产单元",
dataIndex: "Nav_ProductionUnit.NAME",
key: "Nav_ProductionUnit.NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.MineType]}</label>
// }
},
{
title: "辨识区域",
dataIndex: "Nav_Area.NAME",
key: "Nav_Area.NAME",
},
{
title: "风险名称",
dataIndex: "RISK_NAME",
key: "RISK_NAME",
},
{
title: "风险描述",
dataIndex: "RISK_DESCRIPTION",
key: "RISK_DESCRIPTION",
},
{
title: "风险类别",
dataIndex: "Nav_Type.NAME",
key: "Nav_Type.NAME",
},
// {
// title: "风险评价L",
// dataIndex: "EVALUATE_L",
// key: "EVALUATE_L",
// },
// {
// title: "风险评价E",
// dataIndex: "EVALUATE_E",
// key: "EVALUATE_E",
// },
// {
// title: "风险评价C",
// dataIndex: "EVALUATE_C",
// key: "EVALUATE_C",
// },
// {
// title: "分值D",
// dataIndex: "EVALUATE_SCORE",
// key: "EVALUATE_SCORE",
// },
{
title: "风险等级",
dataIndex: "EVALUATE_LEVEL",
key: "EVALUATE_LEVEL",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKEvaluateLevelEnum.enums[record.EVALUATE_LEVEL]}</label>
}
},
// {
// title: '操作',
// dataIndex: '',
// key: '',
// render: (text, record, index) => {
// return <Button type='defualt' size='small' onClick={(e) => { this.showModalCard(record) }} icon='eye' />
// }
// }
],
columndatas : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "生产单元",
dataIndex: "Nav_Library.Nav_ProductionUnit.NAME",
key: "Nav_Library.Nav_ProductionUnit.NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.Nav_Librarys[0]?.MineType]}</label>
// }
},
{
title: "辨识部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "辨识岗位",
dataIndex: "POST_NAME",
key: "POST_NAME",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
]
};
{
title: "生产单元",
dataIndex: "Nav_ProductionUnit.NAME",
key: "Nav_ProductionUnit.NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.MineType]}</label>
// }
},
{
title: "辨识区域",
dataIndex: "Nav_Area.NAME",
key: "Nav_Area.NAME",
},
{
title: "风险名称",
dataIndex: "RISK_NAME",
key: "RISK_NAME",
},
{
title: "风险描述",
dataIndex: "RISK_DESCRIPTION",
key: "RISK_DESCRIPTION",
},
{
title: "风险类别",
dataIndex: "Nav_Type.NAME",
key: "Nav_Type.NAME",
},
// {
// title: "风险评价L",
// dataIndex: "EVALUATE_L",
// key: "EVALUATE_L",
// },
// {
// title: "风险评价E",
// dataIndex: "EVALUATE_E",
// key: "EVALUATE_E",
// },
// {
// title: "风险评价C",
// dataIndex: "EVALUATE_C",
// key: "EVALUATE_C",
// },
// {
// title: "分值D",
// dataIndex: "EVALUATE_SCORE",
// key: "EVALUATE_SCORE",
// },
{
title: "风险等级",
dataIndex: "EVALUATE_LEVEL",
key: "EVALUATE_LEVEL",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKEvaluateLevelEnum.enums[record.EVALUATE_LEVEL]}</label>
}
},
// {
// title: '操作',
// dataIndex: '',
// key: '',
// render: (text, record, index) => {
// return <Button type='defualt' size='small' onClick={(e) => { this.showModalCard(record) }} icon='eye' />
// }
// }
],
columndatas: [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
{
title: "生产单元",
dataIndex: "Nav_Library.Nav_ProductionUnit.NAME",
key: "Nav_Library.Nav_ProductionUnit.NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.Nav_Librarys[0]?.MineType]}</label>
// }
},
{
title: "辨识部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "辨识岗位",
dataIndex: "POST_NAME",
key: "POST_NAME",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
]
};
};
componentDidMount() {
if (this.props.data?.btnConfig?.id)
{this.loadData();}
}
componentDidMount() {
if (this.props.data?.btnConfig?.id) { this.loadData(); }
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.btnConfig?.id && this.props.data?.btnConfig?.id != NextProps.data?.btnConfig?.id)
{this.loadData();}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.btnConfig?.id && this.props.data?.btnConfig?.id != NextProps.data?.btnConfig?.id) { this.loadData(); }
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = () => {
let json = initFilter(this.props.login.OrgId);
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetPostRiskList',
onComplete: (ret) => {
if (ret) {
this.setState({ data:ret,dataList: ret });
}
}
});
}
loadData2()
{
let temp=this.state.data
if(this.state.inputText)
{
temp=temp.filter(t=>t.Nav_Department?.NAME.includes(this.state.inputText));
loadData = () => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetPostRiskList',
onComplete: (ret) => {
if (ret) {
this.setState({ data: ret, dataList: ret });
}
}
if(this.state.inputText2)
{
temp=temp.filter(t=>t.POST_NAME.includes(this.state.inputText2));
}
if(this.state.inputText3)
{
temp=temp.filter(t=>t.Nav_Library?.Nav_ProductionUnit?.NAME.includes(this.state.inputText3));
}
this.setState({dataList :temp})
});
}
loadData2() {
let temp = this.state.data
if (this.state.inputText) {
temp = temp.filter(t => t.Nav_Department?.NAME.includes(this.state.inputText));
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "岗位风险清单.xlsx")
if (this.state.inputText2) {
temp = temp.filter(t => t.POST_NAME.includes(this.state.inputText2));
}
if (this.state.inputText3) {
temp = temp.filter(t => t.Nav_Library?.Nav_ProductionUnit?.NAME.includes(this.state.inputText3));
}
this.setState({ dataList: temp })
}
onTableBtnExport() {
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "岗位风险清单.xlsx")
}
showModal = (item) => {
this.setState({
showDetail: true,
},()=>{
this.setState({
Details:item.Nav_Librarys,
departName:item.Nav_Department?.NAME,
postName:item.POST_NAME,
phone:item.PHONE,
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
Details:[]
});
};
closeModal = () => {
this.setState({
showDetail: false,
Details:[]
});
};
handleCancelCard = () => {
this.setState({
showCard: false,
cards:{}
});
};
showModalCard = (record) => {
this.setState({
showCard: true,
},()=>{
let tmpData = [];
if(record.Nav_Details)
{
for(var i = 0; i <record.Nav_Details.length ; i++)
{
tmpData = tmpData+ "\r\n"+ (i+1)+"、" +record.Nav_Details[i].MEASURES_NAME
}
}
let temps={
RISK_NAME:record.RISK_NAME,
RISK_CODE:"01",
EVALUATE_LEVEL:this.props.app.enums.SKEvaluateLevelEnum.enums[record.EVALUATE_LEVEL],
RISK_DESCRIPTION:record.RISK_DESCRIPTION,
MEASURES_NAME:tmpData,
RISK_TYPE:record.Nav_Type.NAME,
EMERGENCY:record.EMERGENCY,
photo:record.Nav_Photo[0]
}
this.setState({
cards:temps,
});
});
};
closeModalCard = () => {
this.setState({
showCard: false,
cards:{}
});
};
handleSearch = ({data, record}) => {
this.setState({
depart: {
...this.state.depart,
DEPARTMENT_ID: data[0],
Nav_Department: { NAME: record?.NAME },
},
inputText: record?.NAME,
departId: record?.ID
})
};
handleSearch2 = ({data, record}) => {
// const { value } = evt.target;
// this.setState({ inputText2: value ? value : "" });
this.setState({
post: {
...this.state.post,
POST_ID: data[0],
Nav_Post: { NAME: record?.NAME },
},
inputText2: record?.NAME
})
};
handleSearch3=(value)=>{
this.setState({
inputText3: value
})
showModal = (item) => {
this.setState({
showDetail: true,
}, () => {
this.setState({
Details: item.Nav_Librarys,
departName: item.Nav_Department?.NAME,
postName: item.POST_NAME,
phone: item.PHONE,
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
Details: []
});
};
closeModal = () => {
this.setState({
showDetail: false,
Details: []
});
};
handleCancelCard = () => {
this.setState({
showCard: false,
cards: {}
});
};
showModalCard = (record) => {
this.setState({
showCard: true,
}, () => {
let tmpData = [];
if (record.Nav_Details) {
for (var i = 0; i < record.Nav_Details.length; i++) {
tmpData = tmpData + "\r\n" + (i + 1) + "、" + record.Nav_Details[i].MEASURES_NAME
}
}
render() {
const formItemLayout = {
labelCol: { span: 8 },
wrapperCol: { span: 16 },
let temps = {
RISK_NAME: record.RISK_NAME,
RISK_CODE: "01",
EVALUATE_LEVEL: this.props.app.enums.SKEvaluateLevelEnum.enums[record.EVALUATE_LEVEL],
RISK_DESCRIPTION: record.RISK_DESCRIPTION,
MEASURES_NAME: tmpData,
RISK_TYPE: record.Nav_Type.NAME,
EMERGENCY: record.EMERGENCY,
photo: record.Nav_Photo[0]
}
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
// let aaa = Math.random();
return <div>
<div>
<Modal
visible={this.state.showCard}
title="岗位风险点告知卡"
maskClosable={false}
onCancel={this.handleCancelCard}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalCard}
>
<br></br>
<h2 style={{textAlign:'center',fontWeight:'bold',margin:"auto",color:"red"}}> {this.state.postName}岗位风险点告知卡</h2>
<br></br>
<table style={{margin:"auto",alignContent:"center",width:"1000px"}} className={stylesStep.PrintForm} >
<tr>
<td style={{backgroundColor:"yellow",width:"120px",textAlign:'center'}}>
this.setState({
cards: temps,
});
});
};
closeModalCard = () => {
this.setState({
showCard: false,
cards: {}
});
};
handleSearch = ({ data, record }) => {
this.setState({
depart: {
...this.state.depart,
DEPARTMENT_ID: data[0],
Nav_Department: { NAME: record?.NAME },
},
inputText: record?.NAME,
departId: record?.ID
})
};
handleSearch2 = ({ data, record }) => {
// const { value } = evt.target;
// this.setState({ inputText2: value ? value : "" });
this.setState({
post: {
...this.state.post,
POST_ID: data[0],
Nav_Post: { NAME: record?.NAME },
},
inputText2: record?.NAME
})
};
handleSearch3 = (value) => {
this.setState({
inputText3: value
})
}
render() {
const formItemLayout = {
labelCol: { span: 8 },
wrapperCol: { span: 16 },
}
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<div>
<Modal
visible={this.state.showCard}
title="岗位风险点告知卡"
maskClosable={false}
onCancel={this.handleCancelCard}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalCard}
>
<br></br>
<h2 style={{ textAlign: 'center', fontWeight: 'bold', margin: "auto", color: "red" }}> {this.state.postName}岗位风险点告知卡</h2>
<br></br>
<table style={{ margin: "auto", alignContent: "center", width: "1000px" }} className={stylesStep.PrintForm} >
<tr>
<td style={{ backgroundColor: "yellow", width: "120px", textAlign: 'center' }}>
风险点名称
</td>
<td>
</td>
<td>
{this.state.cards?.RISK_NAME}
</td>
<td style={{backgroundColor:"red",color:"white",width:"150px",textAlign:'center'}} rowSpan={3}>
</td>
<td style={{ backgroundColor: "red", color: "white", width: "150px", textAlign: 'center' }} rowSpan={3}>
主要危险因素描述
</td>
<td rowSpan={3}>
{this.state.cards?.RISK_DESCRIPTION}
</td>
</tr>
<tr>
<td style={{backgroundColor:"yellow",width:"120px",textAlign:'center'}}>风险点编号</td>
<td> {this.state.cards?.RISK_CODE}</td>
</tr>
<tr>
<td style={{backgroundColor:"yellow",width:"120px",textAlign:'center'}}>风险等级</td>
<td> {this.state.cards?.EVALUATE_LEVEL}</td>
</tr>
<tr>
<td style={{backgroundColor:"yellow",width:"120px",textAlign:'center'}}>安全标志</td>
<td> {this.state.cards?.photo?showFiles(this.state.cards?.photo, config.picServerHost, this)
:<img title={"安全标志"} src={require("../../../../src/assets/aqbz.png")} />
}
</td>
<td style={{backgroundColor:"red",color:"white",width:"150px",textAlign:'center'}}>主要风险控制措施</td>
<td> {this.state.cards?.MEASURES_NAME}</td>
</tr>
<tr>
<td style={{backgroundColor:"rgba(1,203,253)",color:"white",width:"120px",textAlign:'center'}}>责任单位</td>
<td> {this.state?.departName}</td>
<td style={{backgroundColor:"red",color:"white",width:"150px",textAlign:'center'}}>主要事故类型</td>
<td> {this.state.cards?.RISK_TYPE}</td>
</tr>
<tr>
<td style={{backgroundColor:"rgba(1,203,253)",color:"white",width:"120px",textAlign:'center'}}>责任人联系电话</td>
<td> {this.state?.phone}</td>
<td style={{backgroundColor:"red",color:"white",width:"150px",textAlign:'center'}}>应急处置措施</td>
<td> {this.state.cards?.EMERGENCY}</td>
</tr>
</table>
<br></br>
</Modal>
</td>
<td rowSpan={3}>
{this.state.cards?.RISK_DESCRIPTION}
</td>
</tr>
<tr>
<td style={{ backgroundColor: "yellow", width: "120px", textAlign: 'center' }}>风险点编号</td>
<td> {this.state.cards?.RISK_CODE}</td>
</tr>
<tr>
<td style={{ backgroundColor: "yellow", width: "120px", textAlign: 'center' }}>风险等级</td>
<td> {this.state.cards?.EVALUATE_LEVEL}</td>
</tr>
<tr>
<td style={{ backgroundColor: "yellow", width: "120px", textAlign: 'center' }}>安全标志</td>
<td> {this.state.cards?.photo ? showFiles(this.state.cards?.photo, config.picServerHost, this)
: <img title={"安全标志"} src={require("../../../../src/assets/aqbz.png")} />
}
</td>
<td style={{ backgroundColor: "red", color: "white", width: "150px", textAlign: 'center' }}>主要风险控制措施</td>
<td> {this.state.cards?.MEASURES_NAME}</td>
</tr>
<tr>
<td style={{ backgroundColor: "rgba(1,203,253)", color: "white", width: "120px", textAlign: 'center' }}>责任单位</td>
<td> {this.state?.departName}</td>
<td style={{ backgroundColor: "red", color: "white", width: "150px", textAlign: 'center' }}>主要事故类型</td>
<td> {this.state.cards?.RISK_TYPE}</td>
</tr>
<tr>
<td style={{ backgroundColor: "rgba(1,203,253)", color: "white", width: "120px", textAlign: 'center' }}>责任人联系电话</td>
<td> {this.state?.phone}</td>
<td style={{ backgroundColor: "red", color: "white", width: "150px", textAlign: 'center' }}>应急处置措施</td>
<td> {this.state.cards?.EMERGENCY}</td>
</tr>
</table>
<br></br>
<Modal
visible={this.state.showDetail}
title="岗位风险清单"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={true}
bordered
loading={false}
size="small"
/>
</Modal>
<br></br>
<Row style={{width:"1250px",margin:"auto"}}>
</Modal>
<br></br>
<Modal
visible={this.state.showDetail}
title="岗位风险清单"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={true}
bordered
loading={false}
size="small"
/>
</Modal>
<br></br>
<Row style={{ width: "1250px", margin: "auto" }}>
<Col span={5}>
<Form.Item
label={'生产单元'}
{...formItemLayout}
>
<Select
style={{width:'180px'}}
allowClear
onChange={this.handleSearch3}
>
<Option value="30">露天矿</Option>
<Option value="10">选矿厂</Option>
<Option value="20">尾矿库</Option>
<Option value="31">职能口</Option>
<Option value="32">非金属</Option>
<Option value="40">地下矿</Option>
</Select>
</Form.Item>
</Col>
<Col span={5} style={{ marginLeft: "10px" }}>
{/* <Form.Item
<Form.Item
label={'生产单元'}
{...formItemLayout}
>
<Select
style={{ width: '180px' }}
allowClear
onChange={this.handleSearch3}
>
<Option value="30">露天矿</Option>
<Option value="10">选矿厂</Option>
<Option value="20">尾矿库</Option>
<Option value="31">职能口</Option>
<Option value="32">非金属</Option>
<Option value="40">地下矿</Option>
</Select>
</Form.Item>
</Col>
<Col span={5} style={{ marginLeft: "10px" }}>
{/* <Form.Item
label={'辨识部门'}
{...formItemLayout}
>
@ -414,58 +407,58 @@ class SK004CheckPost extends React.Component {
style={{ width: "150px" }}
></Input>
</Form.Item> */}
<Form.Item
label={'辨识部门'}
{...formItemLayout}
>
<DropDownPagination inputDataApi={'SK/SKEnterpriseLibrary/DepartOrderPaged'} fieldName={'Nav_Department.NAME'}
data={this.state.depart} onSelect={this.handleSearch} onFilter={({ params }) => {
params.OrderType = 1
params.Keyword = this.state.inputText3
params.OrgId = this.props.login.OrgId
}} />
</Form.Item>
<Form.Item
label={'辨识部门'}
{...formItemLayout}
>
<DropDownPagination inputDataApi={'SK/SKEnterpriseLibrary/DepartOrderPaged'} fieldName={'Nav_Department.NAME'}
data={this.state.depart} onSelect={this.handleSearch} onFilter={({ params }) => {
params.OrderType = 1
params.Keyword = this.state.inputText3
params.OrgId = this.props.login.OrgId
}} />
</Form.Item>
</Col>
<Col span={5} style={{ marginLeft: "10px" }}>
<Form.Item
label={'辨识岗位'}
{...formItemLayout}
>
{/* <Input
<Form.Item
label={'辨识岗位'}
{...formItemLayout}
>
{/* <Input
onChange={this.handleSearch2}
style={{ width: "150px" }}
></Input> */}
<DropDownPagination inputDataApi={'SK/SKEnterpriseLibrary/PostOrderPaged'} fieldName={'Nav_Post.NAME'}
data={this.state.post} onSelect={this.handleSearch2} onFilter={({ params }) => {
params.OrderType = 1
params.Keyword = this.state.departId
params.OrgId = this.props.login.OrgId
}} />
</Form.Item>
</Col>
data={this.state.post} onSelect={this.handleSearch2} onFilter={({ params }) => {
params.OrderType = 1
params.Keyword = this.state.departId
params.OrgId = this.props.login.OrgId
}} />
</Form.Item>
</Col>
<Col span={1} style={{ marginLeft: "20px" }}><Button type='primary' onClick={() => this.loadData2()}>查询</Button></Col>
</Row>
<div>
<h1 style={{ textAlign: 'center', margin: '15px' }}>岗位风险清单</h1>
{this.state.dataList?
<Table style={{ width:"1250px",margin:"auto",alignContent:"center",backgroundColor:"white"}}
dataSource={this.state.dataList}
columns={this.state.columndatas}
pagination={true}
bordered
loading={false}
size="small"
/>
:[]}
</div>
</Row>
<div>
<h1 style={{ textAlign: 'center', margin: '15px' }}>岗位风险清单</h1>
{this.state.dataList ?
<Table style={{ width: "1250px", margin: "auto", alignContent: "center", backgroundColor: "white" }}
dataSource={this.state.dataList}
columns={this.state.columndatas}
pagination={true}
bordered
loading={false}
size="small"
/>
: []}
</div>
{
GetFileModel(Modal, FormPage, this, this.state.fileForm.visible)
}
</div>
}
{
GetFileModel(Modal, FormPage, this, this.state.fileForm.visible)
}
</div>
}
}
export default connect(({ login,app }) => ({ login,app }))(SK004CheckPost)
export default connect(({ login, app }) => ({ login, app }))(SK004CheckPost)

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -10,426 +10,423 @@ import moment from 'moment';
import { message } from "antd/lib/index";
import FormPage from '../../../components/FormPage'
class SK004ShowPrint extends React.Component {
constructor(props) {
super(props);
this.state = {
data: null,
BtnAgreeDisplay: 'none',
tmpData: {},
showDetail:false,
showDetailContent: false,
Details:{},
columns:[],
DetailContents:{},
columnContents:[],
DetailPosts:{},
columnPosts:[]
};
constructor(props) {
super(props);
this.state = {
data: null,
BtnAgreeDisplay: 'none',
tmpData: {},
showDetail: false,
showDetailContent: false,
Details: {},
columns: [],
DetailContents: {},
columnContents: [],
DetailPosts: {},
columnPosts: []
};
};
componentDidMount() {
if (this.props.data?.id)
this.loadData(this.props.data?.id);
this.state.columnContents = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
// {
// title: "检查内容",
// dataIndex: "Nav_Contents.CHECKCONTENT",
// key: "Nav_Contents.CHECKCONTENT",
// },
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
// {
// title: "检查依据",
// dataIndex: "Nav_DetailBasics",
// key: "Nav_DetailBasics",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailBasics && record.Nav_DetailBasics.map((item, i) => {
// return item?.Nav_Law?.NAME+' '
// })
// }</label>
// }
// },
// {
// title: "判定标准",
// dataIndex: "CHECK_STANDARD",
// key: "CHECK_STANDARD",
// },
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
];
this.state.columnPosts = [
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record) =>
{
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "检查岗位",
dataIndex: "Nav_DetailPosts",
key: "Nav_DetailPosts",
render: (text, record) =>
{
return <label>{
record.Nav_DetailPosts && record.Nav_DetailPosts.map((item, i) => {
return item.Nav_Post.NAME+' '
})
}</label>
}
},
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record) =>
{
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
];
this.state.columns = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
{
title: "隐患描述",
dataIndex: "HIDDEN_DESCRIPTION",
key: "HIDDEN_DESCRIPTION",
},
{
title: "隐患等级",
dataIndex: "HIDDEN_LEVEL",
key: "HIDDEN_LEVEL",
render: (text, record) => this.ShowState(record),
},
{
title: "整改措施",
dataIndex: "RECTIFICATION_MEASURES",
key: "RECTIFICATION_MEASURES",
},
];
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.id && this.props.data?.id != NextProps.data?.id) {
this.loadData(NextProps.data?.id);
}
}
ShowState(obj) {
if (obj.HIDDEN_LEVEL === 0) {
return "一般";
} else {
return "重大";
componentDidMount() {
if (this.props.data?.id)
this.loadData(this.props.data?.id);
this.state.columnContents = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
// {
// title: "检查内容",
// dataIndex: "Nav_Contents.CHECKCONTENT",
// key: "Nav_Contents.CHECKCONTENT",
// },
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
// {
// title: "检查依据",
// dataIndex: "Nav_DetailBasics",
// key: "Nav_DetailBasics",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailBasics && record.Nav_DetailBasics.map((item, i) => {
// return item?.Nav_Law?.NAME+' '
// })
// }</label>
// }
// },
// {
// title: "判定标准",
// dataIndex: "CHECK_STANDARD",
// key: "CHECK_STANDARD",
// },
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = (dataId) => {
let that=this;
let json = initFilter(that.props.login.OrgId);
extendRule(json, 'ID', 1, dataId);
// extendInclude(json, 'Nav_Type');
// extendInclude(json, 'Nav_Area');
// extendInclude(json, 'Nav_Posts');
// extendInclude(json, 'Nav_RiskName');
// extendInclude(json, 'Nav_Posts.Nav_PostDetails.Nav_Post');
// extendInclude(json, 'Nav_Departs');
// extendInclude(json, 'Nav_Departs.Nav_Department');
// extendInclude(json, 'Nav_Departs.Nav_User');
// extendInclude(json, 'Nav_Details');
// extendInclude(json, 'Nav_Details.Nav_DetailContents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_Contents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailHiddens.Nav_Question');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailBasics.Nav_Law');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_Department');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_CheckType');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts.Nav_Post');
extendIgnoreDataRule(json)
that.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/SKGet',
onComplete: (ret) => {
if (ret) {
if(that.props.data && that.props.data.loadDataDeal)
{
that.props.data.loadDataDeal(1);
}
that.setState({ data: ret });
if (that.props.data.tableKey==="2" ||that.props.data.tableKey===undefined) {
that.setState({ BtnAgreeDisplay: 'none' })
}else{
that.setState({ BtnAgreeDisplay: 'inline' })
}
this.onClickApprove(false);
//归档才显示打印和导出按钮
// if(ret.PRE_MEETING_STATUS==5){
// this.setState({ isFinished: 'inline' })
// }
}
}
});
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "双控企业库.xlsx")
}
onClickApprove=(appVisible)=>{
const newtmpData = {
data: { id: this.props.data.id, isShow: true,key:guid(),param:this.props.data.param,appVisible:appVisible,BtnAgreeDisplay:'inline'},
formCode: "PF123",
];
this.state.columnPosts = [
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record) => {
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
this.setState({
tmpData: newtmpData,
});
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "检查岗位",
dataIndex: "Nav_DetailPosts",
key: "Nav_DetailPosts",
render: (text, record) => {
return <label>{
record.Nav_DetailPosts && record.Nav_DetailPosts.map((item, i) => {
return item.Nav_Post.NAME + ' '
})
}</label>
}
},
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record) => {
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
];
this.state.columns = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
{
title: "隐患描述",
dataIndex: "HIDDEN_DESCRIPTION",
key: "HIDDEN_DESCRIPTION",
},
{
title: "隐患等级",
dataIndex: "HIDDEN_LEVEL",
key: "HIDDEN_LEVEL",
render: (text, record) => this.ShowState(record),
},
{
title: "整改措施",
dataIndex: "RECTIFICATION_MEASURES",
key: "RECTIFICATION_MEASURES",
},
];
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.id && this.props.data?.id != NextProps.data?.id) {
this.loadData(NextProps.data?.id);
}
showModalContent = (item) => {
this.setState({
showDetailContent: true,
},()=>{
this.setState({
DetailContents:item.Nav_DetailContents
});
});
};
showModal = (item) => {
this.setState({
showDetail: true,
},()=>{
this.setState({
Details:item.Nav_DetailHiddens,
DetailPosts:item.Nav_DetailDeparts
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
});
};
closeModal = () => {
this.setState({
showDetail: false,
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
});
};
render() {
const { data } = this.state;
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查明细"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<Table
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="隐患查看"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
<br></br>
<Table
dataSource={this.state.DetailPosts}
columns={this.state.columnPosts}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双控企业库</h1>
{
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元">{data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L"> {data.Nav_SCOREL? data.Nav_SCOREL?.SCORE : 0}</Descriptions.Item>
<Descriptions.Item label="风险评价E"> {data.Nav_SCOREE? data.Nav_SCOREE?.SCORE : 0}</Descriptions.Item>
<Descriptions.Item label="风险评价C"> {data.Nav_SCOREC? data.Nav_SCOREC?.SCORE : 0}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="应急处置">{data.EMERGENCY}</Descriptions.Item>
<Descriptions.Item label="是否有效">{enums.FMEnableStatusEnum.enums[data.ENABLE_STATUS]}</Descriptions.Item>
</Descriptions>
</div>:null
}
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控部门</td>
<td className={stylesStep.fontBold}>管控责任人</td>
</tr>
{
data.Nav_Departs && data.Nav_Departs.sort((x, y) => x.DEPARTMENT_TYPE - y.DEPARTMENT_TYPE).map((item,i)=>{
return <tr>
<td>
{i+1}
</td>
<td>
{enums.SKDepartmentTypeEnum.enums[item.DEPARTMENT_TYPE]}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{item.Nav_User?.NAME}
</td>
</tr>
})
}
</table>:null
}
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控措施</td>
{/* <td className={stylesStep.fontBold}>应急处置</td> */}
<td className={stylesStep.fontBold}>查看</td>
</tr>
{
data.Nav_Details && data.Nav_Details.sort((x, y) => x.NUM - y.NUM).map((item,i)=>{
return <tr>
<td>
{item.NUM}
</td>
<td>
{item.MEASURES_NAME}
</td>
{/* <td>
}
ShowState(obj) {
if (obj.HIDDEN_LEVEL === 0) {
return "一般";
} else {
return "重大";
}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = (dataId) => {
let that = this;
let json = initFilter(that.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendInclude(json, 'Nav_Type');
// extendInclude(json, 'Nav_Area');
// extendInclude(json, 'Nav_Posts');
// extendInclude(json, 'Nav_RiskName');
// extendInclude(json, 'Nav_Posts.Nav_PostDetails.Nav_Post');
// extendInclude(json, 'Nav_Departs');
// extendInclude(json, 'Nav_Departs.Nav_Department');
// extendInclude(json, 'Nav_Departs.Nav_User');
// extendInclude(json, 'Nav_Details');
// extendInclude(json, 'Nav_Details.Nav_DetailContents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_Contents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailHiddens.Nav_Question');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailBasics.Nav_Law');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_Department');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_CheckType');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts.Nav_Post');
extendIgnoreDataRule(json)
that.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/SKGet',
onComplete: (ret) => {
if (ret) {
if (that.props.data && that.props.data.loadDataDeal) {
that.props.data.loadDataDeal(1);
}
that.setState({ data: ret });
if (that.props.data.tableKey === "2" || that.props.data.tableKey === undefined) {
that.setState({ BtnAgreeDisplay: 'none' })
} else {
that.setState({ BtnAgreeDisplay: 'inline' })
}
this.onClickApprove(false);
//归档才显示打印和导出按钮
// if(ret.PRE_MEETING_STATUS==5){
// this.setState({ isFinished: 'inline' })
// }
}
}
});
}
onTableBtnExport() {
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "双控企业库.xlsx")
}
onClickApprove = (appVisible) => {
const newtmpData = {
data: { id: this.props.data.id, isShow: true, key: guid(), param: this.props.data.param, appVisible: appVisible, BtnAgreeDisplay: 'inline' },
formCode: "PF123",
}
this.setState({
tmpData: newtmpData,
});
}
showModalContent = (item) => {
this.setState({
showDetailContent: true,
}, () => {
this.setState({
DetailContents: item.Nav_DetailContents
});
});
};
showModal = (item) => {
this.setState({
showDetail: true,
}, () => {
this.setState({
Details: item.Nav_DetailHiddens,
DetailPosts: item.Nav_DetailDeparts
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
});
};
closeModal = () => {
this.setState({
showDetail: false,
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
});
};
render() {
const { data } = this.state;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查明细"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<Table
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="隐患查看"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
<br></br>
<Table
dataSource={this.state.DetailPosts}
columns={this.state.columnPosts}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双控企业库</h1>
{
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元">{data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area ? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type ? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L"> {data.Nav_SCOREL ? data.Nav_SCOREL?.SCORE : 0}</Descriptions.Item>
<Descriptions.Item label="风险评价E"> {data.Nav_SCOREE ? data.Nav_SCOREE?.SCORE : 0}</Descriptions.Item>
<Descriptions.Item label="风险评价C"> {data.Nav_SCOREC ? data.Nav_SCOREC?.SCORE : 0}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="应急处置">{data.EMERGENCY}</Descriptions.Item>
<Descriptions.Item label="是否有效">{enums.FMEnableStatusEnum.enums[data.ENABLE_STATUS]}</Descriptions.Item>
</Descriptions>
</div> : null
}
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控部门</td>
<td className={stylesStep.fontBold}>管控责任人</td>
</tr>
{
data.Nav_Departs && data.Nav_Departs.sort((x, y) => x.DEPARTMENT_TYPE - y.DEPARTMENT_TYPE).map((item, i) => {
return <tr>
<td>
{i + 1}
</td>
<td>
{enums.SKDepartmentTypeEnum.enums[item.DEPARTMENT_TYPE]}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{item.Nav_User?.NAME}
</td>
</tr>
})
}
</table> : null
}
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控措施</td>
{/* <td className={stylesStep.fontBold}>应急处置</td> */}
<td className={stylesStep.fontBold}>查看</td>
</tr>
{
data.Nav_Details && data.Nav_Details.sort((x, y) => x.NUM - y.NUM).map((item, i) => {
return <tr>
<td>
{item.NUM}
</td>
<td>
{item.MEASURES_NAME}
</td>
{/* <td>
{item.EMERGENCY}
</td> */}
<td><Button type="defualt" icon='eye' onClick={() => this.showModalContent(item)}></Button></td>
</tr>
})
}
</table>:null
}
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>辨识部门</td>
<td className={stylesStep.fontBold}>辨识岗位</td>
</tr>
<td><Button type="defualt" icon='eye' onClick={() => this.showModalContent(item)}></Button></td>
</tr>
})
}
</table> : null
}
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>辨识部门</td>
<td className={stylesStep.fontBold}>辨识岗位</td>
</tr>
{
data.Nav_Posts && data.Nav_Posts.map((item, i) => {
return <tr>
<td>
{i + 1}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{
data.Nav_Posts && data.Nav_Posts.map((item,i)=>{
return <tr>
<td>
{i+1}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{
item?.Nav_PostDetails && item?.Nav_PostDetails.map((item2, i) => {
return (i > 0 ? ";" : "") + item2?.Nav_Post?.NAME
// return <tr><label> {item2.Nav_Post?.NAME}</label></tr>
})
}
</td>
</tr>
})
}
</table>:null
}
<FormPage {...this.state.tmpData} />
</div>
</div>
}
item?.Nav_PostDetails && item?.Nav_PostDetails.map((item2, i) => {
return (i > 0 ? ";" : "") + item2?.Nav_Post?.NAME
// return <tr><label> {item2.Nav_Post?.NAME}</label></tr>
})
}
</td>
</tr>
})
}
</table> : null
}
<FormPage {...this.state.tmpData} />
</div>
</div>
}
}
export default connect(({ login,app }) => ({ login,app }))(SK004ShowPrint)
export default connect(({ login, app }) => ({ login, app }))(SK004ShowPrint)

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -20,15 +20,16 @@ class SK004ShowSummary extends React.Component {
};
componentDidMount() {
this.loadData();
this.loadData();
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = () => {
let json = initFilter(this.props.login.OrgId,"","",1,1);
let json = initFilter(this.props.login.OrgId, "", "", 1, 1);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendInclude(json, 'Nav_Type');
extendInclude(json, 'Nav_Area');
extendInclude(json, 'Nav_Details');
@ -42,23 +43,23 @@ class SK004ShowSummary extends React.Component {
extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailBasics.Nav_Law');
extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailHiddens.Nav_Question');
extendIgnoreDataRule(json)
this.props.dispatch({
type: "app/getDataByPost",
url: "SK/SKEnterpriseLibrary/SKOrderEntities",
payload: json,
onlyData: false,
onComplete: (ret) => {
if (ret && ret.Data) {
this.setState({
data : ret.Data
});
}
},
});
this.props.dispatch({
type: "app/getDataByPost",
url: "SK/SKEnterpriseLibrary/SKOrderEntities",
payload: json,
onlyData: false,
onComplete: (ret) => {
if (ret && ret.Data) {
this.setState({
data: ret.Data
});
}
},
});
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
@ -67,73 +68,73 @@ class SK004ShowSummary extends React.Component {
render() {
const { data } = this.state;
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: "inline"}} type={'default'} icon={'printer'} >打印</Button>}
trigger={() => <Button style={{ marginLeft: '8px', display: "inline" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: "inline" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双重预防机制企业库</h1>
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='60px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>生产单元</td>
<td className={stylesStep.fontBold}>辨识区域</td>
<td className={stylesStep.fontBold}>风险名称</td>
<td className={stylesStep.fontBold}>风险描述</td>
<td className={stylesStep.fontBold}>风险类别</td>
{/* <td className={stylesStep.fontBold}>L</td>
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='60px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>生产单元</td>
<td className={stylesStep.fontBold}>辨识区域</td>
<td className={stylesStep.fontBold}>风险名称</td>
<td className={stylesStep.fontBold}>风险描述</td>
<td className={stylesStep.fontBold}>风险类别</td>
{/* <td className={stylesStep.fontBold}>L</td>
<td className={stylesStep.fontBold}>风险评价E</td>
<td className={stylesStep.fontBold}>风险评价C</td>
<td className={stylesStep.fontBold}>分值D</td> */}
<td className={stylesStep.fontBold}>风险等级</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控部门</td>
<td className={stylesStep.fontBold}>管控责任人</td>
<td className={stylesStep.fontBold}>管控措施</td>
<td className={stylesStep.fontBold}>应急处置</td>
<td className={stylesStep.fontBold}>检查内容</td>
<td className={stylesStep.fontBold}>隐患描述</td>
{/* <td className={stylesStep.fontBold}>隐患等级</td> */}
<td className={stylesStep.fontBold}>整改措施</td>
{/* <td className={stylesStep.fontBold}></td>
<td className={stylesStep.fontBold}>风险等级</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控部门</td>
<td className={stylesStep.fontBold}>管控责任人</td>
<td className={stylesStep.fontBold}>管控措施</td>
<td className={stylesStep.fontBold}>应急处置</td>
<td className={stylesStep.fontBold}>检查内容</td>
<td className={stylesStep.fontBold}>隐患描述</td>
{/* <td className={stylesStep.fontBold}>隐患等级</td> */}
<td className={stylesStep.fontBold}>整改措施</td>
{/* <td className={stylesStep.fontBold}></td>
<td className={stylesStep.fontBold}>判定标准</td> */}
<td className={stylesStep.fontBold}>检查层级</td>
<td className={stylesStep.fontBold}>检查类型</td>
{/* <td className={stylesStep.fontBold}></td>
<td className={stylesStep.fontBold}>检查层级</td>
<td className={stylesStep.fontBold}>检查类型</td>
{/* <td className={stylesStep.fontBold}></td>
<td className={stylesStep.fontBold}>检查岗位</td> */}
</tr>
{
data && data.map((item,i)=>{
return <tr>
<td>
{i+1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}
</td>
<td>
{item.RISK_NAME}
</td>
<td>
{item.RISK_DESCRIPTION}
</td>
<td>
{item.Nav_Type?.NAME}
</td>
{/* <td>
</tr>
{
data && data.map((item, i) => {
return <tr>
<td>
{i + 1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}
</td>
<td>
{item.RISK_NAME}
</td>
<td>
{item.RISK_DESCRIPTION}
</td>
<td>
{item.Nav_Type?.NAME}
</td>
{/* <td>
{item.EVALUATE_L}
</td>
<td>
@ -145,64 +146,64 @@ class SK004ShowSummary extends React.Component {
<td>
{item.EVALUATE_SCORE}
</td> */}
<td>
{enums.SKEvaluateLevelEnum.enums[item.EVALUATE_LEVEL]}
</td>
<td>
{item.CONTROLLEVEL}
</td>
<td>
{item.CONTROLDEPT}
</td>
<td>
{item.CONTROLUSER}
</td>
<td>
{ item.MEASURE}
{/* { item.Nav_Details && item.Nav_Details?.map((item2, i) => {
<td>
{enums.SKEvaluateLevelEnum.enums[item.EVALUATE_LEVEL]}
</td>
<td>
{item.CONTROLLEVEL}
</td>
<td>
{item.CONTROLDEPT}
</td>
<td>
{item.CONTROLUSER}
</td>
<td>
{item.MEASURE}
{/* { item.Nav_Details && item.Nav_Details?.map((item2, i) => {
if (item2) {
return <label> {(i+1)+"、"+item2.MEASURES_NAME}<br></br></label>
}
})} */}
</td>
<td>
{item.EMERGENCY}
</td>
<td>
{ item.CHECKCONTENTS}
</td>
<td>
{ item.HIDDENSCRIPTION }
</td>
{/* <td>
</td>
<td>
{item.EMERGENCY}
</td>
<td>
{item.CHECKCONTENTS}
</td>
<td>
{item.HIDDENSCRIPTION}
</td>
{/* <td>
{ item.HIDDENLEVEL }
</td> */}
<td>
{item.RECIFYMEASURE }
</td>
{/* <td>
<td>
{item.RECIFYMEASURE}
</td>
{/* <td>
{item.CHECKBASICS }
</td>
<td>
{ item.CHECKSTANDARDS }
</td> */}
<td>
{ item.CHECKLEVEL }
</td>
{/* <td>
<td>
{item.CHECKLEVEL}
</td>
{/* <td>
{ item.CHECKDEPT }
</td>
<td>
{item.CHECKPOST }
</td> */}
<td>
{ item.CHECKTYPE }
</td>
</tr>
})
}
</table>:null
<td>
{item.CHECKTYPE}
</td>
</tr>
})
}
</table> : null
}
{/* <FormPage {...this.state.tmpData} /> */}
</div>
@ -211,4 +212,4 @@ class SK004ShowSummary extends React.Component {
}
export default connect(({ login,app }) => ({ login,app }))(SK004ShowSummary)
export default connect(({ login, app }) => ({ login, app }))(SK004ShowSummary)

View File

@ -63,6 +63,7 @@ class SK006ShowOperateLog extends React.Component {
loadData = (id) => {
var orgId = this.props.login ? this.props.login.OrgId : '';
let json = initFilter(orgId, id);
json.Parameter22 = this.props.data.ORG_ID_HV;
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
@ -192,12 +193,12 @@ class SK006ShowOperateLog extends React.Component {
item1.STATUS === 0
? '#A5A5A5' // STATUS=0 → 灰色背景
: item1.STATUS === 10
? '#FFC000' // STATUS=10 → 橙色背景
: item1.STATUS === 20
? '#f56c6c' // STATUS=20 → 红色背景
: item1.STATUS === 16
? '#ADCDEA' // STATUS=16 → 蓝色背景
: '#70AD47', // STATUS=515 → 绿色背景
? '#FFC000' // STATUS=10 → 橙色背景
: item1.STATUS === 20
? '#f56c6c' // STATUS=20 → 红色背景
: item1.STATUS === 16
? '#ADCDEA' // STATUS=16 → 蓝色背景
: '#70AD47', // STATUS=515 → 绿色背景
}}
id="step20"
>

View File

@ -79,12 +79,13 @@ class SK006ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
loadDataTask = (dataId) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
extendIgnoreDataRule(json)
// extendRule(json, 'ID', 1, dataId);
@ -115,7 +116,7 @@ class SK006ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import React , { useState }from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter,ShowPrintClose } from "../../../utils/common";
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React, { useState } from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter, ShowPrintClose } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -10,345 +10,346 @@ import moment from 'moment';
import { message } from "antd/lib/index";
import FormPage from '../../../components/FormPage'
class SK010CheckList extends React.Component {
constructor(props) {
super(props);
this.state = {
selectedRowKeys:[],
taskSelects: [],
dataList: [],
PRODUCTION_UNIT_ID:null,
CHECK_CYCLE:0,
CHECK_TYPE:0,
CHECK_CYCLE_ID:null,
BtnAgreeDisplay: 'none',
showDetail:false,
showDetailContent: false,
Details:[],
DetailContents:[],
columnContents : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "检查区域",
dataIndex: "AREA_NAME",
key: "AREA_NAME",
},
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
// {
// title: "检查依据",
// dataIndex: "Nav_DetailBasics",
// key: "Nav_DetailBasics",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailBasics && record.Nav_DetailBasics.map((item, i) => {
// return item?.Nav_Law?.NAME+' '
// })
// }</label>
// }
// },
// {
// title: "判定标准",
// dataIndex: "CHECK_STANDARD",
// key: "CHECK_STANDARD",
// },
],
columns : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "检查岗位",
dataIndex: "POST_NAME",
key: "POST_NAME",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModalContent(record) }} icon='eye' />
}
}
],
columndatas : [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index+1}</label>
}
},
{
title: "生产单元",
dataIndex: "MINE_NAME",
key: "MINE_NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.MineType]}</label>
// }
},
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
},
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
]
};
};
componentDidMount() {
if (this.props.data?.clickKey)
{this.loadData();}
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.clickKey && this.props.data?.clickKey != NextProps.data?.clickKey)
{this.loadData();}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = () => {
let json = initFilter(this.props.login.OrgId);
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckList',
onComplete: (ret) => {
if (ret) {
this.setState({ dataList: ret });
}
}
});
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "检查清单.xlsx")
}
showModalContent = (item) => {
this.setState({
showDetailContent: true,
},()=>{
this.setState({
DetailContents:item.Nav_ContentDatas,
});
// let json = initFilter(this.props.login.OrgId,'','','','',this.state.MineType,this.state.CHECK_CYCLE,this.state.CHECK_TYPE,this.state.CHECK_TYPE_ID,item.DEPARTMENT_ID,item.POST_ID);
// extendIgnoreDataRule(json)
// this.props.dispatch({
// type: 'app/getDataByPost',
// payload: json,
// url: 'SK/SKEnterpriseLibrary/GetCheckListContent',
// onComplete: (ret) => {
// if (ret) {
// this.setState({ DetailContents: ret });
// }
// }
// });
});
};
showModal = (item) => {
this.setState({
showDetail: true,
},()=>{
let json = initFilter(this.props.login.OrgId,item.PRODUCTION_UNIT_ID,'','','',item.CHECK_TYPE_ID,item.CHECK_CYCLE,item.CHECK_TYPE);
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckDetailList',
onComplete: (ret) => {
if (ret) {
this.setState({ Details: ret,
PRODUCTION_UNIT_ID :item.PRODUCTION_UNIT_ID,
CHECK_CYCLE:item.CHECK_CYCLE,
CHECK_TYPE:item.CHECK_TYPE,
CHECK_TYPE_ID:item.CHECK_TYPE_ID, });
}
}
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
});
};
closeModal = () => {
this.setState({
showDetail: false,
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
});
};
closeTasks() {
let temps = [];
this.state.taskSelects.forEach(item => {
let tmpData = {
RISK_AREA_ID: item.AREA_ID,
Nav_RiskArea: item.Nav_Area,
CHECK_CONTENTS_ID: item.CHECK_CONTENTS_ID,
Nav_Contents: item.Nav_Contents,
CHECKSTANDARD: item.CHECKSTANDARD,
Nav_CheckRecordDetailBasics: item.Nav_DetailBasics,
}
temps.push(tmpData);
});
if(!temps||temps.length==0){
message.error('请选择要导入的内容');
}else
constructor(props) {
super(props);
this.state = {
selectedRowKeys: [],
taskSelects: [],
dataList: [],
PRODUCTION_UNIT_ID: null,
CHECK_CYCLE: 0,
CHECK_TYPE: 0,
CHECK_CYCLE_ID: null,
BtnAgreeDisplay: 'none',
showDetail: false,
showDetailContent: false,
Details: [],
DetailContents: [],
columnContents: [
{
this.props.login.tempDatas=temps
this.state.taskSelects = [];
this.state.selectedRowKeys = [];
this.closeModalContent()
this.closeModal()
ShowPrintClose(this.props)
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
{
title: "检查区域",
dataIndex: "AREA_NAME",
key: "AREA_NAME",
},
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
// {
// title: "检查依据",
// dataIndex: "Nav_DetailBasics",
// key: "Nav_DetailBasics",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailBasics && record.Nav_DetailBasics.map((item, i) => {
// return item?.Nav_Law?.NAME+' '
// })
// }</label>
// }
// },
// {
// title: "判定标准",
// dataIndex: "CHECK_STANDARD",
// key: "CHECK_STANDARD",
// },
],
columns: [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
{
title: "检查岗位",
dataIndex: "POST_NAME",
key: "POST_NAME",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModalContent(record) }} icon='eye' />
}
}
};
onSelectChange = (selectedRowKeys,selectedRows) => { // 选择菜单行
this.setState({selectedRowKeys:selectedRowKeys,
taskSelects:selectedRows
});
};
render() {
const {selectedRowKeys} =this.state;
const rowSelection = {
selectedRowKeys:selectedRowKeys,
fixed: false,
columnWidth: 20,
hideDefaultSelections:false,
onChange: this.onSelectChange
};
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查内容"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<div style={{ padding: '10px' }}>
<Button type='primary' onClick={() => this.closeTasks()} icon="export" style={{ marginLeft: '8px', display: "inline" }}>导入</Button>
</div>
<Table
rowSelection={rowSelection}
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="检查部门岗位"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
{/* <div style={{ padding: '10px' }}>
],
columndatas: [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
render: (text, record, index) => {
return <label>{index + 1}</label>
}
},
{
title: "生产单元",
dataIndex: "MINE_NAME",
key: "MINE_NAME",
// render: (text, record, index) => {
// return <label>{this.props.app.enums.SKProductionUnit.enums[record.MineType]}</label>
// }
},
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
},
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record, index) => {
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
]
};
};
componentDidMount() {
if (this.props.data?.clickKey) { this.loadData(); }
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.clickKey && this.props.data?.clickKey != NextProps.data?.clickKey) { this.loadData(); }
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = () => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckList',
onComplete: (ret) => {
if (ret) {
this.setState({ dataList: ret });
}
}
});
}
onTableBtnExport() {
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "检查清单.xlsx")
}
showModalContent = (item) => {
this.setState({
showDetailContent: true,
}, () => {
this.setState({
DetailContents: item.Nav_ContentDatas,
});
// let json = initFilter(this.props.login.OrgId,'','','','',this.state.MineType,this.state.CHECK_CYCLE,this.state.CHECK_TYPE,this.state.CHECK_TYPE_ID,item.DEPARTMENT_ID,item.POST_ID);
// extendIgnoreDataRule(json)
// this.props.dispatch({
// type: 'app/getDataByPost',
// payload: json,
// url: 'SK/SKEnterpriseLibrary/GetCheckListContent',
// onComplete: (ret) => {
// if (ret) {
// this.setState({ DetailContents: ret });
// }
// }
// });
});
};
showModal = (item) => {
this.setState({
showDetail: true,
}, () => {
let json = initFilter(this.props.login.OrgId, item.PRODUCTION_UNIT_ID, '', '', '', item.CHECK_TYPE_ID, item.CHECK_CYCLE, item.CHECK_TYPE);
extendIgnoreDataRule(json)
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/GetCheckDetailList',
onComplete: (ret) => {
if (ret) {
this.setState({
Details: ret,
PRODUCTION_UNIT_ID: item.PRODUCTION_UNIT_ID,
CHECK_CYCLE: item.CHECK_CYCLE,
CHECK_TYPE: item.CHECK_TYPE,
CHECK_TYPE_ID: item.CHECK_TYPE_ID,
});
}
}
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
});
};
closeModal = () => {
this.setState({
showDetail: false,
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
});
};
closeTasks() {
let temps = [];
this.state.taskSelects.forEach(item => {
let tmpData = {
RISK_AREA_ID: item.AREA_ID,
Nav_RiskArea: item.Nav_Area,
CHECK_CONTENTS_ID: item.CHECK_CONTENTS_ID,
Nav_Contents: item.Nav_Contents,
CHECKSTANDARD: item.CHECKSTANDARD,
Nav_CheckRecordDetailBasics: item.Nav_DetailBasics,
}
temps.push(tmpData);
});
if (!temps || temps.length == 0) {
message.error('请选择要导入的内容');
} else {
this.props.login.tempDatas = temps
this.state.taskSelects = [];
this.state.selectedRowKeys = [];
this.closeModalContent()
this.closeModal()
ShowPrintClose(this.props)
}
};
onSelectChange = (selectedRowKeys, selectedRows) => { // 选择菜单行
this.setState({
selectedRowKeys: selectedRowKeys,
taskSelects: selectedRows
});
};
render() {
const { selectedRowKeys } = this.state;
const rowSelection = {
selectedRowKeys: selectedRowKeys,
fixed: false,
columnWidth: 20,
hideDefaultSelections: false,
onChange: this.onSelectChange
};
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查内容"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<div style={{ padding: '10px' }}>
<Button type='primary' onClick={() => this.closeTasks()} icon="export" style={{ marginLeft: '8px', display: "inline" }}>导入</Button>
</div>
<Table
rowSelection={rowSelection}
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="检查部门岗位"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
{/* <div style={{ padding: '10px' }}>
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: dataList && dataList.STATUS === 30?"inline":"none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: dataList && dataList.STATUS === 30?"inline":"none" }}>导出</Button>
</div> */}
<div>
<h1 style={{ textAlign: 'center', margin: '15px' }}>检查清单</h1>
{this.state.dataList?
<Table style={{ width:"1250px",margin:"auto",alignContent:"center",backgroundColor:"white"}}
dataSource={this.state.dataList}
columns={this.state.columndatas}
pagination={false}
bordered
loading={false}
size="small"
/>
:[]}
</div>
</div>
}
<div>
<h1 style={{ textAlign: 'center', margin: '15px' }}>检查清单</h1>
{this.state.dataList ?
<Table style={{ width: "1250px", margin: "auto", alignContent: "center", backgroundColor: "white" }}
dataSource={this.state.dataList}
columns={this.state.columndatas}
pagination={false}
bordered
loading={false}
size="small"
/>
: []}
</div>
</div>
}
}
export default connect(({ login,app }) => ({ login,app }))(SK010CheckList)
export default connect(({ login, app }) => ({ login, app }))(SK010CheckList)

View File

@ -60,6 +60,7 @@ class SK010ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
extendRule(json, 'TASK_ID', 1, taskID);
extendIgnoreDataRule(json)
@ -91,7 +92,7 @@ class SK010ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -207,7 +208,7 @@ class SK010ShowPrint extends React.Component {
</td>
<td>
{
item.CHECK_RESULT == null? "无隐患" :enums.SKCheckResultEnum.enums[item.CHECK_RESULT]
item.CHECK_RESULT == null ? "无隐患" : enums.SKCheckResultEnum.enums[item.CHECK_RESULT]
}
</td>
<td>

View File

@ -1,7 +1,7 @@
import { message } from "antd/lib/index";
import { Button, Descriptions, Popconfirm, Row, Col, Form, Input, Select, Modal } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, showFiles, GetFileModel,showUserSign } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, showFiles, GetFileModel, showUserSign } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import config from "../../../config";
import XLSX from 'xlsx';
@ -15,7 +15,7 @@ class SK012ShowPrint extends React.Component {
this.state = {
data: null,
enumData: null,
detailUsers:[],
detailUsers: [],
BtnAgreeDisplay: 'none',
fileForm: {
title: "",
@ -61,6 +61,7 @@ class SK012ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
extendRule(json, 'TASK_ID', 1, taskID);
extendIgnoreDataRule(json)
@ -84,19 +85,17 @@ class SK012ShowPrint extends React.Component {
if (this.props.data && this.props.data.loadDataDeal) {
this.props.data.loadDataDeal(1);
}
let users=[]
let uniqueUsers =[]
if(ret.Nav_CheckRecordDetails)
{
let users = []
let uniqueUsers = []
if (ret.Nav_CheckRecordDetails) {
ret.Nav_CheckRecordDetails.forEach(item => {
item.Nav_CheckRecordDetailUsers.forEach(item2=>{
item.Nav_CheckRecordDetailUsers.forEach(item2 => {
users.push(item2)
})
})
}
if(users)
{
uniqueUsers= users.reduce((acc, user) => {
if (users) {
uniqueUsers = users.reduce((acc, user) => {
// 如果累积数组中还没有这个 user_id则添加
if (!acc.some(item => item.USER_ID === user.USER_ID)) {
acc.push(user);
@ -104,7 +103,7 @@ class SK012ShowPrint extends React.Component {
return acc;
}, []);
}
this.setState({ data: ret,detailUsers:uniqueUsers })
this.setState({ data: ret, detailUsers: uniqueUsers })
if (this.props.data.tableKey == "2" || this.props.data.tableKey == undefined) {
this.setState({ BtnAgreeDisplay: 'none' })
} else {
@ -112,7 +111,7 @@ class SK012ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -228,7 +227,7 @@ class SK012ShowPrint extends React.Component {
</td>
<td>
{
item.CHECK_RESULT == null? "无隐患" :enums.SKCheckResultEnum.enums[item.CHECK_RESULT]
item.CHECK_RESULT == null ? "无隐患" : enums.SKCheckResultEnum.enums[item.CHECK_RESULT]
}
</td>
<td>
@ -267,15 +266,15 @@ class SK012ShowPrint extends React.Component {
</table>
{
this.state.detailUsers ?
<div>
<Descriptions size="middle" bordered>
<Descriptions.Item label="检查人签名">{
this.state.detailUsers?.filter(it => it.ISCHECK).map((item, i) => {
return showUserSign(item.Nav_User, config.picServerHost)
})
}</Descriptions.Item>
</Descriptions>
</div>:null
<div>
<Descriptions size="middle" bordered>
<Descriptions.Item label="检查人签名">{
this.state.detailUsers?.filter(it => it.ISCHECK).map((item, i) => {
return showUserSign(item.Nav_User, config.picServerHost)
})
}</Descriptions.Item>
</Descriptions>
</div> : null
}
<FormPage {...this.state.tmpData} />
</div>

View File

@ -1,7 +1,7 @@
import { message } from "antd/lib/index";
import { Button, Descriptions, Popconfirm, Row, Col, Form, Input, Select, Modal } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, showFiles, GetFileModel,showUserSign } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, showFiles, GetFileModel, showUserSign } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import config from "../../../config";
import XLSX from 'xlsx';
@ -60,6 +60,7 @@ class SK014ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
extendRule(json, 'TASK_ID', 1, taskID);
extendIgnoreDataRule(json)
@ -191,7 +192,7 @@ class SK014ShowPrint extends React.Component {
item.HIDDEN_PLACE
}
</td>
<td>
<td>
{
item?.Nav_ReportDetailReasons && item?.Nav_ReportDetailReasons.map((item2, i) => {
@ -203,8 +204,8 @@ class SK014ShowPrint extends React.Component {
</td>
<td>
{
item.ISCHECK? <a style={{ color: "rgba(0, 0, 0, 0.65)" }}>{item.Nav_RecitifyUser?.NAME}</a>:
<a style={{ color: "red" }}>{item.Nav_RecitifyUser?.NAME}</a>
item.ISCHECK ? <a style={{ color: "rgba(0, 0, 0, 0.65)" }}>{item.Nav_RecitifyUser?.NAME}</a> :
<a style={{ color: "red" }}>{item.Nav_RecitifyUser?.NAME}</a>
}
{/* {
item.Nav_RecitifyUser?.NAME
@ -225,18 +226,18 @@ class SK014ShowPrint extends React.Component {
}
</table>
{
data && data.Nav_ReportDetails ?
<div>
<Descriptions size="middle" bordered>
<Descriptions.Item label="整改责任人签名">{
data.Nav_ReportDetails?.map((item, i) => {
if (item && item.ISCHECK ) {
showUserSign(item.Nav_RecitifyUser, config.picServerHost)
}
})
}</Descriptions.Item>
</Descriptions>
</div>:null
data && data.Nav_ReportDetails ?
<div>
<Descriptions size="middle" bordered>
<Descriptions.Item label="整改责任人签名">{
data.Nav_ReportDetails?.map((item, i) => {
if (item && item.ISCHECK) {
showUserSign(item.Nav_RecitifyUser, config.picServerHost)
}
})
}</Descriptions.Item>
</Descriptions>
</div> : null
}
<FormPage {...this.state.tmpData} />
</div>

View File

@ -41,6 +41,7 @@ class SK016ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
extendInclude(json, 'Nav_ApplyUser');
@ -71,7 +72,7 @@ class SK016ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}

View File

@ -57,6 +57,7 @@ class SK018ShowPrint extends React.Component {
}
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
extendInclude(json, 'Nav_Report');
@ -102,7 +103,7 @@ class SK018ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -165,7 +166,7 @@ class SK018ShowPrint extends React.Component {
<Descriptions.Item label="系统隐患描述">{data.Nav_Question?.DESCREPTION}</Descriptions.Item>
<Descriptions.Item label="隐患等级">{enums.SKHiddenLevel.enums[data.HIDDEN_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="整改措施">{data.RECTIFICATION_MEASURES}</Descriptions.Item>
<Descriptions.Item label="隐患原因">{
<Descriptions.Item label="隐患原因">{
data?.Nav_Reasons && data?.Nav_Reasons.map((item2, i) => {
return <a>{(i > 0 ? "," : "") + item2.Nav_Reason.NAME}</a>
@ -176,9 +177,9 @@ class SK018ShowPrint extends React.Component {
{/* <Descriptions.Item label="">{enums.FMDepartmentType.enums[data.DEPARTMENT_TYPE]}</Descriptions.Item>
<Descriptions.Item label="检查类型">{data.Nav_CheckType ? data.Nav_CheckType.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="检查周期">{enums.BSPLANCHECKFREQUENCYEnum.enums[data.PLANCHECKFREQUENCY]}</Descriptions.Item> */}
<Descriptions.Item label="整改责任人">{ data.STATUS == 30 && data.Nav_RecitifyUser && data.Nav_RecitifyUser.FILE_PATH ?
<Descriptions.Item label="整改责任人">{data.STATUS == 30 && data.Nav_RecitifyUser && data.Nav_RecitifyUser.FILE_PATH ?
showUserSign(data.Nav_RecitifyUser, config.picServerHost)
: data.Nav_RecitifyUser ? data.Nav_RecitifyUser.NAME : ''}</Descriptions.Item>
: data.Nav_RecitifyUser ? data.Nav_RecitifyUser.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="整改期限">{moment(data.RECITIFY_TIME).format('YYYY-MM-DD')}</Descriptions.Item>
<Descriptions.Item label="附件">{
showFiles(data?.Nav_Files, config.picServerHost, this)

View File

@ -60,6 +60,7 @@ class SK020ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
extendRule(json, 'TASK_ID', 1, taskID);
extendIgnoreDataRule(json)
@ -91,7 +92,7 @@ class SK020ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -179,7 +180,7 @@ class SK020ShowPrint extends React.Component {
</td> */}
<td>
{
item.Nav_Question?.DESCREPTION?item.Nav_Question.DESCREPTION:item.HIDDEN_DESCRIPTION
item.Nav_Question?.DESCREPTION ? item.Nav_Question.DESCREPTION : item.HIDDEN_DESCRIPTION
}
</td>
<td>

View File

@ -1,7 +1,7 @@
import { message } from "antd/lib/index";
import { Button, Descriptions, Popconfirm, Row, Col, Form, Input, Select, Modal } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, showFiles,showUserSign,showFileImg, GetFileModel } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, showFiles, showUserSign, showFileImg, GetFileModel } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import config from "../../../config";
import XLSX from 'xlsx';
@ -57,6 +57,7 @@ class SK022ShowPrint extends React.Component {
}
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
// extendInclude(json, 'Nav_ApplyUser');
@ -92,7 +93,7 @@ class SK022ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -124,7 +125,7 @@ class SK022ShowPrint extends React.Component {
pageStyle=".printDIV { padding:0 40px;} img{width :120px}"
/>
<Button style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }} onClick={() => this.onTableBtnExport()} icon="export" >导出</Button>
<Button type="primary" style={{ marginLeft: '8px', display: data && data.STATUS === 21 ? "inline" : "none" }} onClick={() => this.onTableBtnAgree()} icon="check" >审阅</Button>
<Button type="primary" style={{ marginLeft: '8px', display: data && data.STATUS === 21 ? "inline" : "none" }} onClick={() => this.onTableBtnAgree()} icon="check" >审阅</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>隐患整改记录</h1>
@ -147,21 +148,21 @@ class SK022ShowPrint extends React.Component {
// return <tr><label> {item2.Nav_User?.NAME}</label></tr>
})
}</Descriptions.Item>
<Descriptions.Item label="隐患描述">{data.Nav_Question?.DESCREPTION?data.Nav_Question.DESCREPTION:data.HIDDEN_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="隐患描述">{data.Nav_Question?.DESCREPTION ? data.Nav_Question.DESCREPTION : data.HIDDEN_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="隐患等级">{enums.SKHiddenLevel.enums[data.HIDDEN_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="整改措施">{data.RECTIFICATION_MEASURES}</Descriptions.Item>
<Descriptions.Item label="整改期限">{moment(data.RECITIFY_TIME).format('YYYY-MM-DD')}</Descriptions.Item>
<Descriptions.Item label="整改部门">{data.Nav_RecitifyUser && data.Nav_RecitifyUser.Nav_Department ? data.Nav_RecitifyUser.Nav_Department.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="整改责任人">{data.Nav_RecitifyUser ? data.Nav_RecitifyUser.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="整改落实人">{
data.STATUS == 21 &&
data.Nav_ImplementUser && data.Nav_ImplementUser.FILE_PATH ?
showUserSign(data.Nav_ImplementUser, config.picServerHost)
: data.Nav_ImplementUser ? data.Nav_ImplementUser.NAME : ''}</Descriptions.Item>
data.STATUS == 21 &&
data.Nav_ImplementUser && data.Nav_ImplementUser.FILE_PATH ?
showUserSign(data.Nav_ImplementUser, config.picServerHost)
: data.Nav_ImplementUser ? data.Nav_ImplementUser.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="整改验收人">{data.Nav_AcceptUser ? data.Nav_AcceptUser.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="整改情况描述">{data.RECTIFICATION_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="整改资金(元)">{data.RECTIFICATION_MONEY}</Descriptions.Item>
<Descriptions.Item label="整改完成时间">{data.COMPLETE_DATE?moment(data.COMPLETE_DATE).format('YYYY-MM-DD'):null}</Descriptions.Item>
<Descriptions.Item label="整改完成时间">{data.COMPLETE_DATE ? moment(data.COMPLETE_DATE).format('YYYY-MM-DD') : null}</Descriptions.Item>
<Descriptions.Item label="整改前照片">{
showFileImg(data?.Nav_RectifyPhotoas, config.picServerHost, this)
}</Descriptions.Item>
@ -171,17 +172,17 @@ class SK022ShowPrint extends React.Component {
<Descriptions.Item label="预案或方案">{
showFiles(data?.Nav_RectifyFiles, config.picServerHost, this)
}</Descriptions.Item>
<Descriptions.Item style={{display:(data.STATUS ==20 ||data.STATUS==30)?"inline":"none"}} label="验收时间">{data.ACCEPT_DATE?moment(data.ACCEPT_DATE).format('YYYY-MM-DD'):null}</Descriptions.Item>
<Descriptions.Item style={{display:(data.STATUS ==20 ||data.STATUS==30)?"inline":"none"}} label="验收结论">{enums.SKAcceptResultEnum.enums[data.ACCEPT_RESULTE]}</Descriptions.Item>
<Descriptions.Item style={{display:(data.STATUS ==20 ||data.STATUS==30)?"inline":"none"}} label="验收意见">{data.ACCEPT_OPINION}</Descriptions.Item>
<Descriptions.Item style={{ display: (data.STATUS == 20 || data.STATUS == 30) ? "inline" : "none" }} label="验收时间">{data.ACCEPT_DATE ? moment(data.ACCEPT_DATE).format('YYYY-MM-DD') : null}</Descriptions.Item>
<Descriptions.Item style={{ display: (data.STATUS == 20 || data.STATUS == 30) ? "inline" : "none" }} label="验收结论">{enums.SKAcceptResultEnum.enums[data.ACCEPT_RESULTE]}</Descriptions.Item>
<Descriptions.Item style={{ display: (data.STATUS == 20 || data.STATUS == 30) ? "inline" : "none" }} label="验收意见">{data.ACCEPT_OPINION}</Descriptions.Item>
<Descriptions.Item label="整改责任人签名">{
data.Nav_RecitifyUser && data.Nav_RecitifyUser.FILE_PATH ?
showUserSign(data.Nav_RecitifyUser, config.picServerHost)
: data.Nav_RecitifyUser ? data.Nav_RecitifyUser.NAME : ''
showUserSign(data.Nav_RecitifyUser, config.picServerHost)
: data.Nav_RecitifyUser ? data.Nav_RecitifyUser.NAME : ''
}</Descriptions.Item>
<Descriptions.Item label="验收人签名">{
(data.STATUS == 20 ||data.STATUS == 30)&& data.Nav_AcceptUser && data.Nav_AcceptUser.FILE_PATH ?
showUserSign(data.Nav_RecitifyUser, config.picServerHost)
(data.STATUS == 20 || data.STATUS == 30) && data.Nav_AcceptUser && data.Nav_AcceptUser.FILE_PATH ?
showUserSign(data.Nav_RecitifyUser, config.picServerHost)
: data.Nav_AcceptUser ? data.Nav_AcceptUser.NAME : ''
}</Descriptions.Item>
</Descriptions>

View File

@ -57,6 +57,7 @@ class SK024ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
extendInclude(json, 'Nav_ApplyUser');
@ -84,7 +85,7 @@ class SK024ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}

View File

@ -228,6 +228,7 @@ class SK026ShowPrint extends React.Component {
loadData = (dataId) => {
let that = this;
let json = initFilter(that.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendInclude(json, 'Nav_ApplyUser');
// extendInclude(json, 'Nav_ApplyDepartment');
@ -272,7 +273,7 @@ class SK026ShowPrint extends React.Component {
// this.setState({ isFinished: 'inline' })
// }
}
}
});
}
@ -496,7 +497,7 @@ class SK026ShowPrint extends React.Component {
{i + 1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area ? item.Nav_Area.NAME : ''}
@ -511,13 +512,13 @@ class SK026ShowPrint extends React.Component {
{item.Nav_Type ? item.Nav_Type?.NAME : ''}
</td>
<td>
{item.Nav_SCOREL? item.Nav_SCOREL?.SCORE : 0}
{item.Nav_SCOREL ? item.Nav_SCOREL?.SCORE : 0}
</td>
<td>
{item.Nav_SCOREE? item.Nav_SCOREE?.SCORE : 0}
{item.Nav_SCOREE ? item.Nav_SCOREE?.SCORE : 0}
</td>
<td>
{item.Nav_SCOREC? item.Nav_SCOREC?.SCORE : 0}
{item.Nav_SCOREC ? item.Nav_SCOREC?.SCORE : 0}
</td>
<td>
{item.EVALUATE_SCORE}

View File

@ -47,6 +47,7 @@ class SK027ShowPrint extends React.Component {
loadData = (dataId) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
extendIgnoreDataRule(json)
// extendRule(json, 'ID', 1, dataId);
@ -77,7 +78,7 @@ class SK027ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}

View File

@ -41,6 +41,7 @@ class SK031ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
// extendInclude(json, 'Nav_ApplyUser');
@ -68,7 +69,7 @@ class SK031ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}

View File

@ -42,7 +42,15 @@ class SK033ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data?.TASK_ORGID
if (this.props.data.ORG_ID_HV) {
json.Parameter22 = this.props.data.ORG_ID_HV;
}
else if (this.props.data?.TASK_ORGID) {
json.Parameter22 = this.props.data?.TASK_ORGID
}
else {
json.Parameter22 = this.props.data.ORG_ID_HV;
}
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
// extendInclude(json, 'Nav_ApplyUser');

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -10,434 +10,431 @@ import moment from 'moment';
import { message } from "antd/lib/index";
import FormPage from '../../../components/FormPage'
class SK035CheckLibrary extends React.Component {
constructor(props) {
super(props);
this.state = {
data: null,
BtnAgreeDisplay: 'none',
tmpData: {},
showDetail:false,
showDetailContent: false,
Details:{},
columns:[],
DetailContents:{},
columnContents:[],
DetailPosts:{},
columnPosts:[]
};
constructor(props) {
super(props);
this.state = {
data: null,
BtnAgreeDisplay: 'none',
tmpData: {},
showDetail: false,
showDetailContent: false,
Details: {},
columns: [],
DetailContents: {},
columnContents: [],
DetailPosts: {},
columnPosts: []
};
};
componentDidMount() {
if (this.props.data?.id)
this.loadData(this.props.data?.id);
this.state.columnContents = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
// {
// title: "检查内容",
// dataIndex: "Nav_Contents.CHECKCONTENT",
// key: "Nav_Contents.CHECKCONTENT",
// },
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
{
title: "检查依据",
dataIndex: "CHECK_BASIC",
key: "CHECK_BASIC",
},
{
title: "判定标准",
dataIndex: "CHECK_STANDARD",
key: "CHECK_STANDARD",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
];
this.state.columnPosts = [
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record) =>
{
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
// {
// title: "检查岗位",
// dataIndex: "Nav_DetailPosts",
// key: "Nav_DetailPosts",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailPosts && record.Nav_DetailPosts.map((item, i) => {
// return item.Nav_Post.NAME+' '
// })
// }</label>
// }
// },
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record) =>
{
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
];
this.state.columns = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
{
title: "隐患描述",
dataIndex: "HIDDEN_DESCRIPTION",
key: "HIDDEN_DESCRIPTION",
},
{
title: "隐患等级",
dataIndex: "HIDDEN_LEVEL",
key: "HIDDEN_LEVEL",
render: (text, record) => this.ShowState(record),
},
{
title: "整改措施",
dataIndex: "RECTIFICATION_MEASURES",
key: "RECTIFICATION_MEASURES",
},
];
}
componentWillReceiveProps(NextProps) {
if (NextProps.data?.id && this.props.data?.id != NextProps.data?.id) {
this.loadData(NextProps.data?.id);
}
}
ShowState(obj) {
if (obj.HIDDEN_LEVEL === 0) {
return "一般";
} else {
return "重大";
componentDidMount() {
if (this.props.data?.id)
this.loadData(this.props.data?.id);
this.state.columnContents = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
// {
// title: "检查内容",
// dataIndex: "Nav_Contents.CHECKCONTENT",
// key: "Nav_Contents.CHECKCONTENT",
// },
{
title: "检查内容",
dataIndex: "Nav_Contents.CHECKCONTENT",
key: "Nav_Contents.CHECKCONTENT",
},
{
title: "检查依据",
dataIndex: "CHECK_BASIC",
key: "CHECK_BASIC",
},
{
title: "判定标准",
dataIndex: "CHECK_STANDARD",
key: "CHECK_STANDARD",
},
{
title: '操作',
dataIndex: '',
key: '',
render: (text, record, index) => {
return <Button type='defualt' size='small' onClick={(e) => { this.showModal(record) }} icon='eye' />
}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
];
this.state.columnPosts = [
{
title: "检查层级",
dataIndex: "CHECK_TYPE",
key: "CHECK_TYPE",
render: (text, record) => {
return <label>{this.props.app.enums.SKDepartmentTypeEnum.enums[record.CHECK_TYPE]}</label>
}
},
{
title: "检查部门",
dataIndex: "Nav_Department.NAME",
key: "Nav_Department.NAME",
},
// {
// title: "检查岗位",
// dataIndex: "Nav_DetailPosts",
// key: "Nav_DetailPosts",
// render: (text, record) =>
// {
// return <label>{
// record.Nav_DetailPosts && record.Nav_DetailPosts.map((item, i) => {
// return item.Nav_Post.NAME+' '
// })
// }</label>
// }
// },
{
title: "检查类型",
dataIndex: "Nav_CheckType.NAME",
key: "Nav_CheckType.NAME",
},
{
title: "检查周期",
dataIndex: "CHECK_CYCLE",
key: "CHECK_CYCLE",
render: (text, record) => {
return <label>{this.props.app.enums.SKPLANCHECKFREQUENCYEnum.enums[record.CHECK_CYCLE]}</label>
}
},
];
this.state.columns = [
{
title: '序号',
dataIndex: 'NUM',
key: "NUM",
},
{
title: "隐患描述",
dataIndex: "HIDDEN_DESCRIPTION",
key: "HIDDEN_DESCRIPTION",
},
{
title: "隐患等级",
dataIndex: "HIDDEN_LEVEL",
key: "HIDDEN_LEVEL",
render: (text, record) => this.ShowState(record),
},
{
title: "整改措施",
dataIndex: "RECTIFICATION_MEASURES",
key: "RECTIFICATION_MEASURES",
},
];
}
loadData = (dataId) => {
let that=this;
let jsonTemp = initFilter(that.props.login.OrgId);
extendRule(jsonTemp, 'ID', 1, dataId);
that.props.dispatch({
type: 'app/getDataByPost',
payload: jsonTemp,
url: 'SK/SKRiskIdentifyResult/GetDetail',
onComplete: (retTemp) => {
if (retTemp) {
let json = initFilter(that.props.login.OrgId);
extendRule(json, 'PRODUCTION_UNIT_ID', 1, retTemp.PRODUCTION_UNIT_ID);
extendRule(json, 'AREA_ID', 1, retTemp.AREA_ID);
extendRule(json, 'TYPE_ID', 1, retTemp.TYPE_ID);
extendRule(json, 'RISK_NAME', 1, retTemp.RISK_NAME);
extendRule(json, 'RISK_DESCRIPTION', 1, retTemp.RISK_DESCRIPTION);
// extendInclude(json, 'Nav_Type');
// extendInclude(json, 'Nav_Area');
// extendInclude(json, 'Nav_Posts');
// extendInclude(json, 'Nav_Posts.Nav_PostDetails.Nav_Post');
// extendInclude(json, 'Nav_Departs');
// extendInclude(json, 'Nav_Departs.Nav_Department');
// extendInclude(json, 'Nav_Departs.Nav_User');
// extendInclude(json, 'Nav_Details');
// extendInclude(json, 'Nav_Details.Nav_DetailContents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_Contents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailHiddens');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_Department');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_CheckType');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts.Nav_Post');
extendIgnoreDataRule(json)
that.props.dispatch({
componentWillReceiveProps(NextProps) {
if (NextProps.data?.id && this.props.data?.id != NextProps.data?.id) {
this.loadData(NextProps.data?.id);
}
}
ShowState(obj) {
if (obj.HIDDEN_LEVEL === 0) {
return "一般";
} else {
return "重大";
}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = (dataId) => {
let that = this;
let jsonTemp = initFilter(that.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(jsonTemp, 'ID', 1, dataId);
that.props.dispatch({
type: 'app/getDataByPost',
payload: jsonTemp,
url: 'SK/SKRiskIdentifyResult/GetDetail',
onComplete: (retTemp) => {
if (retTemp) {
let json = initFilter(that.props.login.OrgId);
extendRule(json, 'PRODUCTION_UNIT_ID', 1, retTemp.PRODUCTION_UNIT_ID);
extendRule(json, 'AREA_ID', 1, retTemp.AREA_ID);
extendRule(json, 'TYPE_ID', 1, retTemp.TYPE_ID);
extendRule(json, 'RISK_NAME', 1, retTemp.RISK_NAME);
extendRule(json, 'RISK_DESCRIPTION', 1, retTemp.RISK_DESCRIPTION);
// extendInclude(json, 'Nav_Type');
// extendInclude(json, 'Nav_Area');
// extendInclude(json, 'Nav_Posts');
// extendInclude(json, 'Nav_Posts.Nav_PostDetails.Nav_Post');
// extendInclude(json, 'Nav_Departs');
// extendInclude(json, 'Nav_Departs.Nav_Department');
// extendInclude(json, 'Nav_Departs.Nav_User');
// extendInclude(json, 'Nav_Details');
// extendInclude(json, 'Nav_Details.Nav_DetailContents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_Contents');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailHiddens');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_Department');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_CheckType');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts');
// extendInclude(json, 'Nav_Details.Nav_DetailContents.Nav_DetailDeparts.Nav_DetailPosts.Nav_Post');
extendIgnoreDataRule(json)
that.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibrary/SKGet',
onComplete: (ret) => {
if (ret) {
if(that.props.data && that.props.data.loadDataDeal)
{
that.props.data.loadDataDeal(1);
}
that.setState({ data: ret });
if (that.props.data.tableKey==="2" ||that.props.data.tableKey===undefined) {
that.setState({ BtnAgreeDisplay: 'none' })
}else{
that.setState({ BtnAgreeDisplay: 'inline' })
}
this.onClickApprove(false);
//归档才显示打印和导出按钮
// if(ret.PRE_MEETING_STATUS==5){
// this.setState({ isFinished: 'inline' })
// }
if (ret) {
if (that.props.data && that.props.data.loadDataDeal) {
that.props.data.loadDataDeal(1);
}
else
{ message.error('企业库无对应风险!');}
}
});
that.setState({ data: ret });
if (that.props.data.tableKey === "2" || that.props.data.tableKey === undefined) {
that.setState({ BtnAgreeDisplay: 'none' })
} else {
that.setState({ BtnAgreeDisplay: 'inline' })
}
this.onClickApprove(false);
//归档才显示打印和导出按钮
// if(ret.PRE_MEETING_STATUS==5){
// this.setState({ isFinished: 'inline' })
// }
}
else { message.error('企业库无对应风险!'); }
}
});
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "双控企业库.xlsx")
}
onClickApprove=(appVisible)=>{
const newtmpData = {
data: { id: this.props.data.id, isShow: true,key:guid(),param:this.props.data.param,appVisible:appVisible,BtnAgreeDisplay:'inline'},
formCode: "PF123",
});
}
this.setState({
tmpData: newtmpData,
});
}
});
}
onTableBtnExport() {
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "双控企业库.xlsx")
}
onClickApprove = (appVisible) => {
const newtmpData = {
data: { id: this.props.data.id, isShow: true, key: guid(), param: this.props.data.param, appVisible: appVisible, BtnAgreeDisplay: 'inline' },
formCode: "PF123",
}
showModalContent = (item) => {
this.setState({
showDetailContent: true,
},()=>{
this.setState({
DetailContents:item.Nav_DetailContents
});
});
};
showModal = (item) => {
this.setState({
showDetail: true,
},()=>{
this.setState({
Details:item.Nav_DetailHiddens,
DetailPosts:item.Nav_DetailDeparts
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
});
};
closeModal = () => {
this.setState({
showDetail: false,
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
});
};
render() {
const { data } = this.state;
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查明细"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<Table
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="隐患查看"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
<br></br>
<Table
dataSource={this.state.DetailPosts}
columns={this.state.columnPosts}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双控企业库</h1>
{
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元">{data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L">{data.EVALUATE_L}</Descriptions.Item>
<Descriptions.Item label="风险评价E">{data.EVALUATE_E}</Descriptions.Item>
<Descriptions.Item label="风险评价C">{data.EVALUATE_C}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="应急处置">{data.EMERGENCY}</Descriptions.Item>
<Descriptions.Item label="是否有效">{enums.FMEnableStatusEnum.enums[data.ENABLE_STATUS]}</Descriptions.Item>
</Descriptions>
</div>:null
}
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控部门</td>
<td className={stylesStep.fontBold}>管控责任人</td>
</tr>
{
data.Nav_Departs && data.Nav_Departs.sort((x, y) => x.DEPARTMENT_TYPE - y.DEPARTMENT_TYPE).map((item,i)=>{
return <tr>
<td>
{i+1}
</td>
<td>
{enums.SKDepartmentTypeEnum.enums[item.DEPARTMENT_TYPE]}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{item.Nav_User?.NAME}
</td>
</tr>
})
}
</table>:null
}
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控措施</td>
{/* <td className={stylesStep.fontBold}>应急处置</td> */}
<td className={stylesStep.fontBold}>查看</td>
</tr>
{
data.Nav_Details && data.Nav_Details.sort((x, y) => x.NUM - y.NUM).map((item,i)=>{
return <tr>
<td>
{item.NUM}
</td>
<td>
{item.MEASURES_NAME}
</td>
{/* <td>
this.setState({
tmpData: newtmpData,
});
}
showModalContent = (item) => {
this.setState({
showDetailContent: true,
}, () => {
this.setState({
DetailContents: item.Nav_DetailContents
});
});
};
showModal = (item) => {
this.setState({
showDetail: true,
}, () => {
this.setState({
Details: item.Nav_DetailHiddens,
DetailPosts: item.Nav_DetailDeparts
});
});
};
handleCancel = () => {
this.setState({
showDetail: false,
});
};
closeModal = () => {
this.setState({
showDetail: false,
});
};
handleCancelContent = () => {
this.setState({
showDetailContent: false,
});
};
closeModalContent = () => {
this.setState({
showDetailContent: false,
});
};
render() {
const { data } = this.state;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<Modal
visible={this.state.showDetailContent}
title="检查明细"
maskClosable={false}
onCancel={this.handleCancelContent}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModalContent}
>
<Table
dataSource={this.state.DetailContents}
columns={this.state.columnContents}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<Modal
visible={this.state.showDetail}
title="隐患查看"
maskClosable={false}
onCancel={this.handleCancel}
footer={null}
className="antd-modal-fullscreen"
closeModal={this.closeModal}
>
<Table
dataSource={this.state.Details}
columns={this.state.columns}
pagination={false}
bordered
loading={false}
size="small"
/>
<br></br>
<Table
dataSource={this.state.DetailPosts}
columns={this.state.columnPosts}
pagination={false}
bordered
loading={false}
size="small"
/>
</Modal>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双控企业库</h1>
{
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元">{data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area ? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type ? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L">{data.EVALUATE_L}</Descriptions.Item>
<Descriptions.Item label="风险评价E">{data.EVALUATE_E}</Descriptions.Item>
<Descriptions.Item label="风险评价C">{data.EVALUATE_C}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="应急处置">{data.EMERGENCY}</Descriptions.Item>
<Descriptions.Item label="是否有效">{enums.FMEnableStatusEnum.enums[data.ENABLE_STATUS]}</Descriptions.Item>
</Descriptions>
</div> : null
}
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控层级</td>
<td className={stylesStep.fontBold}>管控部门</td>
<td className={stylesStep.fontBold}>管控责任人</td>
</tr>
{
data.Nav_Departs && data.Nav_Departs.sort((x, y) => x.DEPARTMENT_TYPE - y.DEPARTMENT_TYPE).map((item, i) => {
return <tr>
<td>
{i + 1}
</td>
<td>
{enums.SKDepartmentTypeEnum.enums[item.DEPARTMENT_TYPE]}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{item.Nav_User?.NAME}
</td>
</tr>
})
}
</table> : null
}
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>管控措施</td>
{/* <td className={stylesStep.fontBold}>应急处置</td> */}
<td className={stylesStep.fontBold}>查看</td>
</tr>
{
data.Nav_Details && data.Nav_Details.sort((x, y) => x.NUM - y.NUM).map((item, i) => {
return <tr>
<td>
{item.NUM}
</td>
<td>
{item.MEASURES_NAME}
</td>
{/* <td>
{item.EMERGENCY}
</td> */}
<td><Button type="defualt" icon='eye' onClick={() => this.showModalContent(item)}></Button></td>
</tr>
})
}
</table>:null
}
{
data ? <table style={{ width: '100%', textAlign: 'left'}} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>辨识部门</td>
<td className={stylesStep.fontBold}>辨识岗位</td>
</tr>
<td><Button type="defualt" icon='eye' onClick={() => this.showModalContent(item)}></Button></td>
</tr>
})
}
</table> : null
}
{
data ? <table style={{ width: '100%', textAlign: 'left' }} className={stylesStep.PrintForm1}>
<tr>
<td width='150px' textAlign='center' className={stylesStep.fontBold}>序号</td>
<td className={stylesStep.fontBold}>辨识部门</td>
<td className={stylesStep.fontBold}>辨识岗位</td>
</tr>
{
data.Nav_Posts && data.Nav_Posts.map((item, i) => {
return <tr>
<td>
{i + 1}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{
data.Nav_Posts && data.Nav_Posts.map((item,i)=>{
return <tr>
<td>
{i+1}
</td>
<td>
{item.Nav_Department?.NAME}
</td>
<td>
{
item?.Nav_PostDetails && item?.Nav_PostDetails.map((item2, i) => {
return (i > 0 ? ";" : "") + item2?.Nav_Post?.NAME
// return <tr><label> {item2.Nav_Post?.NAME}</label></tr>
})
}
</td>
</tr>
})
}
</table>:null
}
<FormPage {...this.state.tmpData} />
</div>
</div>
}
item?.Nav_PostDetails && item?.Nav_PostDetails.map((item2, i) => {
return (i > 0 ? ";" : "") + item2?.Nav_Post?.NAME
// return <tr><label> {item2.Nav_Post?.NAME}</label></tr>
})
}
</td>
</tr>
})
}
</table> : null
}
<FormPage {...this.state.tmpData} />
</div>
</div>
}
}
export default connect(({ login,app }) => ({ login,app }))(SK035CheckLibrary)
export default connect(({ login, app }) => ({ login, app }))(SK035CheckLibrary)

View File

@ -41,6 +41,7 @@ class SK035ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
// extendInclude(json, 'Nav_ApplyUser');
@ -72,7 +73,7 @@ class SK035ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -147,7 +148,7 @@ class SK035ShowPrint extends React.Component {
{i + 1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}

View File

@ -42,6 +42,7 @@ class SK037ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
// extendInclude(json, 'Nav_ApplyUser');
@ -73,7 +74,7 @@ class SK037ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -148,7 +149,7 @@ class SK037ShowPrint extends React.Component {
{i + 1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}

View File

@ -41,6 +41,7 @@ class SK039ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
// extendInclude(json, 'Nav_ApplyUser');
@ -73,7 +74,7 @@ class SK039ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -152,7 +153,7 @@ class SK039ShowPrint extends React.Component {
{i + 1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}
@ -170,13 +171,13 @@ class SK039ShowPrint extends React.Component {
{enums.SKEvaluateLevelEnum.enums[item.EVALUATE_LEVEL]}
</td>
<td>
{item.Nav_SCOREL? item.Nav_SCOREL?.SCORE : 0}
{item.Nav_SCOREL ? item.Nav_SCOREL?.SCORE : 0}
</td>
<td>
{item.Nav_SCOREE? item.Nav_SCOREE?.SCORE : 0}
{item.Nav_SCOREE ? item.Nav_SCOREE?.SCORE : 0}
</td>
<td>
{item.Nav_SCOREC? item.Nav_SCOREC?.SCORE : 0}
{item.Nav_SCOREC ? item.Nav_SCOREC?.SCORE : 0}
</td>
<td>
{item.EVALUATE_SCORE}
@ -185,7 +186,7 @@ class SK039ShowPrint extends React.Component {
{
//item.MEASURE
item?.Nav_DetailMeasures && item?.Nav_DetailMeasures.map((item2, i) => {
return <tr> {item2?.NUM+"、" + item2?.MEASURES_NAME}</tr>
return <tr> {item2?.NUM + "、" + item2?.MEASURES_NAME}</tr>
})
}
</td>

View File

@ -1,5 +1,5 @@
import { message } from "antd/lib/index";
import { Button, Descriptions, Popconfirm, Row, Col, Form, Input, Select, Table ,Modal} from 'antd';
import { Button, Descriptions, Popconfirm, Row, Col, Form, Input, Select, Table, Modal } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, showFiles, GetFileModel } from "../../../utils/common";
import ReactToPrint from "react-to-print";
@ -41,6 +41,7 @@ class SK041ShowPrint extends React.Component {
loadData = (dataId, taskID) => {
let json = initFilter(this.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendRule(json, 'TASK_ID', 1, taskID);
// extendInclude(json, 'Nav_ApplyUser');
@ -73,7 +74,7 @@ class SK041ShowPrint extends React.Component {
}
this.onClickApprove(false);
}
}
});
}
@ -152,7 +153,7 @@ class SK041ShowPrint extends React.Component {
{i + 1}
</td>
<td>
{item.Nav_ProductionUnit?.NAME}
{item.Nav_ProductionUnit?.NAME}
</td>
<td>
{item.Nav_Area?.NAME}
@ -170,13 +171,13 @@ class SK041ShowPrint extends React.Component {
{enums.SKEvaluateLevelEnum.enums[item.EVALUATE_LEVEL]}
</td>
<td>
{item.Nav_SCOREL? item.Nav_SCOREL?.SCORE : 0}
{item.Nav_SCOREL ? item.Nav_SCOREL?.SCORE : 0}
</td>
<td>
{item.Nav_SCOREE? item.Nav_SCOREE?.SCORE : 0}
{item.Nav_SCOREE ? item.Nav_SCOREE?.SCORE : 0}
</td>
<td>
{item.Nav_SCOREC? item.Nav_SCOREC?.SCORE : 0}
{item.Nav_SCOREC ? item.Nav_SCOREC?.SCORE : 0}
</td>
<td>
{item.EVALUATE_SCORE}
@ -185,7 +186,7 @@ class SK041ShowPrint extends React.Component {
{
//item.MEASURE
item?.Nav_DetailMeasures && item?.Nav_DetailMeasures.map((item2, i) => {
return <tr> {item2?.NUM +"、"+item2?.MEASURES_NAME}</tr>
return <tr> {item2?.NUM + "、" + item2?.MEASURES_NAME}</tr>
})
}
</td>

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -29,15 +29,16 @@ class SK043ShowPrint extends React.Component {
this.loadData(NextProps.data?.id);
}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = (dataId) => {
let that=this;
let that = this;
let json = initFilter(that.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
extendInclude(json, 'Nav_Type');
extendInclude(json, 'Nav_Area');
@ -45,20 +46,19 @@ class SK043ShowPrint extends React.Component {
extendInclude(json, 'Nav_Contents.Nav_Contents');
extendInclude(json, 'Nav_Hiddens');
extendIgnoreDataRule(json)
that.props.dispatch({
that.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/BasicLibraryTemp/Get',
onComplete: (ret) => {
if (ret) {
if(that.props.data && that.props.data.loadDataDeal)
{
if (that.props.data && that.props.data.loadDataDeal) {
that.props.data.loadDataDeal(1);
}
that.setState({ data: ret });
if (that.props.data.tableKey==="2" ||that.props.data.tableKey===undefined) {
if (that.props.data.tableKey === "2" || that.props.data.tableKey === undefined) {
that.setState({ BtnAgreeDisplay: 'none' })
}else{
} else {
that.setState({ BtnAgreeDisplay: 'inline' })
}
this.onClickApprove(false);
@ -67,22 +67,22 @@ class SK043ShowPrint extends React.Component {
// this.setState({ isFinished: 'inline' })
// }
}
}
});
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "双控基础库.xlsx")
}
onClickApprove=(appVisible)=>{
onClickApprove = (appVisible) => {
const newtmpData = {
data: { id: this.props.data.id, isShow: true,key:guid(),param:this.props.data.param,appVisible:appVisible,BtnAgreeDisplay:'inline'},
data: { id: this.props.data.id, isShow: true, key: guid(), param: this.props.data.param, appVisible: appVisible, BtnAgreeDisplay: 'inline' },
formCode: "PF123",
}
this.setState({
@ -91,81 +91,81 @@ class SK043ShowPrint extends React.Component {
}
render() {
const { data } = this.state;
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }} type={'default'} icon={'printer'} >打印</Button>}
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }}>导出</Button>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双控基础库</h1>
{
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元"> {data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L">{data.EVALUATE_L}</Descriptions.Item>
<Descriptions.Item label="风险评价E">{data.EVALUATE_E}</Descriptions.Item>
<Descriptions.Item label="风险评价C">{data.EVALUATE_C}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="管控措施">
{
data?.Nav_Measures && data?.Nav_Measures.map((item, i) => {
return <tr>
<td>
{(i+1)+"."+item?.MEASURES_NAME}
</td>
<td>
{item?.EMERGENCY}
</td>
<td>
{
item?.Nav_Levels && item?.Nav_Levels.map((item2, i) => {
return <tr> {enums.SKDepartmentTypeEnum.enums[item2?.DEPARTMENT_TYPE]}</tr>
})
}
</td>
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元"> {data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area ? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type ? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L">{data.EVALUATE_L}</Descriptions.Item>
<Descriptions.Item label="风险评价E">{data.EVALUATE_E}</Descriptions.Item>
<Descriptions.Item label="风险评价C">{data.EVALUATE_C}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="管控措施">
{
data?.Nav_Measures && data?.Nav_Measures.map((item, i) => {
return <tr>
<td>
{(i + 1) + "." + item?.MEASURES_NAME}
</td>
<td>
{item?.EMERGENCY}
</td>
<td>
{
item?.Nav_Levels && item?.Nav_Levels.map((item2, i) => {
return <tr> {enums.SKDepartmentTypeEnum.enums[item2?.DEPARTMENT_TYPE]}</tr>
})
}
</td>
</tr>
})
}
</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="检查内容">{
data?.Nav_Contents && data?.Nav_Contents.map((item, i) => {
return <tr><td> {(i + 1) + "." + item?.CHECK_CONTENT}</td>
<td> {item?.CHECK_BASIC}</td>
<td> {item?.CHECK_STANDARD}</td>
</tr>
})
}
</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="检查内容">{
data?.Nav_Contents && data?.Nav_Contents.map((item, i) => {
return <tr><td> {(i+1)+"."+item?.CHECK_CONTENT}</td>
<td> {item?.CHECK_BASIC}</td>
<td> {item?.CHECK_STANDARD}</td>
</tr>
})
}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="隐患描述">{
data?.Nav_Hiddens && data?.Nav_Hiddens.map((item, i) => {
return <tr><td> {(i+1)+"."+item?.HIDDEN_DESCRIPTION}</td>
<td> {enums.SKHiddenLevel.enums[item?.HIDDEN_LEVEL]}</td>
<td> {item?.RECTIFICATION_MEASURES}</td></tr>
})
}</Descriptions.Item>
</Descriptions>
</div>:null
})
}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="隐患描述">{
data?.Nav_Hiddens && data?.Nav_Hiddens.map((item, i) => {
return <tr><td> {(i + 1) + "." + item?.HIDDEN_DESCRIPTION}</td>
<td> {enums.SKHiddenLevel.enums[item?.HIDDEN_LEVEL]}</td>
<td> {item?.RECTIFICATION_MEASURES}</td></tr>
})
}</Descriptions.Item>
</Descriptions>
</div> : null
}
<FormPage {...this.state.tmpData} />
</div>
</div>
@ -173,4 +173,4 @@ class SK043ShowPrint extends React.Component {
}
export default connect(({ login,app }) => ({ login,app }))(SK043ShowPrint)
export default connect(({ login, app }) => ({ login, app }))(SK043ShowPrint)

View File

@ -1,6 +1,6 @@
import { Button, Descriptions,Popconfirm, Row, Col, Form,Modal, Input, Select, Table } from 'antd';
import { Button, Descriptions, Popconfirm, Row, Col, Form, Modal, Input, Select, Table } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule,setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
import stylesStep from '../HI/StepForm.css';
import config from "../../../config";
@ -29,15 +29,16 @@ class SK045ShowPrint extends React.Component {
this.loadData(NextProps.data?.id);
}
}
BtnClose = () => {
if (typeof this.props.data.onCancel != "undefined"&&typeof this.props.data.onCancel == 'function')
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = (dataId) => {
let that=this;
let that = this;
let json = initFilter(that.props.login.OrgId);
json.Parameter22 = this.props.data.ORG_ID_HV;
extendRule(json, 'ID', 1, dataId);
// extendInclude(json, 'Nav_Type');
// extendInclude(json, 'Nav_Area');
@ -49,20 +50,19 @@ class SK045ShowPrint extends React.Component {
// extendInclude(json, 'Nav_Contents.Nav_Departs.Nav_Posts.Nav_Post');
// extendInclude(json, 'Nav_Hiddens');
extendIgnoreDataRule(json)
that.props.dispatch({
that.props.dispatch({
type: 'app/getDataByPost',
payload: json,
url: 'SK/SKEnterpriseLibraryTemp/FullGet',
onComplete: (ret) => {
if (ret) {
if(that.props.data && that.props.data.loadDataDeal)
{
if (that.props.data && that.props.data.loadDataDeal) {
that.props.data.loadDataDeal(1);
}
that.setState({ data: ret });
if (that.props.data.tableKey==="2" ||that.props.data.tableKey===undefined) {
if (that.props.data.tableKey === "2" || that.props.data.tableKey === undefined) {
that.setState({ BtnAgreeDisplay: 'none' })
}else{
} else {
that.setState({ BtnAgreeDisplay: 'inline' })
}
this.onClickApprove(false);
@ -71,22 +71,22 @@ class SK045ShowPrint extends React.Component {
// this.setState({ isFinished: 'inline' })
// }
}
}
});
}
onTableBtnExport() {
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
let TableWrap = document.getElementById('tableId' + this.props.data.id);
let Table = TableWrap.getElementsByTagName('table')[0];
const wb = XLSX.utils.table_to_book(Table);
XLSX.writeFile(wb, "双控企业库.xlsx")
}
onClickApprove=(appVisible)=>{
onClickApprove = (appVisible) => {
const newtmpData = {
data: { id: this.props.data.id, isShow: true,key:guid(),param:this.props.data.param,appVisible:appVisible,BtnAgreeDisplay:'inline'},
data: { id: this.props.data.id, isShow: true, key: guid(), param: this.props.data.param, appVisible: appVisible, BtnAgreeDisplay: 'inline' },
formCode: "PF123",
}
this.setState({
@ -95,105 +95,105 @@ class SK045ShowPrint extends React.Component {
}
render() {
const { data } = this.state;
const enums=this.props.data.enums ? this.props.data.enums :this.props.app.enums ;
const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
// let aaa = Math.random();
return <div>
<div style={{ padding: '10px' }}>
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
{/* <Button onClick={() => this.onClickApprove(true)} style={{ marginRight: '8px'}} icon="export">审批详情</Button> */}
<ReactToPrint
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }} type={'default'} icon={'printer'} >打印</Button>}
trigger={() => <Button style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }} type={'default'} icon={'printer'} >打印</Button>}
content={() => this.componentRef}
/>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30?"inline":"none" }}>导出</Button>
<Button onClick={() => this.onTableBtnExport()} icon="export" style={{ marginLeft: '8px', display: data && data.STATUS === 30 ? "inline" : "none" }}>导出</Button>
</div>
<div ref={el => (this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id}>
<h1 style={{ textAlign: 'center', margin: '15px' }}>双控企业库</h1>
{
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元"> {data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L">{data.EVALUATE_L}</Descriptions.Item>
<Descriptions.Item label="风险评价E">{data.EVALUATE_E}</Descriptions.Item>
<Descriptions.Item label="风险评价C">{data.EVALUATE_C}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="入库时间">{data.CREATE_TIME}</Descriptions.Item>
<Descriptions.Item label="状态">{enums.FMEnableStatusEnum.enums[data.ENABLE_STATUS]}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="管控措施">
{
data?.Nav_Measures && data?.Nav_Measures.map((item, i) => {
return <tr>
<td>
{(i+1)+"."+item?.MEASURES_NAME}
</td>
<td>
{item?.EMERGENCY}
</td>
<td>
{
item?.Nav_Departs && item?.Nav_Departs.map((item2, i) => {
return <tr>
<td>{enums.SKDepartmentTypeEnum.enums[item2?.DEPARTMENT_TYPE]}</td>
<td>{item2?.Nav_Department?.NAME}</td>
<td>{item2?.Nav_User?.NAME}</td>
</tr>
})
}
</td>
</tr>
})
}
</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="检查内容">{
data?.Nav_Contents && data?.Nav_Contents.map((item, i) => {
return <tr><td> {(i+1)+"."+item?.CHECK_CONTENT}</td>
<td> {item?.CHECK_BASIC}</td>
<td> {item?.CHECK_STANDARD}</td>
<td>
{
item?.Nav_Departs && item?.Nav_Departs.map((item2, i) => {
return <tr>
<td>{enums.SKDepartmentTypeEnum.enums[item2?.CHECK_TYPE]}</td>
<td>{
item2?.Nav_Posts && item2?.Nav_Posts.map((item3, i) => {
return <tr>
<td>{item3?.Nav_Post?.NAME}</td>
data ?
<div>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="生产单元"> {data.Nav_ProductionUnit?.NAME}</Descriptions.Item>
<Descriptions.Item label="辨识区域">{data.Nav_Area ? data.Nav_Area?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险名称">{data.RISK_NAME}</Descriptions.Item>
<Descriptions.Item label="风险描述">{data.RISK_DESCRIPTION}</Descriptions.Item>
<Descriptions.Item label="风险类别">{data.Nav_Type ? data.Nav_Type?.NAME : ''}</Descriptions.Item>
<Descriptions.Item label="风险评价L">{data.EVALUATE_L}</Descriptions.Item>
<Descriptions.Item label="风险评价E">{data.EVALUATE_E}</Descriptions.Item>
<Descriptions.Item label="风险评价C">{data.EVALUATE_C}</Descriptions.Item>
<Descriptions.Item label="分值D">{data.EVALUATE_SCORE}</Descriptions.Item>
<Descriptions.Item label="风险等级">{enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}</Descriptions.Item>
<Descriptions.Item label="入库时间">{data.CREATE_TIME}</Descriptions.Item>
<Descriptions.Item label="状态">{enums.FMEnableStatusEnum.enums[data.ENABLE_STATUS]}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="管控措施">
{
data?.Nav_Measures && data?.Nav_Measures.map((item, i) => {
return <tr>
<td>
{(i + 1) + "." + item?.MEASURES_NAME}
</td>
<td>
{item?.EMERGENCY}
</td>
<td>
{
item?.Nav_Departs && item?.Nav_Departs.map((item2, i) => {
return <tr>
<td>{enums.SKDepartmentTypeEnum.enums[item2?.DEPARTMENT_TYPE]}</td>
<td>{item2?.Nav_Department?.NAME}</td>
<td>{item2?.Nav_User?.NAME}</td>
</tr>
})
}
</td>
</tr>
})
}
</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="检查内容">{
data?.Nav_Contents && data?.Nav_Contents.map((item, i) => {
return <tr><td> {(i + 1) + "." + item?.CHECK_CONTENT}</td>
<td> {item?.CHECK_BASIC}</td>
<td> {item?.CHECK_STANDARD}</td>
<td>
{
item?.Nav_Departs && item?.Nav_Departs.map((item2, i) => {
return <tr>
<td>{enums.SKDepartmentTypeEnum.enums[item2?.CHECK_TYPE]}</td>
<td>{
item2?.Nav_Posts && item2?.Nav_Posts.map((item3, i) => {
return <tr>
<td>{item3?.Nav_Post?.NAME}</td>
</tr>
})
}</td>
<td>{item2?.Nav_CheckType?.NAME}</td>
<td>{enums.SKPLANCHECKFREQUENCYEnum.enums[item2?.CHECK_CYCLE]}</td>
</tr>
})
}</td>
<td>{item2?.Nav_CheckType?.NAME}</td>
<td>{enums.SKPLANCHECKFREQUENCYEnum.enums[item2?.CHECK_CYCLE]}</td>
</tr>
})
}
</td>
</tr>
})
}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="隐患描述">{
data?.Nav_Hiddens && data?.Nav_Hiddens.map((item, i) => {
return <tr><td> {(i+1)+"."+item?.HIDDEN_DESCRIPTION}</td>
<td> {enums.SKHiddenLevel.enums[item?.HIDDEN_LEVEL]}</td>
<td> {item?.RECTIFICATION_MEASURES}</td></tr>
})
}</Descriptions.Item>
</Descriptions>
</div>:null
}
</td>
</tr>
})
}</Descriptions.Item>
</Descriptions>
<Descriptions size="middle" bordered className={stylesStep.description}>
<Descriptions.Item label="隐患描述">{
data?.Nav_Hiddens && data?.Nav_Hiddens.map((item, i) => {
return <tr><td> {(i + 1) + "." + item?.HIDDEN_DESCRIPTION}</td>
<td> {enums.SKHiddenLevel.enums[item?.HIDDEN_LEVEL]}</td>
<td> {item?.RECTIFICATION_MEASURES}</td></tr>
})
}</Descriptions.Item>
</Descriptions>
</div> : null
}
<FormPage {...this.state.tmpData} />
</div>
</div>
@ -201,4 +201,4 @@ class SK045ShowPrint extends React.Component {
}
export default connect(({ login,app }) => ({ login,app }))(SK045ShowPrint)
export default connect(({ login, app }) => ({ login, app }))(SK045ShowPrint)