3.10 工程代码同步master
This commit is contained in:
@ -1,91 +1,100 @@
|
||||
import React , { useEffect,useState } from 'react';
|
||||
import { Modal,Button } from 'antd';
|
||||
import React, { useEffect, useState } from 'react';
|
||||
import { Modal, Button } from 'antd';
|
||||
import PDF from 'react-pdf-js';
|
||||
import ProCard from '@ant-design/pro-card';
|
||||
import FileDown from '@/utils/Download';
|
||||
import FileDown from '@/utils/Download';
|
||||
|
||||
import {checkFileExist} from "../service"
|
||||
import { checkFileExist } from "../service"
|
||||
|
||||
interface PreviewJgtzsModalProps {
|
||||
fileId:string,
|
||||
downLoadFileName:string,
|
||||
modalVisible:boolean,
|
||||
onCancel:any
|
||||
fileId: string,
|
||||
downLoadFileName: string,
|
||||
modalVisible: boolean,
|
||||
onCancel: any
|
||||
}
|
||||
|
||||
const PreviewJgtzsModal: React.FC<PreviewJgtzsModalProps> = (props) => {
|
||||
const {fileId,downLoadFileName,modalVisible,onCancel}=props
|
||||
const { fileId, downLoadFileName, modalVisible, onCancel } = props
|
||||
const [page, setPage] = useState<number>(1);
|
||||
const [pages, setPages] = useState<number>(0);
|
||||
const [fileExist, setFileExist] = useState<boolean>(false);
|
||||
const [fileExist, setFileExist] = useState<string>("0");//0:未验证,1:验证后有,2:验证后没有
|
||||
|
||||
useEffect(() => {
|
||||
checkFileExist(fileId).then(res => {
|
||||
if (res !== undefined&&res.length>0){
|
||||
setFileExist(true);
|
||||
}else{
|
||||
setFileExist(false);
|
||||
if (res !== undefined && res.length > 0) {
|
||||
setFileExist("1");
|
||||
} else {
|
||||
setFileExist("2");
|
||||
}
|
||||
})
|
||||
},[fileId])
|
||||
const onDocumentComplete = (pages:any) => {
|
||||
}, [fileId])
|
||||
const onDocumentComplete = (pages: any) => {
|
||||
setPage(1);
|
||||
setPages(pages);
|
||||
}
|
||||
|
||||
const handlePrevious = () => {
|
||||
setPage(page-1);
|
||||
setPage(page - 1);
|
||||
}
|
||||
|
||||
const handleNext = () => {
|
||||
setPage(page+1);
|
||||
setPage(page + 1);
|
||||
}
|
||||
const downLoadFile =(fileId:string)=>{
|
||||
const returnUrl = "/api/core-service-ebtp-updownload/v1/attachment/download/bid/"+fileId;
|
||||
const downLoadFile = (fileId: string) => {
|
||||
const returnUrl = "/api/core-service-ebtp-updownload/v1/attachment/download/bid/" + fileId;
|
||||
return returnUrl;
|
||||
}
|
||||
|
||||
const modalHeight = window.innerHeight * 96 / 100;
|
||||
|
||||
return (
|
||||
<Modal
|
||||
destroyOnClose
|
||||
title={"预览"}
|
||||
visible={modalVisible}
|
||||
title="预览"
|
||||
onCancel={() => onCancel()}
|
||||
width={800}
|
||||
width={"80%"}
|
||||
centered
|
||||
style={{ maxHeight: modalHeight }}
|
||||
bodyStyle={{ maxHeight: modalHeight - 107, overflowY: 'auto' }}
|
||||
footer={[
|
||||
<>
|
||||
<FileDown
|
||||
key="downLoadFile"
|
||||
type="pdf"
|
||||
apiUrl={downLoadFile(fileId)}
|
||||
style={{"float":"left"}}
|
||||
fileName={downLoadFileName}
|
||||
btnName="下载"
|
||||
method="GET"
|
||||
form={null}
|
||||
/>,
|
||||
<Button disabled={page===1} key="preBtn" onClick={() => handlePrevious()}> 上一页</Button>
|
||||
<Button disabled={page===pages} key="nextBtn" onClick={() => handleNext()}> 下一页</Button>
|
||||
<Button key="close" onClick={() => onCancel()}>关闭</Button>
|
||||
</>
|
||||
<Button key="close" onClick={() => onCancel()}>关闭</Button>
|
||||
{fileExist ?
|
||||
<>
|
||||
<Button disabled={page === pages} key="nextBtn" onClick={() => handleNext()}> 下一页</Button>
|
||||
<Button disabled={page === 1} key="preBtn" onClick={() => handlePrevious()}> 上一页</Button>
|
||||
<FileDown
|
||||
key="downLoadFile"
|
||||
type="pdf"
|
||||
apiUrl={downLoadFile(fileId)}
|
||||
style={{ "float": "left" }}
|
||||
fileName={downLoadFileName}
|
||||
btnName="下载"
|
||||
method="GET"
|
||||
form={null}
|
||||
/>
|
||||
</>
|
||||
: null}
|
||||
</>
|
||||
]}
|
||||
>
|
||||
<ProCard
|
||||
layout="center"
|
||||
direction="column"
|
||||
ghost
|
||||
<ProCard
|
||||
layout="center"
|
||||
direction="column"
|
||||
ghost
|
||||
>
|
||||
{fileExist?(
|
||||
{fileExist == "0" ? (
|
||||
<div />
|
||||
) : fileExist == "1" ? (
|
||||
<>
|
||||
<PDF
|
||||
file={downLoadFile(fileId)}
|
||||
scale={0.7}
|
||||
scale={1.6}
|
||||
onDocumentComplete={onDocumentComplete}
|
||||
page={page}
|
||||
/>
|
||||
</>
|
||||
):"对不起,您所查看的文件不存在,请与系统管理员联系!"}
|
||||
) : "对不起,您所查看的文件不存在,请与系统管理员联系!"}
|
||||
</ProCard>
|
||||
</Modal>
|
||||
);
|
||||
|
@ -1,13 +1,22 @@
|
||||
import React, { useRef,useState } from 'react';
|
||||
import { Button, Card, Col, Descriptions, message, Modal, Popconfirm, Row, Spin } from 'antd';
|
||||
import ProTable, { ActionType } from '@ant-design/pro-table';
|
||||
import {generateOrder, getSubPayServiceFeeList} from "../service"
|
||||
import React, { useRef, useState } from 'react';
|
||||
import { Button, Card, Col, Descriptions, Form, Input, message, Modal, Popconfirm, Row, Spin } from 'antd';
|
||||
import ProTable, { ActionType } from '@ant-design/pro-table';
|
||||
import { generateOrder, getSubPayServiceFeeList } from "../service"
|
||||
import PreviewJgtzsModal from './PreviewJgtzsModal';
|
||||
import {getSessionUserData,getProId} from "@/utils/session";
|
||||
import { getSessionUserData, getProId, getProMethod, getDefId } from "@/utils/session";
|
||||
import { digitalConversionAmount } from '@/utils/NumberUtils';
|
||||
import { isNotEmpty } from '@/utils/CommonUtils';
|
||||
import { cancelOrder, getByOrderId, woPay } from '@/pages/Tender/supplier/IParticipate/service';
|
||||
import ExtendUpload from '@/utils/ExtendUpload';
|
||||
import { commonMessage } from '@/utils/MessageUtils';
|
||||
import { upoladVoucher } from '@/pages/Tender/supplier/EarnestMoney/service';
|
||||
|
||||
const layout = {
|
||||
labelCol: { span: 7 },
|
||||
wrapperCol: { span: 10 },
|
||||
};
|
||||
|
||||
const modalHeight = window.innerHeight * 96 / 100;
|
||||
|
||||
const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
|
||||
@ -19,25 +28,86 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
//预览窗口显示
|
||||
const [previewJgtzsFormVisible, setPreviewJgtzsFormVisible] = useState<any>(false);
|
||||
const [fileId, setFileId] = useState<any>("");
|
||||
const [bid, bidSet] = useState<any>("");
|
||||
const [downLoadFileName, setDownLoadFileName] = useState<any>("");
|
||||
|
||||
const clickJgtzs=(noticePdfFileId:any,fileName:any)=>{
|
||||
const clickJgtzs = (noticePdfFileId: any, fileName: any) => {
|
||||
setFileId(noticePdfFileId);
|
||||
setDownLoadFileName(fileName);
|
||||
// setFileId("8d40d4ec-cacb-4917-b5e2-80e38b3d48031");
|
||||
setPreviewJgtzsFormVisible(true);
|
||||
}
|
||||
const [indentTableData, setIndentTableData] = useState();
|
||||
//结算弹窗
|
||||
const [settlementVisible, setSettlementVisible] = useState<boolean>(false);
|
||||
//订单遮罩
|
||||
const [orderSpinning, setOrderSpinning] = useState<boolean>(false);
|
||||
//订单数据
|
||||
const [orderData, setOrderData] = useState<any>({});
|
||||
//订单号
|
||||
const [orderNumber, setOrderNumber] = useState<string>();
|
||||
//订单总计金额
|
||||
const [totalOrderAmount, setTotalOrderAmount] = useState<string>('');
|
||||
const [indentTableData, setIndentTableData] = useState<any>([]);
|
||||
//结算弹窗
|
||||
const [settlementVisible, setSettlementVisible] = useState<boolean>(false);
|
||||
//上传结算弹窗
|
||||
const [uploadSettlementVisible, setUploadSettlementVisible] = useState<boolean>(false);
|
||||
//订单遮罩
|
||||
const [orderSpinning, setOrderSpinning] = useState<boolean>(false);
|
||||
//订单数据
|
||||
const [orderData, setOrderData] = useState<any>({});
|
||||
//订单号
|
||||
const [orderNumber, setOrderNumber] = useState<string>();
|
||||
//购物车号
|
||||
const [shoppingCartId, shoppingCartIdSet] = useState<string>();
|
||||
//订单总计金额
|
||||
const [totalOrderAmount, setTotalOrderAmount] = useState<string>('');
|
||||
//上传凭证弹窗
|
||||
const [uploadDocuments, setUploadDocuments] = useState<boolean>(false);
|
||||
// 2021.8.10 增加当前行数据存储
|
||||
const [recordData, setRecordData] = useState<any>({});
|
||||
// 2021.8.10 查看服务费通知书弹窗
|
||||
const [modalVisible, setModalVisible] = useState<boolean>(false);
|
||||
// 2021.12.8 上传凭证 dis
|
||||
const [uploadDis, uploadDisSet] = useState<boolean>(true);
|
||||
const [form] = Form.useForm();
|
||||
const [fwftzsForm] = Form.useForm();
|
||||
let name1 = "招标";
|
||||
let name2 = "投标";
|
||||
let name3 = "开标";
|
||||
let name4 = "标段";
|
||||
let name5 = "中标";
|
||||
let TpPackageName = "";
|
||||
let kbdt = false;
|
||||
let proDict = getProMethod();
|
||||
let defId = getDefId();
|
||||
if (proDict == "procurement_mode_1" || proDict == "procurement_mode_2") {
|
||||
TpPackageName = "招标";
|
||||
name1 = "招标";
|
||||
name2 = "投标";
|
||||
name3 = "开标";
|
||||
name4 = "标段";
|
||||
name5 = "中标";
|
||||
|
||||
kbdt = true;
|
||||
} else if (proDict == "procurement_mode_3") {
|
||||
TpPackageName = "比选";
|
||||
name1 = "采购";
|
||||
name2 = "应答";
|
||||
name3 = "评审开始"
|
||||
name4 = "采购包";
|
||||
name5 = "中选";
|
||||
|
||||
} else if (proDict == "procurement_mode_5" || proDict == "procurement_mode_6") {
|
||||
TpPackageName = "谈判";
|
||||
name1 = "采购";
|
||||
name2 = "应答";
|
||||
name3 = "评审开始";
|
||||
name4 = "采购包";
|
||||
name5 = "中选";
|
||||
|
||||
} else if (proDict == "procurement_mode_4") {
|
||||
TpPackageName = "招募";
|
||||
name1 = "招募";
|
||||
name2 = "应答";
|
||||
name3 = "评审开始"
|
||||
name4 = "包件";
|
||||
name5 = "中选";
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
const columns: any = [
|
||||
{
|
||||
@ -46,26 +116,14 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
valueType: 'index'
|
||||
},
|
||||
{
|
||||
title: '标段名称',
|
||||
title: name4 + '名称',
|
||||
dataIndex: 'sectionName',
|
||||
|
||||
|
||||
},
|
||||
{
|
||||
title: '标段编号',
|
||||
dataIndex: 'sectionName',
|
||||
|
||||
},{
|
||||
title: '中标服务费通知书',
|
||||
dataIndex: 'option',
|
||||
width: 180,
|
||||
valueType: 'option',
|
||||
render: (_: any, record: any) => {
|
||||
return (
|
||||
<>
|
||||
<Button size='small' type="primary" onClick={() => clickJgtzs(record.noticePdfFileId,"服务费通知书")}>预览服务费通知书</Button>
|
||||
</>
|
||||
)
|
||||
}
|
||||
title: name4 + '编号',
|
||||
dataIndex: 'bidSectBizNum',
|
||||
|
||||
},
|
||||
{
|
||||
title: '支付类型',
|
||||
@ -74,7 +132,7 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
"0": { text: '线上支付', status: '' },
|
||||
"2": { text: '线下支付', status: '' },
|
||||
},
|
||||
|
||||
|
||||
},
|
||||
{
|
||||
title: '支付状态',
|
||||
@ -87,47 +145,92 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
"4": { text: '确认到账', status: '' },
|
||||
"-1": { text: '已失效', status: '' },
|
||||
"-2": { text: '审核驳回', status: '' },
|
||||
"9": { text: '异常', status: '' },
|
||||
},
|
||||
|
||||
},{
|
||||
title: '操作',
|
||||
dataIndex: 'option',
|
||||
width: 180,
|
||||
|
||||
}, {
|
||||
title: '操作',
|
||||
dataIndex: 'option',
|
||||
valueType: 'option',
|
||||
render: (_: any, record: any) => {
|
||||
return (
|
||||
<>
|
||||
<Button size='small' type="primary" onClick={() => paymentOfBiddingServiceFee(record)}>缴纳中标服务费</Button>
|
||||
<Button size='small' type="text" key="viewFwftzs" onClick={() => viewFwftzsClick(record)}>查看服务费通知书</Button>
|
||||
<Button size='small' type="text" key="payFee"
|
||||
onClick={() => {
|
||||
payment(record);
|
||||
shoppingCartIdSet(record.shoppingCartId)
|
||||
}}
|
||||
>缴纳{name5}服务费</Button>
|
||||
</>
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
]
|
||||
|
||||
const payment = (data: any) => {
|
||||
//线下支付
|
||||
if (String(data.payType) === "2") {
|
||||
payDeposit(data.shoppingCartId);
|
||||
} else {
|
||||
paymentOfBiddingServiceFee(data.shoppingCartId);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 缴纳中标服务费
|
||||
* @param data
|
||||
* @param data
|
||||
*/
|
||||
const paymentOfBiddingServiceFee = (data:any) => {
|
||||
generateOrder(data.shoppingCartId).then(res => {
|
||||
if (isNotEmpty(res.data)) {
|
||||
const paymentOfBiddingServiceFee = (shoppingCartId: any) => {
|
||||
setOrderSpinning(true);
|
||||
generateOrder(shoppingCartId).then(res => {
|
||||
if (res.code === 200) {
|
||||
let data = res.data;
|
||||
setOrderNumber(data.id);
|
||||
getByOrderId(data.id).then(res => {
|
||||
setOrderSpinning(false);
|
||||
setIndentTableData(res.data.cartList);
|
||||
setOrderData(res.data);
|
||||
setTotalOrderAmount(digitalConversionAmount(res.data.amount, 2));
|
||||
setSettlementVisible(true);
|
||||
if (res?.code == 200) {
|
||||
setIndentTableData(res?.data?.cartList);
|
||||
setOrderData(res?.data);
|
||||
setTotalOrderAmount(digitalConversionAmount(res?.data?.amount, 2));
|
||||
setSettlementVisible(true);
|
||||
}
|
||||
})
|
||||
}
|
||||
}).finally(() => {
|
||||
setOrderSpinning(false);
|
||||
})
|
||||
}
|
||||
|
||||
const reload = () => {
|
||||
if(actionRef.current !== void 0){
|
||||
actionRef.current.reload();
|
||||
/**
|
||||
* 上传中标服务费
|
||||
*/
|
||||
const payDeposit = (shoppingCartId: any) => {
|
||||
generateOrder(shoppingCartId).then(res => {
|
||||
if (res.code === 200) {
|
||||
setUploadSettlementVisible(true);
|
||||
// setSpinningModelLoading(true);
|
||||
setOrderSpinning(true);
|
||||
let id = res.data.id;
|
||||
setOrderNumber(id);
|
||||
form.setFieldsValue({ orderId: id, fileId: '' });
|
||||
getByOrderId(id).then(res => {
|
||||
// setSpinningModelLoading(false);
|
||||
uploadDisSet(res?.data?.state == '2' || res?.data?.state == '3' || res?.data?.state == '4' || res?.data?.state == '-1' || res?.data?.state == '9')
|
||||
bidSet(res.data?.paymentDocumentsId)
|
||||
setIndentTableData(res.data?.cartList);
|
||||
setOrderData(res.data);
|
||||
setTotalOrderAmount(digitalConversionAmount(res.data?.amount, 2));
|
||||
}).finally(() => {
|
||||
setOrderSpinning(false);
|
||||
})
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
const reload = () => {
|
||||
if (actionRef.current !== void 0) {
|
||||
actionRef.current.reload();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -135,140 +238,403 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
* 缴纳中标服务费弹出层
|
||||
*/
|
||||
const modalSettlement = () => {
|
||||
const indentColumns: any = [
|
||||
{
|
||||
title: '序号',
|
||||
valueType: 'index',
|
||||
width: 70,
|
||||
},
|
||||
{
|
||||
title: '项目名称',
|
||||
dataIndex: 'projectName',
|
||||
width: 160,
|
||||
},
|
||||
{
|
||||
title: '费用类别',
|
||||
dataIndex: 'commodityName',
|
||||
width: 140,
|
||||
},
|
||||
{
|
||||
title: '费用描述',
|
||||
dataIndex: 'commodityDescribe',
|
||||
},
|
||||
{
|
||||
title: '金额(元)',
|
||||
dataIndex: 'amount',
|
||||
width: 120,
|
||||
render: (_: any, record: any, index: number) => digitalConversionAmount(record.amount, 2)
|
||||
}
|
||||
]
|
||||
const indentColumns: any = [
|
||||
{
|
||||
title: '序号',
|
||||
valueType: 'index',
|
||||
width: 70,
|
||||
},
|
||||
{
|
||||
title: '项目名称',
|
||||
dataIndex: 'projectName',
|
||||
width: 160,
|
||||
},
|
||||
{
|
||||
title: '费用类别',
|
||||
dataIndex: 'commodityName',
|
||||
width: 140,
|
||||
},
|
||||
{
|
||||
title: '费用描述',
|
||||
dataIndex: 'commodityDescribe',
|
||||
},
|
||||
{
|
||||
title: '金额(元)',
|
||||
dataIndex: 'amount',
|
||||
width: 120,
|
||||
render: (_: any, record: any, index: number) => digitalConversionAmount(record.amount, 2)
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
/**
|
||||
* 返回
|
||||
*/
|
||||
const settlementOnCancel = () => {
|
||||
/**
|
||||
* 返回
|
||||
*/
|
||||
const settlementOnCancel = () => {
|
||||
setSettlementVisible(false);
|
||||
reload();
|
||||
}
|
||||
|
||||
/**
|
||||
* 沃支付
|
||||
*/
|
||||
const settlementOnOk = () => {
|
||||
const confirm = () => {
|
||||
Modal.confirm({
|
||||
title: '支付等待提示',
|
||||
content: `请在新打开的页面上完成支付工作,支付成功前请不要关闭本窗口。
|
||||
说明:如果因为某种原因支付失败,您可以到系统功能[我的费用支付]中继续支付,如果您是因为订单内容问题没有完成支付,可以在[我的费用支付]中进行[取消]操作。`,
|
||||
okText: '确认',
|
||||
cancelText: '取消',
|
||||
keyboard: false,
|
||||
centered: true,
|
||||
onCancel: () => reload(),
|
||||
onOk: () => reload()
|
||||
});
|
||||
};
|
||||
woPay(orderNumber).then(res => {
|
||||
if (isNotEmpty(res.data)) {
|
||||
setSettlementVisible(false);
|
||||
window.open(res.data);
|
||||
confirm();
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 取消订单
|
||||
*/
|
||||
const cancellationOfOrder = () => {
|
||||
cancelOrder(orderNumber).then(res => {
|
||||
if (res.data) {
|
||||
message.success('取消成功!');
|
||||
setSettlementVisible(false);
|
||||
reload();
|
||||
}
|
||||
} else {
|
||||
message.error('操作失败!');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const formInfo = (
|
||||
<Card bordered={false}>
|
||||
<Descriptions size="small" column={2}>
|
||||
<Descriptions.Item label="付款人名称">{orderData?.payerName}</Descriptions.Item>
|
||||
<Descriptions.Item label="收款人名称">{orderData?.agencyName}</Descriptions.Item>
|
||||
<Descriptions.Item label="订单编号">{orderData?.orderNumber}</Descriptions.Item>
|
||||
</Descriptions>
|
||||
</Card>
|
||||
);
|
||||
|
||||
return (
|
||||
<>
|
||||
<Modal visible={settlementVisible}
|
||||
title="订单详细信息"
|
||||
onCancel={settlementOnCancel}
|
||||
width={'57%'}
|
||||
closable={false}
|
||||
maskClosable={false}
|
||||
centered
|
||||
footer={[
|
||||
<Popconfirm key="popconfirm" title="确定要取消订单吗?" onConfirm={cancellationOfOrder}>
|
||||
<Button key="cancellationOfOrder">
|
||||
取消订单
|
||||
</Button>
|
||||
</Popconfirm>,
|
||||
<Button key="submit" type="primary" onClick={settlementOnOk}>
|
||||
沃支付
|
||||
</Button>,
|
||||
<Button key="settlementOnCancel" onClick={settlementOnCancel}>
|
||||
返回
|
||||
</Button>,
|
||||
]}
|
||||
>
|
||||
<Spin spinning={orderSpinning}>
|
||||
{formInfo}
|
||||
<ProTable
|
||||
columns={indentColumns}
|
||||
dataSource={indentTableData}
|
||||
rowKey="id"
|
||||
search={false}
|
||||
options={false}
|
||||
pagination={false}
|
||||
/>
|
||||
</Spin>
|
||||
<Row>
|
||||
<Col span={12} offset={18}>
|
||||
<div style={{ margin: '8px 0px -10px 0px' }}>
|
||||
总计:{totalOrderAmount} {isNotEmpty(totalOrderAmount) ? '(元)' : ''}
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
</Modal>
|
||||
|
||||
</>
|
||||
)
|
||||
}
|
||||
const viewFwftzsClick = (record: any) => {
|
||||
setRecordData(record)
|
||||
fwftzsForm.setFieldsValue({
|
||||
"serviceCharge": record?.serviceCharge + " 元",
|
||||
});
|
||||
setModalVisible(true)
|
||||
}
|
||||
|
||||
const viewFwftzsModal = () => {
|
||||
return (
|
||||
<Modal
|
||||
destroyOnClose
|
||||
title="查看服务费通知书"
|
||||
visible={modalVisible}
|
||||
onCancel={() => {
|
||||
setRecordData({})
|
||||
setModalVisible(false)
|
||||
}}
|
||||
width={800}
|
||||
okButtonProps={{ hidden: true }}
|
||||
cancelText="返回"
|
||||
style={{ maxHeight: modalHeight }}
|
||||
bodyStyle={{ maxHeight: modalHeight - 107, overflowY: 'auto', }}
|
||||
centered
|
||||
>
|
||||
<Form
|
||||
{...layout}
|
||||
name="basic"
|
||||
form={fwftzsForm}
|
||||
preserve={false}
|
||||
>
|
||||
{recordData?.noticePdfFileId == null || recordData?.noticePdfFileId == '' ? null : (
|
||||
<Form.Item
|
||||
label="服务费通知书正文"
|
||||
name="noticePdfFileId"
|
||||
style={{ alignItems: 'center' }}
|
||||
>
|
||||
<Button key="noticeClick" style={{ margin: '4px 11px' }} onClick={() => clickJgtzs(recordData?.noticePdfFileId, "服务费通知书")}>预览</Button>
|
||||
</Form.Item>
|
||||
)}
|
||||
<Form.Item
|
||||
label="服务费金额"
|
||||
name="serviceCharge"
|
||||
>
|
||||
<Input readOnly bordered={false} />
|
||||
</Form.Item>
|
||||
{recordData?.fileId == null || recordData?.fileId == '' ? null : (
|
||||
<Form.Item
|
||||
label="附件"
|
||||
name="noticeFile"
|
||||
>
|
||||
<ExtendUpload btnName="上传" bid={recordData?.fileId} uploadProps={{ disabled: true }}>
|
||||
</ExtendUpload>
|
||||
</Form.Item>
|
||||
)}
|
||||
</Form>
|
||||
</Modal>
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 沃支付
|
||||
* 上传凭证弹出层
|
||||
*/
|
||||
const modalUploadVoucher = () => {
|
||||
const indentColumns: any = [
|
||||
{
|
||||
title: '序号',
|
||||
valueType: 'index',
|
||||
width: 70,
|
||||
},
|
||||
{
|
||||
title: '项目名称',
|
||||
dataIndex: 'projectName',
|
||||
width: 160,
|
||||
},
|
||||
{
|
||||
title: '费用类别',
|
||||
dataIndex: 'commodityName',
|
||||
width: 140,
|
||||
},
|
||||
{
|
||||
title: '费用描述',
|
||||
dataIndex: 'commodityDescribe',
|
||||
},
|
||||
{
|
||||
title: '金额(元)',
|
||||
dataIndex: 'amount',
|
||||
width: 120,
|
||||
render: (_: any, record: any, index: number) => digitalConversionAmount(record.amount, 2)
|
||||
},
|
||||
{
|
||||
title: '状态', dataIndex: 'state', width: 80,
|
||||
valueEnum: {
|
||||
"0": { text: '未支付', status: 'Warning' },
|
||||
"1": { text: '支付中', status: 'Processing' },
|
||||
"2": { text: '支付成功', status: 'Success' },
|
||||
"3": { text: '待审核', status: 'Processing' },
|
||||
"4": { text: '确认到账', status: 'Success' },
|
||||
"-2": { text: '审核驳回', status: 'Error' },
|
||||
"-1": { text: '已失效', status: 'Error' },
|
||||
"9": { text: '异常', status: 'Error' },
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
/**
|
||||
* 上传凭证
|
||||
*/
|
||||
const settlementOnOk = () => {
|
||||
const confirm = () => {
|
||||
Modal.confirm({
|
||||
title: '支付等待提示',
|
||||
content: `请在新打开的页面上完成支付工作,支付成功前请不要关闭本窗口。
|
||||
说明:如果因为某种原因支付失败,您可以到系统功能[我的费用支付]中继续支付,如果您是因为订单内容问题没有完成支付,可以在[我的费用支付]中进行[取消]操作。`,
|
||||
okText: '确认',
|
||||
cancelText: '取消',
|
||||
keyboard: false,
|
||||
onCancel: () => reload(),
|
||||
onOk: () => reload()
|
||||
});
|
||||
};
|
||||
woPay(orderNumber).then(res => {
|
||||
if (isNotEmpty(res.data)) {
|
||||
setSettlementVisible(false);
|
||||
window.open(res.data);
|
||||
confirm();
|
||||
const settlementOnOk = () => {
|
||||
setUploadDocuments(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 返回
|
||||
*/
|
||||
const settlementOnCancel = () => {
|
||||
setUploadSettlementVisible(false);
|
||||
reload();
|
||||
}
|
||||
/**
|
||||
* 取消订单
|
||||
*/
|
||||
const cancellationOfOrder = () => {
|
||||
cancelOrder(orderNumber).then(res => {
|
||||
if (res.data) {
|
||||
reload();
|
||||
message.success('取消成功!');
|
||||
setUploadSettlementVisible(false);
|
||||
} else {
|
||||
message.error('操作失败!');
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const formInfo = (
|
||||
<Card bordered={false}>
|
||||
<Descriptions size="small" column={2}>
|
||||
<Descriptions.Item label="付款人名称">{orderData?.payerName}</Descriptions.Item>
|
||||
<Descriptions.Item label="收款人名称">{orderData?.agencyName}</Descriptions.Item>
|
||||
<Descriptions.Item label="订单编号">{orderData?.orderNumber}</Descriptions.Item>
|
||||
</Descriptions>
|
||||
</Card>
|
||||
);
|
||||
/**
|
||||
* 上传确定
|
||||
*/
|
||||
const uploadConfirm = () => {
|
||||
setUploadDocuments(true);
|
||||
form.submit();
|
||||
}
|
||||
/**
|
||||
* 上传返回
|
||||
*/
|
||||
const uploadReturn = () => {
|
||||
setUploadDocuments(false);
|
||||
}
|
||||
/**
|
||||
* 表单提交
|
||||
* @param data
|
||||
*/
|
||||
const onFinish = (data: any) => {
|
||||
upoladVoucher({ ...data, orderId: orderNumber }).then(res => {
|
||||
if (res.code === 200) {
|
||||
commonMessage(res);
|
||||
}
|
||||
setUploadDocuments(false);
|
||||
setUploadSettlementVisible(false);
|
||||
payDeposit(shoppingCartId);
|
||||
reload();
|
||||
})
|
||||
|
||||
/**
|
||||
* 取消订单
|
||||
*/
|
||||
const cancellationOfOrder = () => {
|
||||
cancelOrder(orderNumber).then(res => {
|
||||
if (res.data) {
|
||||
message.success('取消成功!');
|
||||
setSettlementVisible(false);
|
||||
reload();
|
||||
} else {
|
||||
message.error('操作失败!');
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const formInfo = (
|
||||
<Card>
|
||||
<Descriptions size="small" column={2}>
|
||||
<Descriptions.Item label="付款人名称">{orderData.payerName}</Descriptions.Item>
|
||||
<Descriptions.Item label="收款人名称">{orderData.agencyName}</Descriptions.Item>
|
||||
<Descriptions.Item label="订单编号">{orderData.orderNumber}</Descriptions.Item>
|
||||
</Descriptions>
|
||||
</Card>
|
||||
);
|
||||
return (
|
||||
<>
|
||||
<Modal visible={uploadSettlementVisible}
|
||||
title="订单详细信息"
|
||||
onCancel={settlementOnCancel}
|
||||
width={'57%'}
|
||||
closable={false}
|
||||
maskClosable={false}
|
||||
centered
|
||||
footer={[
|
||||
// <Popconfirm key="popconfirm" title="确定要取消订单吗?" onConfirm={cancellationOfOrder}>
|
||||
// <Button key="cancellationOfOrder">
|
||||
// 取消订单
|
||||
// </Button>
|
||||
// </Popconfirm>,
|
||||
<Button key="submit" type="primary" disabled={uploadDis} loading={orderSpinning} onClick={settlementOnOk}>
|
||||
上传凭证
|
||||
</Button>,
|
||||
<Button key="settlementOnCancel" onClick={settlementOnCancel}>
|
||||
返回
|
||||
</Button>,
|
||||
]}
|
||||
>
|
||||
<Spin spinning={orderSpinning}>
|
||||
{formInfo}
|
||||
<ProTable
|
||||
columns={indentColumns}
|
||||
dataSource={indentTableData}
|
||||
rowKey="id"
|
||||
size="small"
|
||||
search={false}
|
||||
options={false}
|
||||
pagination={false}
|
||||
/>
|
||||
</Spin>
|
||||
<Row>
|
||||
<Col span={12} offset={18}>
|
||||
<div style={{ margin: '8px 0px -10px 0px' }}>
|
||||
总计:{totalOrderAmount} {isNotEmpty(totalOrderAmount) ? '(元)' : ''}
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
</Modal>
|
||||
|
||||
return (
|
||||
<>
|
||||
<Modal visible={settlementVisible}
|
||||
title="订单详细信息"
|
||||
onCancel={settlementOnCancel}
|
||||
width={'57%'}
|
||||
closable={false}
|
||||
maskClosable={false}
|
||||
footer={[
|
||||
<Popconfirm key="popconfirm" title="确定要取消订单吗?" onConfirm={cancellationOfOrder}>
|
||||
<Button key="cancellationOfOrder">
|
||||
取消订单
|
||||
</Button>
|
||||
</Popconfirm>,
|
||||
<Button key="submit" type="primary" onClick={settlementOnOk}>
|
||||
沃支付
|
||||
</Button>,
|
||||
<Button key="settlementOnCancel" onClick={settlementOnCancel}>
|
||||
返回
|
||||
</Button>,
|
||||
]}
|
||||
>
|
||||
<Spin spinning={orderSpinning}>
|
||||
{formInfo}
|
||||
<ProTable
|
||||
columns={indentColumns}
|
||||
dataSource={indentTableData}
|
||||
rowKey="id"
|
||||
search={false}
|
||||
options={false}
|
||||
pagination={false}
|
||||
/>
|
||||
</Spin>
|
||||
<Row>
|
||||
<Col span={12} offset={18}>
|
||||
<div style={{ margin: '8px 0px -10px 0px' }}>
|
||||
总计:{totalOrderAmount} {isNotEmpty(totalOrderAmount) ? '(元)' : ''}
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
</Modal>
|
||||
<Modal
|
||||
destroyOnClose
|
||||
visible={uploadDocuments}
|
||||
title="上传凭证"
|
||||
closable={false}
|
||||
maskClosable={false}
|
||||
centered
|
||||
footer={[
|
||||
<Button key="uploadConfirm" type="primary" onClick={uploadConfirm}>
|
||||
确定
|
||||
</Button>,
|
||||
<Button key="uploadReturn" onClick={uploadReturn}>
|
||||
返回
|
||||
</Button>,
|
||||
]}
|
||||
>
|
||||
<h2>请上传您的电汇底联,以备财务人员尽快确认您的费用到账。</h2>
|
||||
|
||||
</>
|
||||
)
|
||||
<Form
|
||||
labelCol={{ span: 7 }}
|
||||
form={form}
|
||||
onFinish={onFinish}
|
||||
>
|
||||
<Form.Item name="orderId" hidden>
|
||||
<Input />
|
||||
</Form.Item>
|
||||
<Form.Item
|
||||
label="电汇底联影印件"
|
||||
name="fileId"
|
||||
rules={[{
|
||||
required: true,
|
||||
message: '请上传!'
|
||||
}]}
|
||||
>
|
||||
<ExtendUpload bid={bid} btnName="上传" uploadProps={{ name: "fileId" }} maxCount={1} />
|
||||
</Form.Item>
|
||||
</Form>
|
||||
|
||||
</Modal>
|
||||
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
return (
|
||||
<>
|
||||
<ProTable
|
||||
@ -278,7 +644,7 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
options={false}
|
||||
columns={columns}
|
||||
request={(params) =>
|
||||
getSubPayServiceFeeList({...params,pageNo:params.current,projectId}).then((res) => {
|
||||
getSubPayServiceFeeList({ ...params, pageNo: params.current, projectId }).then((res) => {
|
||||
const result = {
|
||||
data: res.data?.records,
|
||||
total: res.data?.total,
|
||||
@ -289,8 +655,10 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
return result;
|
||||
})
|
||||
}
|
||||
size="small"
|
||||
pagination={{ defaultPageSize: 10, showSizeChanger: false }}
|
||||
/>
|
||||
{previewJgtzsFormVisible?
|
||||
{previewJgtzsFormVisible ?
|
||||
<PreviewJgtzsModal
|
||||
fileId={fileId}
|
||||
downLoadFileName={downLoadFileName}
|
||||
@ -301,8 +669,10 @@ const SubPayServiceFee: React.FC<any> = (props) => {
|
||||
}}
|
||||
>
|
||||
</PreviewJgtzsModal>
|
||||
:null}
|
||||
: null}
|
||||
{modalSettlement()}
|
||||
{modalUploadVoucher()}
|
||||
{viewFwftzsModal()}
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
@ -1,100 +1,227 @@
|
||||
import React, { useRef,useState } from 'react';
|
||||
import { Button } from 'antd';
|
||||
import ProTable, { ActionType } from '@ant-design/pro-table';
|
||||
import {getSubViewNoticeList} from "../service"
|
||||
import React, { useRef, useState } from 'react';
|
||||
import { Button, Form, Input, Modal, Space } from 'antd';
|
||||
import ProTable, { ActionType } from '@ant-design/pro-table';
|
||||
import { getSubViewNoticeList, getJgtzsValues } from '../service';
|
||||
import PreviewJgtzsModal from './PreviewJgtzsModal';
|
||||
import {getSessionUserData,getProId} from "@/utils/session";
|
||||
import { getProId, getProMethod, getDefId } from '@/utils/session';
|
||||
import { getURLInformation } from '@/utils/CommonUtils';
|
||||
import ExtendUpload from "@/utils/ExtendUpload";
|
||||
|
||||
const { TextArea } = Input;
|
||||
|
||||
const layout = {
|
||||
labelCol: { span: 7 },
|
||||
wrapperCol: { span: 10 },
|
||||
};
|
||||
|
||||
const modalHeight=window.innerHeight*96/100;
|
||||
|
||||
const SubViewNotice: React.FC<any> = (props) => {
|
||||
const projectId = getProId();
|
||||
// const projectId = "1111111";
|
||||
let roomType: string | null = '2';
|
||||
if (
|
||||
getURLInformation('roomType') !== undefined &&
|
||||
getURLInformation('roomType') !== null &&
|
||||
getURLInformation('roomType') !== ''
|
||||
) {
|
||||
roomType = getURLInformation('roomType');
|
||||
}
|
||||
const actionRef = useRef<ActionType>();
|
||||
|
||||
//预览窗口显示
|
||||
const [previewJgtzsFormVisible, setPreviewJgtzsFormVisible] = useState<any>(false);
|
||||
const [fileId, setFileId] = useState<any>("");
|
||||
const [downLoadFileName, setDownLoadFileName] = useState<any>("");
|
||||
const [fileId, setFileId] = useState<any>('');
|
||||
const [downLoadFileName, setDownLoadFileName] = useState<any>('');
|
||||
const [modalVisible, setModalVisible] = useState<any>(false);
|
||||
const [form] = Form.useForm();
|
||||
const [filePath, setFilePath] = useState<any>(); // 文件回显
|
||||
const [recordData, setRecordData] = useState<any>({}); // 2021.8.9 增加当前行数据存储
|
||||
const [recordName, setRecordName] = useState<any>('结果通知书'); // 2021.8.9 增加当前行中标(中选)通知书或结果通知书名称存储
|
||||
|
||||
const clickJgtzs=(noticePdfFileId:any,fileName:any)=>{
|
||||
const clickJgtzs = (noticePdfFileId: any, fileName: any) => {
|
||||
setFileId(noticePdfFileId);
|
||||
setDownLoadFileName(fileName);
|
||||
// setFileId("8d40d4ec-cacb-4917-b5e2-80e38b3d4803");
|
||||
setPreviewJgtzsFormVisible(true);
|
||||
};
|
||||
|
||||
const lookReason = (val: any,name: any) => { //查看中标(中选)通知书或者结果通知书
|
||||
getJgtzsValues(val.id).then((res) => {
|
||||
if (res?.success === true && res?.code == 200) {
|
||||
setModalVisible(true)
|
||||
form.setFieldsValue({
|
||||
"noticeText": res.data.noticeText,
|
||||
});
|
||||
setFilePath(res.data.fileId)
|
||||
setRecordName(name)
|
||||
setRecordData(val)
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
let name1 = "招标";
|
||||
let name2 = "投标";
|
||||
let name3 = "开标";
|
||||
let name4 = "标段";
|
||||
let name5 = "中标";
|
||||
let TpPackageName = "";
|
||||
let kbdt = false;
|
||||
let proDict = getProMethod();
|
||||
let defId = getDefId();
|
||||
if (proDict == "procurement_mode_1" || proDict == "procurement_mode_2") {
|
||||
TpPackageName = "招标";
|
||||
name1 = "招标";
|
||||
name2 = "投标";
|
||||
name3 = "开标";
|
||||
name4 = "标段";
|
||||
name5 = "中标";
|
||||
|
||||
kbdt = true;
|
||||
} else if (proDict == "procurement_mode_3") {
|
||||
TpPackageName = "比选";
|
||||
name1 = "采购";
|
||||
name2 = "应答";
|
||||
name3 = "评审开始"
|
||||
name4 = "采购包";
|
||||
name5 = "中选";
|
||||
|
||||
} else if (proDict == "procurement_mode_5" || proDict == "procurement_mode_6") {
|
||||
TpPackageName = "谈判";
|
||||
name1 = "采购";
|
||||
name2 = "应答";
|
||||
name3 = "评审开始";
|
||||
name4 = "采购包";
|
||||
name5 = "中选";
|
||||
|
||||
} else if (proDict == "procurement_mode_4") {
|
||||
TpPackageName = "招募";
|
||||
name1 = "招募";
|
||||
name2 = "应答";
|
||||
name3 = "评审开始"
|
||||
name4 = "包件";
|
||||
name5 = "中选";
|
||||
|
||||
}
|
||||
|
||||
|
||||
const columns: any = [
|
||||
{
|
||||
title: '序号',
|
||||
dataIndex: 'sortNumber',
|
||||
valueType: 'index'
|
||||
valueType: 'index',
|
||||
},
|
||||
{
|
||||
title: '标段名称',
|
||||
title: name4 + '名称',
|
||||
dataIndex: 'sectionName',
|
||||
},
|
||||
{
|
||||
title: '标段编号',
|
||||
title: name4 + '编号',
|
||||
dataIndex: 'bidSectBizNum',
|
||||
},{
|
||||
title: '操作',
|
||||
dataIndex: 'option',
|
||||
width: 180,
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
dataIndex: 'option',
|
||||
width: 320,
|
||||
valueType: 'option',
|
||||
render: (_: any, record: any) => {
|
||||
let jgBtnName = "预览结果通知书";
|
||||
let fileName="";
|
||||
|
||||
if (record.noticeType==="1"){
|
||||
jgBtnName = "预览中标通知书";
|
||||
fileName="中标通知书";
|
||||
}else{
|
||||
jgBtnName = "预览结果通知书";
|
||||
fileName="结果通知书";
|
||||
let fileName = '';
|
||||
if (record.noticeType === '1') {
|
||||
fileName = name5 + '通知书';
|
||||
} else {
|
||||
fileName = '结果通知书';
|
||||
}
|
||||
return (
|
||||
<>
|
||||
<Button size='small' type="primary" onClick={() => clickJgtzs(record.noticePdfFileId,fileName)}>{jgBtnName}</Button>
|
||||
<Button key="viewJgtzs" size="small" type="text" onClick={() => lookReason(record,fileName)}>查看{fileName}</Button>
|
||||
</>
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
]
|
||||
);
|
||||
},
|
||||
},
|
||||
];
|
||||
|
||||
return (
|
||||
<>
|
||||
<ProTable
|
||||
rowKey="id"
|
||||
actionRef={actionRef}//action触发后更新表格
|
||||
actionRef={actionRef} //action触发后更新表格
|
||||
search={false}
|
||||
options={false}
|
||||
columns={columns}
|
||||
request={(params) =>
|
||||
getSubViewNoticeList({...params,pageNo:params.current,projectId}).then((res) => {
|
||||
const result = {
|
||||
data: res.data.records,
|
||||
total: res.data.total,
|
||||
success: res.success,
|
||||
pageSize: res.data.size,
|
||||
current: res.data.current
|
||||
}
|
||||
return result;
|
||||
})
|
||||
getSubViewNoticeList({ ...params, pageNo: params.current, projectId, roomType }).then(
|
||||
(res) => {
|
||||
const result = {
|
||||
data: res.data.records,
|
||||
total: res.data.total,
|
||||
success: res.success,
|
||||
pageSize: res.data.size,
|
||||
current: res.data.current,
|
||||
};
|
||||
return result;
|
||||
},
|
||||
)
|
||||
}
|
||||
size="small"
|
||||
pagination={{defaultPageSize: 10,showSizeChanger: false}}
|
||||
/>
|
||||
{previewJgtzsFormVisible?
|
||||
{previewJgtzsFormVisible ? (
|
||||
<PreviewJgtzsModal
|
||||
fileId={fileId}
|
||||
downLoadFileName={downLoadFileName}
|
||||
modalVisible={previewJgtzsFormVisible}
|
||||
onCancel={() => {
|
||||
setFileId("");
|
||||
setFileId('');
|
||||
setPreviewJgtzsFormVisible(!previewJgtzsFormVisible);
|
||||
}}
|
||||
></PreviewJgtzsModal>
|
||||
) : null}
|
||||
<Modal
|
||||
destroyOnClose
|
||||
title={`查看${recordName}`}
|
||||
visible={modalVisible}
|
||||
onCancel={() => {
|
||||
setRecordData({})
|
||||
setRecordName('结果通知书')
|
||||
setModalVisible(false)
|
||||
}}
|
||||
width={800}
|
||||
okButtonProps={{hidden: true}}
|
||||
cancelText="返回"
|
||||
style={{ maxHeight: modalHeight }}
|
||||
bodyStyle={{ maxHeight: modalHeight - 107, overflowY: 'auto', }}
|
||||
centered
|
||||
>
|
||||
<Form
|
||||
{...layout}
|
||||
name="basic"
|
||||
form={form}
|
||||
preserve={false}
|
||||
>
|
||||
</PreviewJgtzsModal>
|
||||
:null}
|
||||
{recordData?.noticePdfFileId == null || recordData?.noticePdfFileId == '' ? null : (
|
||||
<Form.Item
|
||||
label={`${recordName}正文`}
|
||||
name="noticePdfFileId"
|
||||
style={{alignItems: 'center'}}
|
||||
>
|
||||
<Button key="noticeClick" style={{margin:'4px 11px'}} onClick={() => clickJgtzs(recordData?.noticePdfFileId,recordName)}>预览</Button>
|
||||
</Form.Item>
|
||||
)}
|
||||
<Form.Item
|
||||
label={`${recordName}说明`}
|
||||
name="noticeText"
|
||||
>
|
||||
<TextArea readOnly bordered={false} autoSize={{ minRows: 1 }} />
|
||||
</Form.Item>
|
||||
{recordData?.fileId == null || recordData?.fileId == '' ? null : (
|
||||
<Form.Item
|
||||
label="附件"
|
||||
name="noticeFile"
|
||||
>
|
||||
<ExtendUpload btnName="上传" bid={filePath} uploadProps={{ disabled: true }}>
|
||||
</ExtendUpload>
|
||||
</Form.Item>
|
||||
)}
|
||||
</Form>
|
||||
</Modal>
|
||||
</>
|
||||
);
|
||||
};
|
||||
|
@ -13,7 +13,7 @@ const ViewNotice: React.FC<any> = (props) => {
|
||||
|
||||
return (
|
||||
<>
|
||||
<Card bordered={false}>
|
||||
<Card bordered={false} bodyStyle={{padding: '0px 24px'}}>
|
||||
<Tabs
|
||||
defaultActiveKey="SubViewNotice"
|
||||
onChange={(key)=>setActiveKey(key)}
|
||||
|
@ -3,7 +3,6 @@ import request from '@/utils/request';
|
||||
|
||||
//获取通知书列表
|
||||
export async function getSubViewNoticeList(params:any) {
|
||||
console.log(params);
|
||||
return request('/api/biz-service-ebtp-calibration/v1/bizbidresultnotice/getSupplierPagelist',{
|
||||
method:'POST' ,
|
||||
data:{
|
||||
@ -35,3 +34,13 @@ export async function checkFileExist(fileId?:any) {
|
||||
export function generateOrder(id:any){
|
||||
return request('/api/biz-service-ebtp-expenses/v1/bizbidshoppingcart/generateOrder?shoppingCartId=' + id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取单条结果通知书数据
|
||||
* @param id
|
||||
*/
|
||||
export async function getJgtzsValues(jgtzsId?:any) {
|
||||
return request('/api/biz-service-ebtp-calibration/v1/bizbidresultnotice/getById/'+jgtzsId,{
|
||||
method:'GET' ,
|
||||
})
|
||||
}
|
||||
|
Reference in New Issue
Block a user