wujiefeng преди 1 година
родител
ревизия
1a68904302

+ 4 - 4
FullCardClient/src/main/java/com/zhongshu/card/client/model/pay/PeriodQueryModel.java

@@ -10,11 +10,11 @@ public class PeriodQueryModel {
     @Schema(description = "周期")
     private PeriodType periodType;
 
-    @Schema(description = "")
-    private Integer year;
+    @Schema(description = "开始时间")
+    private Long startTime;
 
-    @Schema(description = "")
-    private Integer month;
+    @Schema(description = "结束时间")
+    private Long endTime;
 
     private String projectOid;
 

+ 7 - 2
FullCardServer/src/main/java/com/zhongshu/card/server/core/controller/pay/statistics/PayOverviewController.java

@@ -3,8 +3,12 @@ package com.zhongshu.card.server.core.controller.pay.statistics;
 import com.zhongshu.card.client.model.pay.PeriodQueryModel;
 import com.zhongshu.card.server.core.service.pay.OrgOverviewService;
 import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Pageable;
+import org.springframework.data.web.PageableDefault;
+import org.springframework.http.MediaType;
 import org.springframework.web.bind.annotation.*;
 
 @RestController
@@ -31,7 +35,8 @@ public class PayOverviewController {
 
     @Operation(summary = "查询收入账单", description = "查询收入账单-年月日汇总")
     @RequestMapping(value = "queryCreditBill", method = RequestMethod.POST)
-    public Object queryCreditBill(@RequestBody PeriodQueryModel param){
-        return orgOverviewService.queryCreditBill(param);
+    public Object queryCreditBill(@Parameter(hidden = true) @PageableDefault(page = 0, size = 10)Pageable pageable,
+                                  @Parameter(required = true) PeriodQueryModel param){
+        return orgOverviewService.queryCreditBill(pageable, param);
     }
 }

+ 11 - 20
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/pay/OrgOverviewService.java

@@ -182,43 +182,34 @@ public class OrgOverviewService extends SuperService {
     @Autowired
     OrganizationUserServiceImpl organizationUserService;
 
-    public Object queryCreditBill(PeriodQueryModel param){
+    public Object queryCreditBill(Pageable pageable, PeriodQueryModel param){
         String projectOid = param.getProjectOid();
         if (StringUtils.isBlank(param.getProjectOid())){
             projectOid = getCurrentProjectOid();
         }
 
+        PageableModel pageableModel = new PageableModel();
+        pageableModel.setPage(pageable.getPageNumber());
+        pageableModel.setSize(pageable.getPageSize());
+
         List<String> oidList = organizationUserService.getUserOrgListOids(getCurrentUserId(), projectOid);
         if (oidList==null || oidList.isEmpty()){
             return com.github.microservice.net.ResultContent.buildFail("未加入机构");
         }
 
         PayAccount payAccount = payAccountService.getOrgChildren(projectOid, oidList.get(0), PaymentChannelType.WaitSettle);
-
+        GeneralLedgerQueryTransactionLogModel queryModel = new GeneralLedgerQueryTransactionLogModel();
+        queryModel.setGeneralLedgerId(new String[]{payAccount.getLedgerId()});
+        queryModel.setStartTime(param.getStartTime());
+        queryModel.setEndTime(param.getEndTime());
+        queryModel.setFilter(Map.of("transactionType",new Document("$ne", "Settle")));
+        queryModel.setPage(pageableModel);
 
         if (param.getPeriodType().equals(PeriodType.day)){
-            Long monthStartTime = DateUtils.getMonthStartTime(param.getYear(), param.getMonth());
-            Long monthEndTime = DateUtils.getMonthEndTime(param.getYear(), param.getMonth());
-            GeneralLedgerQueryTransactionLogModel queryModel = new GeneralLedgerQueryTransactionLogModel();
-            queryModel.setGeneralLedgerId(new String[]{payAccount.getLedgerId()});
-            queryModel.setStartTime(monthStartTime);
-            queryModel.setEndTime(monthEndTime);
-            queryModel.setFilter(Map.of("transactionType",new Document("$ne", "Settle")));
-//            queryModel.setFilter(Map.of("transactionType", "{$ne : \"Settle\"}"));
             return transactionLogService.periodDayAggregate(queryModel);
         } else if (param.getPeriodType().equals(PeriodType.month)){
-            Long yearStartTime = DateUtils.getYearStartTime(param.getYear());
-            Long yearEndTime = DateUtils.getYearEndTime(param.getYear());
-            GeneralLedgerQueryTransactionLogModel queryModel = new GeneralLedgerQueryTransactionLogModel();
-            queryModel.setGeneralLedgerId(new String[]{payAccount.getLedgerId()});
-            queryModel.setStartTime(yearStartTime);
-            queryModel.setEndTime(yearEndTime);
-            queryModel.setFilter(Map.of("transactionType",new Document("$ne", "Settle")));
             return transactionLogService.periodMonthAggregate(queryModel);
         }else if (param.getPeriodType().equals(PeriodType.year)){
-            GeneralLedgerQueryTransactionLogModel queryModel = new GeneralLedgerQueryTransactionLogModel();
-            queryModel.setGeneralLedgerId(new String[]{payAccount.getLedgerId()});
-            queryModel.setFilter(Map.of("transactionType",new Document("$ne", "Settle")));
             return transactionLogService.periodYearAggregate(queryModel);
         }
         return com.github.microservice.net.ResultContent.buildFail("周期类型不存在");

+ 1 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/pay/PayAccountService.java

@@ -134,7 +134,7 @@ public class PayAccountService {
         payAccount.setLevel(PayAccountLevel.OrgChildren);
         String ledgerId = createLedger("机构子账-" + channelType.getRemark(),
                 parent.getLedgerId(),
-                Map.of("projectOid", projectOid, "paymentChannelType", channelType, "level", PayAccountLevel.OrgParent), 999999999L, -999999999L);
+                Map.of("projectOid", projectOid, "paymentChannelType", channelType, "level", PayAccountLevel.OrgChildren), 999999999L, -999999999L);
         if (StringUtils.isBlank(ledgerId)){
             throw new Exception("支付中心创建用户子账失败");
         }