feat: 收款流水同步落库匹配与结算金额字段
This commit is contained in:
+20
@@ -72,6 +72,26 @@ public class KingdeeReceiptFlow extends TenantEntity {
|
||||
* 未匹配收款金额(A301-1 unmatchamountrec,认领上限口径)
|
||||
*/
|
||||
private BigDecimal unclaimedAmount;
|
||||
/**
|
||||
* 已匹配收款金额(A301-1 matchamountrec)
|
||||
*/
|
||||
private BigDecimal matchAmountRec;
|
||||
/**
|
||||
* 已匹配付款金额(A301-1 matchamountpay)
|
||||
*/
|
||||
private BigDecimal matchAmountPay;
|
||||
/**
|
||||
* 未匹配付款金额(A301-1 unmatchamountpay)
|
||||
*/
|
||||
private BigDecimal unmatchAmountPay;
|
||||
/**
|
||||
* 已结算金额(A301-1 settleamount)
|
||||
*/
|
||||
private BigDecimal settleAmount;
|
||||
/**
|
||||
* 未结算金额(A301-1 unsettleamount)
|
||||
*/
|
||||
private BigDecimal unsettleAmount;
|
||||
/**
|
||||
* 手续费(A301-1 fee)
|
||||
*/
|
||||
|
||||
+8
@@ -69,6 +69,7 @@ import org.springframework.transaction.support.TransactionTemplate;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.time.Duration;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
@@ -838,6 +839,13 @@ public class ReceiptFlowServiceImpl extends BaseServiceImpl<KingdeeReceiptFlowMa
|
||||
target.setDetailSerialNo(row.detailSerialNo());
|
||||
// 未匹配收款金额(认领上限口径)
|
||||
target.setUnclaimedAmount(money(source.getUnmatchamountrec()));
|
||||
// 已匹配收款金额 / 已匹配付款金额 / 未匹配付款金额
|
||||
target.setMatchAmountRec(money(source.getMatchamountrec()));
|
||||
target.setMatchAmountPay(money(source.getMatchamountpay()));
|
||||
target.setUnmatchAmountPay(money(source.getUnmatchamountpay()));
|
||||
// 已结算金额 / 未结算金额
|
||||
target.setSettleAmount(money(source.getSettleamount()));
|
||||
target.setUnsettleAmount(money(source.getUnsettleamount()));
|
||||
// 手续费
|
||||
target.setFee(source.getFee() == null ? null : source.getFee().setScale(2, RoundingMode.HALF_UP));
|
||||
// 来源更新时间
|
||||
|
||||
+6
-1
@@ -75,7 +75,12 @@ A301-1 收款单查询(业务日期窗口取 `thirdParty.bfi.recBillSync.days`
|
||||
| kingdee_bill_status | `billstatus` 映射 | A/B已提交→pushed、C已审核→approved、D已收款→received、其余(含G退单)→failed |
|
||||
| detail_serial_no | 主单 `billno` | 明细流水号=收款单号,**幂等键**;主单粒度,一张收款单一条流水,不展开流水分录 |
|
||||
| receipt_amount | 主单 `actrecamt` | 收款金额(金蝶收款金额口径) |
|
||||
| unclaimed_amount | `unmatchamountrec` | 未匹配收款金额,**认领上限口径** |
|
||||
| unclaimed_amount | `unmatchamountrec` | 未匹配收款金额(认领上限口径) |
|
||||
| match_amount_rec | `matchamountrec` | 已匹配收款金额 |
|
||||
| match_amount_pay | `matchamountpay` | 已匹配付款金额 |
|
||||
| unmatch_amount_pay | `unmatchamountpay` | 未匹配付款金额 |
|
||||
| settle_amount | `settleamount` | 已结算金额 |
|
||||
| unsettle_amount | `unsettleamount` | 未结算金额 |
|
||||
| payer_name / counterparty_name | `payername` | 付款人名称 |
|
||||
| payee_name | `org_name` | 收款人(收款公司名称) |
|
||||
| org_number | `org_number` | 收款人(公司).编码 |
|
||||
|
||||
+67
@@ -0,0 +1,67 @@
|
||||
-- 收款流水表增加金蝶收款单匹配/结算金额字段(A301-1 收款单查询同步落库)
|
||||
-- unmatchamountrec 未匹配收款金额已由 unclaimed_amount 承载,不重复加列
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_receipt_flow` ADD COLUMN `match_amount_rec` decimal(19, 2) DEFAULT NULL COMMENT ''已匹配收款金额(A301-1 matchamountrec)'' AFTER `unclaimed_amount`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_receipt_flow'
|
||||
AND COLUMN_NAME = 'match_amount_rec'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_receipt_flow` ADD COLUMN `match_amount_pay` decimal(19, 2) DEFAULT NULL COMMENT ''已匹配付款金额(A301-1 matchamountpay)'' AFTER `match_amount_rec`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_receipt_flow'
|
||||
AND COLUMN_NAME = 'match_amount_pay'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_receipt_flow` ADD COLUMN `unmatch_amount_pay` decimal(19, 2) DEFAULT NULL COMMENT ''未匹配付款金额(A301-1 unmatchamountpay)'' AFTER `match_amount_pay`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_receipt_flow'
|
||||
AND COLUMN_NAME = 'unmatch_amount_pay'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_receipt_flow` ADD COLUMN `settle_amount` decimal(19, 2) DEFAULT NULL COMMENT ''已结算金额(A301-1 settleamount)'' AFTER `unmatch_amount_pay`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_receipt_flow'
|
||||
AND COLUMN_NAME = 'settle_amount'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
|
||||
SET @ddl_sql = (
|
||||
SELECT IF(COUNT(*) = 0,
|
||||
'ALTER TABLE `blade_kingdee_receipt_flow` ADD COLUMN `unsettle_amount` decimal(19, 2) DEFAULT NULL COMMENT ''未结算金额(A301-1 unsettleamount)'' AFTER `settle_amount`',
|
||||
'SELECT 1')
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE()
|
||||
AND TABLE_NAME = 'blade_kingdee_receipt_flow'
|
||||
AND COLUMN_NAME = 'unsettle_amount'
|
||||
);
|
||||
PREPARE ddl_stmt FROM @ddl_sql;
|
||||
EXECUTE ddl_stmt;
|
||||
DEALLOCATE PREPARE ddl_stmt;
|
||||
Reference in New Issue
Block a user