From b61005ea9f60ee0f51b78a4b5668d7bf16b17480 Mon Sep 17 00:00:00 2001 From: zhangyx <1254353766@qq.com> Date: Mon, 6 Jun 2022 10:25:44 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=8A=95=E6=A0=87=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=99=BA=E8=83=BD=E5=AE=A1=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/BidDocSmartCheckFormModal.tsx | 101 ++++++++++++++++++ .../BidControl/BidControlManager/index.tsx | 19 ++++ .../BidControl/BidControlManager/service.ts | 7 ++ 3 files changed, 127 insertions(+) create mode 100644 src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx diff --git a/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx b/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx new file mode 100644 index 0000000..19c67cf --- /dev/null +++ b/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx @@ -0,0 +1,101 @@ +import React, { useEffect, useState } from 'react'; +import { Collapse, Table } from 'antd'; +import { getBidDocSmartCheckList } from '../service'; +import { getRoomId, getSessionRoleData } from '@/utils/session'; + +interface BidDocSmartCheckFormModalProps { + modalVisible: boolean; + values: any; + onCancel: any; +} + +const BidDocSmartCheckFormModal: React.FC = (props) => { + + const [bidDocSmartCheckList, setBidDocSmartCheckList] = useState([]); + + //查看详情窗口record + const [juryTableShow, setJuryTableShow] = useState(true);// + var roleId = getSessionRoleData().roleCode; + + + useEffect(() => { + getWarningList(); + if (roleId === "ebtp-expert") { + setJuryTableShow(false); + } + }, []) + + function callback(key: any) { + //getSessionUserData.roleIds; + } + function visibleValue(key: any) { + //1 是 0 否 + if (key) { + return ; + } else { + return ×; + } + } + + const BidDocSmartCheckColumns = [ + { title: '序号', dataIndex: 'num', width: 60, render: (text: any, record: any, index: any) => `${index + 1}` }, + { title: '供应商名称', dataIndex: 'companyName', }, + { + title: '供应商投标文件密封性检查', dataIndex: 'docTightnessCheck', render: (_: any, record: any) => { + return visibleValue(record.docTightnessCheck); + } + }, + { title: '供应商投标文件的完整性', dataIndex: 'docIntegrityCheck', render: (_: any, record: any) => { + return visibleValue(record.docIntegrityCheck); + }}, + { title: 'Mac、IP地址校验', dataIndex: 'macIPCheck', render: (_: any, record: any) => { + return visibleValue(record.macIPCheck); + }}, + { title: '投标保证金缴纳', dataIndex: 'ensureStatus', render: (_: any, record: any) => { + return visibleValue(record.ensureStatus); + }}, + { title: '不同投标人间法定代表人、法定代表授权委托人对比', dataIndex: 'supplierLegalCheck', render: (_: any, record: any) => { + return visibleValue(record.supplierLegalCheck); + }}, + { title: '投标人名称与系统操作投标人名称', dataIndex: 'supplierNameCheck', render: (_: any, record: any) => { + return visibleValue(record.supplierNameCheck); + }}, + ]; + + + const ret = { "code": 200, "success": true, "message": "success", "data": []} + const getWarningList = async () => { + let roomId = getRoomId();//sessionStorage.getItem('roomId');//sessionStorage.getItem('roomId') + + //投标文件智能审查 + await getBidDocSmartCheckList(roomId).then((res) => { + if (res.success == true) { + setBidDocSmartCheckList(res.data) + } else { + setBidDocSmartCheckList(ret.data); + } + }) + } + + return ( + <> + {juryTableShow ? + + + {注:"√"为审查项智能审查通过,"×"为审查项智能审查存在风险} + { +
+ + } +
+
+ : null} + + ); +}; + +export default BidDocSmartCheckFormModal; diff --git a/src/pages/Evaluation/BidControl/BidControlManager/index.tsx b/src/pages/Evaluation/BidControl/BidControlManager/index.tsx index 106c43a..6bf906d 100644 --- a/src/pages/Evaluation/BidControl/BidControlManager/index.tsx +++ b/src/pages/Evaluation/BidControl/BidControlManager/index.tsx @@ -8,6 +8,7 @@ import ViewBlacklistFormModal from './components/ViewBlacklistFormModal'; import ViewReviewResultFormModal from './components/ViewReviewResultFormModal'; import ViewJuryScoringRemindFormModal from './components/ViewJuryScoringRemindFormModal'; import ViewJuryScoringAnalysisFormModal from './components/ViewJuryScoringAnalysisFormModal'; +import BidDocSmartCheckFormModal from './components/BidDocSmartCheckFormModal'; function callback(key) { //getSessionUserData.roleIds; @@ -90,6 +91,11 @@ const Sing: React.FC<{}> = () => { const [ViewJuryScoringAnalysisFormVisible, setViewJuryScoringAnalysisFormVisible] = useState(false); //查看详情窗口record const [ViewJuryScoringAnalysisValues, setViewJuryScoringAnalysisValues] = useState({}); + + //投标文件智能审查 + const [BidDocSmartCheckFormVisible, setBidDocSmartCheckFormVisible] = useState(false); + //查看详情窗口record + const [BidDocSmartCheckValues, setBidDocSmartCheckValues] = useState({}); const getWarningList = async() => { @@ -175,6 +181,19 @@ const Sing: React.FC<{}> = () => { ) : null } + { + BidDocSmartCheckFormModal ? ( + { + setBidDocSmartCheckFormVisible(!BidDocSmartCheckFormVisible); + setBidDocSmartCheckValues({}); + }} + > + + ) : null + } ) } diff --git a/src/pages/Evaluation/BidControl/BidControlManager/service.ts b/src/pages/Evaluation/BidControl/BidControlManager/service.ts index 12bf955..5658ea8 100644 --- a/src/pages/Evaluation/BidControl/BidControlManager/service.ts +++ b/src/pages/Evaluation/BidControl/BidControlManager/service.ts @@ -61,6 +61,13 @@ export async function getBlackList(projectId:any,assessRoomId: any) { //黑名 }); } + +export async function getBidDocSmartCheckList(assessRoomId: any) { //投标文件智能审查 + return request('/api/biz-service-ebtp-resps/v1/tfilewarning/getBidDocSmartCheck?assessRoomId='+`${assessRoomId}`, { + method: 'get' + }); +} + export async function getDeviatedWarnList(assessRoomId: any) { // 偏离度提醒 return request('/api/biz-service-ebtp-rsms/v1/bid/deviated/warn/findBidDeviatedWarnListByRoomId/'+`${assessRoomId}`, { method: 'get' From 6922d4ad64e7277045b4a8354816831a0a1a3fc5 Mon Sep 17 00:00:00 2001 From: zhangyx <1254353766@qq.com> Date: Mon, 6 Jun 2022 10:25:44 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=8A=95=E6=A0=87=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=99=BA=E8=83=BD=E5=AE=A1=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/BidDocSmartCheckFormModal.tsx | 119 ++++++++++++++++++ .../BidControl/BidControlManager/index.tsx | 19 +++ .../BidControl/BidControlManager/service.ts | 7 ++ 3 files changed, 145 insertions(+) create mode 100644 src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx diff --git a/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx b/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx new file mode 100644 index 0000000..2491def --- /dev/null +++ b/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx @@ -0,0 +1,119 @@ +import React, { useEffect, useState } from 'react'; +import { Collapse, Table } from 'antd'; +import { getBidDocSmartCheckList } from '../service'; +import { getRoomId, getSessionRoleData } from '@/utils/session'; + +interface BidDocSmartCheckFormModalProps { + modalVisible: boolean; + values: any; + onCancel: any; +} + +const BidDocSmartCheckFormModal: React.FC = (props) => { + + const [bidDocSmartCheckList, setBidDocSmartCheckList] = useState([]); + + //查看详情窗口record + const [juryTableShow, setJuryTableShow] = useState(true);// + //是否显示法人及投标人名称对比结果;false-不显示结果,true-显示结果 + const [checkLegalAndNameResult, setCheckLegalAndNameResult] = useState(true);// + var roleId = getSessionRoleData().roleCode; + + + useEffect(() => { + setJuryTableShow(false); + getWarningList(); + if (roleId === "ebtp-expert") { + setJuryTableShow(false); + } + }, []) + + function callback(key: any) { + //getSessionUserData.roleIds; + } + function visibleValue(key: any) { + if (key) { + return ; + } else { + return ×; + } + } + function visibleLegalAndNameValue(key: any) { + //false-不显示结果,true-显示结果 + if (checkLegalAndNameResult) { + if (key) { + return ; + } else { + return ×; + } + } else { + return ; + } + } + + const BidDocSmartCheckColumns = [ + { title: '序号', dataIndex: 'num', width: 60, render: (text: any, record: any, index: any) => `${index + 1}` }, + { title: '供应商名称', dataIndex: 'companyName', }, + { + title: '供应商投标文件密封性检查', dataIndex: 'docTightnessCheck', render: (_: any, record: any) => { + return visibleValue(record.docTightnessCheck); + } + }, + { title: '供应商投标文件的完整性', dataIndex: 'docIntegrityCheck', render: (_: any, record: any) => { + return visibleValue(record.docIntegrityCheck); + }}, + { title: 'Mac、IP地址校验', dataIndex: 'macIPCheck', render: (_: any, record: any) => { + return visibleValue(record.macIPCheck); + }}, + { title: '投标保证金缴纳', dataIndex: 'ensureStatus', render: (_: any, record: any) => { + return visibleValue(record.ensureStatus); + }}, + { title: '不同投标人间法定代表人、法定代表授权委托人对比', dataIndex: 'supplierLegalCheck', render: (_: any, record: any) => { + return visibleLegalAndNameValue(record.supplierLegalCheck); + }}, + { title: '投标人名称与系统操作投标人名称', dataIndex: 'supplierNameCheck', render: (_: any, record: any) => { + return visibleLegalAndNameValue(record.supplierNameCheck); + }}, + ]; + + + const ret = { "code": 200, "success": true, "message": "success", "data": []} + const getWarningList = async () => { + let roomId = getRoomId();//sessionStorage.getItem('roomId');//sessionStorage.getItem('roomId') + + //投标文件智能审查 + await getBidDocSmartCheckList(roomId).then((res) => { + if (res.success == true) { + setCheckLegalAndNameResult(res?.data?.isCheckLegalAndName); + if(res?.data?.isCheckOpen){ + setJuryTableShow(true); + setBidDocSmartCheckList(res.data.checkResults) + } + } else { + setBidDocSmartCheckList(ret.data); + } + }) + } + + return ( + <> + {juryTableShow ? + + + {注:"√"为审查项智能审查通过,"×"为审查项智能审查存在风险} + { +
+ + } +
+
+ : null} + + ); +}; + +export default BidDocSmartCheckFormModal; diff --git a/src/pages/Evaluation/BidControl/BidControlManager/index.tsx b/src/pages/Evaluation/BidControl/BidControlManager/index.tsx index 106c43a..6bf906d 100644 --- a/src/pages/Evaluation/BidControl/BidControlManager/index.tsx +++ b/src/pages/Evaluation/BidControl/BidControlManager/index.tsx @@ -8,6 +8,7 @@ import ViewBlacklistFormModal from './components/ViewBlacklistFormModal'; import ViewReviewResultFormModal from './components/ViewReviewResultFormModal'; import ViewJuryScoringRemindFormModal from './components/ViewJuryScoringRemindFormModal'; import ViewJuryScoringAnalysisFormModal from './components/ViewJuryScoringAnalysisFormModal'; +import BidDocSmartCheckFormModal from './components/BidDocSmartCheckFormModal'; function callback(key) { //getSessionUserData.roleIds; @@ -90,6 +91,11 @@ const Sing: React.FC<{}> = () => { const [ViewJuryScoringAnalysisFormVisible, setViewJuryScoringAnalysisFormVisible] = useState(false); //查看详情窗口record const [ViewJuryScoringAnalysisValues, setViewJuryScoringAnalysisValues] = useState({}); + + //投标文件智能审查 + const [BidDocSmartCheckFormVisible, setBidDocSmartCheckFormVisible] = useState(false); + //查看详情窗口record + const [BidDocSmartCheckValues, setBidDocSmartCheckValues] = useState({}); const getWarningList = async() => { @@ -175,6 +181,19 @@ const Sing: React.FC<{}> = () => { ) : null } + { + BidDocSmartCheckFormModal ? ( + { + setBidDocSmartCheckFormVisible(!BidDocSmartCheckFormVisible); + setBidDocSmartCheckValues({}); + }} + > + + ) : null + } ) } diff --git a/src/pages/Evaluation/BidControl/BidControlManager/service.ts b/src/pages/Evaluation/BidControl/BidControlManager/service.ts index 12bf955..5658ea8 100644 --- a/src/pages/Evaluation/BidControl/BidControlManager/service.ts +++ b/src/pages/Evaluation/BidControl/BidControlManager/service.ts @@ -61,6 +61,13 @@ export async function getBlackList(projectId:any,assessRoomId: any) { //黑名 }); } + +export async function getBidDocSmartCheckList(assessRoomId: any) { //投标文件智能审查 + return request('/api/biz-service-ebtp-resps/v1/tfilewarning/getBidDocSmartCheck?assessRoomId='+`${assessRoomId}`, { + method: 'get' + }); +} + export async function getDeviatedWarnList(assessRoomId: any) { // 偏离度提醒 return request('/api/biz-service-ebtp-rsms/v1/bid/deviated/warn/findBidDeviatedWarnListByRoomId/'+`${assessRoomId}`, { method: 'get' From d9606092cf63be66e3861ff8d79c71e32280f89f Mon Sep 17 00:00:00 2001 From: zhangyx <1254353766@qq.com> Date: Fri, 17 Jun 2022 15:28:43 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=BC=80=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/BidDocSmartCheckFormModal.tsx | 30 +++++++++++++++---- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx b/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx index 19c67cf..b872537 100644 --- a/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx +++ b/src/pages/Evaluation/BidControl/BidControlManager/components/BidDocSmartCheckFormModal.tsx @@ -14,11 +14,16 @@ const BidDocSmartCheckFormModal: React.FC = (pro const [bidDocSmartCheckList, setBidDocSmartCheckList] = useState([]); //查看详情窗口record - const [juryTableShow, setJuryTableShow] = useState(true);// + const [juryTableShow, setJuryTableShow] = useState(true); + + //是否显示法人及投标人名称对比结果;false-不显示结果,true-显示结果 + const [checkLegalAndNameResult, setCheckLegalAndNameResult] = useState(true); + var roleId = getSessionRoleData().roleCode; useEffect(() => { + setJuryTableShow(false); getWarningList(); if (roleId === "ebtp-expert") { setJuryTableShow(false); @@ -29,13 +34,24 @@ const BidDocSmartCheckFormModal: React.FC = (pro //getSessionUserData.roleIds; } function visibleValue(key: any) { - //1 是 0 否 if (key) { return ; } else { return ×; } } + function visibleLegalAndNameValue(key: any) { + //false-不显示结果,true-显示结果 + if (checkLegalAndNameResult) { + if (key) { + return ; + } else { + return ×; + } + } else { + return ; + } + } const BidDocSmartCheckColumns = [ { title: '序号', dataIndex: 'num', width: 60, render: (text: any, record: any, index: any) => `${index + 1}` }, @@ -55,10 +71,10 @@ const BidDocSmartCheckFormModal: React.FC = (pro return visibleValue(record.ensureStatus); }}, { title: '不同投标人间法定代表人、法定代表授权委托人对比', dataIndex: 'supplierLegalCheck', render: (_: any, record: any) => { - return visibleValue(record.supplierLegalCheck); + return visibleLegalAndNameValue(record.supplierLegalCheck); }}, { title: '投标人名称与系统操作投标人名称', dataIndex: 'supplierNameCheck', render: (_: any, record: any) => { - return visibleValue(record.supplierNameCheck); + return visibleLegalAndNameValue(record.supplierNameCheck); }}, ]; @@ -70,7 +86,11 @@ const BidDocSmartCheckFormModal: React.FC = (pro //投标文件智能审查 await getBidDocSmartCheckList(roomId).then((res) => { if (res.success == true) { - setBidDocSmartCheckList(res.data) + setCheckLegalAndNameResult(res?.data?.isCheckLegalAndName); + if(res?.data?.isCheckOpen){ + setJuryTableShow(true); + setBidDocSmartCheckList(res.data?.checkResults) + } } else { setBidDocSmartCheckList(ret.data); }