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

29126 增加违纪历史记录已经

上级 e99b9dd0
...@@ -8,182 +8,164 @@ import config from '@/config/config'; ...@@ -8,182 +8,164 @@ import config from '@/config/config';
import { message, Modal, notification, Popconfirm } from 'antd'; import { message, Modal, notification, Popconfirm } from 'antd';
import DetailOneStop from '@/webPublic/one_stop_public/DetailForAudit/IframeForDetail'; import DetailOneStop from '@/webPublic/one_stop_public/DetailForAudit/IframeForDetail';
import { getIsBei_Dian, getIsGui_Jian } from '@/webPublic/zyd_public/utils/utils'; import { getIsBei_Dian, getIsGui_Jian } from '@/webPublic/zyd_public/utils/utils';
import { getUrlInfo } from '@/webPublic/one_stop_public/DetailForAudit/utils';
window.iframeParentComponent = { window.iframeParentComponent = {
Modal, Modal,
message, message,
notification, notification,
Popconfirm, Popconfirm,
};
const getUrlInfo = (param) => {
let url = window.document.location.href.toString();
let u = url.split('?');
if (typeof u[1] == 'string') {
u = u[1].split('&');
let get = {};
for (let i in u) {
let j = u[i].split('=');
get[j[0]] = decodeURIComponent(j[1]);
}
return get;
} else {
return {};
}
}; };
export default class Detail extends Component { export default class Detail extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
const { state } = this.props.location; const { state } = this.props.location;
let id = ''; let id = '';
let code = ''; let code = '';
if (state && state.record) { if (state && state.record) {
if (state.record.id) { if (state.record.id) {
id = state.record.id; id = state.record.id;
} }
if (state.record.code) { if (state.record.code) {
code = state.record.code; code = state.record.code;
} }
} }
if (!id) { if (!id) {
id = getUrlInfo()?.id; id = getUrlInfo().id;
} }
this.state = { if (!code) {
id, code = getUrlInfo().code;
code, }
showAll: props.from !== 'onestopApp2.0' this.state = {
}; id,
} code,
showAll: props.from !== 'onestopApp2.0' && getUrlInfo().showAll !== 'false',
componentDidMount() { };
window.addEventListener( }
'message',
(event) => {
if (event.data && event.data.indexOf && event.data.indexOf('iframeDetailHeight') > -1) {
const height = Number(event.data.split('-')[1]);
const dom = document.getElementById('detailIframeId');
if (dom) {
document.getElementById('detailIframeId').height = height + 50;
}
}
},
false,
);
}
showAll = () => { componentDidMount() {
this.setState({ window.addEventListener(
showAll: true, 'message',
}); (event) => {
}; if (event.data && event.data.indexOf && event.data.indexOf('iframeDetailHeight') > -1) {
const height = Number(event.data.split('-')[1]);
const dom = document.getElementById('detailIframeId');
if (dom) {
document.getElementById('detailIframeId').height = height + 50;
}
}
},
false,
);
}
render() { showAll = () => {
const { from } = this.props; this.setState({
const { showAll: true,
id, });
showAll, };
code,
} = this.state;
const url = config.onestopPC.split('/#/');
let showPrint = this.props.location?.state?.showPrint;
if (getIsGui_Jian() && !showPrint) {
// 27590 寝室调整管理-寝室调整申请,详情的打印预览按钮不见了210301080119-122617
// 贵建把打印预览显示出来
showPrint = true;
}
let iframeUrl = `${url[0]}/#/IframeForDetail?id=${id}&token=${getToken()}`;
if (showPrint) {
iframeUrl = iframeUrl + '&showPrint=true';
}
if (from === 'onestopApp2.0') {
iframeUrl = config.gateWayPort + `/portal/#/showAuditIframe?id=${id}&code=${code}&hasSingle=false&token=${getToken()}&isPrint=false`;
}
// iframeUrl = `http://localhost:8000/onestop/IframeForDetail?id=${id}&token=${getToken()}`;
// console.log(showPrint);
return (
<PageHeaderWrapper title="">
<Shell>
<div
style={{
height: '54px',
padding: '12px 0 12px 12px',
}}>
{showAll ? (
<ButtonDiy
name="返回"
className="defaultBlue"
handleClick={() => {
router.goBack();
}}
icon="arrow-left"
/>
) : null}
<ButtonDiy
name={'全屏查看'}
className="defaultBlue"
handleClick={() => {
document.getElementById('detailIframeId')
.requestFullscreen();
}}/>
</div>
</Shell>
<Shell>
{
from === 'onestopApp2.0' ?
<iframe
src={iframeUrl}
frameBorder={0}
id="detailIframeId"
name="applyIframe"
marginWidth="0"
marginHeight="0"
onLoad={this.showAll}
allowtransparency="yes"
seamless
scrolling={'no'}
style={{
width: '100%',
overflowY: 'hidden',
minHeight: '80vh',
}}
/> :
<div id={'detailIframeId'}>
<DetailOneStop id={id}
{...this.props}
code={code}
showPrint={showPrint || false}/>
</div>
}
</Shell> render() {
<Shell> const { from } = this.props;
<div const { id, showAll, code } = this.state;
style={{ const url = config.onestopPC.split('/#/');
height: '54px', let showPrint = this.props.location?.state?.showPrint;
padding: '12px 0 12px 12px', if (getIsGui_Jian() && !showPrint) {
}}> // 27590 寝室调整管理-寝室调整申请,详情的打印预览按钮不见了210301080119-122617
{showAll ? ( // 贵建把打印预览显示出来
<ButtonDiy showPrint = true;
name="返回" }
className="defaultBlue" let iframeUrl = `${url[0]}/#/IframeForDetail?id=${id}&token=${getToken()}`;
handleClick={() => { if (showPrint) {
router.goBack(); iframeUrl = iframeUrl + '&showPrint=true';
}} }
icon="arrow-left" if (from === 'onestopApp2.0') {
/> iframeUrl =
) : null} config.gateWayPort +
<ButtonDiy `/portal/#/showAuditIframe?id=${id}&code=${code}&hasSingle=false&token=${getToken()}&isPrint=false`;
name={'全屏查看'} }
type={'primary'} // iframeUrl = `http://localhost:8000/onestop/IframeForDetail?id=${id}&token=${getToken()}`;
// className='primaryBlue' // console.log(showPrint);
handleClick={() => { return (
document.getElementById('detailIframeId') <PageHeaderWrapper title="">
.requestFullscreen(); <Shell>
}}/> <div
</div> style={{
</Shell> height: '54px',
</PageHeaderWrapper> padding: '12px 0 12px 12px',
); }}>
} {showAll ? (
<ButtonDiy
name="返回"
className="defaultBlue"
handleClick={() => {
router.goBack();
}}
icon="arrow-left"
/>
) : null}
<ButtonDiy
name={'全屏查看'}
className="defaultBlue"
handleClick={() => {
document.getElementById('detailIframeId').requestFullscreen();
}}
/>
</div>
</Shell>
<Shell>
{from === 'onestopApp2.0' ? (
<iframe
src={iframeUrl}
frameBorder={0}
id="detailIframeId"
name="applyIframe"
marginWidth="0"
marginHeight="0"
onLoad={this.showAll}
allowtransparency="yes"
seamless
scrolling={'no'}
style={{
width: '100%',
overflowY: 'hidden',
minHeight: '80vh',
}}
/>
) : (
<div id={'detailIframeId'}>
<DetailOneStop id={id} {...this.props} code={code} showPrint={showPrint || false} />
</div>
)}
</Shell>
<Shell>
<div
style={{
height: '54px',
padding: '12px 0 12px 12px',
}}>
{showAll ? (
<ButtonDiy
name="返回"
className="defaultBlue"
handleClick={() => {
router.goBack();
}}
icon="arrow-left"
/>
) : null}
<ButtonDiy
name={'全屏查看'}
type={'primary'}
// className='primaryBlue'
handleClick={() => {
document.getElementById('detailIframeId').requestFullscreen();
}}
/>
</div>
</Shell>
</PageHeaderWrapper>
);
}
} }
...@@ -2,24 +2,8 @@ import RenderForm from "@/webPublic/FormInsertDiy/RenderForm"; ...@@ -2,24 +2,8 @@ import RenderForm from "@/webPublic/FormInsertDiy/RenderForm";
import { fetchTemplateById } from '@/webPublic/Services'; import { fetchTemplateById } from '@/webPublic/Services';
import { useState, useEffect } from "react"; import { useState, useEffect } from "react";
import { Form } from 'antd'; import { Form } from 'antd';
import { getOneStopConfig } from "@/baseComponent/utils";
import { setToken } from '@/utils/authority'; import { setToken } from '@/utils/authority';
import { getUrlInfo } from '@/webPublic/one_stop_public/DetailForAudit/utils';
const getUrlInfo = (param) => {
let url = window.document.location.href.toString();
let u = url.split("?");
if (typeof(u[1]) == "string") {
u = u[1].split("&");
let get = {};
for (let i in u) {
let j = u[i].split("=");
get[j[0]] = decodeURIComponent(j[1]);
}
return get;
} else {
return {};
}
};
function OtherCheckRecord({ form, location: { pathname }, ...props }) { function OtherCheckRecord({ form, location: { pathname }, ...props }) {
const [data, setData] = useState(); const [data, setData] = useState();
......
...@@ -43,9 +43,9 @@ import { ...@@ -43,9 +43,9 @@ import {
checkNeedWriteAuditInfo, checkNeedWriteAuditInfo,
} from './splitDetailSplit'; } from './splitDetailSplit';
import { import {
queryApiVersion, queryApiVersion,
queryApiActionPath, queryApiActionPath,
queryFileUrl, queryFileUrl,
} from '@/webPublic/one_stop_public/utils/queryConfig'; } from '@/webPublic/one_stop_public/utils/queryConfig';
import { isJSON } from '@/webPublic/zyd_public/utils/utils'; import { isJSON } from '@/webPublic/zyd_public/utils/utils';
import HistoryFormList from '@/webPublic/one_stop_public/DetailForAudit/HistoryFormList'; import HistoryFormList from '@/webPublic/one_stop_public/DetailForAudit/HistoryFormList';
...@@ -385,6 +385,15 @@ class DetailSplit extends Component { ...@@ -385,6 +385,15 @@ class DetailSplit extends Component {
this.setState({ paddingBottom: value }); this.setState({ paddingBottom: value });
}; };
goOtherDetail = (e) => {
const code = e.currentTarget.dataset.codeId;
console.log(this.props);
let url = window.location.href.split('#')[0];
if (code) {
window.open(url + '#' + this.props.history.location.pathname + '?code=' + code + '&showAll=false');
}
};
render() { render() {
const { const {
stepFlow, stepFlow,
...@@ -642,6 +651,22 @@ class DetailSplit extends Component { ...@@ -642,6 +651,22 @@ class DetailSplit extends Component {
)} )}
</div> </div>
)} )}
{// 关联流程 禅道 29126
Array.isArray(data.pcodeData) &&
data.pcodeData.length && (
<div className={styles.body_hea}>
<h3>关联流程</h3>
<div className={styles.guanLianLiuCheng}>
{data.pcodeData.filter((x) => !!x.pcode).map((g) => {
return (
<a key={g.code} onClick={this.goOtherDetail} data-code-id={g.pcode}>
{g.appName}
</a>
);
})}
</div>
</div>
)}
<div <div
className={styles.HistoryFormList} className={styles.HistoryFormList}
id="card_table" id="card_table"
...@@ -971,50 +996,55 @@ function Index(props) { ...@@ -971,50 +996,55 @@ function Index(props) {
const [prepare, setPrepare] = useState(false); const [prepare, setPrepare] = useState(false);
const DetailSplitFormNew = useRef(); const DetailSplitFormNew = useRef();
useEffect(() => { useEffect(() => {
getFormDetailData(); getFormDetailData();
}, []); }, []);
const getFormDetailData = () => { const getFormDetailData = () => {
const id = history.location.state && history.location.state.id; const id = history.location.state && history.location.state.id;
const code = history.location.state && history.location.state.code; const code = history.location.state && history.location.state.code;
const queryId = history.location.query && history.location.query.id; const queryId = history.location.query && history.location.query.id;
const taskId = history.location.state && history.location.state.taskId; const queryCode = history.location.query && history.location.query.code;
if (!id && !code) { const taskId = history.location.state && history.location.state.taskId;
if (queryId) { if (!id && !code) {
} else { if (queryId) {
openToast('error', '数据已过期', '当前页面数据已过期,请重新进入'); } else {
return; openToast('error', '数据已过期', '当前页面数据已过期,请重新进入');
} return;
} }
message.info('正在加载数据,请等待。'); }
dispatch({ message.info('正在加载数据,请等待。');
type: 'affair/getIdFormDetail', dispatch({
payload: { type: 'affair/getIdFormDetail',
id: queryId ? queryId : id, // 审批表Id payload: {
code: code || null, // 表单值 id: queryId || id || undefined, // 审批表Id
handleUser: null, // 处理人 code: queryCode || code || null, // 表单值
taskId, // 多任务流程会使用到,后续改为必须传入 handleUser: null, // 处理人
lite: true, taskId, // 多任务流程会使用到,后续改为必须传入
}, lite: true,
callback: (val) => { },
console.log(val); callback: (val) => {
message.destroy(); console.log(val);
if (val) { message.destroy();
DetailSplitFormNew.current = Form.create( if (val) {
window.zdyTableTemplateWillMountProps?.formCreateOptions || undefined, DetailSplitFormNew.current = Form.create(
)(DetailSplit); window.zdyTableTemplateWillMountProps?.formCreateOptions || undefined,
setPrepare(val); )(DetailSplit);
} setPrepare(val);
}, }
}); },
} });
};
if (!prepare) { if (!prepare) {
return <Spin size="large" spinning={true} />; return <Spin size="large" spinning={true} />;
} }
return <DetailSplitFormNew.current {...props} formPrepareData={prepare} getFormDetailData={getFormDetailData}/>; return (
<DetailSplitFormNew.current
{...props}
formPrepareData={prepare}
getFormDetailData={getFormDetailData}
/>
);
} }
export default connect(() => { export default connect(() => {
......
...@@ -204,3 +204,9 @@ ...@@ -204,3 +204,9 @@
align-items: center; align-items: center;
} }
} }
.guanLianLiuCheng{
display: grid;
grid-template-columns: repeat(auto-fill, 20%);
width: 100%;
justify-items: center;
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论