This commit is contained in:
jlzhangyx5
2025-06-24 17:28:38 +08:00
5 changed files with 90 additions and 45 deletions

View File

@ -285,7 +285,7 @@ const ClarifyTheList: React.FC<{}> = () => {
/** /**
* 供应商回执 * 供应商回执
* @param record * @param record
*/ */
const supplierReviewReceipt = (record: any) => { const supplierReviewReceipt = (record: any) => {
setVisibleModalReceipt(true); setVisibleModalReceipt(true);
@ -339,7 +339,7 @@ const ClarifyTheList: React.FC<{}> = () => {
const [form] = Form.useForm(); const [form] = Form.useForm();
/** /**
* 查看回执 * 查看回执
* @param data * @param data
*/ */
const viewReceipt = (data: any) => { const viewReceipt = (data: any) => {
setVisibleReceipt(true); setVisibleReceipt(true);
@ -394,7 +394,7 @@ const ClarifyTheList: React.FC<{}> = () => {
/** /**
* 删除 * 删除
* @param data * @param data
*/ */
const del = (id: any) => { const del = (id: any) => {
setModalDelete(true); setModalDelete(true);
@ -411,7 +411,7 @@ const ClarifyTheList: React.FC<{}> = () => {
/** /**
* 查看 * 查看
* @param data * @param data
*/ */
const examine = (data: any) => { const examine = (data: any) => {
setBid(data.attDatasetId); setBid(data.attDatasetId);
@ -615,7 +615,7 @@ const ClarifyTheList: React.FC<{}> = () => {
/** /**
*与原时间的校验 *与原时间的校验
* *
* @return {*} * @return {*}
*/ */
const verification = () => { const verification = () => {
//开标时间 //开标时间
@ -644,7 +644,7 @@ const ClarifyTheList: React.FC<{}> = () => {
/** /**
* 澄清保存 * 澄清保存
* @param data * @param data
*/ */
const onFinish = (data: any) => { const onFinish = (data: any) => {
setButtonLoading(true); setButtonLoading(true);
@ -704,6 +704,9 @@ const ClarifyTheList: React.FC<{}> = () => {
} }
} }
const modTenderDocumentRadio = (data: any) => {
}
const bidOpeningTimeRadio = (data: any) => { const bidOpeningTimeRadio = (data: any) => {
let value = data.target.value; let value = data.target.value;
setBidOpeningTimeFlag(value === '1'); setBidOpeningTimeFlag(value === '1');
@ -763,9 +766,9 @@ const ClarifyTheList: React.FC<{}> = () => {
setActiveKey(key); setActiveKey(key);
} }
const [filterTimes, filterTimesSet] = useState<any>({});//根据传入标段筛选做为校验时间的标准时间 const [filterTimes, filterTimesSet] = useState<any>({});//根据传入标段筛选做为校验时间的标准时间
/** /**
*根据传入标段筛选做为校验时间的标准时间 *根据传入标段筛选做为校验时间的标准时间
*开标时间-startTime; *开标时间-startTime;
*招标文件获取截止时间-payEndTime; *招标文件获取截止时间-payEndTime;
*应答截止时间-tenderEndTime; *应答截止时间-tenderEndTime;
@ -854,6 +857,16 @@ const ClarifyTheList: React.FC<{}> = () => {
{ {
fieldCheck && ( fieldCheck && (
<> <>
<Form.Item
label={`是否修改招标文件`}
name="modTenderDocument"
rules={[{ required: true }]}
>
<Radio.Group onChange={modTenderDocumentRadio} disabled={whetherReadonly}>
<Radio value="0"></Radio>
<Radio value="1"></Radio>
</Radio.Group>
</Form.Item>
{ {
(bidMethodDict === 'procurement_mode_5' || bidMethodDict === 'procurement_mode_6') ? ( (bidMethodDict === 'procurement_mode_5' || bidMethodDict === 'procurement_mode_6') ? (
<Form.Item <Form.Item
@ -997,7 +1010,7 @@ const ClarifyTheList: React.FC<{}> = () => {
label="澄清文件附件" label="澄清文件附件"
name="attDatasetId" name="attDatasetId"
rules={[{ rules={[{
required: true, // required: true,
message: '请上传澄清文件!' message: '请上传澄清文件!'
}]} }]}
> >
@ -1117,4 +1130,4 @@ const ClarifyTheList: React.FC<{}> = () => {
) )
} }
export default ClarifyTheList; export default ClarifyTheList;

View File

@ -5,8 +5,8 @@ import ProTable from '@ant-design/pro-table';
import { digitalConversionAmount } from '@/utils/NumberUtils'; import { digitalConversionAmount } from '@/utils/NumberUtils';
import { nowExceedSpecifiedTime } from '@/utils/DateUtils'; import { nowExceedSpecifiedTime } from '@/utils/DateUtils';
import { getURLInformation, isNotEmpty } from '@/utils/CommonUtils'; import { getURLInformation, isNotEmpty } from '@/utils/CommonUtils';
import { cancelOrder, getByOrderId, paySuccess, payTenderFile, saveGenerateOrder, woPay } from '../service'; import { cancelOrder, getByOrderId, paySuccess, payTenderFile, saveGenerateOrder, woPay ,queryMarginFees} from '../service';
import { getProMethod, getSessionProjectData } from '@/utils/session'; import { getProMethod, getSessionProjectData} from '@/utils/session';
import { isEmpty } from 'lodash'; import { isEmpty } from 'lodash';
import { getAllFlowName, getAllFlowNameByRoomType, getbidQualification, moduleName } from '@/utils/FlowUtils'; import { getAllFlowName, getAllFlowNameByRoomType, getbidQualification, moduleName } from '@/utils/FlowUtils';
import { btnAuthority } from '@/utils/authority'; import { btnAuthority } from '@/utils/authority';
@ -64,6 +64,8 @@ const IParticipate: React.FC = () => {
//沃支付遮罩 //沃支付遮罩
const [spinningModelLoading, setSpinningModelLoading] = useState<boolean>(false); const [spinningModelLoading, setSpinningModelLoading] = useState<boolean>(false);
const [form] = Form.useForm(); const [form] = Form.useForm();
// 存储sectionId列表的状态
let sectionIds = '';
useEffect(() => { useEffect(() => {
init(); init();
}, []); }, []);
@ -260,7 +262,17 @@ const IParticipate: React.FC = () => {
*/ */
const settlementOnOk = async () => { const settlementOnOk = async () => {
setSpinningModelLoading(true); setSpinningModelLoading(true);
if (Number(totalOrderAmount) === 0) { let zeroAmountItems = "";
//查询biz_bid_expenses表 根据projectId和sectionIds 查询保证金费用是否为0
queryMarginFees({ projectId: projectId, sectionIds: sectionIds }).then(res => {
if (res.code === 200) {
if (res.data) {
//amount 为0的数据
zeroAmountItems = res.data.filter(item => item.amount === 0);
}
}
})
if (Number(totalOrderAmount) === 0 || zeroAmountItems !== null) {
paySuccess(orderNumber).then(res => { paySuccess(orderNumber).then(res => {
if (res.data) { if (res.data) {
message.success('支付成功!'); message.success('支付成功!');
@ -298,7 +310,7 @@ const IParticipate: React.FC = () => {
} }
}).finally(() => setSpinningModelLoading(false)); }).finally(() => setSpinningModelLoading(false));
setOrderSpinning(false); setOrderSpinning(false);
} };
Modal.confirm({ Modal.confirm({
title: '告知', title: '告知',
content: <div>--<span style={{ color: 'red', fontSize: 30 }}></span><span style={{ color: 'red', fontSize: 30 }}></span>-</div>, content: <div>--<span style={{ color: 'red', fontSize: 30 }}></span><span style={{ color: 'red', fontSize: 30 }}></span>-</div>,
@ -482,7 +494,7 @@ const IParticipate: React.FC = () => {
} }
/** /**
* 勾选计算金额 * 勾选计算金额
* @param selectedRows * @param selectedRows
*/ */
const calculate = (selectedRows: any) => { const calculate = (selectedRows: any) => {
let num = 0; let num = 0;
@ -524,4 +536,4 @@ const IParticipate: React.FC = () => {
</> </>
) )
} }
export default IParticipate export default IParticipate

View File

@ -7,11 +7,11 @@
* @FilePath: \ebtp-cloud-frontend\src\pages\IParticipate\service.ts * @FilePath: \ebtp-cloud-frontend\src\pages\IParticipate\service.ts
*/ */
import request from "@/utils/request"; import request from '@/utils/request';
/** /**
* 获取购标信息 * 获取购标信息
* @param id * @param id
*/ */
export async function payTenderFile(id: string | null, roomType:any) { export async function payTenderFile(id: string | null, roomType:any) {
return request('/api/biz-service-ebtp-tender/v1/supplier_register/pay_tender_file/' + id + '?roomType=' + roomType); return request('/api/biz-service-ebtp-tender/v1/supplier_register/pay_tender_file/' + id + '?roomType=' + roomType);
@ -41,7 +41,7 @@ export async function woPay(orderId: any) {
} }
/** /**
* 取消订单 * 取消订单
* @param id * @param id
*/ */
export async function cancelOrder(id: any) { export async function cancelOrder(id: any) {
return request('/api/biz-service-ebtp-expenses/v1/bizbidorder/cancelOrder/' + id, { return request('/api/biz-service-ebtp-expenses/v1/bizbidorder/cancelOrder/' + id, {
@ -61,4 +61,10 @@ export function paySuccess (id:any){
}) })
} }
//保证金费用查询
export async function queryMarginFees(params?: any) {
return request(`/api/biz-service-ebtp-expenses/v1/bizbidexpenses/queryMarginFees`,{
method:'POST',
data:{...params,},
});
}

View File

@ -80,11 +80,24 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
const proceedingTypeByBidMethodDict = getProceedingTypeByBidMethodDict(bidMethodDict); const proceedingTypeByBidMethodDict = getProceedingTypeByBidMethodDict(bidMethodDict);
const proceedingTypeByDefId = getProceedingTypeByDefId(getDefId()) const proceedingTypeByDefId = getProceedingTypeByDefId(getDefId())
const [spinning, setSping] = useState<boolean>(false);//加载遮罩 const [spinning, setSping] = useState<boolean>(false);//加载遮罩
const type = window.location.pathname.includes("SupplierQuestionsOrObjectionsDing");//获取url判断投标、定标提疑
const [proceedingTypeSelect] = useState(() => { const [proceedingTypeSelect] = useState(() => {
let arr = proceedingTypeByDefId.map((item: any) => //根据浏览器rul获取type值false为招标阶段提疑 true为定标阶段提疑
<Option key={item.id} value={item.id}>{item.name}</Option> //招标阶段 事项类别对应 招标文件异议、招标文件疑问 定标阶段事项类别对应 中标公示疑问、中标公示异议、中标结果疑问、中标结果异议
); if (!type) {
return arr; let arr = proceedingTypeByDefId.slice(-2) // 截取最后两个元素
.map((item: any) =>
<Option key={item.id} value={item.id}>{item.name}</Option>
);
return arr;
}else {
let arr = proceedingTypeByDefId.slice(0, 4) // 截取前四个元素
.map((item: any) =>
<Option key={item.id} value={item.id}>{item.name}</Option>
);
return arr;
}
}); });
const [proceedingTypeColumns] = useState(() => { const [proceedingTypeColumns] = useState(() => {
let obj = {}; let obj = {};
@ -191,8 +204,6 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
}) })
}, []); }, []);
/** /**
* 查看 * 查看
* @param data * @param data
@ -235,7 +246,7 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
} }
/** /**
* 根据id删除数据 * 根据id删除数据
* @param id * @param id
*/ */
const deleteDataBasedOnId = (id: any) => { const deleteDataBasedOnId = (id: any) => {
setVisibleDelete(false); setVisibleDelete(false);
@ -246,7 +257,7 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
} }
/** /**
* 提交 * 提交
* @param data 数据 * @param data 数据
*/ */
const submit = (data: any) => { const submit = (data: any) => {
setVisibleSubmit(true); setVisibleSubmit(true);
@ -254,7 +265,7 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
} }
/** /**
* 提交 * 提交
* @param data * @param data
*/ */
const submitDataBasedOnId = (data: any) => { const submitDataBasedOnId = (data: any) => {
setVisibleSubmit(false); setVisibleSubmit(false);
@ -278,7 +289,7 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
/** /**
* 弹出层关闭 * 弹出层关闭
* @param data * @param data
*/ */
const handleCancel = () => { const handleCancel = () => {
setVisible(false); setVisible(false);
@ -291,7 +302,7 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
} }
/** /**
* 表单提交 * 表单提交
* @param data * @param data
*/ */
const onFinish = (data: any) => { const onFinish = (data: any) => {
setVisible(false); setVisible(false);
@ -484,14 +495,16 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
rowKey="id" rowKey="id"
size="small" size="small"
pagination={{ defaultPageSize: 10 }} pagination={{ defaultPageSize: 10 }}
params={{ projectId: projectId, roomType: roomType, dissentType: "1" }} params={{ projectId: projectId, roomType: roomType, dissentType: "1" ,type:type}}
actionRef={actionRef} actionRef={actionRef}
columns={columns} columns={columns}
request={params => queryingPagingData('/api/biz-service-ebtp-tender/v1/clarifydissent/supplier_dissents', 'post', params)} request={params => queryingPagingData('/api/biz-service-ebtp-tender/v1/clarifydissent/supplier_dissents', 'post', params)}
search={false} search={false}
options={false} options={false}
toolBarRender={() => [ toolBarRender={() => [
<Button key="added" onClick={added} type="primary" hidden={btnAuthority(["ebtp-supplier"])}> <Button key="added" onClick={added} type="primary"
hidden={btnAuthority(["ebtp-supplier"])}
>
</Button>, </Button>,
]} ]}
@ -516,4 +529,4 @@ const SupplierQuestionsOrObjections: React.FC<{}> = () => {
) )
} }
export default SupplierQuestionsOrObjections; export default SupplierQuestionsOrObjections;

View File

@ -19,12 +19,12 @@ export function getProceedingTypeByBidMethodDict(bidMethodDict: string): any[] {
case 'procurement_mode_1': case 'procurement_mode_1':
case 'procurement_mode_2': case 'procurement_mode_2':
arr = [ arr = [
getProceedingType('1', '异议评标结果'), getProceedingType('1', '中标公示疑问'),
getProceedingType('2', '异议开标过程'), getProceedingType('2', '中标公示异议'),
getProceedingType('3', '异议中标公示'), getProceedingType('3', '中标结果疑问'),
getProceedingType('4', '异议中标结果'), getProceedingType('4', '中标结果异议'),
getProceedingType('5', '提疑资格预审文件'), getProceedingType('5', '招标文件异议'),
getProceedingType('6', '提疑招标文件'), getProceedingType('6', '招标文件疑问'),
] ]
break; break;
case 'procurement_mode_3': case 'procurement_mode_3':
@ -78,11 +78,12 @@ export function getProceedingTypeByDefId(defId: string): any[] {
case 'bid_centralized_prequalification_bid': case 'bid_centralized_prequalification_bid':
case 'bid_invitation': case 'bid_invitation':
arr = [ arr = [
getProceedingType('1', '异议评标结果'), getProceedingType('1', '中标公示疑问'),
getProceedingType('2', '异议开标结果'), getProceedingType('2', '中标公示异议'),
getProceedingType('3', '异议中标公示'), getProceedingType('3', '中标结果疑问'),
getProceedingType('4', '异议中标结果'), getProceedingType('4', '中标结果异议'),
getProceedingType('6', '提疑招标文件'), getProceedingType('5', '招标文件异议'),
getProceedingType('6', '招标文件疑问'),
] ]
break; break;
case 'comparison_one_prequalification': case 'comparison_one_prequalification':