소스 검색

缺失功能:
数据报表 11.2的财务数据-订单明细接口开发

jiakai 1 개월 전
부모
커밋
0ec94d724c

+ 29 - 0
commons/src/main/java/com/jzg/commons/entity/report/vo/FeeAuditDetailParam.java

@@ -0,0 +1,29 @@
+package com.jzg.commons.entity.report.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.jzg.commons.core.base.PageRequest;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.time.LocalDate;
+
+/**
+ * 费用审核明细列表请求参数:按保险公司查看所有状态的审核明细
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Schema(description = "费用审核明细列表请求参数")
+public class FeeAuditDetailParam extends PageRequest {
+
+    @Schema(description = "保险公司ID")
+    private String companyId;
+
+    @Schema(description = "审核开始时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private LocalDate auditTimeStart;
+
+    @Schema(description = "审核结束时间")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private LocalDate auditTimeEnd;
+}

+ 5 - 0
consoleStatistics/pom.xml

@@ -64,6 +64,11 @@
             <artifactId>rocketmq-spring-boot-starter</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-loadbalancer</artifactId>
+        </dependency>
+
         <dependency>
             <groupId>com.jzg</groupId>
             <artifactId>rocketmq</artifactId>

+ 22 - 0
consoleStatistics/src/main/java/com/jzg/console/client/FeeAuditClient.java

@@ -0,0 +1,22 @@
+package com.jzg.console.client;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jzg.commons.core.page.HttpResult;
+import com.jzg.commons.entity.dto.FeeAuditParam;
+import com.jzg.commons.entity.orders.vo.FeeAuditVo;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+/**
+ * 调用 quotation-summary 的订单审核接口 Feign 客户端
+ */
+@FeignClient(value = "quotation-summary")
+public interface FeeAuditClient {
+
+    /**
+     * 订单审核列表分页查询
+     */
+    @PostMapping("/feeAudit/auditList")
+    HttpResult<Page<FeeAuditVo>> auditList(@RequestBody FeeAuditParam param);
+}

+ 18 - 0
consoleStatistics/src/main/java/com/jzg/console/controller/ReportFinanceDataManageController.java

@@ -1,11 +1,14 @@
 package com.jzg.console.controller;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jzg.commons.core.base.BaseController;
 import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.entity.report.dto.FeeAuditSummaryVo;
+import com.jzg.commons.entity.report.vo.FeeAuditDetailParam;
 import com.jzg.commons.entity.report.vo.FeeAuditSummaryParam;
 import com.jzg.commons.entity.report.vo.ReportSearchCommonVo;
+import com.jzg.commons.entity.orders.vo.FeeAuditVo;
 import com.jzg.console.service.*;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -361,4 +364,19 @@ public class ReportFinanceDataManageController extends BaseController {
         }
     }
 
+    /**
+     * 费用审核明细列表:根据保险公司ID查询该公司的所有审核明细(不区分审核状态)
+     * @author: jk
+     */
+    @Operation(summary = "费用审核-明细列表", description = "费用审核-明细列表")
+    @PostMapping(value = "/feeAuditDetailPageList")
+    public HttpResult<Page<FeeAuditVo>> feeAuditDetailPageList(@RequestBody FeeAuditDetailParam param) {
+        try {
+            Page<FeeAuditVo> pageList = reportFeeAuditSummaryService.getFeeAuditDetailPage(param);
+            return HttpResult.ok(pageList);
+        } catch (Exception e) {
+            return HttpResult.error(e.getMessage());
+        }
+    }
+
 }

+ 8 - 0
consoleStatistics/src/main/java/com/jzg/console/service/ReportFeeAuditSummaryService.java

@@ -1,8 +1,11 @@
 package com.jzg.console.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.jzg.commons.entity.report.dto.FeeAuditSummaryVo;
+import com.jzg.commons.entity.report.vo.FeeAuditDetailParam;
 import com.jzg.commons.entity.report.vo.FeeAuditSummaryParam;
+import com.jzg.commons.entity.orders.vo.FeeAuditVo;
 
 /**
  * 费用审核汇总统计 Service
@@ -13,4 +16,9 @@ public interface ReportFeeAuditSummaryService {
      * 按保险公司分组统计费用审核汇总(逻辑分页)
      */
     IPage<FeeAuditSummaryVo> getFeeAuditSummaryPage(FeeAuditSummaryParam param);
+
+    /**
+     * 按保险公司查询费用审核明细列表(分页)
+     */
+    Page<FeeAuditVo> getFeeAuditDetailPage(FeeAuditDetailParam param);
 }

+ 37 - 2
consoleStatistics/src/main/java/com/jzg/console/service/impl/ReportFeeAuditSummaryServiceImpl.java

@@ -2,13 +2,21 @@ package com.jzg.console.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jzg.commons.core.page.HttpResult;
+import com.jzg.commons.entity.dto.FeeAuditParam;
 import com.jzg.commons.entity.report.dto.FeeAuditSummaryVo;
+import com.jzg.commons.entity.report.vo.FeeAuditDetailParam;
 import com.jzg.commons.entity.report.vo.FeeAuditSummaryParam;
+import com.jzg.commons.entity.orders.vo.FeeAuditVo;
+import com.jzg.console.client.FeeAuditClient;
 import com.jzg.console.mapper.ReportFeeAuditSummaryMapper;
 import com.jzg.console.service.ReportFeeAuditSummaryService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalTime;
+import java.util.Objects;
+
 /**
  * 费用审核汇总统计 Service 实现
  */
@@ -18,11 +26,38 @@ public class ReportFeeAuditSummaryServiceImpl implements ReportFeeAuditSummarySe
     @Autowired
     private ReportFeeAuditSummaryMapper reportFeeAuditSummaryMapper;
 
+    @Autowired
+    private FeeAuditClient feeAuditClient;
+
     @Override
     public IPage<FeeAuditSummaryVo> getFeeAuditSummaryPage(FeeAuditSummaryParam param) {
-        // 创建分页对象
         Page<FeeAuditSummaryVo> page = new Page<>(param.getPages(), param.getSize());
-        // 执行分组统计查询(逻辑分页:先查出全部再在内存中分页)
         return reportFeeAuditSummaryMapper.getFeeAuditSummaryPage(page, param);
     }
+
+    @Override
+    public Page<FeeAuditVo> getFeeAuditDetailPage(FeeAuditDetailParam param) {
+        // 构建调用 quotation-summary /feeAudit/auditList 的参数
+        FeeAuditParam feeAuditParam = new FeeAuditParam();
+        feeAuditParam.setPages(param.getPages());
+        feeAuditParam.setSize(param.getSize());
+        feeAuditParam.setCompanyId(param.getCompanyId());
+
+        // 转换时间:LocalDate -> LocalDateTime(开始日期的00:00:00,结束日期的23:59:59)
+        if (param.getAuditTimeStart() != null) {
+            feeAuditParam.setAuditTimeStart(param.getAuditTimeStart().atStartOfDay());
+        }
+        if (param.getAuditTimeEnd() != null) {
+            feeAuditParam.setAuditTimeEnd(param.getAuditTimeEnd().atTime(LocalTime.MAX));
+        }
+
+        // 调用远程服务获取审核列表
+        HttpResult<Page<FeeAuditVo>> result = feeAuditClient.auditList(feeAuditParam);
+
+        if (result.isSuccess() && result.getData() != null) {
+            return result.getData();
+        }
+        // 返回空分页避免前端报错
+        return new Page<>(param.getPages(), param.getSize());
+    }
 }