diff --git a/src/pages/DigitalElectronics/index.tsx b/src/pages/DigitalElectronics/index.tsx
index 4372cab..29fdd8e 100644
--- a/src/pages/DigitalElectronics/index.tsx
+++ b/src/pages/DigitalElectronics/index.tsx
@@ -128,6 +128,7 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
{ label: "填写中", value: 1000 },
{ label: "待审核", value: 2000 },
{ label: "开票中", value: 9000 },
+ { label: "手动开票", value: 9100 },
{ label: "已开票", value: 9200 },
{ label: "红冲申请中", value: 9990 },
{ label: "已红冲", value: 9999 }
@@ -193,7 +194,7 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
{
title: '操作',
dataIndex: 'action',
- width: 200,
+ width: 300,
fixed: 'left',
align: 'center',
hideInSearch: true,
@@ -246,7 +247,28 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
: ""
}
-
+ {
+ record?.BILL_STATE === 2000 ?
+ {
+ await handleSynchroBILLInterface({
+ ...record,
+ BILL_STATE: 9100
+ })
+
+ // 通知金蝶 手动开票!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ hanleManualInvoicing(record)
+ actionRef.current?.reload()
+ }}
+ onCancel={() => { }}
+ okText="确认"
+ cancelText="取消"
+ >
+
+ : ""
+ }
+
: record?.BILL_TYPE === 2000 && record?.BILL_STATE >= 9200 && record?.BILL_STATE !== 9999 ?
= (props) => {
})
}
-
+
let obj: any = {
billNo: record?.BILL_NO ? `HC-${record?.BILL_NO}` : "", // 单据编号
@@ -427,6 +449,10 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行、账号
redReason: formData?.redReasonSelect || "",
autoMerge: "0",
+ showBuyerAddressTel: "Y",// 是否展示购方地址电话标识
+ showBuyerBank: "Y",// 是否展示购方银行账号标识
+ showSalerBank: "Y",// 是否展示销方银行账号标识
+ showSalerAddressTel: "Y",// 是否展示销方地址电话标识
// blueinvoiceNo: '23249322851717775360',
blueinvoiceNo: result[0].invoiceNumber,
// originalIssueTime: record?.originalIssueTime,
@@ -562,7 +588,7 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
- remark: record?.BILL_DESC,
+ // remark: record?.BILL_DESC,
buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}、${record?.MERCHANTS_TEL}`,// 购方地址、电话
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行、账号
@@ -570,6 +596,11 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
reviewer: "杨尚涛",// 复核人
drawer: "杨木青",// 开票人
+ showBuyerAddressTel: "Y",// 是否展示购方地址电话标识
+ showBuyerBank: "Y",// 是否展示购方银行账号标识
+ showSalerBank: "Y",// 是否展示销方银行账号标识
+ showSalerAddressTel: "Y",// 是否展示销方地址电话标识
+
// redReason: record?.BILL_DESC,
// blueinvoiceNo: record?.blueinvoiceNo,
@@ -622,6 +653,96 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
message.error({ content: '开票申请失败,请重试', key: 'invoice' });
}
};
+ // 手动开票方法 由于区分一下 是异步调用 不要任何提示内容的 所以就加个方法
+ const hanleManualInvoicing = async (record: any) => {
+ // 拿个票据明细
+ const billDetail = await handleGetBILLDETAILList({
+ SearchParameter: {
+ BILL_ID: record?.BILL_ID
+ },
+ PageIndex: 1,
+ PageSize: 999999,
+ SortStr: "BILLDETAIL_ID"
+ })
+ console.log('billDetailbillDetail', billDetail);
+
+ let billDetailReq: any = []
+ if (billDetail && billDetail.length > 0) {
+ billDetail.forEach((item: any) => {
+ billDetailReq.push({
+ amount: item.INVOICE_AMOUNT, // 明细金额
+ detailId: item.BILLDETAIL_ID, // 业务系统明细id
+ goodsName: item.ITEM_NAME,// 商品名称
+ lineProperty: 2, // 行性质
+ price: item.INVOICE_PRICE,// 单价
+ quantity: item.INVOICE_COUNT,// 数量
+ revenueCode: item.TABLE_NAME,// 税收分类编码
+ taxRate: (item.DUTY_PARAGRAPH / 100).toFixed(2),// 税率
+ units: item.ITEM_UNIT,// 计量单位
+
+ })
+ })
+ }
+
+ let obj: any = {
+ billNo: record?.BILL_NO, // 单据编号
+ billDate: moment(record?.BILL_DATE).format('YYYY-MM-DD'), // 单据日期
+ totalAmount: record?.INVOICE_TAXAMOUNT, // 单据金额
+ includeTaxFlag: record?.ACCOUNTED_TYPE,// 判断是否含税
+ autoInvoice: "0",// 自动开票标记
+ invoiceType: record?.BILL_TYPE == 1000 ? '08xdp' : record?.BILL_TYPE == 2000 ? '10xdp' : '', //发票种类
+ buyerTaxpayerId: cleanString(record?.TAXPAYER_IDENTIFYCODE),// 购方税号
+ buyerName: record?.MERCHANTS_NAME, // 购买方名称
+ buyerProperty: "0", // 购买方性质 0-企业,1-个人,2-非企业单位
+ // sellerTaxpayerId: "91530112MA7MQ2JR9U", // 销方税号 写死
+ sellerTaxpayerId: publicParams.sellerTaxpayerId, // 销方税号 写死
+ // sellerName: "云南交投集团经营开发有限公司彩云驿商业管理分公司", // 销方名称 写死
+ sellerName: publicParams.sellerName, // 销方名称 写死
+ sellerBankAndAccount: "", // 销方银行和账号 写死
+ sellerAddressAndTel: "", // 销方地址和电话 写死 应该可以不传
+
+ buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
+ buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
+
+ buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}、${record?.MERCHANTS_TEL}`,// 购方地址、电话
+ buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行、账号
+ payee: "周洁萍", // 收款人
+ reviewer: "杨尚涛",// 复核人
+ drawer: "杨木青",// 开票人
+
+ showBuyerAddressTel: "Y",// 是否展示购方地址电话标识
+ showBuyerBank: "Y",// 是否展示购方银行账号标识
+ showSalerBank: "Y",// 是否展示销方银行账号标识
+ showSalerAddressTel: "Y",// 是否展示销方地址电话标识
+
+ billDetail: billDetailReq
+ }
+
+ // 构造原始数据
+ const originalData = [obj]; // 将record作为data数组的一项
+ // 将data字段进行base64加密
+ const dataString = JSON.stringify(originalData);
+ const encryptedData = btoa(unescape(encodeURIComponent(dataString))); // base64编码,支持中文
+ // 构造开票请求数据
+ const invoiceData = {
+ businessSystemCode: "BUSINESS_YCIC", // 来源系统编码
+ interfaceCode: "BILL.PUSH", // 接口业务编码
+ requestId: Date.now().toString(), // 时间戳作为请求ID
+ data: encryptedData // 加密后的data字符串
+ };
+
+ let newreq: any = {
+ name: "",
+ value: encryptAES(JSON.stringify({
+ ReqUrl: `https://cosmic.piaozone.com/ynjtjtjykf/kapi/app/sim/openApi?access_token=${accessToken}`,
+ Access_token: accessToken,
+ data: JSON.stringify(invoiceData)
+ }))
+ }
+ let response = await handleGetForwardJDPJInterface(newreq)
+
+ console.log('responseresponseresponseresponse', response);
+ }
// 退回开票
const handleReturnInvoice = async (record: any) => {
let req: any = {
diff --git a/src/pages/InvoiceInquiry/index.tsx b/src/pages/InvoiceInquiry/index.tsx
index 314984b..58b7cb5 100644
--- a/src/pages/InvoiceInquiry/index.tsx
+++ b/src/pages/InvoiceInquiry/index.tsx
@@ -125,6 +125,7 @@ const InvoiceInquiry: React.FC<{ currentUser: any }> = (props) => {
{ label: "填写中", value: 1000 },
{ label: "待审核", value: 2000 },
{ label: "开票中", value: 9000 },
+ { label: "手动开票", value: 9100 },
{ label: "已开票", value: 9200 },
{ label: "红冲申请中", value: 9990 },
{ label: "已红冲", value: 9999 }
diff --git a/src/pages/redReversal/index.tsx b/src/pages/redReversal/index.tsx
index f2ef2a6..54baf3a 100644
--- a/src/pages/redReversal/index.tsx
+++ b/src/pages/redReversal/index.tsx
@@ -205,7 +205,7 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
{
title: '操作',
dataIndex: 'action',
- width: 200,
+ width: 300,
fixed: 'left',
align: 'center',
hideInSearch: true,
@@ -386,7 +386,7 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
{
title: '操作',
dataIndex: 'action',
- width: 200,
+ width: 300,
fixed: 'left',
align: 'center',
hideInSearch: true,
@@ -560,6 +560,11 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
+ showBuyerAddressTel: "Y",// 是否展示购方地址电话标识
+ showBuyerBank: "Y",// 是否展示购方银行账号标识
+ showSalerBank: "Y",// 是否展示销方银行账号标识
+ showSalerAddressTel: "Y",// 是否展示销方地址电话标识
+
redReason: formData?.redReasonSelect || "",
autoMerge: "0",
// blueinvoiceNo: '23249322851717775360',
@@ -568,7 +573,7 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
// blueInvoiceType: record?.blueInvoiceType,
blueinvoiceCode: "",
billDetail: billDetailReq,
- remark: newDesc || "",
+ remark: record?.BILL_DESC,
}
// 构造原始数据
@@ -702,6 +707,12 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
+ showBuyerAddressTel: "Y",// 是否展示购方地址电话标识
+ showBuyerBank: "Y",// 是否展示购方银行账号标识
+ showSalerBank: "Y",// 是否展示销方银行账号标识
+ showSalerAddressTel: "Y",// 是否展示销方地址电话标识
+
+
// redReason: record?.BILL_DESC,
// blueinvoiceNo: record?.blueinvoiceNo,
diff --git a/src/utils/requestOld.ts b/src/utils/requestOld.ts
index b983de6..26e1e81 100644
--- a/src/utils/requestOld.ts
+++ b/src/utils/requestOld.ts
@@ -7,8 +7,8 @@ import CryptoJS from "crypto-js";
const { UMI_APP_BASEURL } = process.env;
// const instance = axios.create({ baseURL: UMI_APP_BASEURL });
-const instance = axios.create({ baseURL: 'https://api.eshangtech.com/EShangApiMain' });
-// const instance = axios.create({ baseURL: 'https://samember.yciccloud.com:8999/EShangApiMain' });
+// const instance = axios.create({ baseURL: 'https://api.eshangtech.com/EShangApiMain' });
+const instance = axios.create({ baseURL: 'https://samember.yciccloud.com:8999/EShangApiMain' });
// const instance = axios.create({ baseURL: '/auth' });