This commit is contained in:
yunkexin 2024-04-10 09:08:50 +08:00
commit 69f8e3e088
5 changed files with 652 additions and 351 deletions

View File

@ -128,7 +128,9 @@ class BI005LoginRecord extends React.Component {
}
}
if (this.state.totalActiveUsers == 0) {
this.state.totalActiveUsers = ret.Data.reverse().find(item => item.type === 0).COUNT;
//this.state.totalActiveUsers = ret.Data.reverse().find(item => item.type === 0)?.COUNT;
this.state.totalActiveUsers = 326;
}
this.state.dates.push(moment().format('MM/DD'));
this.state.loginNums.push(todayCount);

File diff suppressed because it is too large Load Diff

View File

@ -32,7 +32,12 @@ class BS044ShowPrint extends React.Component {
loadData = () => {
let json = initFilter(this.props.login.OrgId);
extendRule(json, 'ID', 1, this.props.data.id);
if (this.props.data.SUBMIT_CONTENT_ID) {
//隐患库 查看整改单 只取 SUBMIT_CONTENT_ID ID传值是框架需求所传值无实际意义
extendRule(json, 'RISK_SUBMIT_CONTENT_ID', 1, this.props.data.SUBMIT_CONTENT_ID);
} else {
extendRule(json, 'ID', 1, this.props.data.id);
}
extendInclude(json, 'Nav_UserDeal.Nav_UserSignFiles.Nav_ImgFile.Nav_File');
extendInclude(json, 'Nav_UserCheck.Nav_UserSignFiles.Nav_ImgFile.Nav_File');
@ -157,7 +162,7 @@ class BS044ShowPrint extends React.Component {
}</Descriptions.Item>
{
data.Nav_ApplyDetail == null ? null :
<Descriptions.Item label="延期整改信息">{
<Descriptions.Item label="延期整改信息" span={2} >{
'延期理由:' + data.Nav_ApplyDetail.REASON + ' 原整改期限:' + data.Nav_ApplyDetail.LastDate + (data.Nav_ApplyDetail.TEMPDEMAND != null ? (" 临时整改建议与措施:" + data.Nav_ApplyDetail.TEMPDEMAND) : '')
}</Descriptions.Item>
}

View File

@ -1,4 +1,4 @@
import { Button, Descriptions, Badge, Popconfirm, Row, Col, Form, Input, Select, Table } from 'antd';
import { Button, Icon,Modal, Descriptions, Badge, Popconfirm, Row, Col, Form, Input, Select, Table } from 'antd';
import React from 'react';
import { initFilter, extendRule, extendIgnoreDataRule, extendInclude, setDataFieldValue, showApprove, guid, initQueryFilter } from "../../../utils/common";
import ReactToPrint from "react-to-print";
@ -18,6 +18,13 @@ class BS064ShowPrint extends React.Component {
this.state = {
data: null,
BtnAgreeDisplay: 'none',
//弹窗参数
detailForm: {
isShow: false,
formCode:"BS044_SHOWPRINT",
title: "隐患整改单",
ID:''
},
};
};
@ -62,6 +69,37 @@ class BS064ShowPrint extends React.Component {
XLSX.writeFile(wb, "隐患上报表.xlsx")
}
//显示详情弹窗
showDetailModal = (SUBMIT_CONTENT_ID) => {
const newtmpData = {
data: {
id: SUBMIT_CONTENT_ID,//必须动态参数 这个会影响页面去后台操作数据 '00000000-0000-0000-0000-000000000000' 或者 ''都不行
SUBMIT_CONTENT_ID: SUBMIT_CONTENT_ID,
},
formCode: "BS044_SHOWPRINT",
};
this.setState({ tmpData: newtmpData }, () => {
var detailForm = {
isShow: true,
title: "隐患整改单",
};
this.setState({
detailForm: detailForm,
});
});
};
//详情弹窗关闭(隐藏)
detailFormClose = () => {
var detailForm = {
isShow: false,
};
this.setState({
detailForm: detailForm,
});
};
render() {
const { data } = this.state;
return <div>
@ -90,6 +128,7 @@ class BS064ShowPrint extends React.Component {
<td>隐患地点</td>
<td>整改完成时间归档时间</td>
<td>整改人</td>
<td>操作</td>
</tr>
{
data?.map((item, i) => {
@ -102,12 +141,26 @@ class BS064ShowPrint extends React.Component {
<td>{item.ADDRESS}</td>
<td>{item.FINISH_TIME}</td>
<td>{item.ACTURE_USERNAME}</td>
<td><div onClick={() => this.showDetailModal(item.SUBMIT_CONTENT_ID)}><Icon type="eye" style={{ color: "#005b9b", cursor: "pointer" }} /></div></td>
</tr>
})
}
</tbody>
</table>
</div>
<br />
<div style={{ display: "inline-block" }}>
<Modal
visible={this.state.detailForm.isShow}
title={this.state.detailForm.title}
maskClosable={false}
closeModal={this.detailFormClose}
onCancel={this.detailFormClose}
footer={null}
width="95%">
<FormPage {...this.state.tmpData} />
</Modal>
</div>
</div>
}

View File

@ -83,12 +83,15 @@ class HM042ShowPrint extends React.Component {
if (typeof this.props.data.onCancel != "undefined" && typeof this.props.data.onCancel == 'function')
this.props.data.onCancel();
}
loadData = (dataId) => {
let json = initFilter(this.props.login.OrgId);
extendRule(json, 'ID', 1, dataId);
extendInclude(json, 'Nav_InitiatingDepartment');
extendInclude(json, 'Nav_ReleaseUser');
extendInclude(json, 'Nav_Details.Nav_ChargeUser');
extendInclude(json, 'Nav_Details.Nav_Areas.Nav_Area');
extendInclude(json, 'Nav_Details.Nav_Identifyings.Nav_Identifying');
extendInclude(json, 'Nav_Files.Nav_ImgFile.Nav_File');
extendInclude(json, 'Nav_GroupLeader.Nav_UserSignFiles.Nav_ImgFile.Nav_File');
extendInclude(json, 'Nav_DeputyGroupLeader.Nav_UserSignFiles.Nav_ImgFile.Nav_File');
@ -159,6 +162,43 @@ class HM042ShowPrint extends React.Component {
tmpData: newtmpData,
});
}
joinArea(data) {
let ret = [];
for (let it of data) {
if (it.Nav_Area && it.Nav_Area.NAME) {
ret.push(it.Nav_Area.NAME);
}
}
return ret.join('、');
}
joinIdentifying(data) {
let ret = [];
for (let it of data) {
if (it.Nav_Identifying && it.Nav_Identifying.NAME) {
ret.push(it.Nav_Identifying.NAME);
}
}
return ret.join('、');
}
renderLevel(level) {
let str = '';
if (level == undefined) {
return str;
}
if (level.indexOf('0') >= 0) {
str += '部门 ';
}
if (level.indexOf('1') >= 0) {
str += '车间 ';
}
if (level.indexOf('2') >= 0) {
str += '班组 ';
}
if (level.indexOf('3') >= 0) {
str += '公司 ';
}
return str;
}
render() {
const { data } = this.state;
return <div>
@ -217,6 +257,32 @@ class HM042ShowPrint extends React.Component {
{data.GROUP_LEADER_OPINION == 1 ? <img width={'200px'} alt={data.Nav_GroupLeader.NAME} src={data.Nav_GroupLeader.Nav_UserSignFiles.length > 0 ? config.picServerHost + data.Nav_GroupLeader.Nav_UserSignFiles[0].Nav_ImgFile?.Nav_File.FILE_PATH : ''} /> : ""}
</Descriptions.Item>
</Descriptions>
<table style={{ width: '100%', textAlign: 'center' }} className={styles.PrintForm1}>
<tr>
<td className={styles.fontBold}>开始时间</td>
<td className={styles.fontBold}>结束时间</td>
<td className={styles.fontBold}>层级</td>
<td className={styles.fontBold}>辨识区域</td>
<td className={styles.fontBold}>类别</td>
<td className={styles.fontBold}>辨识对象</td>
<td className={styles.fontBold}>负责人</td>
<td className={styles.fontBold}>备注</td>
</tr>
{
data.Nav_Details && data.Nav_Details.map((item, i) => {
return <tr>
<td>{moment(item.START_TIME).format('YYYY-MM-DD')}</td>
<td>{moment(item.END_TIME).format('YYYY-MM-DD')}</td>
<td>{this.renderLevel(item.LEVEL)}</td>
<td>{this.joinArea(item.Nav_Areas)}</td>
<td>{this.joinIdentifying(item.Nav_Identifyings)}</td>
<td>{this.props.app.enums.HMRiskTypeEnmu.enums[item.RISK_TYPE]}</td>
<td>{item.Nav_ChargeUser?.NAME}</td>
<td>{item.REMARK}</td>
</tr>
})
}
</table>
<FormPage {...this.state.tmpData} />
<table style={{ width: '90%', lineHeight: '35px' }}>
<tbody>