fix: 收款流水收款金额改取A301-1主单actrecamt字段

This commit is contained in:
刘泉佳
2026-10-29 15:37:54 +08:00
parent 216e61b1ed
commit d4666557bc
4 changed files with 7 additions and 13 deletions
@@ -42,7 +42,6 @@ import org.springblade.thirdparty.bfi.pojo.dto.BfiRecBillQueryDTO;
import org.springblade.thirdparty.bfi.pojo.vo.BfiPageVO;
import org.springblade.thirdparty.bfi.pojo.vo.BfiRecBillVO;
import org.springblade.thirdparty.bfi.service.IBfiService;
import org.springblade.thirdparty.bfi.util.BfiUtil;
import org.springblade.transport.config.BfiProperties;
import org.springblade.transport.constant.KingdeeBfiConstant;
import org.springblade.transport.mapper.FormalSettlementMapper;
@@ -74,8 +73,8 @@ import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@@ -499,10 +498,10 @@ public class ReceiptFlowServiceImpl extends BaseServiceImpl<KingdeeReceiptFlowMa
if (!batchSerials.add(detailSerialNo)) {
throw new ServiceException("收款单号" + detailSerialNo + "重复");
}
// 收款金额取主单入账金额 inneraccountamount(金蝶口径,非流水分录 bei_creditamount)
BigDecimal receiptAmount = money(recBill.getInneraccountAmount());
// 收款金额取主单 actrecamt(金蝶收款金额口径)
BigDecimal receiptAmount = money(recBill.getActrecamt());
if (receiptAmount.compareTo(BigDecimal.ZERO) <= 0) {
log.warn("收款流水同步跳过:收款单[{}]收款金额(inneraccountamount)为空或小于0", recBill.getBillno());
// log.warn("收款流水同步跳过:收款单[{}]收款金额(actrecamt)为空或小于0", recBill.getBillno());
skippedCount++;
continue;
}
@@ -823,7 +822,7 @@ public class ReceiptFlowServiceImpl extends BaseServiceImpl<KingdeeReceiptFlowMa
target.setOrgNumber(trimToNull(source.getOrgNumber()));
// 核算组织.编码
target.setOpenOrgNumber(trimToNull(source.getOpenorgNumber()));
// 收款金额(主单入账金额 inneraccountamount)
// 收款金额(主单 actrecamt)
target.setReceiptAmount(row.receiptAmount());
// 对方单位名称(取付款人名称)
target.setCounterpartyName(trimToEmpty(source.getPayername()));