update:医保对账医疗总金额统计逻辑更新

This commit is contained in:
Elliott
2025-12-29 09:39:27 +08:00
parent 6fd57d6177
commit 4c416ed691
3 changed files with 24 additions and 1916 deletions

View File

@@ -690,6 +690,28 @@ public class HisUtil {
Element ybtcAmountElm = item.element("YBTCAmount");
String ybtcAmount = ybtcAmountElm != null ? ybtcAmountElm.getText() : "";
// 退款场景下,确保医保账户金额和统筹金额为负数
try {
if (amount != null && amount.trim().length() > 0) {
java.math.BigDecimal amt = new java.math.BigDecimal(amount.trim());
if (amt.compareTo(java.math.BigDecimal.ZERO) < 0) {
if (ybzhAmount != null && ybzhAmount.trim().length() > 0) {
java.math.BigDecimal ybzh = new java.math.BigDecimal(ybzhAmount.trim());
if (ybzh.compareTo(java.math.BigDecimal.ZERO) > 0) {
ybzhAmount = ybzh.negate().toPlainString();
}
}
if (ybtcAmount != null && ybtcAmount.trim().length() > 0) {
java.math.BigDecimal ybtc = new java.math.BigDecimal(ybtcAmount.trim());
if (ybtc.compareTo(java.math.BigDecimal.ZERO) > 0) {
ybtcAmount = ybtc.negate().toPlainString();
}
}
}
}
} catch (Exception ignore) {
}
//收据号
Element receiptNOElm = item.element("ReceiptNO");
String receiptNO = receiptNOElm != null ? receiptNOElm.getText() : "";