9.7 还原重评,多轮招募
This commit is contained in:
@ -1,11 +1,10 @@
|
||||
import { echoDateTimeFormatter, saveDateTimeFormatter } from '@/utils/DateUtils';
|
||||
import ExtendUpload from '@/utils/ExtendUpload';
|
||||
import { getProMethod } from '@/utils/session';
|
||||
import { Button, DatePicker, Form, Input, message, Modal, Radio, Spin } from 'antd';
|
||||
import { DatePicker, Form, Input, message, Modal, Radio, Spin } from 'antd';
|
||||
import React, { useEffect, useState } from 'react';
|
||||
import moment from 'moment';
|
||||
import { isEmpty } from '@/utils/CommonUtils';
|
||||
import BidEvalAppointment from '@/components/ElecBidEvaluation/BidEvalAppointment';
|
||||
interface AddEvaluationItemsProps {
|
||||
title?: string;
|
||||
modalVisible?: boolean;
|
||||
@ -47,12 +46,6 @@ const AddEvaluationItems: React.FC<AddEvaluationItemsProps> = (props) => {
|
||||
const [sectionType, setSectionType] = useState<any>('评审');
|
||||
//loading
|
||||
const [saveLoading, setSaveLoading] = useState<boolean>(false);
|
||||
//电子评标室-评标室预约选择 2022.8.26 zhoujianlong
|
||||
const [selectEvalVisible, setSelectEvalVisible] = useState<boolean>(false);
|
||||
//电子评标室-评标室预约选择不可选状态控制 true-不可填写 false-可填写 2022.8.26 zhoujianlong
|
||||
const [selectEvalDisabled, setSelectEvalDisabled] = useState<boolean>(true);
|
||||
//电子评标室-评标室预约选择-数据 2022.8.26 zhoujianlong
|
||||
const [selectEvalData, setSelectEvalData] = useState<any>();
|
||||
useEffect(() => {
|
||||
//名称确定
|
||||
if (MethodDict == 'procurement_mode_1' || MethodDict == 'procurement_mode_2') {
|
||||
@ -108,144 +101,99 @@ const AddEvaluationItems: React.FC<AddEvaluationItemsProps> = (props) => {
|
||||
form.submit();
|
||||
};
|
||||
|
||||
//评标室预约回调
|
||||
const returnEvalData = (value: any) => {
|
||||
console.log('value', value)
|
||||
setSelectEvalVisible(false);
|
||||
setSelectEvalDisabled(false);
|
||||
setSelectEvalData(value);
|
||||
form.setFieldsValue({
|
||||
evaluationStartTime: value.reserveStartDate,
|
||||
evaluationEndTime: value.reserveEndDate,
|
||||
evaluationPlace: value.areaAddress,
|
||||
reserveBy: value.reserveBy,
|
||||
reserveContactNumber: value.reserveContactNumber,
|
||||
})
|
||||
}
|
||||
|
||||
//评标室预约-选择评标室
|
||||
const selectEvalClick = () => {
|
||||
setSelectEvalVisible(true);
|
||||
}
|
||||
|
||||
return (
|
||||
<>
|
||||
<Modal
|
||||
destroyOnClose
|
||||
title={title}
|
||||
visible={modalVisible}
|
||||
onOk={() => onSubmit()}
|
||||
onCancel={() => {
|
||||
// setFileListData([]);
|
||||
onCancel();
|
||||
}}
|
||||
width={'60%'}
|
||||
style={{ maxHeight: modalHeight }}
|
||||
bodyStyle={{ maxHeight: modalHeight - 107, overflowY: 'auto' }}
|
||||
centered
|
||||
okText="保存"
|
||||
cancelText="返回"
|
||||
confirmLoading={saveLoading}
|
||||
>
|
||||
<Spin spinning={saveLoading} delay={300}>
|
||||
<Form
|
||||
{...layout}
|
||||
name="basic"
|
||||
form={form}
|
||||
initialValues={{ remember: true }}
|
||||
validateMessages={validateMessages}
|
||||
onFinish={onFinish}
|
||||
preserve={false}
|
||||
<Modal
|
||||
destroyOnClose
|
||||
title={title}
|
||||
visible={modalVisible}
|
||||
onOk={() => onSubmit()}
|
||||
onCancel={() => {
|
||||
// setFileListData([]);
|
||||
onCancel();
|
||||
}}
|
||||
width={'60%'}
|
||||
style={{ maxHeight: modalHeight }}
|
||||
bodyStyle={{ maxHeight: modalHeight - 107, overflowY: 'auto' }}
|
||||
centered
|
||||
okText="保存"
|
||||
cancelText="返回"
|
||||
confirmLoading={saveLoading}
|
||||
>
|
||||
<Spin spinning={saveLoading} delay={300}>
|
||||
<Form
|
||||
{...layout}
|
||||
name="basic"
|
||||
form={form}
|
||||
initialValues={{ remember: true }}
|
||||
validateMessages={validateMessages}
|
||||
onFinish={onFinish}
|
||||
preserve={false}
|
||||
>
|
||||
<Form.Item label={`${sectionName}名称`} name="bidSectName">
|
||||
<Input bordered={false} readOnly />
|
||||
</Form.Item>
|
||||
<Form.Item label={`重新${sectionType}原因`} name="reason" rules={[{ required: true }, { max: 500, message: "最大不能超过500字" }]}>
|
||||
<TextArea rows={4} maxLength={1000} placeholder={`请填写重新${sectionType}原因`} />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label={`预计重新${sectionType}开始时间`}
|
||||
name="evaluationStartTime"
|
||||
rules={[{ required: true }]}
|
||||
>
|
||||
<Form.Item label={`${sectionName}名称`} name="bidSectName">
|
||||
<Input bordered={false} readOnly />
|
||||
</Form.Item>
|
||||
<Form.Item label={`重新${sectionType}原因`} name="reason" rules={[{ required: true }, { max: 500, message: "最大不能超过500字" }]}>
|
||||
<TextArea rows={4} maxLength={1000} placeholder={`请填写重新${sectionType}原因`} />
|
||||
</Form.Item>
|
||||
<Form.Item label={`重新${sectionType}地点`} style={{ marginBottom: 0 }} required>
|
||||
<Form.Item
|
||||
name="evaluationPlace"
|
||||
rules={[{ required: true }, { max: 100, message: "最大不能超过100字" }]}
|
||||
style={{ display: 'inline-block', width: 'calc(60% - 8px)' }}
|
||||
>
|
||||
<Input placeholder={`请填写重新${sectionType}地点`} maxLength={200} />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
style={{ display: 'inline-block', width: 'calc(40% - 8px)', margin: '0 8px' }}
|
||||
>
|
||||
<Button type='primary' onClick={() => selectEvalClick()}>选择评标室</Button>
|
||||
</Form.Item>
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label={`预计重新${sectionType}开始时间`}
|
||||
name="evaluationStartTime"
|
||||
rules={[{ required: true }]}
|
||||
>
|
||||
<DatePicker
|
||||
placeholder="请填写开始时间"
|
||||
disabledDate={(current) => current && current < moment().startOf('day')}
|
||||
format={'yyyy-MM-DD HH:mm'}
|
||||
style={{ width: '100%' }}
|
||||
showNow={false}
|
||||
showTime={{ defaultValue: moment().startOf('minute') }}
|
||||
/>
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label={`预计重新${sectionType}结束时间`}
|
||||
name="evaluationEndTime"
|
||||
rules={[{ required: true }]}
|
||||
>
|
||||
<DatePicker
|
||||
placeholder="请填写结束时间"
|
||||
format={'yyyy-MM-DD HH:mm'}
|
||||
style={{ width: '100%' }}
|
||||
showNow={false}
|
||||
showTime={{ defaultValue: moment().startOf('minute') }}
|
||||
/>
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
name="reserveBy"
|
||||
label="预约人"
|
||||
rules={[{ required: !selectEvalDisabled, message: `请录入预约人` }, { max: 100, message: '内容超长' }]}
|
||||
>
|
||||
<Input disabled={selectEvalDisabled} />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
name="reserveContactNumber"
|
||||
label="预约人联系方式"
|
||||
rules={[{ required: !selectEvalDisabled, message: `请录入预约人联系方式` }, { max: 100, message: '内容超长' }]}
|
||||
>
|
||||
<Input type="number" disabled={selectEvalDisabled} />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label={`${sectionType}专家是否与上次一致`}
|
||||
name="isAgreement"
|
||||
rules={[{ required: true }]}
|
||||
>
|
||||
<Radio.Group options={options} />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label="说明文件"
|
||||
name="uploadFileId"
|
||||
rules={[{ required: true, message: '请上传说明文件' }]}
|
||||
extra="最多上传一个文件,每个最大30MB"
|
||||
>
|
||||
<ExtendUpload bid={uploadId} maxCount={1} maxSize={30}>
|
||||
</ExtendUpload>
|
||||
</Form.Item>
|
||||
<Form.Item label="id" name="id" hidden>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
<Form.Item label="sectionId" name="sectionId" hidden>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
</Form>
|
||||
</Spin>
|
||||
</Modal>
|
||||
{/**电子评标室-评标室预约选择 */}
|
||||
<BidEvalAppointment modalVisible={selectEvalVisible} onCancel={() => setSelectEvalVisible(false)} onSubmit={(value: any) => returnEvalData(value)} values={selectEvalData} />
|
||||
</>
|
||||
<DatePicker
|
||||
placeholder="请填写开始时间"
|
||||
disabledDate={(current) => current && current < moment().startOf('day')}
|
||||
format={'yyyy-MM-DD HH:mm'}
|
||||
style={{ width: '100%' }}
|
||||
showNow={false}
|
||||
showTime={{ defaultValue: moment().startOf('minute') }}
|
||||
/>
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label={`预计重新${sectionType}结束时间`}
|
||||
name="evaluationEndTime"
|
||||
rules={[{ required: true }]}
|
||||
>
|
||||
<DatePicker
|
||||
placeholder="请填写结束时间"
|
||||
format={'yyyy-MM-DD HH:mm'}
|
||||
style={{ width: '100%' }}
|
||||
showNow={false}
|
||||
showTime={{ defaultValue: moment().startOf('minute') }}
|
||||
/>
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label={`重新${sectionType}地点`}
|
||||
name="evaluationPlace"
|
||||
rules={[{ required: true }, { max: 100, message: "最大不能超过100字" }]}
|
||||
>
|
||||
<Input placeholder={`请填写重新${sectionType}地点`} maxLength={200} />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label={`${sectionType}专家是否与上次一致`}
|
||||
name="isAgreement"
|
||||
rules={[{ required: true }]}
|
||||
>
|
||||
<Radio.Group options={options} />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label="说明文件"
|
||||
name="uploadFileId"
|
||||
rules={[{ required: true, message: '请上传说明文件' }]}
|
||||
extra="最多上传一个文件,每个最大30MB"
|
||||
>
|
||||
<ExtendUpload bid={uploadId} maxCount={1} maxSize={30}>
|
||||
</ExtendUpload>
|
||||
</Form.Item>
|
||||
<Form.Item label="id" name="id" hidden>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
<Form.Item label="sectionId" name="sectionId" hidden>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
</Form>
|
||||
</Spin>
|
||||
</Modal>
|
||||
);
|
||||
};
|
||||
export default AddEvaluationItems;
|
||||
|
Reference in New Issue
Block a user