From 83e572c8b78790f8988a2fd72902912ffbbaa166 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Sat, 16 Jan 2021 15:30:16 +0800
Subject: [PATCH] modify

---
 zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java |   42 ++++++++++++++++++++++++++++++------------
 1 files changed, 30 insertions(+), 12 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java
index 97bbb20..104d16c 100644
--- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java
@@ -68,6 +68,7 @@
         int start = (businessesDto.getPageNum() - 1) * businessesDto.getPageSize();
         int size = businessesDto.getPageSize();
         Calendar calendar = Calendar.getInstance();
+        calendar.add(calenderUnit, 1);
         calendar.add(calenderUnit, -start);
         String endTime = DateUtil.dateToString(calendar.getTime(), DateUtil.DATE_FORMAT_DD);
         calendar.add(calenderUnit, -size);
@@ -189,24 +190,41 @@
     })
     @PostMapping(value = "/findVipAchieve")
     public AjaxResult findVipAchieve(@RequestBody BusinessesDto businessesDto) {
-        AchieveNew achieveNew = new AchieveNew();
+        String unit = "";
+        int calenderUnit;
         if (BusinessesDto.DAY.equals(businessesDto.getType())) {
-            achieveNew.setT1("%Y-%m-%d");
+            unit = "日";
+            calenderUnit = Calendar.DATE;
         } else {
-            achieveNew.setT1("%Y-%m");
+            unit = "月";
+            calenderUnit = Calendar.MONTH;
         }
 
-        SysUsers sysUsers = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
-        if (businessesDto.getStaffId() == null) {
+        int start = (businessesDto.getPageNum() - 1) * businessesDto.getPageSize();
+        int size = businessesDto.getPageSize();
+        Calendar calendar = Calendar.getInstance();
+        calendar.add(calenderUnit, 1);
+        calendar.add(calenderUnit, -start);
+        String endTime = DateUtil.dateToString(calendar.getTime(), DateUtil.DATE_FORMAT_DD);
+        calendar.add(calenderUnit, -size);
+        String startTime = DateUtil.dateToString(calendar.getTime(), DateUtil.DATE_FORMAT_DD);
+        List<Date> xAxis = StatisticsTimeUtil.getTimeSpace(startTime, endTime, unit);
+        List<StatisticsTimeDaoParam> timeSpaceParam = StatisticsTimeUtil.buidParam(xAxis);
+        List<StatisticsTimeDaoParam> statisticsTimeDaoParams = timeSpaceParam.subList(0, timeSpaceParam.size() - 2);
+        List<VipAchieveDataShowVo> list = tjVipSumDao.selectVipAchieveInPage(statisticsTimeDaoParams, businessesDto.getStaffId());
 
-            businessesDto.setStaffId(sysUsers.getSuId());
+        List<VipAchieveDataShowVo> result = new ArrayList<>();
+        for (int i = list.size() - 1; i >= 0; i--) {
+            VipAchieveDataShowVo item = list.get(i);
+            String dataTime = item.getTime();
+            if (BusinessesDto.DAY.equals(businessesDto.getType())) {
+                item.setTime(DateUtil.dateToString(DateUtil.stringToDate(dataTime, DateUtil.DATE_FORMAT_DD), DateUtil.DATE_FORMAT_DD));
+            } else {
+                item.setTime(DateUtil.dateToString(DateUtil.stringToDate(dataTime, DateUtil.MONTH), DateUtil.MONTH));
+            }
+            result.add(item);
         }
-        achieveNew.setVipId(businessesDto.getStaffId());
-
-        PaginationVO pageVo = new PaginationVO();
-        pageVo.setLimit(businessesDto.getPageSize());
-        pageVo.setOffset((businessesDto.getPageNum() - 1) * businessesDto.getPageSize());
-        return AjaxResult.buildSuccessInstance(tjVipSumDao.selectVipAchieveInPage(achieveNew, pageVo));
+        return AjaxResult.buildSuccessInstance(result);
     }
 
     @ApiOperation(value = "员工专项", notes = "员工专项")

--
Gitblit v1.9.1