520 lines
28 KiB
JavaScript
520 lines
28 KiB
JavaScript
import { Checkbox, message } from "antd/lib/index";
|
||
import { Modal, Button, Descriptions, Input, Select } from 'antd';
|
||
import React from 'react';
|
||
import { initFilter, extendRule, extendInclude, extendIgnoreDataRule, guid, showFiles, showJoinsHtml, showDetailModal, GetFileModel } from "../../../utils/common";
|
||
import { ExportToExcel } from '@woowalker/feui'
|
||
import styles from '../HI/StepForm.css';
|
||
import ReactToPrint from "react-to-print";
|
||
import config from "../../../config.js";
|
||
import XLSX from 'xlsx';
|
||
import { connect } from 'dva';
|
||
import FormPage from '../../../components/FormPage'
|
||
|
||
class SC028ShowPrint extends React.Component {
|
||
constructor(props) {
|
||
super(props);
|
||
this.state = {
|
||
data: null,
|
||
item: null,
|
||
btndisplay: 'none',
|
||
isTaskCheck: false, //是否待办 审批
|
||
JOINRESULT: 10, //10 参加 20 请假
|
||
NOTJOINREASON: '',//请假原因
|
||
isReasonShow: false,
|
||
isHasOpinion: false,
|
||
isHostSign: false,//是否主持人确定
|
||
isRecordSign: false,//是否记录人确定
|
||
isSend: false,//是否发送短信
|
||
listFiles: [],//附件地址
|
||
isFilesView: 'none',
|
||
tmpData: {},
|
||
fileData: [],
|
||
fileForm: {
|
||
title: "",
|
||
visible: false,
|
||
},
|
||
}
|
||
}
|
||
|
||
componentDidMount() {
|
||
if (this.props.data?.id)
|
||
this.loadData(this.props.data?.id);
|
||
}
|
||
|
||
componentWillReceiveProps(NextProps) {
|
||
if (NextProps.data?.id && this.props.data?.id != NextProps.data?.id) {
|
||
this.loadData(NextProps.data?.id);
|
||
}
|
||
}
|
||
|
||
onTableBtnExport() {
|
||
// let TableWrap = document.getElementById('table1' + this.props.record.ID);
|
||
let TableWrap = document.getElementById('table1');
|
||
let Table = TableWrap.getElementsByTagName('table1')[0];
|
||
const wb = XLSX.utils.table_to_book(Table);
|
||
XLSX.writeFile(wb, this.props.record.Nav_Department.NAME + ".xlsx")
|
||
}
|
||
|
||
//审批意见 改变
|
||
NOTJOINREASONCHANGE = (val) => {
|
||
this.state.NOTJOINREASON = val
|
||
}
|
||
|
||
//请假/参加
|
||
sureCheck = () => {
|
||
if (this.state.JOINRESULT == 20 && (this.state.NOTJOINREASON == undefined || this.state.NOTJOINREASON == null || this.state.NOTJOINREASON.length < 1)) {
|
||
message.error("请填写请假原因!");
|
||
return false
|
||
}
|
||
let json = initFilter(this.props.login.OrgId, this.props.data.id, null, null, null, this.props.data.TaskID, this.state.JOINRESULT, this.state.NOTJOINREASON);
|
||
extendIgnoreDataRule(json)
|
||
this.props.dispatch({
|
||
type: 'app/getDataByPost',
|
||
payload: json,
|
||
url: 'SC/SCMTMeeting/PAllCheck',
|
||
onComplete: (ret) => {
|
||
if (ret) {
|
||
this.props.data.onCancel();
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
//发送短信
|
||
sendMsg = () => {
|
||
if (confirm('确定发送短信?')) {
|
||
let json = initFilter(this.props.login.OrgId, this.props.data.id);
|
||
extendIgnoreDataRule(json)
|
||
this.props.dispatch({
|
||
type: 'app/getDataByPost',
|
||
payload: json,
|
||
url: 'SC/SCMTMeeting/SendMsg',
|
||
onComplete: (ret) => {
|
||
if (ret) {
|
||
this.props.data.onCancel();
|
||
}
|
||
}
|
||
});
|
||
}
|
||
}
|
||
|
||
// //请假/参加
|
||
// sureCheck = (val) => {
|
||
// if (val && val == 20 && (this.state.NOTJOINREASON == undefined || this.state.NOTJOINREASON == null || this.state.NOTJOINREASON.length < 1)) {
|
||
// message.error("请填写请假备注!");
|
||
// return false
|
||
// }
|
||
// let json = initFilter(this.props.login.OrgId, this.props.data.id, null, null, null, this.props.data.TaskID, val, this.state.NOTJOINREASON);
|
||
// this.props.dispatch({
|
||
// type: 'app/getDataByPost',
|
||
// payload: json,
|
||
// url: 'SC/SCMTMeeting/PAllCheck',
|
||
// onComplete: (ret) => {
|
||
// if (ret) {
|
||
// this.props.data.onCancel();
|
||
// }
|
||
// }
|
||
// });
|
||
// }
|
||
|
||
//加载数据(传过来的参数都在props里面,包括登录信息)
|
||
loadData = (id) => {
|
||
var taskID = this.props.data.TaskID
|
||
var loginID = this.props.login.user.ID
|
||
var orgId = this.props.login ? this.props.login.OrgId : ''; //登录后有存储登录信息
|
||
let json = initFilter(orgId);
|
||
extendRule(json, 'ID', 1, id); //ID=‘’,字段,等于,条件值, 1代表=,2代表不等于,3小于,4小于等于,5大于,6大于等于,7以开始的Like,8以结束的Like,9包含
|
||
|
||
extendInclude(json, 'Nav_Department');
|
||
extendInclude(json, 'Nav_Minutes');
|
||
extendInclude(json, 'Nav_User_Originator');
|
||
extendInclude(json, 'Nav_UserHost');
|
||
extendInclude(json, 'Nav_UserRecorder');
|
||
extendInclude(json, 'Nav_ListMeetingContent.Nav_ContentName');
|
||
extendInclude(json, 'Nav_ListMeetingContent.Nav_ContentName.Nav_ListContent.Nav_ListContentDeal');
|
||
extendInclude(json, 'Nav_ListPAll');
|
||
|
||
extendInclude(json, 'Nav_ListPAll.Nav_User.Nav_Department');
|
||
// extendInclude(json, 'Nav_ListPAll.Nav_User.Nav_Department.Nav_Parent'); //是不是有些时候会报错?
|
||
|
||
extendInclude(json, 'Nav_ListPAll.Nav_User.Nav_Person.Nav_Post');
|
||
extendInclude(json, 'Nav_ListPReView.Nav_User');
|
||
extendInclude(json, 'Nav_Files.Nav_ImgFile');
|
||
extendInclude(json, 'Nav_FilesOfficialseal.Nav_ImgFile');
|
||
extendInclude(json, 'Nav_Approve.Nav_ApproveDetails.Nav_ApproveUser');
|
||
extendIgnoreDataRule(json)
|
||
var that = this
|
||
this.props.dispatch({
|
||
type: 'app/getDataByPost',
|
||
payload: json,
|
||
url: 'SC/SCMTMeeting/GetSuitDevlop',// url: 'SC/MtMeeting/Get',
|
||
onComplete: (ret) => { //返回查询结果ret
|
||
var isTaskCheck = false
|
||
var isHasOpinion = false
|
||
var isHostSign = false//是否主持人确定
|
||
var isRecordSign = false//是否记录人确定
|
||
var isSend = false//是否记录人确定
|
||
|
||
// var listfiles = []
|
||
// var listfilesType = []
|
||
if (ret) { //判断是否有记录
|
||
if (ret.STATUS >= 20 && taskID != undefined && taskID.length > 0) {
|
||
if (ret.USER_ID_HOST == loginID || ret.USER_ID_RECORDER == loginID) {
|
||
//后台查看 task 是否已经操作过
|
||
isTaskCheck = true
|
||
}
|
||
if (!isTaskCheck && ret.Nav_ListPAll != null) {
|
||
for (let i = 0; i < ret.Nav_ListPAll.length; i++) {
|
||
// JOINRESULT
|
||
// debugger
|
||
if (ret.Nav_ListPAll[i].USER_ID == loginID && (ret.Nav_ListPAll[i].JOINRESULT == undefined || ret.Nav_ListPAll[i].JOINRESULT == null)) {
|
||
isTaskCheck = true
|
||
break
|
||
}
|
||
}
|
||
}
|
||
|
||
}
|
||
if (isTaskCheck && ((that.props.data.tableKey == null) || (that.props.data.tableKey != undefined && that.props.data.tableKey == "2"))) {
|
||
isTaskCheck = false
|
||
}
|
||
if (ret.Nav_ListMeetingContent != null && ret.Nav_ListMeetingContent.length > 0) {
|
||
for (let j = 0; j < ret.Nav_ListMeetingContent.length; j++) {
|
||
if (!isHasOpinion && ret.Nav_ListMeetingContent[j].Nav_ContentName != null && ret.Nav_ListMeetingContent[j].Nav_ContentName.Nav_ListContent != null && ret.Nav_ListMeetingContent[j].Nav_ContentName.Nav_ListContent.length > 0) {
|
||
isHasOpinion = true
|
||
}
|
||
}
|
||
}
|
||
//判断 主持人 记录人 是否确定
|
||
if (ret.Nav_ListPAll != undefined) {
|
||
for (let i = 0; i < ret.Nav_ListPAll.length; i++) {
|
||
if (ret.Nav_ListPAll[i].USER_ID == ret.USER_ID_RECORDER) {
|
||
if (ret.Nav_ListPAll[i].JOINRESULT) {
|
||
isRecordSign = true
|
||
}
|
||
} else if (ret.Nav_ListPAll[i].USER_ID == ret.USER_ID_HOST) {
|
||
if (ret.Nav_ListPAll[i].JOINRESULT) {
|
||
isHostSign = true
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
// this.props.login
|
||
// debugger
|
||
//isSend 是否发送短信
|
||
if (ret.IS_SEND && !ret.IS_SENDED && ret.STATUS > 0 && ret.STATUS <= 20) {
|
||
isSend = true
|
||
}
|
||
// if (ret.Nav_Files && ret.Nav_Files.length > 0) {
|
||
// ret.Nav_Files.forEach(e => {
|
||
// listfiles.push(e.Nav_ImgFile.FILE_PATH)
|
||
// if (e.Nav_ImgFile.FILE_TYPE.indexOf('application/vnd.openxmlformats') > -1 || e.Nav_ImgFile.FILE_TYPE.indexOf('text/') > -1 || e.Nav_ImgFile.FILE_TYPE.indexOf('application/octet-stream') > -1) {
|
||
// listfilesType.push(e.Nav_ImgFile.FILE_PATH.split('.')[1])
|
||
// } else {
|
||
// listfilesType.push(e.Nav_ImgFile.FILE_TYPE.split('/')[1])
|
||
// }
|
||
// });
|
||
// }
|
||
|
||
this.setState({ //设置setState全局变量
|
||
data: ret, //将ret对象赋值给data, data供页面调用
|
||
isTaskCheck: isTaskCheck,//有taskID 状态 审核完成 登陆者 属于参会人
|
||
isHasOpinion: isHasOpinion,//有会议意见
|
||
isHostSign: isHostSign,//是否主持人确定
|
||
isRecordSign: isRecordSign,//是否记录人确定
|
||
isSend: isSend,//是否发送短信
|
||
tmpData: {}
|
||
// listFiles: listfiles, //附件
|
||
// listFilesType: listfilesType,
|
||
|
||
})
|
||
}
|
||
});
|
||
}
|
||
|
||
filesViewChange = () => {
|
||
//抽屉查看 方法弃用
|
||
this.state.isFilesView = 'block'
|
||
if (this.state.data.Nav_Files && this.state.data.Nav_Files.length > 0) {
|
||
const newtmpData = {
|
||
data: { id: this.props.data.id, visible: ((this.state.isFilesView && this.state.isFilesView == "block") ? true : false), key: guid(), listFiles: this.state.data.Nav_Files, title: '附件查看' },
|
||
formCode: "PF141",
|
||
}
|
||
this.setState({
|
||
tmpData: newtmpData,
|
||
});
|
||
} else {
|
||
message.error("没有可查看的附件!")
|
||
}
|
||
}
|
||
|
||
callBackFiles = (id) => {
|
||
// $(id).show()
|
||
// this.forceUpdate()
|
||
}
|
||
//渲染页面
|
||
render() {
|
||
const { data, isTaskCheck, isSend, isHostSign, isRecordSign, isReasonShow } = this.state;
|
||
const CheckboxGroup = Checkbox.Group;
|
||
|
||
return <div>
|
||
<div style={{ padding: '10px' }}>
|
||
<table>
|
||
<tr>
|
||
{/* <td><Button onClick={() => showDetailModal(data.Nav_Files, this)} style={{ marginRight: '8px' }} icon="eye">查看附件</Button></td> */} {/* this.filesViewChange() 抽屉 */}
|
||
<td><ReactToPrint trigger={() => <Button type={'default'} icon={'printer'} >打印</Button>} content={() => this.componentRef} pageStyle={"#tableId" + this.props.data.id + " { padding:0 40px;} img{width :120px}"} /></td>
|
||
<td><ExportToExcel fileName='会议通知' tableId={'tableId' + this.props.data.id} /></td>
|
||
{
|
||
isSend ? <td><Button type={'primary'} style={{ marginLeft: '8px' }} icon="sound" onClick={() => this.sendMsg()}>发送短信</Button></td> : null
|
||
}
|
||
|
||
{isTaskCheck ?
|
||
<td colSpan={5}>
|
||
<Select defaultValue={10} style={{ marginLeft: '50px', color: '#1890ff' }} onChange={value => this.setState({ JOINRESULT: value, isReasonShow: (value == 10 ? false : true) })}>
|
||
<Option style={{ color: '#1890ff' }} value={10}>参加</Option>
|
||
<Option style={{ color: '#1890ff' }} value={20}>请假</Option>
|
||
</Select>
|
||
{isReasonShow ? <Input style={{ marginLeft: '8px', width: '300px' }} placeholder="填写请假原因" onChange={evt => { this.setState({ NOTJOINREASON: evt.target.value }) }}></Input> : null}
|
||
<Button type={'primary'} style={{ marginLeft: '8px' }} icon="check" onClick={() => this.sureCheck()}>确认</Button>
|
||
</td> : null
|
||
}
|
||
</tr>
|
||
|
||
{/*<Input style={{ marginLeft: '8px', width: '300px' }} placeholder="签到备注" onChange={evt => { this.setState({ Note: evt.target.value }) }} ></Input>
|
||
<Button type={'primary'} style={{ marginLeft: '8px' }} onClick={() => this.onTableBtnAgree()} icon="check" >签到</Button> */}
|
||
{/* {isTaskCheck ?
|
||
<table style={{ width: '100%', margin: '0,0,0,0', lineHeight: '35px' }}>
|
||
<tbody>
|
||
<tr><td colSpan={2}><br></br><hr></hr></td></tr>
|
||
<tr>
|
||
<th style={{ float: "right" }} >备注:</th>
|
||
<td>
|
||
<Input.TextArea style={{ width: '96%', margin: '0 0 0 15px' }} onChange={(evt) => this.NOTJOINREASONCHANGE(evt.target.value)} />
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<th></th>
|
||
<td >
|
||
<Button className={styles.agreedUser} type={'primary'} icon={'check'} onClick={() => this.sureCheck(10)} >参加</Button>
|
||
<Button className={styles.rejectedUser} type="primary" htmlType="submit" icon="close" size="50px" onClick={() => this.sureCheck(20)} >请假</Button>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
: null
|
||
} */}
|
||
|
||
</table>
|
||
</div>
|
||
|
||
{/* 安全检查 */}
|
||
<div ref={el => (this.componentRef = el)} style={{ padding: '20px', paddingTop: '20px' }} id={'tableId' + this.props.data.id}>
|
||
|
||
<h1 style={{ textAlign: 'center', margin: '15px' }}>会议通知</h1>
|
||
{
|
||
data ? <div>
|
||
<Descriptions title="" size="middle" bordered>
|
||
<Descriptions.Item label="发起部门">{data.Nav_Department?.NAME}</Descriptions.Item>
|
||
<Descriptions.Item label="发起人">{data.Nav_User_Originator?.NAME}</Descriptions.Item>
|
||
<Descriptions.Item label="通知编号">{data.CODE}</Descriptions.Item>
|
||
{/* <Descriptions.Item label="会议类型">{this.props.app.enums.SCMEETINGTYPE.enums[data.MEETINGTYPE]}</Descriptions.Item> */}
|
||
<Descriptions.Item label="会议主题" span={3}>{data.THEME}</Descriptions.Item>
|
||
{
|
||
data.MEETINGTYPE < 40 ?
|
||
<Descriptions.Item label="会议内容">{
|
||
data.Nav_ListMeetingContent?.map((item, i) => {
|
||
return (i > 0 ? "," : "") + item.Nav_ContentName.NAME
|
||
})
|
||
}</Descriptions.Item> : null
|
||
//CONTENT
|
||
}
|
||
|
||
<Descriptions.Item label="参会人员">{
|
||
showJoinsHtml(data.Nav_ListPAll, isTaskCheck, data.STATUS)
|
||
// data.Nav_ListPAll?.map((item, i) => {
|
||
// if ((item.PERSONNATURE == null || item.PERSONNATURE == 10) && (item.PERSONTYPE == 10 || item.PERSONTYPE == 40)) {//评审人 可能也加入到 参会人员中 || item.PERSONTYPE == 40
|
||
// if (!isTaskCheck&&(data.STATUS == 0 || data.STATUS == 20)) {
|
||
// return (i > 0 ? "," : "") + item.Nav_User.NAME
|
||
// } else {
|
||
// // 人员 参会反馈情况 有 黑色 无 红色
|
||
// return (<a style={{ color: ((item.JOINRESULT==undefined||item.JOINRESULT==null )? "black" : "red") }}> {(i > 0 ? "," : "") + item.Nav_User.NAME}</a>)
|
||
// }
|
||
// }
|
||
// })
|
||
}</Descriptions.Item>
|
||
|
||
<Descriptions.Item label="主持人">{
|
||
isHostSign ? data.Nav_UserHost?.NAME : <a style={{ color: "red" }}> {data.Nav_UserHost?.NAME}</a>
|
||
}</Descriptions.Item>
|
||
<Descriptions.Item label="记录人">{
|
||
isRecordSign ? data.Nav_UserRecorder?.NAME : <a style={{ color: "red" }}> {data.Nav_UserRecorder?.NAME}</a>
|
||
// data.Nav_UserRecorder?.NAME
|
||
}</Descriptions.Item>
|
||
|
||
{(data.MEETINGTYPE != null && data.MEETINGTYPE == 30) ? <Descriptions.Item label="评审人员">{
|
||
// data.Nav_ListPReView
|
||
data.Nav_ListPReView?.map((item, i) => {
|
||
|
||
if (data.STATUS == 0 || data.STATUS == 20) {
|
||
return (i > 0 ? "," : "") + item.Nav_User.NAME
|
||
}
|
||
else {
|
||
// 人员 参会反馈情况 有 黑色 无 红色
|
||
// 查找参会人员 中 是否参加 信息
|
||
// data.Nav_ListPAll
|
||
return (<a style={{ color: (item.JOINRESULT ? "black" : "red") }}> {(i > 0 ? "," : "") + item.Nav_User.NAME}</a>)
|
||
}
|
||
})
|
||
|
||
}</Descriptions.Item> : null}
|
||
<Descriptions.Item label="会议时间">{data.BEGIN_TIME}</Descriptions.Item>
|
||
{/* <Descriptions.Item label="会议地点">{data.ADDRESS}</Descriptions.Item> */}
|
||
{
|
||
data.MEETINGTYPE > 30 ?
|
||
<Descriptions.Item label="会议地点" span={2} >{data.ADDRESS}</Descriptions.Item>
|
||
: <Descriptions.Item label="会议地点">{data.ADDRESS}</Descriptions.Item>
|
||
}
|
||
{
|
||
data.MEETINGTYPE > 30 ?
|
||
<Descriptions.Item label="会议内容" span={3}>{data.CONTENT}</Descriptions.Item> : null
|
||
}
|
||
{/* <Descriptions.Item label="状态">{this.props.app.enums.PFStandardStatus.enums[data.STATUS]}</Descriptions.Item> */}
|
||
<Descriptions.Item label="加盖公章会议通知">{
|
||
showFiles(data.Nav_FilesOfficialseal, config.picServerHost, this)
|
||
}</Descriptions.Item>
|
||
<Descriptions.Item label="附件" span={3}>{
|
||
showFiles(data.Nav_Files, config.picServerHost, this)
|
||
}</Descriptions.Item>
|
||
|
||
{/* <hr></hr> */}
|
||
{/* <Descriptions.Item label="审阅意见" span={3}>{
|
||
showApprove(data.Nav_Approve?.Nav_ApproveDetails, this.props.app.enums.NodeApproveStatus.enums, config.picServerHost)
|
||
}</Descriptions.Item> */}
|
||
|
||
</Descriptions>
|
||
</div> : null
|
||
}
|
||
|
||
{/* 显示会议意见 */}
|
||
{/* {
|
||
isHasOpinion ?
|
||
<table style={{ width: '100%', marginTop: '15px', textAlign: 'center', borderTop: '1px solid #333', borderLeft: '1px solid #333' }} className={styles.PrintForm}>
|
||
<tbody>
|
||
<tr>
|
||
<td colSpan={2}><h3>会议意见</h3></td>
|
||
</tr>
|
||
<tr>
|
||
<td>题目</td>
|
||
<td>选项</td>
|
||
</tr>
|
||
{data?.Nav_ListMeetingContent.map((item, i) => {
|
||
return item.Nav_ContentName.Nav_ListContent?.map((itemContent, j) => {
|
||
return <tr>
|
||
<td>{itemContent.TITLE}</td>
|
||
<td>
|
||
{
|
||
itemContent.CHECKTYPE == 20 ?
|
||
<CheckboxGroup disabled
|
||
options={
|
||
itemContent?.Nav_ListContentDeal?.map((itemContentDetail, k) => {
|
||
return itemContentDetail.CONTENTDETAIL
|
||
})
|
||
} />
|
||
:
|
||
<Radio.Group disabled >
|
||
{
|
||
itemContent?.Nav_ListContentDeal?.map((itemContentDetail, k) => {
|
||
return <Radio value={k}>{itemContentDetail.CONTENTDETAIL}</Radio>
|
||
})
|
||
}
|
||
</Radio.Group>
|
||
}
|
||
</td>
|
||
</tr>
|
||
})
|
||
})}
|
||
</tbody>
|
||
</table> : null
|
||
} */}
|
||
|
||
{/* 参加 或者请假 */}
|
||
|
||
{/* 如果会议已经开始了 显示
|
||
会议人员名单
|
||
序号 "部门/车间
|
||
班组人员归到车间" 姓名 岗位 参加/请假 */}
|
||
{
|
||
// data?.Nav_Minutes && data?.Nav_ListPAll ? 签到的时候不显示 会议人员名单
|
||
!isTaskCheck && data?.Nav_ListPAll ?
|
||
<table className={styles.PrintFormLight}>
|
||
{/* style={{ width: '100%', marginTop: '15px', textAlign: 'center', borderTop: '1px solid #333', borderLeft: '1px solid #333' }}
|
||
className={styles.PrintForm} */}
|
||
<tbody>
|
||
<tr>
|
||
<td colSpan={5} style={{ textAlign: 'center' }}><h3>会议人员名单</h3></td>
|
||
</tr>
|
||
<tr className={styles.PrintFormLightTh}>
|
||
<td>工号</td>
|
||
<td>姓名</td>
|
||
<td>部门/车间/班组</td> {/*部门/车间 班组人员归到车间 */}
|
||
<td>岗位</td>
|
||
<td>参会反馈情况</td>
|
||
</tr>
|
||
|
||
{data?.Nav_ListPAll?.map((item, i) => {
|
||
if (item.PERSONNATURE == null || item.PERSONNATURE == 10) {
|
||
return <tr>
|
||
{/* <td>{(i + 1)}</td> */}
|
||
<td>{item.Nav_User.CODE}</td>
|
||
{/* <td>{item.Nav_User.Nav_Department?.NAME}</td> //是不是有些时候会报错?*/}
|
||
<td>{item.Nav_User.NAME}</td>
|
||
<td>{item.Nav_User.Nav_Department?.NAME}</td>
|
||
<td>{item.Nav_User.Nav_Person?.Nav_Post?.NAME}</td>
|
||
<td>{(item.JOINRESULT == undefined || item.JOINRESULT == null) ? "" : (this.props.app.enums.JoinTaskResult.enums[item.JOINRESULT] == '未完成' ? '未确定' : (this.props.app.enums.JoinTaskResult.enums[item.JOINRESULT] == "参加" ? "参加" : (this.props.app.enums.JoinTaskResult.enums[item.JOINRESULT] + "(" + item.NOTJOINREASON + ")")))}</td>
|
||
</tr>
|
||
}
|
||
})}
|
||
</tbody>
|
||
</table> : null
|
||
}
|
||
|
||
{/* 参加 请假 */}
|
||
{/* {isTaskCheck ?
|
||
<table style={{ width: '100%', margin: '0,0,0,0', lineHeight: '35px' }}>
|
||
<tbody>
|
||
<tr><td colSpan={2}><br></br><hr></hr></td></tr>
|
||
<tr>
|
||
<th style={{ float: "right" }} >备注:</th>
|
||
<td>
|
||
<Input.TextArea style={{ width: '96%', margin: '0 0 0 15px' }} onChange={(evt) => this.NOTJOINREASONCHANGE(evt.target.value)} />
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<th></th>
|
||
<td >
|
||
<Button className={styles.agreedUser} type={'primary'} icon={'check'} onClick={() => this.sureCheck(10)} >参加</Button>
|
||
<Button className={styles.rejectedUser} type="primary" htmlType="submit" icon="close" size="50px" onClick={() => this.sureCheck(20)} >请假</Button>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
: null
|
||
} */}
|
||
|
||
{/* 附件查看 */}
|
||
{/* <div style={{ display: isFilesView }}>
|
||
{
|
||
(data && data.Nav_Files) ? showFilesView(data.Nav_Files, config.picServerHost) : null
|
||
}
|
||
</div> */}
|
||
|
||
</div>
|
||
|
||
{
|
||
GetFileModel(Modal, FormPage, this, this.state.fileForm.visible)
|
||
}
|
||
</div>
|
||
}
|
||
}
|
||
export default connect(({ login, app }) => ({ login, app }))(SC028ShowPrint)
|