|
@@ -307,11 +307,11 @@ public class IndexMgrController extends BaseApiController {
|
|
|
queryParam.setStartTime(indeQueryParam.getStartTime());
|
|
|
queryParam.setEndTime(indeQueryParam.getEndTime());
|
|
|
}else {
|
|
|
- queryParam.setStartTime(DateUtils.getPreDayOfNow(7));
|
|
|
+ queryParam.setStartTime(DateUtils.getPreDayOfNowZero(7));
|
|
|
queryParam.setEndTime(new Date());
|
|
|
}
|
|
|
}else {
|
|
|
- queryParam.setStartTime(DateUtils.getPreDayOfNow(queryParam.getDays()));
|
|
|
+ queryParam.setStartTime(DateUtils.getPreDayOfNowZero(queryParam.getDays()));
|
|
|
queryParam.setEndTime(new Date());
|
|
|
}
|
|
|
return queryParam;
|
|
@@ -442,6 +442,201 @@ public class IndexMgrController extends BaseApiController {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
+ * 查询统计交易金额
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PostMapping("/daily")
|
|
|
+ // @PreAuthorize("@ss.hasPermi('business:channel:list')")
|
|
|
+ public AjaxResult listDailyData(@RequestBody IndexQueryParam indeQueryParam) {
|
|
|
+
|
|
|
+ IndexQueryParam queryParam = new IndexQueryParam();
|
|
|
+ queryParam.setStartTime(DateUtils.getPreDayOfNowZero(1)); // 昨天
|
|
|
+ queryParam.setEndTime(new Date()); // 今天
|
|
|
+
|
|
|
+ List<IndexVO> list = new ArrayList<IndexVO>();
|
|
|
+ List<IndexVO> siteList = new ArrayList<IndexVO>();
|
|
|
+
|
|
|
+ QueryWrapper<UserDeliverOrder> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getStartTime());
|
|
|
+ queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getEndTime());
|
|
|
+ queryWrapper.gt("t1.`status`", 0);
|
|
|
+
|
|
|
+
|
|
|
+ QueryWrapper<Channel> siteQueryWrapper = new QueryWrapper<>();
|
|
|
+ siteQueryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getStartTime());
|
|
|
+ siteQueryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getEndTime());
|
|
|
+ siteQueryWrapper.eq("t1.`level`", 0);
|
|
|
+
|
|
|
+ Long channelId = SecurityUtils.getLoginUser().getChannelId();
|
|
|
+ if(null != channelId && 0 != channelId) {
|
|
|
+ Channel channel = channelService.getById(channelId);
|
|
|
+ if(null!=channel && StringUtils.isNotBlank(channel.getChannelNo())) {
|
|
|
+ queryWrapper.and(wrapper -> wrapper.likeRight("t2.channel_no", channel.getChannelNo())
|
|
|
+ .or().eq("t2.channel_no", channel.getChannelNo()));
|
|
|
+
|
|
|
+ siteQueryWrapper.and(wrapper -> wrapper.likeRight("t2.channel_no", channel.getChannelNo())
|
|
|
+ .or().eq("t2.channel_no", channel.getChannelNo()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ list = userTicketOrderService.selectIndexDailyInfoList(queryWrapper);
|
|
|
+
|
|
|
+ siteList = channelService.selectIndexSiteIncreaseList(siteQueryWrapper);
|
|
|
+
|
|
|
+ return AjaxResult.success(getDailyInfoData(list, siteList));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private Map<String,Object> getDailyInfoData(List<IndexVO> list,List<IndexVO> siteList){
|
|
|
+ Map<String,Object> payAmt = new HashMap<String,Object>();
|
|
|
+ Map<String,Object> payUser = new HashMap<String,Object>();
|
|
|
+ Map<String,Object> ticketNum = new HashMap<String,Object>();
|
|
|
+ Map<String,Object> newSite = new HashMap<String,Object>();
|
|
|
+ String today = DateUtils.parseDateToStr(DateUtils.YYYYMMDD,new Date());
|
|
|
+
|
|
|
+ int todayPayAmt = 0;
|
|
|
+ int todayPayUserCnt = 0;
|
|
|
+ int todayTicketNum = 0;
|
|
|
+ int todayNewSiteCnt = 0;
|
|
|
+
|
|
|
+ int yesterdayPayAmt = 0;
|
|
|
+ int yesterdayPayUserCnt = 0;
|
|
|
+ int yesterdayTicketNum = 0;
|
|
|
+ int yesterdayNewSiteCnt = 0;
|
|
|
+
|
|
|
+ if(null != list && list.size() > 0) {
|
|
|
+ for(IndexVO indexVo : list) {
|
|
|
+ if(null != indexVo
|
|
|
+ && StringUtils.isNotBlank(indexVo.getTime())) {
|
|
|
+ if(today.equals(indexVo.getTime())) {
|
|
|
+ todayPayAmt = null != indexVo.getPayAmt()?indexVo.getPayAmt():0;
|
|
|
+ todayPayUserCnt = null != indexVo.getPayUserCnt()?indexVo.getPayUserCnt():0;
|
|
|
+ todayTicketNum = null != indexVo.getTicketNum()?indexVo.getTicketNum():0;
|
|
|
+ }else {
|
|
|
+ yesterdayPayAmt = null != indexVo.getPayAmt()?indexVo.getPayAmt():0;
|
|
|
+ yesterdayPayUserCnt = null != indexVo.getPayUserCnt()?indexVo.getPayUserCnt():0;
|
|
|
+ yesterdayTicketNum = null != indexVo.getTicketNum()?indexVo.getTicketNum():0;
|
|
|
+ }
|
|
|
+
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(null != siteList && siteList.size() > 0) {
|
|
|
+ for(IndexVO indexVo : siteList) {
|
|
|
+ if(null != indexVo
|
|
|
+ && null != indexVo.getNewSiteCnt()
|
|
|
+ && StringUtils.isNotBlank(indexVo.getTime())) {
|
|
|
+ if(today.equals(indexVo.getTime())) {
|
|
|
+ todayNewSiteCnt = null != indexVo.getNewSiteCnt()?indexVo.getNewSiteCnt():0;
|
|
|
+ }else {
|
|
|
+ yesterdayNewSiteCnt = null != indexVo.getNewSiteCnt()?indexVo.getNewSiteCnt():0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ payAmt.put("today", todayPayAmt);
|
|
|
+ payAmt.put("yesterday", yesterdayPayAmt);
|
|
|
+ payUser.put("today", todayPayUserCnt);
|
|
|
+ payUser.put("yesterday", yesterdayPayUserCnt);
|
|
|
+ ticketNum.put("today", todayTicketNum);
|
|
|
+ ticketNum.put("yesterday", yesterdayTicketNum);
|
|
|
+ newSite.put("today", todayNewSiteCnt);
|
|
|
+ newSite.put("yesterday", yesterdayNewSiteCnt);
|
|
|
+
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
|
+ map.put("payAmt", payAmt);
|
|
|
+ map.put("payUser", payUser);
|
|
|
+ map.put("ticketNum", ticketNum);
|
|
|
+ map.put("newSite", newSite);
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查询统计统计票组销售TOP10
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PostMapping("/ticket/box/top")
|
|
|
+ // @PreAuthorize("@ss.hasPermi('business:channel:list')")
|
|
|
+ public AjaxResult ticketBoxTopData(@RequestBody IndexQueryParam indeQueryParam) {
|
|
|
+
|
|
|
+ IndexQueryParam queryParam = getQueryParam(indeQueryParam);
|
|
|
+ List<IndexVO> list = new ArrayList<IndexVO>();
|
|
|
+ QueryWrapper<UserDeliverOrder> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getStartTime());
|
|
|
+ queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getEndTime());
|
|
|
+ queryWrapper.gt("t1.`status`", 0);
|
|
|
+
|
|
|
+ Long channelId = SecurityUtils.getLoginUser().getChannelId();
|
|
|
+ if(null != channelId && 0 != channelId) {
|
|
|
+ Channel channel = channelService.getById(channelId);
|
|
|
+ if(null!=channel && StringUtils.isNotBlank(channel.getChannelNo())) {
|
|
|
+ queryWrapper.and(wrapper -> wrapper.likeRight("t2.channel_no", channel.getChannelNo())
|
|
|
+ .or().eq("t2.channel_no", channel.getChannelNo()));
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ list = userTicketOrderService.selectIndexTicketBoxTop(queryWrapper);
|
|
|
+ List<Map<String,Object>> mapList = new ArrayList<>();
|
|
|
+ if(null != list && list.size() > 0) {
|
|
|
+ for(IndexVO indexVo : list) {
|
|
|
+ if(null != indexVo
|
|
|
+ && StringUtils.isNotBlank(indexVo.getTitle())
|
|
|
+ && null != indexVo.getPayAmt()) {
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
|
+ map.put("x", indexVo.getTitle());
|
|
|
+ map.put("y", indexVo.getPayAmt());
|
|
|
+ mapList.add(map);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return AjaxResult.success(mapList);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 统计经销商交易额TOP10
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @PostMapping("/ticket/site/top")
|
|
|
+ // @PreAuthorize("@ss.hasPermi('business:channel:list')")
|
|
|
+ public AjaxResult ticketSiteTopData(@RequestBody IndexQueryParam indeQueryParam) {
|
|
|
+
|
|
|
+ IndexQueryParam queryParam = getQueryParam(indeQueryParam);
|
|
|
+ List<IndexVO> list = new ArrayList<IndexVO>();
|
|
|
+ QueryWrapper<UserDeliverOrder> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.ge(null != queryParam && null != queryParam.getStartTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getStartTime());
|
|
|
+ queryWrapper.le(null != queryParam && null != queryParam.getEndTime(), "DATE_FORMAT(t1.created_time, '%Y-%m-%d')", queryParam.getEndTime());
|
|
|
+ queryWrapper.gt("t1.`status`", 0);
|
|
|
+
|
|
|
+ Long channelId = SecurityUtils.getLoginUser().getChannelId();
|
|
|
+ if(null != channelId && 0 != channelId) {
|
|
|
+ Channel channel = channelService.getById(channelId);
|
|
|
+ if(null!=channel && StringUtils.isNotBlank(channel.getChannelNo())) {
|
|
|
+ queryWrapper.and(wrapper -> wrapper.likeRight("t2.channel_no", channel.getChannelNo())
|
|
|
+ .or().eq("t2.channel_no", channel.getChannelNo()));
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ list = userTicketOrderService.selectIndexTicketSiteTop(queryWrapper);
|
|
|
+ List<Map<String,Object>> mapList = new ArrayList<>();
|
|
|
+ if(null != list && list.size() > 0) {
|
|
|
+ for(IndexVO indexVo : list) {
|
|
|
+ if(null != indexVo
|
|
|
+ && StringUtils.isNotBlank(indexVo.getName())
|
|
|
+ && null != indexVo.getPayAmt()) {
|
|
|
+ Map<String,Object> map = new HashMap<String,Object>();
|
|
|
+ map.put("x", indexVo.getName());
|
|
|
+ map.put("y", indexVo.getPayAmt());
|
|
|
+ mapList.add(map);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return AjaxResult.success(mapList);
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}
|