feat: 履约记录类型fd_paln_type按四场景传中文值(付款/收款/开票/收票)
This commit is contained in:
+24
-2
@@ -250,15 +250,37 @@ public final class HcsSyncConstant {
|
||||
public static final String ROW_OP_DELETE = "delete";
|
||||
|
||||
/**
|
||||
* 履约类型:付款
|
||||
* 履约类型:付款(C103-9 履约计划行)
|
||||
*/
|
||||
public static final String PERFORM_TYPE_PAYMENT = "payment";
|
||||
|
||||
/**
|
||||
* 履约类型:收款
|
||||
* 履约类型:收款(C103-9 履约计划行)
|
||||
*/
|
||||
public static final String PERFORM_TYPE_COLLECTION = "collection";
|
||||
|
||||
// ==================== 履约记录类型(C108 fd_paln_type,按四场景传中文) ====================
|
||||
|
||||
/**
|
||||
* 履约记录类型:付款
|
||||
*/
|
||||
public static final String PERF_TYPE_PAYMENT = "付款";
|
||||
|
||||
/**
|
||||
* 履约记录类型:收款
|
||||
*/
|
||||
public static final String PERF_TYPE_COLLECTION = "收款";
|
||||
|
||||
/**
|
||||
* 履约记录类型:开票
|
||||
*/
|
||||
public static final String PERF_TYPE_INVOICE = "开票";
|
||||
|
||||
/**
|
||||
* 履约记录类型:收票
|
||||
*/
|
||||
public static final String PERF_TYPE_INVOICE_RECEIPT = "收票";
|
||||
|
||||
/**
|
||||
* 款项性质:进度款
|
||||
*/
|
||||
|
||||
+1
-1
@@ -282,7 +282,7 @@ public class HcsClaimSyncSupport {
|
||||
LocalDate perfDate = flow.getTransactionTime() != null ? flow.getTransactionTime().toLocalDate() : LocalDate.now();
|
||||
String perfFdId = hcsPerfRecordAddSupport.pushPerfRecordAdd(contractManage, stageRow,
|
||||
firstNonBlank(flow.getReceiptNoticeNo(), flow.getDetailSerialNo()), claimedTotal, toMillis(perfDate),
|
||||
HcsSyncConstant.PERFORM_TYPE_COLLECTION, flow.getKingdeeBillNo(), flow.getId(),
|
||||
HcsSyncConstant.PERF_TYPE_COLLECTION, flow.getKingdeeBillNo(), flow.getId(),
|
||||
"收款履约-" + firstNonBlank(flow.getReceiptNoticeNo(), flow.getDetailSerialNo()));
|
||||
// shortcut: 履约流水 fdId 未持久化(认领链无 C108-2 更新场景,重推会重复);需推进实际金额更新时先落库
|
||||
log.info("HCS履约流水新建完成 flowId:{},contractNo:{},perfFdId:{}", flow.getId(), contractManage.getContractNo(), perfFdId);
|
||||
|
||||
+2
-2
@@ -60,7 +60,7 @@ import java.util.stream.Collectors;
|
||||
* <p>
|
||||
* 粒度:金蝶回写的每张发票(blade_invoice_application_invoice)对应一条履约开票记录;
|
||||
* 触发:A303-5 开票结果回写落库发票后,随开票登记扫描任务(HcsPushTask invoice-application)推送;
|
||||
* 履约日期为发票完成开票日期(invoice_date),履约类型 collection(收款方向,关联合同收款履约计划行);
|
||||
* 履约日期为发票完成开票日期(invoice_date),履约类型「开票」(关联合同收款履约计划行);
|
||||
* 合同经应收结算链路回溯(开票申请 → 应收结算关联 → 正式结算单合同,同 C111 §9-U10 口径);
|
||||
* 幂等凭 hcs_perf_fd_id(非空跳过),失败置重试计数与原因由下轮扫描自动补偿。
|
||||
*
|
||||
@@ -139,7 +139,7 @@ public class HcsInvoicePerfSyncSupport {
|
||||
BigDecimal amount = invoice.getInvoiceAmount() == null ? BigDecimal.ZERO : invoice.getInvoiceAmount();
|
||||
String perfFdId = hcsPerfRecordAddSupport.pushPerfRecordAdd(contractManage, stageRow,
|
||||
invoice.getInvoiceNo(), amount, toMillis(invoice.getInvoiceDate()),
|
||||
HcsSyncConstant.PERFORM_TYPE_COLLECTION, invoice.getSerialNo(), invoice.getId(),
|
||||
HcsSyncConstant.PERF_TYPE_INVOICE, invoice.getSerialNo(), invoice.getId(),
|
||||
"开票履约-" + invoice.getInvoiceNo());
|
||||
markSynced(invoice, perfFdId);
|
||||
}
|
||||
|
||||
+2
-2
@@ -163,8 +163,8 @@ public class HcsPerfRecordSyncSupport {
|
||||
props.setFdApplyNo(payment.getPaymentNo());
|
||||
// 【必填】计划日期:applyDate(毫秒时间戳)
|
||||
props.setFdPlanDate(toMillis(payment.getApplyDate()));
|
||||
// 计划类型:paymentType(原文拼写 fd_paln_type 必须沿用)
|
||||
props.setFdPalnType(payment.getPaymentType());
|
||||
// 计划类型:履约记录类型按场景传中文「付款」(原文拼写 fd_paln_type 必须沿用)
|
||||
props.setFdPalnType(HcsSyncConstant.PERF_TYPE_PAYMENT);
|
||||
// 性质:款项性质取关联履约计划行的款项性质
|
||||
props.setFdProperty(stageRow.getFundNature());
|
||||
// 履约计划id / 来源履约计划项ID:履约计划行合规阶段ID(HCS 只认自己的阶段ID)
|
||||
|
||||
+2
-2
@@ -59,7 +59,7 @@ import java.util.stream.Collectors;
|
||||
* 粒度:收票登记结算单分摊行(blade_invoice_receipt_settlement)对应一条履约收票记录;
|
||||
* 触发:收票单推送合规(C109)成功后,随收票单扫描任务(HcsPushTask invoice-receipt)推送,
|
||||
* 扫描范围限定所属收票单 hcs_sync_status=synced(C109 已推送),失败下轮自动补偿;
|
||||
* 履约日期为发票日期(收票单 invoice_date),履约类型 payment(付款方向,关联合同付款履约计划行);
|
||||
* 履约日期为发票日期(收票单 invoice_date),履约类型「收票」(关联合同付款履约计划行);
|
||||
* 合同经应付结算链路回溯(结算分摊行 → 正式结算单合同);
|
||||
* 幂等凭 hcs_perf_fd_id(非空跳过),失败置重试计数与原因由下轮扫描自动补偿。
|
||||
*
|
||||
@@ -153,7 +153,7 @@ public class HcsReceiptPerfSyncSupport {
|
||||
String applyNo = receipt.getInvoiceNo() + "-" + (settlementNo == null ? "" : settlementNo);
|
||||
String perfFdId = hcsPerfRecordAddSupport.pushPerfRecordAdd(contractManage, stageRow,
|
||||
applyNo, amount, toMillis(receipt.getInvoiceDate()),
|
||||
HcsSyncConstant.PERFORM_TYPE_PAYMENT, receipt.getKingdeeReceivedInvoiceNo(), settlementLine.getId(),
|
||||
HcsSyncConstant.PERF_TYPE_INVOICE_RECEIPT, receipt.getKingdeeReceivedInvoiceNo(), settlementLine.getId(),
|
||||
"收票履约-" + applyNo);
|
||||
markSynced(settlementLine, perfFdId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user