提交 ce543fef authored 作者: 钟是志's avatar 钟是志

28479 北电]免缓军训管理,流程详情开出打印预览-任翠林

上级 dcb629b9
...@@ -5,13 +5,14 @@ ...@@ -5,13 +5,14 @@
* *
* */ * */
import React from 'react'; import React, { useContext } from 'react';
import * as service from '../publicApiService'; import * as service from '../publicApiService';
import AuditPage from './AuditPage'; import AuditPage from './AuditPage';
import * as destructionFunc from '../destruction'; import * as destructionFunc from '../destruction';
import { Link } from 'dva/router'; import { Link } from 'dva/router';
import { CreateC } from '../../ExportComponent/ActiveMenuComponent';
export default class Index extends React.Component { class Index extends React.Component {
static defaultProps = { static defaultProps = {
hasBatchAudit: false, // 是否有批量审核按钮 默认关掉 如果有需要再在外面包一层 2020年5月6日 18:44:11 钟是志 hasBatchAudit: false, // 是否有批量审核按钮 默认关掉 如果有需要再在外面包一层 2020年5月6日 18:44:11 钟是志
batchAuditButtonName: '批量审核', // 如果需要批量审核 则直接用 BatchAudit.js 文件 batchAuditButtonName: '批量审核', // 如果需要批量审核 则直接用 BatchAudit.js 文件
...@@ -19,7 +20,6 @@ export default class Index extends React.Component { ...@@ -19,7 +20,6 @@ export default class Index extends React.Component {
constructor(props) { constructor(props) {
super(props); super(props);
let pathname = this.props.location.pathname; let pathname = this.props.location.pathname;
this.state = { this.state = {
columns: [], columns: [],
...@@ -39,12 +39,19 @@ export default class Index extends React.Component { ...@@ -39,12 +39,19 @@ export default class Index extends React.Component {
getFormDetail = (workId) => { getFormDetail = (workId) => {
const { dataBaseId } = this.state; const { dataBaseId } = this.state;
service.getFormDetail(workId).then((response) => { service.getFormDetail(workId)
.then((response) => {
if (typeof response.unifiedServicePatternModel === 'undefined') { if (typeof response.unifiedServicePatternModel === 'undefined') {
return false; return false;
} }
destructionFunc.destructionGetDetail(response).then((x) => { destructionFunc.destructionGetDetail(response)
const { addFields, tableInfo, allConfigSetInfo, searchCondition } = x; .then((x) => {
const {
addFields,
tableInfo,
allConfigSetInfo,
searchCondition
} = x;
this.setState( this.setState(
{ {
addFields, addFields,
...@@ -61,8 +68,14 @@ export default class Index extends React.Component { ...@@ -61,8 +68,14 @@ export default class Index extends React.Component {
}; };
giveDetailColumns = () => { giveDetailColumns = () => {
const { columns, workId, dataBaseId, addFields, tableInfo } = this.state; const {
const { showPrint } = this.props; columns,
workId,
dataBaseId,
addFields,
tableInfo
} = this.state;
const { showPrint, routerConfig } = this.props;
const process_status = columns.find((x) => { const process_status = columns.find((x) => {
return x.name === 'process_status'; return x.name === 'process_status';
}); });
...@@ -86,7 +99,7 @@ export default class Index extends React.Component { ...@@ -86,7 +99,7 @@ export default class Index extends React.Component {
record, record,
addFields, addFields,
tableInfo, tableInfo,
showPrint, showPrint: showPrint || routerConfig.showPrint === '1',
}, },
}}> }}>
详情 详情
...@@ -101,26 +114,22 @@ export default class Index extends React.Component { ...@@ -101,26 +114,22 @@ export default class Index extends React.Component {
getColumn = () => { getColumn = () => {
const { workId } = this.state; const { workId } = this.state;
service.getColumns(workId).then((response) => { service.getColumns(workId)
if(!response || !Array.isArray(response)){ .then((response) => {
if (!response || !Array.isArray(response)) {
response = []; response = [];
} }
for(let item of response){ for (let item of response) {
if(item.dataIndex === 'taskName' && !item.width){ if (item.dataIndex === 'taskName' && !item.width) {
item.width = 200; item.width = 200;
} }
if(item.dataIndex === 'createTime' && !item.width){ if (item.dataIndex === 'createTime' && !item.width) {
item.width = 200; item.width = 200;
} }
} }
response = response.filter((x) => { response = response.filter((x) => {
return x.title !== '流程进度'; return x.title !== '流程进度';
}); });
// for(let item of response){
// if(!item.width){
// // item.width = 90; // 给一个默认宽度
// }
// }
if (response && response.length) { if (response && response.length) {
this.setState( this.setState(
{ {
...@@ -140,7 +149,8 @@ export default class Index extends React.Component { ...@@ -140,7 +149,8 @@ export default class Index extends React.Component {
if (workId) { if (workId) {
this.getColumn(); this.getColumn();
} else { } else {
service.getId(pathname).then((x) => { service.getId(pathname)
.then((x) => {
this.setState( this.setState(
{ {
workId: x.workId, workId: x.workId,
...@@ -164,7 +174,13 @@ export default class Index extends React.Component { ...@@ -164,7 +174,13 @@ export default class Index extends React.Component {
allConfigSetInfo, allConfigSetInfo,
tableInfo, tableInfo,
} = this.state; } = this.state;
const { hasBatchAudit, batchAuditButtonName, showPrint, noNeedForm, tab2Buttons = [] } = this.props; const {
hasBatchAudit,
batchAuditButtonName,
showPrint,
noNeedForm,
tab2Buttons = []
} = this.props;
if (!workId) { if (!workId) {
return null; return null;
} }
...@@ -186,3 +202,10 @@ export default class Index extends React.Component { ...@@ -186,3 +202,10 @@ export default class Index extends React.Component {
); );
} }
} }
export default function Pr(props) {
const { routerConfig } = useContext(CreateC);
return (
<Index {...props} routerConfig={routerConfig}/>
);
}
...@@ -83,7 +83,6 @@ export default class Detail extends Component { ...@@ -83,7 +83,6 @@ export default class Detail extends Component {
// 贵建把打印预览显示出来 // 贵建把打印预览显示出来
showPrint = true; showPrint = true;
} }
console.log(showPrint);
let iframeUrl = `${url[0]}/#/IframeForDetail?id=${id}&token=${getToken()}`; let iframeUrl = `${url[0]}/#/IframeForDetail?id=${id}&token=${getToken()}`;
if (showPrint) { if (showPrint) {
iframeUrl = iframeUrl + '&showPrint=true'; iframeUrl = iframeUrl + '&showPrint=true';
...@@ -92,6 +91,7 @@ export default class Detail extends Component { ...@@ -92,6 +91,7 @@ export default class Detail extends Component {
iframeUrl = config.gateWayPort + `/portal/#/showAuditIframe?id=${id}&hasSingle=false&token=${getToken()}&isPrint=false`; iframeUrl = config.gateWayPort + `/portal/#/showAuditIframe?id=${id}&hasSingle=false&token=${getToken()}&isPrint=false`;
} }
// iframeUrl = `http://localhost:8000/onestop/IframeForDetail?id=${id}&token=${getToken()}`; // iframeUrl = `http://localhost:8000/onestop/IframeForDetail?id=${id}&token=${getToken()}`;
// console.log(showPrint);
return ( return (
<PageHeaderWrapper title=''> <PageHeaderWrapper title=''>
<Shell> <Shell>
......
import React, { useEffect, useState } from 'react'; import React, { useEffect, useState, createContext } from 'react';
import CheckRecord from '@/webPublic/FormInsertDiy/ExportComponent/CheckRecord'; // 查询类 import CheckRecord from '@/webPublic/FormInsertDiy/ExportComponent/CheckRecord'; // 查询类
import Apply from '@/webPublic/FormInsertDiy/AffairPage/ApplyPage'; // 申请 import Apply from '@/webPublic/FormInsertDiy/AffairPage/ApplyPage'; // 申请
import BatchAudit from '@/webPublic/FormInsertDiy/AffairPage/AuditPage/BatchAudit'; // 批量审批 import BatchAudit from '@/webPublic/FormInsertDiy/AffairPage/AuditPage/BatchAudit'; // 批量审批
import Audit from '@/webPublic/FormInsertDiy/AffairPage/AuditPage/index.js'; // 审批 import Audit from '@/webPublic/FormInsertDiy/AffairPage/AuditPage/index.js'; // 审批
import Detail from '@/webPublic/FormInsertDiy/AffairPage/Detail'; //详情 import Detail from '@/webPublic/FormInsertDiy/AffairPage/Detail'; //详情
import { Modal, message, notification, Popconfirm } from 'antd'; import { Modal, message, notification, Popconfirm } from 'antd';
import { connect } from 'dva';
export const CreateC = createContext({
routerConfig: {},
});
window.iframeParentComponent = { window.iframeParentComponent = {
Modal, Modal,
...@@ -13,8 +19,14 @@ window.iframeParentComponent = { ...@@ -13,8 +19,14 @@ window.iframeParentComponent = {
Popconfirm, Popconfirm,
}; };
export default function ActiveMenuComponent({ routerConfig, ...otherProps }) { function ActiveMenuComponent({
const { component = '', appId } = routerConfig; routerConfig,
...otherProps
}) {
const {
component = '',
appId
} = routerConfig;
const { location } = otherProps; const { location } = otherProps;
const record = location?.state?.record; const record = location?.state?.record;
const [show, setShow] = useState(false); const [show, setShow] = useState(false);
...@@ -33,19 +45,38 @@ export default function ActiveMenuComponent({ routerConfig, ...otherProps }) { ...@@ -33,19 +45,38 @@ export default function ActiveMenuComponent({ routerConfig, ...otherProps }) {
return null; return null;
} }
let Res = <div>暂无此功能</div>;
switch (component) { switch (component) {
case 'CheckRecord': // 查询类应用 case 'CheckRecord': // 查询类应用
return <CheckRecord workId={appId} />; Res = <CheckRecord workId={appId}/>;
case 'Apply': // 申请类 详情是 iframe break;
return <Apply workId={appId} {...otherProps} />; case 'Apply': // 申请类
case 'Audit': // 审批类 详情是 iframe Res = <Apply workId={appId} {...otherProps} />;
return <Audit workId={appId} {...otherProps} />; break;
case 'BatchAudit': // 批量审批 详情是 iframe case 'Audit': // 审批类
return <BatchAudit workId={appId} {...otherProps} />; Res = <Audit workId={appId} {...otherProps} />;
case 'Detail': // 详情 iframe break;
return <Detail {...otherProps} />; case 'BatchAudit': // 批量审批
Res = <BatchAudit workId={appId}
{...otherProps}
/>;
break;
case 'Detail': // 详情
Res = <Detail {...otherProps} />;
break;
default: default:
console.log(component, '没有找到此组件'); break;
return <div>暂无此功能</div>;
} }
return (
<CreateC.Provider value={{
routerConfig,
}}>
{Res}
</CreateC.Provider>
);
} }
export default connect(({}) => {
return {};
})(ActiveMenuComponent);
...@@ -17,6 +17,7 @@ export default function ActiveMenuComponent2({ ...@@ -17,6 +17,7 @@ export default function ActiveMenuComponent2({
if(appId){ if(appId){
setShow(false); setShow(false);
setTimeout(() => { setTimeout(() => {
setShow(true); setShow(true);
}, 1000); }, 1000);
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论