2.17 修改比选一阶段二次项目自定义流程的供应商报价逻辑
This commit is contained in:
@ -93,5 +93,15 @@ export async function saveClosingReason(param: any) {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 比选一阶段二次项目,获取最新轮的供应商
|
||||
* @param param
|
||||
*/
|
||||
export async function getMaxTurnSortSupplier(param: any) {
|
||||
return request(`/api/biz-service-ebtp-tender/v1/supplier_register/turnSort/max/${param}`, {
|
||||
method: 'GET',
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -1,150 +1,163 @@
|
||||
import React, {PureComponent} from 'react';
|
||||
import {Divider,Button,Form,Card,Tabs,Table,Tooltip,Input,Select,Row,Col,message} from 'antd';
|
||||
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 } from '@/utils/session';
|
||||
import { getProId, getProMethod, getDefId, getQuotationMethodById, getSessionUserData } from '@/utils/session';
|
||||
import { routerRedux } from 'dva/router';
|
||||
import { getURLInformation } from '@/utils/CommonUtils';
|
||||
import { btnAuthority } from '@/utils/authority';
|
||||
@connect(({ bidev,loading }) => ({
|
||||
import { getMaxTurnSortSupplier } from './components/service';
|
||||
@connect(({ bidev, loading }) => ({
|
||||
...bidev,
|
||||
supplierlistLoading:loading.effects['bidev/fetchSupplierList'],
|
||||
supplierlistLoading: loading.effects['bidev/fetchSupplierList'],
|
||||
}))
|
||||
class supplier extends PureComponent {
|
||||
state={
|
||||
pageNo:1,
|
||||
pageSize:10,
|
||||
tpId: getProId(),
|
||||
sectionName:"采购包",
|
||||
sectionType:"评审",
|
||||
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
|
||||
})
|
||||
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()
|
||||
tpId: getProId()
|
||||
})
|
||||
const { dispatch }=this.props;
|
||||
const { dispatch } = this.props;
|
||||
// const {pageNo,pageSize}=this.state;
|
||||
const params={
|
||||
pageNo:1,
|
||||
pageSize:10,
|
||||
const params = {
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
// roomType:this.props.match.params.roomType,
|
||||
roomType: getURLInformation('roomType'),
|
||||
tpId:getProId()//项目id
|
||||
tpId: getProId()//项目id
|
||||
}
|
||||
dispatch({
|
||||
type:"bidev/fetchSupplierList",
|
||||
payload:{...params}
|
||||
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})
|
||||
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)
|
||||
this.setState({loading: false})
|
||||
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;
|
||||
render() {
|
||||
const { supplierList, supplierlistLoading } = this.props;
|
||||
const { pageNo, pageSize, tpId, sectionType, sectionName, defId, loading } = this.state;
|
||||
const pagination = {
|
||||
current: pageNo,
|
||||
total: supplierList && supplierList.total ,
|
||||
total: supplierList && supplierList.total,
|
||||
// showSizeChanger: true,
|
||||
showQuickJumper:true,
|
||||
showTotal: (total,range) => `共 ${total} 条记录,第${range.slice(',')[0]}-${range.slice(',')[1]}条`,
|
||||
onChange:(page, pageSize)=>{
|
||||
showQuickJumper: true,
|
||||
showTotal: (total, range) => `共 ${total} 条记录,第${range.slice(',')[0]}-${range.slice(',')[1]}条`,
|
||||
onChange: (page, pageSize) => {
|
||||
this.setState({
|
||||
pageNo:page,
|
||||
pageSize:pageSize,
|
||||
pageNo: page,
|
||||
pageSize: pageSize,
|
||||
});
|
||||
const params={
|
||||
pageNo:page,
|
||||
pageSize:pageSize,
|
||||
const params = {
|
||||
pageNo: page,
|
||||
pageSize: pageSize,
|
||||
// roomType:this.props.match.params.roomType,
|
||||
roomType: getURLInformation('roomType'),
|
||||
tpId:tpId//项目id
|
||||
tpId: tpId//项目id
|
||||
}
|
||||
this.props.dispatch({
|
||||
type:"bidev/fetchSupplierList",
|
||||
payload:{...params}
|
||||
type: "bidev/fetchSupplierList",
|
||||
payload: { ...params }
|
||||
})
|
||||
},
|
||||
onShowSizeChange: (current, pageSize) => {
|
||||
this.setState({
|
||||
pageNo:1,
|
||||
pageSize:pageSize,
|
||||
pageNo: 1,
|
||||
pageSize: pageSize,
|
||||
});
|
||||
const params={
|
||||
pageNo:1,
|
||||
pageSize:pageSize,
|
||||
const params = {
|
||||
pageNo: 1,
|
||||
pageSize: pageSize,
|
||||
// roomType:this.props.match.params.roomType,
|
||||
roomType: getURLInformation('roomType'),
|
||||
tpId:tpId//项目id
|
||||
tpId: tpId//项目id
|
||||
}
|
||||
this.props.dispatch({
|
||||
type:"bidev/fetchSupplierList",
|
||||
payload:{...params}
|
||||
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)=>{
|
||||
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 <><Button type="text" onClick={()=>{this.handleRedirect(record)}} hidden={btnAuthority(["ebtp-supplier"])}>进入{sectionType}室</Button></>
|
||||
}}
|
||||
return txt == 0 || txt == 1 ? `准备${sectionType}` : (txt == 2 ? `正在${sectionType}` : (txt == 3 ? `${sectionType}结束` : null))
|
||||
}
|
||||
},
|
||||
{
|
||||
title: '操作', dataIndex: 'operation', width: '10%',
|
||||
render: (text, record, index) => {
|
||||
return <><Button type="text" onClick={() => { this.handleRedirect(record) }} hidden={btnAuthority(["ebtp-supplier"])}>进入{sectionType}室</Button></>
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
return <>
|
||||
<Card bodyStyle={{ padding: '24px 24px 0px' }} style={{ borderRadius: 6 }} bordered={false}>
|
||||
<Table
|
||||
loading={supplierlistLoading || loading}
|
||||
columns={columns}
|
||||
dataSource={supplierList!="" && supplierList.records}
|
||||
pagination={pagination}
|
||||
size="small"
|
||||
/>
|
||||
</Card>
|
||||
<Card bodyStyle={{ padding: '24px 24px 0px' }} style={{ borderRadius: 6 }} bordered={false}>
|
||||
<Table
|
||||
loading={supplierlistLoading || loading}
|
||||
columns={columns}
|
||||
dataSource={supplierList != "" && supplierList.records}
|
||||
pagination={pagination}
|
||||
size="small"
|
||||
/>
|
||||
</Card>
|
||||
</>
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user