Просмотр исходного кода

修改bug:
私有应收 跟单结算报表-保险公司报表设置了过账金额,但是报表这里不显示

jiakai 2 месяцев назад
Родитель
Сommit
2c8b227174

+ 15 - 1
tenant/organization/src/main/java/com/jzg/organization/service/impl/ReceivableServiceImpl.java

@@ -870,7 +870,8 @@ public class ReceivableServiceImpl extends ServiceImpl<ReceivableMapper, InsPlyI
             BigDecimal receivablePremium = Optional.ofNullable(firstFollow)
                     .map(InsFeeFollowOrder::getReceivablePremium)
                     .orElse(BigDecimal.ZERO);
-            // 对账金额
+
+            // 对账金额,如果ins_fee_follow_order表没有数据,则去ins_fee_follow_order_reconciliation表查询,最后返回空值
             BigDecimal reconciliationAmount = Optional.ofNullable(firstFollow)
                     .map(InsFeeFollowOrder::getReconciliationAmount)
                     .orElse(BigDecimal.ZERO);
@@ -1106,6 +1107,19 @@ public class ReceivableServiceImpl extends ServiceImpl<ReceivableMapper, InsPlyI
                 newVo.setTotalUnInvoiced(BigDecimal.ZERO);
                 newVo.setTotalSettlementAmount(BigDecimal.ZERO);
                 newVo.setTotalUnSettlementAmount(BigDecimal.ZERO);
+
+                // 查询对账金额,如果有值就赋上值
+                LambdaQueryWrapper<InsFeeFollowOrderReconciliation> insFeeFollowOrderReconciliationLambdaQueryWrapper = new LambdaQueryWrapper<>();
+                insFeeFollowOrderReconciliationLambdaQueryWrapper.eq(InsFeeFollowOrderReconciliation::getYear, signYear);
+                insFeeFollowOrderReconciliationLambdaQueryWrapper.eq(InsFeeFollowOrderReconciliation::getMonth, signMonth);
+                insFeeFollowOrderReconciliationLambdaQueryWrapper.eq(InsFeeFollowOrderReconciliation::getPartnerCompanyId, partnerCompanyId);
+                insFeeFollowOrderReconciliationLambdaQueryWrapper.eq(InsFeeFollowOrderReconciliation::getInvoiceType, invoiceType);
+                List<InsFeeFollowOrderReconciliation> insFeeFollowOrderReconciliations = insFeeFollowOrderReconciliationMapper.selectList(insFeeFollowOrderReconciliationLambdaQueryWrapper);
+                if (CollUtil.isNotEmpty(insFeeFollowOrderReconciliations)){
+                    InsFeeFollowOrderReconciliation insFeeFollowOrderReconciliation = CollUtil.getFirst(insFeeFollowOrderReconciliations);
+                    newVo.setTotalReconciliationAmount(insFeeFollowOrderReconciliation.getReconciliationAmount());
+                }
+
                 newVo.setCompanyName(getCompanyName(partnerCompanyId, companyMap));
                 resultList.add(newVo);
             }