提交 9efd9f1a authored 作者: 王绍森's avatar 王绍森

9038 评奖评优与创新创业,2,校团委审核是 做批量审核 (院团委校团委全部做)

上级 41c0930b
import pageSetting from './pageSetting'; import pageSetting from './pageSetting';
import React, { Component, Fragment } from 'react'; import React, { Component, Fragment } from 'react';
import PageHeaderWrapper from '@/components/PageHeaderWrapper'; import PageHeaderWrapper from '@/components/PageHeaderWrapper';
...@@ -7,34 +5,66 @@ import List from '../ApplyPage/List'; ...@@ -7,34 +5,66 @@ import List from '../ApplyPage/List';
import ListTab from './ListTab'; import ListTab from './ListTab';
import { deepCopy } from '@/baseComponent/utils'; import { deepCopy } from '@/baseComponent/utils';
import { getApplyPage, getHandledPage, getWaitPage } from '../publicApiService'; import { getApplyPage, getHandledPage, getWaitPage } from '../publicApiService';
import AuditModal from '@/webPublic/FormInsertDiy/AuditPage/BatchAudit/AuditModal';
import { ModalInfo } from '@/baseComponent/Modal';
import ButtonDiy from '@/baseComponent/ButtonDiy';
export default class AuditPage extends Component { export default class AuditPage extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
this.state={ this.state = {};
}
};
componentDidMount(){
} }
componentDidMount() {}
handleButtonSet = () => { handleButtonSet = () => {
const { addFields, workId } = this.props; const { addFields, workId } = this.props;
return { return {
tab1: [ tab1: [
{
type: 'audit',
component: 'RenderComponent',
render: ({ selectRows, getPage }) => {
const disabled = !selectRows || !Array.isArray(selectRows) || !selectRows.length;
function handleClick(onShow) {
const taskName = selectRows[0].taskName;
const differentTask = selectRows.slice(1).find(i => i.taskName !== taskName);
if (differentTask) {
return ModalInfo((
<div>
<strong style={{color: "red"}}> {differentTask.taskName} </strong>
<strong> {taskName} </strong>不能一起审核。<br />
请将分开操作。
</div>
));
}
onShow();
}
return (
<AuditModal selectRows={selectRows} getPage={getPage}>
{({ onShow }) => (
<ButtonDiy
name="批量审核"
handleClick={() => handleClick(onShow)}
disabled={disabled}
/>
)}
</AuditModal>
);
},
},
], ],
tab2: [], tab2: [],
}; };
}; };
handleSearchSet = () => { handleSearchSet = () => {
const { columns, searchCondition} = this.props; const { columns, searchCondition } = this.props;
const tab1 = { const tab1 = {
search: { search: {
field: { field: {},
},
getPageService: getWaitPage, getPageService: getWaitPage,
responseCallBack: (response) => { responseCallBack: response => {
return response; return response;
}, },
condition: searchCondition, condition: searchCondition,
...@@ -46,10 +76,9 @@ export default class AuditPage extends Component { ...@@ -46,10 +76,9 @@ export default class AuditPage extends Component {
}; };
const tab2 = { const tab2 = {
search: { search: {
field: { field: {},
},
getPageService: getHandledPage, getPageService: getHandledPage,
responseCallBack: (response) => { responseCallBack: response => {
return response; return response;
}, },
condition: searchCondition, condition: searchCondition,
...@@ -70,22 +99,15 @@ export default class AuditPage extends Component { ...@@ -70,22 +99,15 @@ export default class AuditPage extends Component {
return ( return (
<PageHeaderWrapper title=""> <PageHeaderWrapper title="">
<ListTab
<ListTab tabList={pageSetting.tabList} tabList={pageSetting.tabList}
pageButton={this.handleButtonSet({ pageButton={this.handleButtonSet({})}
})} workId={workId}
workId={workId} dataBaseId={dataBaseId}
dataBaseId={dataBaseId} addFields={addFields}
addFields={addFields} pageSearch={this.handleSearchSet({})}
pageSearch={this.handleSearchSet({ />
})}/>
</PageHeaderWrapper> </PageHeaderWrapper>
); );
} }
} }
...@@ -306,8 +306,8 @@ export default class List extends Component { ...@@ -306,8 +306,8 @@ export default class List extends Component {
/> : null} /> : null}
<Shell> <Shell>
{this.pageButton().length ? {pageButton.length ?
<ButtonListDom config={this.pageButton()} <ButtonListDom config={pageButton}
handleSelectRows={this.handleSelectRows} handleSelectRows={this.handleSelectRows}
selectRows={selectRows} selectRows={selectRows}
formValues={formValues} formValues={formValues}
......
...@@ -10,14 +10,15 @@ import { router } from 'umi'; ...@@ -10,14 +10,15 @@ import { router } from 'umi';
const isNewForm = true; const isNewForm = true;
function AuditModal({ form, selectRows, code, getPage }) { function AuditModal({ form, selectRows, children, getPage }) {
const [visible, setVisible] = useState(false); const [visible, setVisible] = useState(false);
const disabled = !selectRows || !Array.isArray(selectRows) || !selectRows.length;
function submitCb(res) { function submitCb(res) {
ModalInfo(`提交${res ? '成功' : '失败'}!`, { onOk: () => router.goBack() }); // ModalInfo(`提交${res ? '成功' : '失败'}!`, { onOk: () => router.goBack() });
setVisible(false); ModalInfo(`提交${res ? '成功' : '失败'}!`, { onOk: () => {
getPage(); setVisible(false);
getPage();
} });
} }
const [data, setData] = useState(null); const [data, setData] = useState(null);
const [loading, setLoading] = useState(false); const [loading, setLoading] = useState(false);
...@@ -25,13 +26,13 @@ function AuditModal({ form, selectRows, code, getPage }) { ...@@ -25,13 +26,13 @@ function AuditModal({ form, selectRows, code, getPage }) {
useEffect( useEffect(
() => { () => {
if (!visible) return; if (!visible) return;
const code = selectRows && selectRows[0] && selectRows[0].code;
if (typeof code === 'undefined') return; if (typeof code === 'undefined') return;
setLoading(true); setLoading(true);
getHistoryFormDetail({ code }).then(res => { getHistoryFormDetail({ code }).then(res => {
setLoading(false); setLoading(false);
if (res && !res.errMsg) { if (res && !res.errMsg) {
setData({ ...res, hisTaskForm: { ...res.hisTaskForm, formKeys: [] } });
setData({...res, hisTaskForm: {...res.hisTaskForm, formKeys: []}});
} }
}); });
}, },
...@@ -48,9 +49,17 @@ function AuditModal({ form, selectRows, code, getPage }) { ...@@ -48,9 +49,17 @@ function AuditModal({ form, selectRows, code, getPage }) {
/> />
</div> </div>
) : null; ) : null;
return ( return (
<> <>
<Modal width={900} visible={visible} title="批量审核" footer={footer} onCancel={() => setVisible(false)}> <Modal
width={900}
visible={visible}
title="批量审核"
footer={footer}
onCancel={() => setVisible(false)}
>
<Spin spinning={loading}> <Spin spinning={loading}>
{data && ( {data && (
<> <>
...@@ -65,7 +74,7 @@ function AuditModal({ form, selectRows, code, getPage }) { ...@@ -65,7 +74,7 @@ function AuditModal({ form, selectRows, code, getPage }) {
)} )}
</Spin> </Spin>
</Modal> </Modal>
<ButtonDiy name="批量审核" handleClick={() => setVisible(true)} disabled={disabled} /> {children({ onShow: () => setVisible(true)})}
</> </>
); );
} }
......
...@@ -4,6 +4,7 @@ import getInfoGenerator from '@/webPublic/FormInsertDiy/getInfoGenerator'; ...@@ -4,6 +4,7 @@ import getInfoGenerator from '@/webPublic/FormInsertDiy/getInfoGenerator';
import AuditModal from './AuditModal'; import AuditModal from './AuditModal';
import { findValueByKey } from '../../../../pages/zydtw/Cxcy/utils'; import { findValueByKey } from '../../../../pages/zydtw/Cxcy/utils';
import withGoBack from '@/highOrderComponent/withGoBack'; import withGoBack from '@/highOrderComponent/withGoBack';
import ButtonDiy from '@/baseComponent/ButtonDiy';
const defaultNameSpan = { big: 9, small: 9 }; const defaultNameSpan = { big: 9, small: 9 };
const defaultFieldSpan = { big: 4, small: 4 }; const defaultFieldSpan = { big: 4, small: 4 };
...@@ -27,7 +28,6 @@ export default withGoBack(function BatchAudit({ ...@@ -27,7 +28,6 @@ export default withGoBack(function BatchAudit({
pageButton, pageButton,
pageSetting, pageSetting,
}) { }) {
const [code, setCode] = useState(null);
const pageSearch = { const pageSearch = {
search: { search: {
searchType: 'cascadeSearchNew', searchType: 'cascadeSearchNew',
...@@ -46,12 +46,6 @@ export default withGoBack(function BatchAudit({ ...@@ -46,12 +46,6 @@ export default withGoBack(function BatchAudit({
condition: condition || [], condition: condition || [],
nameSpan: nameSpan || defaultNameSpan, nameSpan: nameSpan || defaultNameSpan,
fileSpan: fieldSpan || defaultFieldSpan, fileSpan: fieldSpan || defaultFieldSpan,
responseCallBack: res => {
if (res && res.rows && res.rows[0]) {
setCode(findValueByKey(res.rows[0], 'code'));
}
return res;
},
}, },
tableRowKey: tableRowKey || 'buzinessId', tableRowKey: tableRowKey || 'buzinessId',
columns: columns || [], columns: columns || [],
...@@ -63,7 +57,12 @@ export default withGoBack(function BatchAudit({ ...@@ -63,7 +57,12 @@ export default withGoBack(function BatchAudit({
name: '批量审核', name: '批量审核',
component: 'RenderComponent', component: 'RenderComponent',
render: ({ selectRows, getPage }) => { render: ({ selectRows, getPage }) => {
return <AuditModal selectRows={selectRows} getPage={getPage} code={code} />; const disabled = !selectRows || !Array.isArray(selectRows) || !selectRows.length;
return (
<AuditModal selectRows={selectRows.map(i => ({...i, code: findValueByKey(i, 'code')}))} getPage={getPage}>
{({ onShow }) => <ButtonDiy name="批量审核" handleClick={onShow} disabled={disabled} />}
</AuditModal>
);
}, },
}, },
]; ];
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论