import React, { PureComponent } from 'react'; import { Divider, Button, Form, Card, Tabs, Table, Tooltip, Input, Select, Row, Col, message } from 'antd'; import './index.less'; import { connect } from "dva"; import { getProId, getProMethod, getDefId, getQuotationMethodById, getSessionUserData } from '@/utils/session'; import { routerRedux } from 'dva/router'; import { getURLInformation } from '@/utils/CommonUtils'; import { btnAuthority } from '@/utils/authority'; import { getMaxTurnSortSupplier } from './components/service'; @connect(({ bidev, loading }) => ({ ...bidev, supplierlistLoading: loading.effects['bidev/fetchSupplierList'], })) class supplier extends PureComponent { state = { pageNo: 1, pageSize: 10, tpId: getProId(), sectionName: "采购包", sectionType: "评审", defId: getDefId(), loading: false, } componentDidMount() { //确定显示字段名称 let sectionName = "采购包"; let sectionType = "评审"; let proMethod = getProMethod(); if (proMethod == "procurement_mode_1" || proMethod == "procurement_mode_2") { sectionName = "标段"; sectionType = "评标"; } else if (proMethod == "procurement_mode_5" || proMethod == "procurement_mode_6") { sectionName = "采购包"; sectionType = "谈判"; } else if (proMethod == "procurement_mode_4") { sectionName = "包件"; } this.setState({ sectionName, sectionType }) this.setState({ tpId: getProId() }) const { dispatch } = this.props; // const {pageNo,pageSize}=this.state; const params = { pageNo: 1, pageSize: 10, // roomType:this.props.match.params.roomType, roomType: getURLInformation('roomType'), tpId: getProId()//项目id } dispatch({ type: "bidev/fetchSupplierList", payload: { ...params } }) } handleRedirect = async (record) => { sessionStorage.setItem("roomId", record.id) sessionStorage.setItem("roomStatus", record.status) sessionStorage.setItem("groupId", record.chatGroupId) sessionStorage.setItem("expertGroupId", record.expertChatGroupId) this.setState({ loading: true }) await getQuotationMethodById(record.id) const res = await getMaxTurnSortSupplier(record.id);//获取最新轮次的供应商信息 if (record.bxOneSecondProjectStatus && (record.instFlowType == 2) && (getSessionUserData()?.userId == res?.data[0].bidUserId)) {//比选一阶段二次项目,选择自定义流程 sessionStorage.setItem("isBxOneSecondCustom", "1") } this.setState({ loading: false }) // this.props.dispatch(routerRedux.push('/ProjectLayout/EvaRoom')) window.open('/EvaRoom') } render() { const { supplierList, supplierlistLoading } = this.props; const { pageNo, pageSize, tpId, sectionType, sectionName, defId, loading } = this.state; const pagination = { current: pageNo, total: supplierList && supplierList.total, // showSizeChanger: true, showQuickJumper: true, showTotal: (total, range) => `共 ${total} 条记录,第${range.slice(',')[0]}-${range.slice(',')[1]}条`, onChange: (page, pageSize) => { this.setState({ pageNo: page, pageSize: pageSize, }); const params = { pageNo: page, pageSize: pageSize, // roomType:this.props.match.params.roomType, roomType: getURLInformation('roomType'), tpId: tpId//项目id } this.props.dispatch({ type: "bidev/fetchSupplierList", payload: { ...params } }) }, onShowSizeChange: (current, pageSize) => { this.setState({ pageNo: 1, pageSize: pageSize, }); const params = { pageNo: 1, pageSize: pageSize, // roomType:this.props.match.params.roomType, roomType: getURLInformation('roomType'), tpId: tpId//项目id } this.props.dispatch({ type: "bidev/fetchSupplierList", payload: { ...params } }) } } const columns = [ { title: '序号', dataIndex: 'id', width: '10%', render: (text, record, index) => { return (index + 1) } }, { title: `${sectionName}名称`, dataIndex: 'sectionName', width: '10%' }, { title: `${sectionName}编号`, dataIndex: 'sectionNum', width: '10%' }, { title: `${sectionType}次数`, dataIndex: 'roomSort', width: '10%', render: (text, record, index) => { return defId == "recruit_multi" ? <>第{text}轮 : record.reviewMark == 1 ? <>第{text + record.reviewSort}次{sectionType} : <>第{text}次{sectionType} } }, { title: `${sectionType}开始时间`, dataIndex: 'openTime', width: '10%' }, { title: '状态', dataIndex: 'status', width: '10%', render: (text, record, index) => { let txt = record.status return txt == 0 || txt == 1 ? `准备${sectionType}` : (txt == 2 ? `正在${sectionType}` : (txt == 3 ? `${sectionType}结束` : null)) } }, { title: '操作', dataIndex: 'operation', width: '10%', render: (text, record, index) => { return <> } } ] return <> } } export default supplier;