From 074c9a2e87fcbed6a7a38c83ba1be3de61b159ab Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Thu, 21 Jan 2021 11:30:03 +0800 Subject: [PATCH] modify --- zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java | 113 ++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 77 insertions(+), 36 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 6eb5827..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 @@ -3,6 +3,7 @@ import com.matrix.core.constance.MatrixConstance; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.pojo.PaginationVO; +import com.matrix.core.tools.DateUtil; import com.matrix.core.tools.WebUtil; import com.matrix.system.app.dto.BusinessesDto; import com.matrix.system.app.dto.VipStatisticsParamDto; @@ -21,6 +22,7 @@ import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; +import org.jsoup.helper.DataUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -52,23 +54,56 @@ }) @PostMapping(value = "/findShopBusinessesData") public AjaxResult findShopBusinessesData(@RequestBody BusinessesDto businessesDto) { - SysBusinessData sysBusinessData = new SysBusinessData(); - // 若shopId为空,则查询门店经营报表 - if (businessesDto.getShopId() == null) { - sysBusinessData.setShopId(businessesDto.getShopId()); - } - QueryUtil.setQueryLimitCom(sysBusinessData); - + String unit = ""; + int calenderUnit; if (BusinessesDto.DAY.equals(businessesDto.getType())) { - sysBusinessData.setT1("%Y-%m-%d"); + unit = "日"; + calenderUnit = Calendar.DATE; } else { - sysBusinessData.setT1("%Y-%m"); + unit = "月"; + calenderUnit = Calendar.MONTH; } - PaginationVO pageVo = new PaginationVO(); - pageVo.setOffset((businessesDto.getPageNum() - 1) * businessesDto.getPageSize()); - pageVo.setLimit(businessesDto.getPageSize()); - return AjaxResult.buildSuccessInstance(sysBusinessDataDao.selectApiBusinessDataInPage(sysBusinessData, pageVo), sysBusinessDataDao.selectApiBusinessDataTotal(sysBusinessData)); + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + 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<BusinessesDataShowVo> list = sysBusinessDataDao.selectApiBusinessData(statisticsTimeDaoParams, businessesDto.getShopId(), user.getCompanyId()); + + List<BusinessesDataShowVo> result = new ArrayList<>(); + for (int i = list.size() - 1; i >= 0; i--) { + BusinessesDataShowVo item = list.get(i); + String dataTime = item.getDataTime(); + if (BusinessesDto.DAY.equals(businessesDto.getType())) { + item.setDataTime(DateUtil.dateToString(DateUtil.stringToDate(dataTime, DateUtil.DATE_FORMAT_DD), DateUtil.DATE_FORMAT_DD)); + } else { + item.setDataTime(DateUtil.dateToString(DateUtil.stringToDate(dataTime, DateUtil.MONTH), DateUtil.MONTH)); + } + result.add(item); + } + return AjaxResult.buildSuccessInstance(result); + } + + public static void main(String[] args) { + int start = 1; + + int end = 10; + + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.DATE, start); + Date time = calendar.getTime(); + System.out.println(time); + calendar.add(Calendar.DATE, end); + System.out.println(calendar.getTime()); + } @ApiOperation(value = "专项", notes = "专项") @@ -155,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 = "员工专项") @@ -211,16 +263,5 @@ }); return setDataList(ajaxResult); - } - - @ApiOperation(value = "测试", notes = "测试") - @GetMapping(value = "/findTestData") - public AjaxResult findTestData() { - List<Date> xAxis = StatisticsTimeUtil.getTimeSpace("2021-01-13", "2021-01-13", "日"); - - List<StatisticsTimeDaoParam> timeSpaceParam = StatisticsTimeUtil.buidParam(xAxis); -// List<BusinessesDataShowVo> businessesDataShowVo = sysBusinessDataDao.selectDemo2(); - List<BusinessesDataShowVo> map = sysBusinessDataDao.selectDemo(timeSpaceParam, 34L, 17L); - return AjaxResult.buildSuccessInstance(map); } } -- Gitblit v1.9.1