Prechádzať zdrojové kódy

Merge branch 'dev_jzg_lipf_v20260622'

lipf 2 týždňov pred
rodič
commit
fbf7e11268

+ 4 - 0
commons/src/main/java/com/jzg/commons/entity/orders/vo/FeeAuditVo.java

@@ -144,6 +144,10 @@ public class FeeAuditVo extends BaseModel {
     @Schema(description = "订单来源 0 pc  1 app")
     private String orderSource;
 
+    @ExcelProperty("审核方式 1 人工审核 2 自动审核")
+    @Schema(description = "审核方式 1 人工审核 2 自动审核")
+    private String auditType;
+
     @ExcelProperty("权益金额")
     @Schema(description = "权益金额")
     private BigDecimal equityAmount;

+ 1 - 1
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersServiceImpl.java

@@ -402,7 +402,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             String companyName = CompanyConstants.getCompanyNameByCode(esmInsCompanyHttpResult.getData().getCompanyCode());
             insOrders.setCompanyName(companyName);
             insOrders.setIsTemporarily(ordersAdd.getIsTemporarily());
-            insOrders.setProductName(ProductsType.getProductNameByCode(ordersAdd.getProductId()));
+            insOrders.setProductName(ProductsType.getProductNameByCode(insOrders.getProductId()));
             insOrders.setOrderStatus(InsOrderStatusEnum.QUOTE_ING.getCode());
             insOrders.setEntryStatus(3);
             insOrders.setSystemCode(ordersAdd.getSystemCode());

+ 5 - 0
tenant/insurance/quotation-summary/src/main/resources/mapper/InsFeeAuditMapper.xml

@@ -40,6 +40,11 @@
         io.company_name as companyName,
         ioci.license_no AS licenseNo,
         iocui.name as insurName,
+        CASE ifa.audit_type
+        WHEN 1 THEN '人工审核'
+        WHEN 2 THEN '自动审核'
+        ELSE ''
+        END AS auditType,
         CASE io.entry_status
         WHEN 1 THEN '车险出单'
         WHEN 2 THEN '代客录单'

+ 12 - 1
tenant/organization/src/main/java/com/jzg/organization/controller/ReceivableController.java

@@ -32,6 +32,7 @@ import org.springframework.web.multipart.MultipartFile;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -836,7 +837,17 @@ public class ReceivableController {
         if(StrUtil.isEmpty(settlementReportQueryVo.getSettlementEndTime()) && StrUtil.isEmpty(settlementReportQueryVo.getSettlementStartTime()) )  {
             return HttpResult.ok(receivableService.receiverSettlementReport(page,settlementReportQueryVo));
         }else{
-            // 当勾选了结算时间后,需要反着进行查询
+            if(StrUtil.isNotEmpty(settlementReportQueryVo.getSettlementStartTime())){
+                LocalDateTime localDateTime = LocalDate.parse(settlementReportQueryVo.getSettlementStartTime()).atStartOfDay();
+                settlementReportQueryVo.setSettlementStartTime(DateUtil.formatLocalDateTime(localDateTime));
+            }
+            if(StrUtil.isNotEmpty(settlementReportQueryVo.getSettlementEndTime())){
+                LocalDateTime localDateTime = LocalDate.parse(settlementReportQueryVo.getSettlementEndTime()).plusDays(1).atStartOfDay();
+                settlementReportQueryVo.setSettlementEndTime(DateUtil.formatLocalDateTime(localDateTime));
+            }
+            settlementReportQueryVo.setStartTime(null);
+            settlementReportQueryVo.setEndTime(null);
+            // 当勾选了结算时间后,需要反着进行查询, 并且将结算金额为0的数据过滤掉
             return HttpResult.ok(receivableService.receiverSettlementReportWithSettlemetnDate(page,settlementReportQueryVo));
         }
     }

+ 21 - 4
tenant/organization/src/main/java/com/jzg/organization/service/impl/ReceivableServiceImpl.java

@@ -6344,10 +6344,27 @@ public class ReceivableServiceImpl extends ServiceImpl<ReceivableMapper, InsPlyI
      */
     @Override
     public Page<ReceiverSettlementReportDto> receiverSettlementReportWithSettlemetnDate(Page page, SettlementReportQueryVo vo) {
-        // 改为复用全量查询方法,从 ins_ply_income 出发,保持数据口径一致
-        // 时间范围通过 vo.startTime / vo.endTime 由 getReceiverSettlementReport SQL 中的 ipii.invoice_time 过滤
-        log.info("平台协议应收-结算报表-对接人结算报表查询(按时间范围)。settlementReportQueryVo=[{}]", JSONUtil.toJsonStr(vo));
-        return this.receiverSettlementReport(page, vo);
+        log.info("平台协议应收-结算报表-对接人结算报表查询。結算时间不为空 settlementReportQueryVo=[{}]", JSONUtil.toJsonStr(vo));
+        Page<InsPlyIncomeInvoiceSettlement> pageRes = insPlyIncomeInvoiceSettlementMapper.querySettlementBySettlementDate(page,vo);
+        List<InsPlyIncomeInvoiceSettlement> records = pageRes.getRecords();
+        Map<String, List<InsPlyIncomeInvoiceSettlement>> res =  records.stream()
+                .collect(Collectors.groupingBy(InsPlyIncomeInvoiceSettlement::getContactPerson));
+        Page<ReceiverSettlementReportDto> pagDto = new Page<>(page.getPages(), page.getSize());
+        List<ReceiverSettlementReportDto> dtos = new ArrayList<>();
+        for (String s : res.keySet()) {
+            ReceiverSettlementReportDto dto = new ReceiverSettlementReportDto();
+            dto.setReceiver(s);
+            List<InsPlyIncomeInvoiceSettlement> settlements = res.get(s);
+            BigDecimal diffAmount = settlements.stream().map(InsPlyIncomeInvoiceSettlement::getSettlementPaymentDifference).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
+            BigDecimal actualReceivedAmount = settlements.stream().map(InsPlyIncomeInvoiceSettlement::getActualReceivedAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
+            dto.setSettledAmount(actualReceivedAmount.toString());
+            dto.setUnSettledAmount(BigDecimal.ZERO.toString());
+            dto.setTotalReceivable(BigDecimalUtil.add(diffAmount, actualReceivedAmount).toString());
+            dto.setTotalPaymentDifference(diffAmount);
+            dtos.add(dto);
+        }
+        pagDto.setRecords(dtos);
+        return pagDto;
     }
 
     /**