This commit is contained in:
ylj20011123 2025-11-14 18:57:09 +08:00
parent 1a24badd8b
commit 6e7362b75e
5 changed files with 115 additions and 60 deletions

View File

@ -311,7 +311,10 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
}
}
}
// 处理税号中的特殊字符
const cleanString = (str: string) => {
return str.replace(/[\s]/g, '');
}
// 红冲发票
const handleRedGoBill = async (record?: any) => {
// 这个方法 比较复杂 我做一下注释
@ -396,6 +399,8 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
})
}
let obj: any = {
billNo: record?.BILL_NO ? `HC-${record?.BILL_NO}` : "", // 单据编号
billDate: moment(record?.BILL_DATE).format('YYYY-MM-DD'), // 单据日期
@ -404,7 +409,7 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
autoInvoice: "1",// 自动开票标记
invoiceProperty: "1",
invoiceType: record?.BILL_TYPE == 1000 ? '08xdp' : record?.BILL_TYPE == 2000 ? '10xdp' : '', //发票种类
buyerTaxpayerId: record?.TAXPAYER_IDENTIFYCODE,// 购方税号
buyerTaxpayerId: cleanString(record?.TAXPAYER_IDENTIFYCODE),// 购方税号
buyerName: record?.MERCHANTS_NAME, // 购买方名称
buyerProperty: "0", // 购买方性质 0-企业1-个人2-非企业单位
// sellerTaxpayerId: "91530112MA7MQ2JR9U", // 销方税号 写死
@ -413,10 +418,13 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
sellerName: publicParams.sellerName, // 销方名称 写死
sellerBankAndAccount: "", // 销方银行和账号 写死
sellerAddressAndTel: "", // 销方地址和电话 写死 应该可以不传
drawer: record?.BILL_PERSON,// 开票人
payee: "周洁萍", // 收款人
reviewer: "杨尚涛",// 复核人
drawer: "杨木青",// 开票人
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}${record?.MERCHANTS_TEL}`,// 购方地址、电话
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行、账号
redReason: formData?.redReasonSelect || "",
autoMerge: "0",
// blueinvoiceNo: '23249322851717775360',
@ -424,7 +432,7 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
// originalIssueTime: record?.originalIssueTime,
// blueInvoiceType: record?.blueInvoiceType,
blueinvoiceCode: "",
billDetail: billDetailReq
billDetail: billDetailReq,
}
// 构造原始数据
@ -541,7 +549,7 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
autoInvoice: "1",// 自动开票标记
invoiceType: record?.BILL_TYPE == 1000 ? '08xdp' : record?.BILL_TYPE == 2000 ? '10xdp' : '', //发票种类
buyerTaxpayerId: record?.TAXPAYER_IDENTIFYCODE,// 购方税号
buyerTaxpayerId: cleanString(record?.TAXPAYER_IDENTIFYCODE),// 购方税号
buyerName: record?.MERCHANTS_NAME, // 购买方名称
buyerProperty: "0", // 购买方性质 0-企业1-个人2-非企业单位
@ -552,11 +560,16 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
sellerBankAndAccount: "", // 销方银行和账号 写死
sellerAddressAndTel: "", // 销方地址和电话 写死 应该可以不传
drawer: record?.BILL_PERSON,// 开票人
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
remark: record?.BILL_DESC,
buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}${record?.MERCHANTS_TEL}`,// 购方地址、电话
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行、账号
payee: "周洁萍", // 收款人
reviewer: "杨尚涛",// 复核人
drawer: "杨木青",// 开票人
// redReason: record?.BILL_DESC,
// blueinvoiceNo: record?.blueinvoiceNo,
@ -793,7 +806,7 @@ const DigitalElectronics: React.FC<{ currentUser: any }> = (props) => {
BILL_DATE: obj?.BILL_DATE,// 开票日期
BANK_NAME: obj?.BANK_NAME,// 开户银行
BANK_ACCOUNT: obj?.BANK_ACCOUNT,// 银行账号
TAXPAYER_IDENTIFYCODE: obj?.TAXPAYER_IDENTIFYCODE,// 统一信用代码
TAXPAYER_IDENTIFYCODE: cleanString(obj?.TAXPAYER_IDENTIFYCODE),// 统一信用代码
INTERBANK_NO: obj?.INTERBANK_NO,// 联行号
TAXPAYER_CODE: obj?.sellerTaxpayerId,// 开票方纳税人识别号
ACCOUNTED_TYPE: obj?.ACCOUNTED_TYPE,// 入账类型

View File

@ -188,7 +188,10 @@ const InvoiceInquiry: React.FC<{ currentUser: any }> = (props) => {
},
]
// 处理税号中的特殊字符
const cleanString = (str: string) => {
return str.replace(/[\s]/g, '');
}
// 红冲发票
const handleRedGoBill = async (record?: any) => {
// 这个方法 比较复杂 我做一下注释
@ -279,7 +282,7 @@ const InvoiceInquiry: React.FC<{ currentUser: any }> = (props) => {
autoInvoice: "1",// 自动开票标记
invoiceProperty: "1",
invoiceType: record?.BILL_TYPE == 1000 ? '08xdp' : record?.BILL_TYPE == 2000 ? '10xdp' : '', //发票种类
buyerTaxpayerId: record?.TAXPAYER_IDENTIFYCODE,// 购方税号
buyerTaxpayerId: cleanString(record?.TAXPAYER_IDENTIFYCODE),// 购方税号
buyerName: record?.MERCHANTS_NAME, // 购买方名称
buyerProperty: "0", // 购买方性质 0-企业1-个人2-非企业单位
// sellerTaxpayerId: "91530112MA7MQ2JR9U", // 销方税号 写死
@ -288,7 +291,12 @@ const InvoiceInquiry: React.FC<{ currentUser: any }> = (props) => {
sellerName: publicParams.sellerName, // 销方名称 写死
sellerBankAndAccount: "", // 销方银行和账号 写死
sellerAddressAndTel: "", // 销方地址和电话 写死 应该可以不传
drawer: record?.BILL_PERSON,// 开票人
payee: "周洁萍", // 收款人
reviewer: "杨尚涛",// 复核人
drawer: "杨木青",// 开票人
buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}${record?.MERCHANTS_TEL}`,// 购方地址、电话
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行、账号
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
@ -412,7 +420,7 @@ const InvoiceInquiry: React.FC<{ currentUser: any }> = (props) => {
autoInvoice: "1",// 自动开票标记
invoiceType: record?.BILL_TYPE == 1000 ? '08xdp' : record?.BILL_TYPE == 2000 ? '10xdp' : '', //发票种类
buyerTaxpayerId: record?.TAXPAYER_IDENTIFYCODE,// 购方税号
buyerTaxpayerId: cleanString(record?.TAXPAYER_IDENTIFYCODE),// 购方税号
buyerName: record?.MERCHANTS_NAME, // 购买方名称
buyerProperty: "0", // 购买方性质 0-企业1-个人2-非企业单位
@ -423,7 +431,12 @@ const InvoiceInquiry: React.FC<{ currentUser: any }> = (props) => {
sellerBankAndAccount: "", // 销方银行和账号 写死
sellerAddressAndTel: "", // 销方地址和电话 写死 应该可以不传
drawer: record?.BILL_PERSON,// 开票人
payee: "周洁萍", // 收款人
reviewer: "杨尚涛",// 复核人
drawer: "杨木青",// 开票人
buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}${record?.MERCHANTS_TEL}`,// 购方地址、电话
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行、账号
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
@ -659,7 +672,7 @@ const InvoiceInquiry: React.FC<{ currentUser: any }> = (props) => {
BILL_DATE: obj?.BILL_DATE,// 开票日期
BANK_NAME: obj?.BANK_NAME,// 开户银行
BANK_ACCOUNT: obj?.BANK_ACCOUNT,// 银行账号
TAXPAYER_IDENTIFYCODE: obj?.TAXPAYER_IDENTIFYCODE,// 统一信用代码
TAXPAYER_IDENTIFYCODE: cleanString(obj?.TAXPAYER_IDENTIFYCODE),// 统一信用代码
INTERBANK_NO: obj?.INTERBANK_NO,// 联行号
TAXPAYER_CODE: obj?.sellerTaxpayerId,// 开票方纳税人识别号
ACCOUNTED_TYPE: obj?.ACCOUNTED_TYPE,// 入账类型

View File

@ -1,6 +1,6 @@
import React, { useEffect, useRef, useState } from "react";
import ProForm, { ProFormSelect, ProFormText } from "@ant-design/pro-form";
import { Col, Drawer, FormInstance, Row, Table, Typography, Space, Button, Empty } from "antd";
import ProForm, { ProFormSelect, ProFormText, ProFormTextArea } from "@ant-design/pro-form";
import { Col, Drawer, FormInstance, Row, Table, Typography, Space, Button, Empty, Divider } from "antd";
import { connect } from "umi";
import { ProTable } from "@ant-design/pro-components";
import { handleGetAPPLYAPPROVEList, handleGetBILLDETAILList } from "@/pages/DigitalElectronics/service";
@ -103,6 +103,7 @@ const InvoiceDetail = ({ showDetail, setShowDetail, parentRow, setParentRow }: P
title: <div style={{ textAlign: 'center' }}></div>,
align: 'right',
width: 80,
valueType: 'digit',
dataIndex: "INVOICE_TAX"
},
{
@ -178,6 +179,7 @@ const InvoiceDetail = ({ showDetail, setShowDetail, parentRow, setParentRow }: P
setShowDetail(false);
setParentRow(undefined);
}}
bodyStyle={{ padding: '0 24px 24px' }}
destroyOnClose
>
{/* 统一 labelCol 宽度:通过 formProps 设置 */}
@ -188,14 +190,8 @@ const InvoiceDetail = ({ showDetail, setShowDetail, parentRow, setParentRow }: P
formProps={{ labelCol: { span: 8 } }}
>
{/* 第一行:三列(每列 span=8 */}
<Divider orientation="left"></Divider>
<Row gutter={16}>
<Col span={8}>
<ProFormText name="BILL_NO" label="票据编号" readonly />
<ProFormText name="SERIAL_NO" label="流水号" readonly />
<ProFormText name="BILL_PERSON" label="开票申请人" readonly />
<ProFormText name="BILL_DATE" label="申请日期" readonly />
</Col>
<Col span={8}>
<ProFormSelect name="BILL_TYPE" label="票据类型" readonly fieldProps={{
options: [
@ -204,6 +200,22 @@ const InvoiceDetail = ({ showDetail, setShowDetail, parentRow, setParentRow }: P
{ label: "红票", value: 3000 }
]
}} />
<ProFormText name="SERVERPART_NAME" label="服务区" readonly />
<ProFormText name="BILL_TAXAMOUNT" label="含税开票金额" readonly />
<ProFormText name="BILL_PERSON" label="开票申请人" readonly />
</Col>
<Col span={8}>
<ProFormText name="BILL_NO" label="票据编号" readonly />
<ProFormText name="SERVERPARTSHOP_NAME" label="门店" readonly />
<ProFormText name="BILL_AMOUNT" label="除税开票金额" readonly />
<ProFormText name="BILL_DATE" label="申请日期" readonly />
</Col>
<Col span={8}>
<ProFormText name="SERIAL_NO" label="流水号" readonly />
<ProFormSelect name="BILL_STATE" label="票据状态" readonly fieldProps={{
options: [
{ label: "填写中", value: 1000 },
@ -214,30 +226,27 @@ const InvoiceDetail = ({ showDetail, setShowDetail, parentRow, setParentRow }: P
{ label: "已红冲", value: 9999 }
]
}} />
<ProFormText name="MERCHANTS_NAME" label="商户名称" readonly />
<ProFormText name="SERVERPART_NAME" label="服务区" readonly />
</Col>
<Col span={8}>
<ProFormText name="SERVERPARTSHOP_NAME" label="门店" readonly />
<ProFormText name="BILL_TAXAMOUNT" label="含税开票金额" readonly />
<ProFormText name="BILL_AMOUNT" label="除税开票金额" readonly />
<ProFormText name="TAX_PRICE" label="开票税金" readonly />
<ProFormText name="ACCOUNTED_DATE" label="开票日期" readonly />
{/* <ProFormText name="INTERBANK_NO" label="联行号" readonly /> */}
{/* <ProFormText name="TAXPAYER_CODE" label="纳税人识别号" readonly /> */}
</Col>
</Row>
<Divider orientation="left"></Divider>
{/* 第二行 */}
<Row gutter={16} style={{ marginTop: 12 }}>
<Row gutter={16}>
<Col span={8}>
<ProFormText name="DUTY_PARAGRAPH" label="开票税率" readonly />
<ProFormText name="ACCOUNTED_DATE" label="开票日期" readonly />
<ProFormText name="BANK_NAME" label="开户银行" readonly />
<ProFormText name="MERCHANTS_NAME" label="商户名称" readonly />
<ProFormText name="MERCHANTS_ADDRESS" label="购方地址" readonly />
<ProFormText name="RECEIVE_EMAIL" label="收票邮箱" readonly />
</Col>
<Col span={8}>
<ProFormText name="RECEIVE_PHONENUMBER" label="收票手机" readonly />
<ProFormText name="RECEIVE_EMAIL" label="收票邮箱" readonly />
{/* 发票图片:显示为链接 */}
<ProFormText name="TAXPAYER_IDENTIFYCODE" label="统一信用代码" readonly />
<ProFormText name="MERCHANTS_TEL" label="购方电话" readonly />
<ProFormText
name="DOWNLOAD_URL"
label="发票图片"
@ -252,29 +261,29 @@ const InvoiceDetail = ({ showDetail, setShowDetail, parentRow, setParentRow }: P
>
</a>
) : '无发票图片',
) : '',
}}
/>
</Col>
<Col span={8}>
<ProFormText name="BANK_NAME" label="开户银行" readonly />
<ProFormText name="BANK_ACCOUNT" label="银行账号" readonly />
<ProFormText name="TAXPAYER_IDENTIFYCODE" label="统一信用代码" readonly />
</Col>
</Row>
{/* 第三行:备注信息(仍三列) */}
<Row gutter={16} style={{ marginTop: 12 }}>
<Col span={8}>
{/* 修改 label 文案为 纳税人识别号 */}
<ProFormText name="TAXPAYER_CODE" label="纳税人识别号" readonly />
</Col>
<Col span={8}>
<ProFormText name="INTERBANK_NO" label="联行号" readonly />
</Col>
<Col span={8}>
<ProFormText name="BILL_DESC" label="备注" readonly />
<Row gutter={16}>
<Col span={24}>
<ProFormTextArea
name="BILL_DESC"
label="备注"
readonly
fieldProps={{
autoSize: true,
}}
/>
</Col>
</Row>

View File

@ -443,6 +443,10 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
),
},
]
// 处理税号中的特殊字符
const cleanString = (str: string) => {
return str.replace(/[\s]/g, '');
}
// 红冲发票
const handleRedGoBill = async (record?: any) => {
// 这个方法 比较复杂 我做一下注释
@ -525,6 +529,11 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
})
}
let newDesc: string = ''
let addStr: string = `被红冲蓝字数电发票号码:${record?.blueinvoiceNo || ""}\t\t红字发票信息确认单编号${record?.BILL_NO ? `HC-${record?.BILL_NO}` : ""};\n`
newDesc = record?.BILL_DESC.replace(/收款人/, addStr + "收款人");
let obj: any = {
billNo: record?.BILL_NO ? `HC-${record?.BILL_NO}` : "", // 单据编号
billDate: moment(record?.BILL_DATE).format('YYYY-MM-DD'), // 单据日期
@ -533,7 +542,7 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
autoInvoice: "1",// 自动开票标记
invoiceProperty: "1",
invoiceType: record?.BILL_TYPE == 1000 ? '08xdp' : record?.BILL_TYPE == 2000 ? '10xdp' : '', //发票种类
buyerTaxpayerId: record?.TAXPAYER_IDENTIFYCODE,// 购方税号
buyerTaxpayerId: cleanString(record?.TAXPAYER_IDENTIFYCODE),// 购方税号
buyerName: record?.MERCHANTS_NAME, // 购买方名称
buyerProperty: "0", // 购买方性质 0-企业1-个人2-非企业单位
// sellerTaxpayerId: "91530112MA7MQ2JR9U", // 销方税号 写死
@ -542,7 +551,12 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
sellerName: publicParams.sellerName, // 销方名称 写死
sellerBankAndAccount: "", // 销方银行和账号 写死
sellerAddressAndTel: "", // 销方地址和电话 写死 应该可以不传
drawer: record?.BILL_PERSON,// 开票人
payee: "周洁萍", // 收款人
reviewer: "杨尚涛",// 复核人
drawer: "杨木青",// 开票人
buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}${record?.MERCHANTS_TEL}`,// 购方地址、电话
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行账号
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
@ -553,7 +567,8 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
// originalIssueTime: record?.originalIssueTime,
// blueInvoiceType: record?.blueInvoiceType,
blueinvoiceCode: "",
billDetail: billDetailReq
billDetail: billDetailReq,
remark: newDesc || "",
}
// 构造原始数据
@ -667,7 +682,7 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
autoInvoice: "1",// 自动开票标记
invoiceType: record?.BILL_TYPE == 1000 ? '08xdp' : record?.BILL_TYPE == 2000 ? '10xdp' : '', //发票种类
buyerTaxpayerId: record?.TAXPAYER_IDENTIFYCODE,// 购方税号
buyerTaxpayerId: cleanString(record?.TAXPAYER_IDENTIFYCODE),// 购方税号
buyerName: record?.MERCHANTS_NAME, // 购买方名称
buyerProperty: "0", // 购买方性质 0-企业1-个人2-非企业单位
@ -678,7 +693,12 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
sellerBankAndAccount: "", // 销方银行和账号 写死
sellerAddressAndTel: "", // 销方地址和电话 写死 应该可以不传
drawer: record?.BILL_PERSON,// 开票人
payee: "周洁萍", // 收款人
reviewer: "杨尚涛",// 复核人
drawer: "杨木青",// 开票人
buyerAddressAndTel: `${record?.MERCHANTS_ADDRESS}${record?.MERCHANTS_TEL}`,// 购方地址、电话
buyerBankAndAccount: `${record?.BANK_NAME}${record?.BANK_ACCOUNT}`,// 购方银行账号
buyerRecipientPhone: record?.RECEIVE_PHONENUMBER,// 购方收票手机号
buyerRecipientMail: record?.RECEIVE_EMAIL,// 购方收件邮箱
@ -911,7 +931,7 @@ const RedReversal: React.FC<{ currentUser: any }> = (props) => {
BILL_DATE: obj?.BILL_DATE,// 申请时间
BANK_NAME: obj?.BANK_NAME,// 开户银行
BANK_ACCOUNT: obj?.BANK_ACCOUNT,// 银行账号
TAXPAYER_IDENTIFYCODE: obj?.TAXPAYER_IDENTIFYCODE,// 统一信用代码
TAXPAYER_IDENTIFYCODE: cleanString(obj?.TAXPAYER_IDENTIFYCODE),// 统一信用代码
INTERBANK_NO: obj?.INTERBANK_NO,// 联行号
TAXPAYER_CODE: obj?.sellerTaxpayerId,// 开票方纳税人识别号
ACCOUNTED_TYPE: obj?.ACCOUNTED_TYPE,// 入账类型

View File

@ -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' });