(this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id} className="printDIV">
-
领导带班下井记录
+
动火作业工作票
{
data ?
-
- {data.CODE}
- {data.NAME}
- {data.DISCLOSURE_DATE}
- {data.JOB_LOCATION}
- {data.Nav_User ? data.Nav_User.NAME : ''}
- {
- data.Nav_Person && data.Nav_Person.map((item, i) => {
- if (i == (data.Nav_Person.length - 1)) {
- if (item.DEAL_STATUS == 0)
- return
- else
- return item.Nav_User?.NAME
- } else {
- if (item.DEAL_STATUS == 0)
- return
- else
- return item.Nav_User?.NAME + ' '
- }
- })
- }
- {data.DisclosureContent}
- {
- (data.Nav_User && data.Nav_User.FILE_PATH)?
- showUserSign(data.Nav_User, config.picServerHost):null
+
+ {data.Nav_Company?.NAME}
+ {data.Nav_ProductionUnit?.NAME}
+ {data.CREATE_TIME}
+
+ {data.Nav_ApplyDepartment?.NAME}
+ {data.Nav_ApplyUser?.NAME}
+ {data.CODE}
+ {data.Nav_OperationStep?.NAME}
+ {enums.HMOperationTaskAuditEnum.enums[data.AUDIT_LEVEL]}
+ {enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}
+ {data.Nav_FireDepartment?.NAME}
+ {data.Nav_FireUser?.NAME}
+ {data.Nav_SafeUser?.NAME}
+ {data.Nav_Area?.NAME}
+ {data.JOB_CONTENT}
+ {data.Nav_Type?.NAME}
+ {data.JOB_CONTENT}
+ {data.Nav_MonitorUser?.NAME}
+ {data.JOB_DATE}
+ {data.JOB_END_DATE}
+ { data.Nav_Risks && data.Nav_Risks.map((item, i) => {
+ return item.RISK_NAME + ' '
+ })}
+ {showFiles(data.Nav_Files, config.picServerHost, this)}
+ {
+ data && data.Nav_Users?
+
+
+
+
+ | 序号 |
+ 作业人员类别 |
+ 姓名 |
+ 证书编号 |
+ 附件 |
+ 签名 |
+
+ {
+ data.Nav_Users && data.Nav_Users.map((item, i) => {
+ return
+ |
+ {i + 1}
+ |
+
+ {item.Nav_UserType?.NAME}
+ |
+
+ {item.Nav_User?.NAME}
+ |
+
+ {item.CERTIFICATE_CODE}
+ |
+
+ {showFiles(item.Nav_UserFiles, config.picServerHost, this)}
+ |
+
+ { item.DEAL_STATUS == 1?
+ showUserSign(item.Nav_User, config.picServerHost):null
+ }
+ |
+
+ })
+ }
+
+
: null
+ }
+ {
+ data && data.Nav_Details?
+
+
+
+
+ | 序号 |
+ 作业阶段 |
+ 作业流程及安全措施 |
+ 是否确认 |
+ 附件 |
+
+ {
+ data.Nav_Details && data.Nav_Details.map((item, i) => {
+ return
+ |
+ {i + 1}
+ |
+
+ {enums.FOJobStepEnum.enums[data.JOB_STEP]}
+ |
+
+ {item.CONTENT}
+ |
+
+ {enums.FOYesOrNoEnum.enums[data.IS_CONFIRM]}
+ |
+
+ {showFiles(item.Nav_DetailFiles, config.picServerHost, this)}
+ |
+
+
+ })
+ }
+
+
: null
+ }
+
+ {data.COMPLETED_CONDITION}
+ {enums.FOYesOrNoEnum.enums[data.IS_FIRE]}
+ {data.ACT_DATE}
+ {showFiles(data.Nav_FireFiles, config.picServerHost, this)}
+ {data.Nav_DispatchUser?.NAME}
+ {
+
+ data.USER_DEAL_STATUS == 1?
+ showUserSign(data.Nav_FireUser, config.picServerHost)
+ :null
}
- {
- data.Nav_Person && data.Nav_Person.map((item, i) => {
- if (item.DEAL_STATUS == 1) {
- showUserSign(item.Nav_User, config.picServerHost)
- }
- })
+ {
+
+ data.SAFE_DEAL_STATUS == 1?
+ showUserSign(data.Nav_SafeUser, config.picServerHost)
+ :null
+
+ }
+ {
+
+ data.DISPATCH_DEAL_STATUS == 1?
+ showUserSign(data.Nav_DispatchUser, config.picServerHost)
+ :null
+
+ }
+ {
+ data.COMPLETED_CONTENT
+ }
+ {
+ enums.FOYesOrNoEnum.enums[data.IS_LEAVE]
+ }
+ {
+ data.ACT_END_DATE
+ }
+ {
+ data.LEAVE_DATE
+ }
+ {
+ showFiles(data.Nav_MonitorFiles, config.picServerHost, this)
+ }
+ {
+ data.USER_DEAL_FINISH_STATUS == 1?
+ showUserSign(data.Nav_FireUser, config.picServerHost)
+ :null
+ }
+ {
+ data.SAFE_DEAL_FINISH_STATUS == 1?
+ showUserSign(data.Nav_SafeUser, config.picServerHost)
+ :null
}
: null
diff --git a/src/components/CustomPages/FO/FO045ShowPrint.js b/src/components/CustomPages/FO/FO045ShowPrint.js
index 77104cc..855a656 100644
--- a/src/components/CustomPages/FO/FO045ShowPrint.js
+++ b/src/components/CustomPages/FO/FO045ShowPrint.js
@@ -3,11 +3,12 @@ import { Button,Descriptions, Popconfirm, Row, Col, Form, Input, Select, Table }
import React from 'react';
import { initFilter, extendRule, extendInclude,extendIgnoreDataRule, setDataFieldValue, guid, initQueryFilter,showFiles, GetFileModel,showUserSign } from "../../../utils/common";
import ReactToPrint from "react-to-print";
-import stylesStep from '../HI/StepForm.css';
+import styles from '../HI/StepForm.css';
import config from "../../../config";
import XLSX from 'xlsx';
import { connect } from 'dva';
import moment from 'moment';
+import FormPage from '../../../components/FormPage'
class FO045ShowPrint extends React.Component {
constructor(props) {
super(props);
@@ -33,14 +34,14 @@ class FO045ShowPrint extends React.Component {
onTableBtnAgree() {
this.props.dispatch({
type: 'app/getDataByPost',
- url: 'FO/FOLeaderWellRecord/PersonalAgree',
+ url: 'FO/FOFireJobWb/IdentityUpdate',
payload: {
ID: this.props.data.id,
TaskID: this.props.data.TaskID,
},
onComplete: (ret) => {
if (ret) {
- message.success('确认成功!');
+ message.success('提交成功!');
this.setState({ BtnAgreeDisplay: 'none' })
this.BtnClose();
}
@@ -60,7 +61,7 @@ class FO045ShowPrint extends React.Component {
this.props.dispatch({
type: 'app/getDataByPost',
payload: json,
- url: 'FO/FOLeaderWellRecord/GetEdit',
+ url: 'FO/FOFireJobWb/GetEdit',
onComplete: (ret) => {
if (ret) {
if(this.props.data && this.props.data.loadDataDeal)
@@ -73,73 +74,201 @@ class FO045ShowPrint extends React.Component {
}else{
this.setState({ BtnAgreeDisplay: 'inline' })
}
+ this.onClickApprove(false);
}
-
+
}
});
}
-
+ 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() {
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")
+ XLSX.writeFile(wb, "动火作业工作票(外包).xlsx")
}
render() {
const { data } = this.state;
+ const enums = this.props.data.enums ? this.props.data.enums : this.props.app.enums;
return
+
}
content={() => this.componentRef}
pageStyle=".printDIV { padding:0 40px;} img{width :120px}"
/>
-
+
{/* */}
(this.componentRef = el)} style={{ padding: '20px' }} id={'tableId' + this.props.data.id} className="printDIV">
-
领导带班下井记录
+
动火作业工作票(外包)
{
data ?
-
- {data.CODE}
- {data.NAME}
- {data.DISCLOSURE_DATE}
- {data.JOB_LOCATION}
- {data.Nav_User ? data.Nav_User.NAME : ''}
- {
- data.Nav_Person && data.Nav_Person.map((item, i) => {
- if (i == (data.Nav_Person.length - 1)) {
- if (item.DEAL_STATUS == 0)
- return
- else
- return item.Nav_User?.NAME
- } else {
- if (item.DEAL_STATUS == 0)
- return
- else
- return item.Nav_User?.NAME + ' '
- }
- })
- }
- {data.DisclosureContent}
- {
- (data.Nav_User && data.Nav_User.FILE_PATH)?
- showUserSign(data.Nav_User, config.picServerHost):null
+
+ {data.Nav_Company?.NAME}
+ {data.Nav_ProductionUnit?.NAME}
+ {data.CREATE_TIME}
+
+ {data.Nav_ApplyDepartment?.NAME}
+ {data.Nav_ApplyUser?.NAME}
+ {data.CODE}
+ {data.Nav_OperationStep?.NAME}
+ {enums.HMOperationTaskAuditEnum.enums[data.AUDIT_LEVEL]}
+ {enums.SKEvaluateLevelEnum.enums[data.EVALUATE_LEVEL]}
+ {data.DPARTMENT_NAME}
+ {data.USER_NAME}
+ {data.USER_PHONE}
+ {data.SAFE_USER_NAME}
+ {data.SAFE_USER_PHONE}
+ {data.Nav_Area?.NAME}
+ {data.JOB_CONTENT}
+ {data.Nav_Type?.NAME}
+ {data.JOB_CONTENT}
+ {data.Nav_MonitorUser?.NAME}
+ {data.JOB_DATE}
+ {data.JOB_END_DATE}
+ { data.Nav_Risks && data.Nav_Risks.map((item, i) => {
+ return item.RISK_NAME + ' '
+ })}
+ {showFiles(data.Nav_Files, config.picServerHost, this)}
+ {
+ data && data.Nav_Users?
+
+
+
+
+ | 序号 |
+ 作业人员类别 |
+ 姓名 |
+ 证书编号 |
+ 附件 |
+ {/* 签名 | */}
+
+ {
+ data.Nav_Users && data.Nav_Users.map((item, i) => {
+ return
+ |
+ {i + 1}
+ |
+
+ {item.Nav_UserType?.NAME}
+ |
+
+ {item.USER_NAME}
+ |
+
+ {item.CERTIFICATE_CODE}
+ |
+
+ {showFiles(item.Nav_UserFiles, config.picServerHost, this)}
+ |
+ {/*
+ { item.DEAL_STATUS == 1?
+ showUserSign(item.Nav_User, config.picServerHost):null
+ }
+ | */}
+
+ })
+ }
+
+
: null
+ }
+ {
+ data && data.Nav_Details?
+
+
+
+
+ | 序号 |
+ 作业阶段 |
+ 作业流程及安全措施 |
+ 是否确认 |
+ 附件 |
+
+ {
+ data.Nav_Details && data.Nav_Details.map((item, i) => {
+ return
+ |
+ {i + 1}
+ |
+
+ {enums.FOJobStepEnum.enums[data.JOB_STEP]}
+ |
+
+ {item.CONTENT}
+ |
+
+ {enums.FOYesOrNoEnum.enums[data.IS_CONFIRM]}
+ |
+
+ {showFiles(item.Nav_DetailFiles, config.picServerHost, this)}
+ |
+
+
+ })
+ }
+
+
: null
+ }
+
+ {data.COMPLETED_CONDITION}
+ {enums.FOYesOrNoEnum.enums[data.IS_FIRE]}
+ {data.ACT_DATE}
+ {showFiles(data.Nav_FireFiles, config.picServerHost, this)}
+
+ {
+
+ data.USER_DEAL_STATUS == 1?
+ showUserSign(data.Nav_FireUser, config.picServerHost)
+ :null
}
- {
- data.Nav_Person && data.Nav_Person.map((item, i) => {
- if (item.DEAL_STATUS == 1) {
- showUserSign(item.Nav_User, config.picServerHost)
- }
- })
+ {
+
+ data.SAFE_DEAL_STATUS == 1?
+ showUserSign(data.Nav_SafeUser, config.picServerHost)
+ :null
+
+ }
+ {
+ data.COMPLETED_CONTENT
+ }
+ {
+ enums.FOYesOrNoEnum.enums[data.IS_LEAVE]
+ }
+ {
+ data.ACT_END_DATE
+ }
+ {
+ data.LEAVE_DATE
+ }
+ {
+ showFiles(data.Nav_MonitorFiles, config.picServerHost, this)
+ }
+ {
+ data.USER_DEAL_FINISH_STATUS == 1?
+ showUserSign(data.Nav_FireUser, config.picServerHost)
+ :null
+ }
+ {
+ data.SAFE_DEAL_FINISH_STATUS == 1?
+ showUserSign(data.Nav_SafeUser, config.picServerHost)
+ :null
}
: null
diff --git a/src/components/CustomPages/SE/SE018EditPage.js b/src/components/CustomPages/SE/SE018EditPage.js
index ecc576d..ac22122 100644
--- a/src/components/CustomPages/SE/SE018EditPage.js
+++ b/src/components/CustomPages/SE/SE018EditPage.js
@@ -270,7 +270,7 @@ class SE018EditPage extends React.Component {
{data && this.returnModel(data.Nav_Notify.TRAIN_MODEL)} |
考核方式 |
{/*
{data && data.Nav_Notify && data.Nav_Notify.Nav_TrainCheckType ? data.Nav_Notify.Nav_TrainCheckType.NAME : null} | */}
-
{data.Nav_Notify.CHECKTYPE && enums.PlanCheckType.enums[data.Nav_Notify.CHECKTYPE]} |
+
{data && data.Nav_Notify && data.Nav_Notify.CHECKTYPE && this.props.app.enums.PlanCheckType.enums[data.Nav_Notify.CHECKTYPE]} |
| 培训内容 |
diff --git a/src/components/CustomPages/SE/SE018PaperPage.js b/src/components/CustomPages/SE/SE018PaperPage.js
index a97a044..a8bbe3b 100644
--- a/src/components/CustomPages/SE/SE018PaperPage.js
+++ b/src/components/CustomPages/SE/SE018PaperPage.js
@@ -399,7 +399,7 @@ class SE018PaperPage extends React.Component {
{notify ? this.returnModel(notify.TRAIN_MODEL) : null} |
考核方式 |
{/* {notify && notify.Nav_TrainCheckType ? notify.Nav_TrainCheckType.NAME : null} | */}
- {notify && notify.CHECKTYPE && enums.PlanCheckType.enums[notify.CHECKTYPE]} |
+ {notify && notify.CHECKTYPE && this.props.app.enums.PlanCheckType.enums[notify.CHECKTYPE]} |
| 培训内容 |
diff --git a/src/files/edit/FOO035.js b/src/files/edit/FO035.js
similarity index 100%
rename from src/files/edit/FOO035.js
rename to src/files/edit/FO035.js
diff --git a/src/files/edit/FO039.js b/src/files/edit/FO039.js
new file mode 100644
index 0000000..de1bee1
--- /dev/null
+++ b/src/files/edit/FO039.js
@@ -0,0 +1,57 @@
+import { message } from "antd/lib/index";
+import { getPropertyData, extendInclude, extendRule, getDataFieldValue, setDataFieldValue, initFilter, guid } from "../../utils/common";
+import moment from 'moment';
+/**
+ * @return {string}
+ */
+// 编辑
+export default {
+ onChange: ({ colInfo, getFieldValue, setFieldValueByBatch,setFieldValue, dispatch,login,updateSubTableData }) => {
+ if (!(colInfo.FIELD_NAME == 'Nav_User.NAME'))
+ return;
+
+ let code = getFieldValue('USER_ID')
+ let json = initFilter(login.OrgId,code);
+ dispatch({
+ type: 'app/getDataByPost',
+ url: 'FO/FOProfessionalResume/GetUserAge',
+ payload: json,
+ onlyData: false,
+ onComplete: (re) => {
+ if (re && re.IsSuccessful && re.Data) {
+ setFieldValue('AGE',re.Data.AGE)
+ }
+ }
+ })
+ },
+ onSubChange: ({ row, getFieldValue, setFieldValueByBatch, pageCode, record, setDataState, colInfo, dispatch, stateData, saveRowRecord }) => {
+ if (colInfo.FIELD_NAME === "START_DATE" ||colInfo.FIELD_NAME === "END_DATE" ) {
+ let startDate = getDataFieldValue(record, 'START_DATE');
+ let endDate =getDataFieldValue(record, 'END_DATE');
+ if(startDate && endDate)
+ {
+ const start = new Date(startDate);
+ const end = new Date(endDate);
+ const years = end.getFullYear() - start.getFullYear();
+ const months = end.getMonth() - start.getMonth();
+ let yearsWithDecimal = (years + (months / 12)).toFixed(1); // 保留一位小数
+ if (yearsWithDecimal.endsWith('.0')) {
+ // 去掉末尾的.0,但不四舍五入
+ yearsWithDecimal = yearsWithDecimal.substring(0, yearsWithDecimal.length - 2);
+
+ }
+ record["WORK_YEAR"] = yearsWithDecimal;
+ saveRowRecord(record)
+ if(stateData && stateData.Nav_Details)
+ {
+ let year = 0;
+ stateData.Nav_Details.map(t=>{
+ year = Math.round(year + t.WORK_YEAR);
+ })
+ stateData.YEAR=year
+ setDataState(stateData)
+ }
+ }
+ }
+}
+}
\ No newline at end of file
diff --git a/src/files/edit/FO043.js b/src/files/edit/FO043.js
new file mode 100644
index 0000000..d86f811
--- /dev/null
+++ b/src/files/edit/FO043.js
@@ -0,0 +1,108 @@
+import { message } from "antd/lib/index";
+import { getPropertyData, extendInclude, extendRule, getDataFieldValue, setDataFieldValue, initFilter, guid } from "../../utils/common";
+import moment from 'moment';
+/**
+ * @return {string}
+ */
+// 编辑
+export default {
+ onBeforeSaveHandleRecord(params) {
+ params.record.TaskID = params.data.TaskID //TaskID传递消息表ID
+ params.record.PUBLISH = params.customParams;
+ },
+ onBeforeEdit: ({ isNew,login,record, dispatch,stateData, setFieldEditable,setFieldVisible,setFieldValue,setFieldValueByBatch }) => {
+ if (isNew) {
+ let json = initFilter(login.OrgId);
+ extendRule(json, "ID", 1, login.userId);
+ extendInclude(json, 'Nav_Department.Nav_Unit');
+ dispatch({
+ type: 'app/getDataByPost',
+ url: 'FM/User/Get',
+ payload: json,
+ onComplete: (ret) => {
+ if (ret) {
+ let temps = [];
+ temps.push({ field: 'APPLY_USER_ID', value: ret.ID})
+ temps.push({ field: 'Nav_ApplyUser.NAME', value: ret.NAME })
+ temps.push({ field: 'APPLY_DEPARTMENT_ID', value: ret.DEPARTMENT_ID})
+ temps.push({ field: 'Nav_ApplyDepartment.NAME', value: ret.Nav_Department?.NAME })
+ temps.push({ field: 'PRODUCTION_UNIT_ID', value: ret.Nav_Department?.PRODUCTION_UNIT_ID})
+ temps.push({ field: 'Nav_ProductionUnit.NAME', value: ret.Nav_Department?.Nav_Unit?.NAME })
+ setFieldValueByBatch(temps);
+ }
+ }
+ });
+ ///发起人不能编辑
+ setFieldEditable('COMPLETED_CONDITION', false)
+ setFieldEditable('IS_FIRE', false)
+ setFieldEditable('ACT_DATE', false)
+ setFieldEditable('Nav_FireFiles', false)
+ setFieldEditable('Nav_DispatchUser.NAME', false)
+ setFieldEditable('COMPLETED_CONTENT', false)
+ setFieldEditable('IS_LEAVE', false)
+ setFieldEditable('ACT_END_DATE', false)
+ setFieldEditable('LEAVE_DATE', false)
+ setFieldEditable('Nav_MonitorFiles', false)
+ }
+ else if(stateData.FIRE_STATUS == 10)
+ {
+ setFieldEditable('COMPLETED_CONDITION', true)
+ setFieldEditable('IS_FIRE', true)
+ setFieldEditable('ACT_DATE', true)
+ setFieldEditable('Nav_FireFiles', true)
+ setFieldEditable('Nav_DispatchUser.NAME', true)
+ setFieldEditable('COMPLETED_CONTENT', false)
+ setFieldEditable('IS_LEAVE', false)
+ setFieldEditable('ACT_END_DATE', false)
+ setFieldEditable('LEAVE_DATE', false)
+ setFieldEditable('Nav_MonitorFiles', false)
+ }
+ else if(stateData.FIRE_STATUS == 18)
+ {
+ setFieldEditable('COMPLETED_CONDITION', false)
+ setFieldEditable('IS_FIRE', false)
+ setFieldEditable('ACT_DATE', false)
+ setFieldEditable('Nav_FireFiles', false)
+ setFieldEditable('Nav_DispatchUser', false)
+ setFieldEditable('COMPLETED_CONTENT', true)
+ setFieldEditable('IS_LEAVE', true)
+ setFieldEditable('ACT_END_DATE', true)
+ setFieldEditable('LEAVE_DATE', true)
+ setFieldEditable('Nav_MonitorFiles', true)
+ }else
+ {
+ setFieldEditable('COMPLETED_CONDITION', false)
+ setFieldEditable('IS_FIRE', false)
+ setFieldEditable('ACT_DATE', false)
+ setFieldEditable('Nav_FireFiles', false)
+ setFieldEditable('Nav_DispatchUser.NAME', false)
+ setFieldEditable('COMPLETED_CONTENT', false)
+ setFieldEditable('IS_LEAVE', false)
+ setFieldEditable('ACT_END_DATE', false)
+ setFieldEditable('LEAVE_DATE', false)
+ setFieldEditable('Nav_MonitorFiles', false)
+ }
+ },
+ onChange: ({ colInfo, getFieldValue, setFieldValueByBatch, dispatch,login,updateSubTableData }) => {
+ if (!(colInfo.FIELD_NAME == 'Nav_OperationStep.NAME'))
+ return;
+
+ let code = getFieldValue('OPERATION_STEP_ID')
+ let json = initFilter(login.OrgId,code);
+ dispatch({
+ type: 'app/getDataByPost',
+ url: 'FO/FOFireJob/GetAnalyzeDetail',
+ payload: json,
+ onlyData: false,
+ onComplete: (re) => {
+ if (re && re.IsSuccessful && re.Data) {
+ let temps = [];
+ temps.push({ field: 'Nav_Details', value: re.Data.Nav_Details })
+ temps.push({ field: 'EVALUATE_LEVEL', value: re.Data.EVALUATE_LEVEL })
+ temps.push({ field: 'AUDIT_LEVEL', value: re.Data.AUDIT_LEVEL})
+ setFieldValueByBatch(temps);
+ }
+ }
+ })
+ },
+}
diff --git a/src/utils/customConfig.js b/src/utils/customConfig.js
index d5fdaf9..7b07a2a 100644
--- a/src/utils/customConfig.js
+++ b/src/utils/customConfig.js
@@ -404,7 +404,7 @@ export default function (componentName, formId, formParam, data, formCode, formD
BI011TrainSafeAnalysis: ,
// BI012NotificationTaskAnalysis: ,
// BI013RiskAnalysisModel: ,
- // BI014RiskPerformanceModel: ,
+ BI014RiskPerformanceModel: ,
// BI030FormRunAnalysis: ,
// BI060MapeShow: ,
// BI060MapePoint: ,