|
@@ -241,7 +241,7 @@ public class KxsUserTradeServiceImpl extends ServiceImpl<KxsUserTradeMapper, Kxs
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//交易趋势图
|
|
//交易趋势图
|
|
|
- List<TrendVO> trendVOList = setTradeTrend(userId, times, type);
|
|
|
|
|
|
|
+ List<TrendVO> trendVOList = setTradeTrend(userId, times, type, TotalTypeEnum.TEAM.getType());
|
|
|
statUserGetUserStatByDayOrMonthVO.setTradeTrend(trendVOList);
|
|
statUserGetUserStatByDayOrMonthVO.setTradeTrend(trendVOList);
|
|
|
|
|
|
|
|
//交易占比
|
|
//交易占比
|
|
@@ -249,16 +249,47 @@ public class KxsUserTradeServiceImpl extends ServiceImpl<KxsUserTradeMapper, Kxs
|
|
|
statUserGetUserStatByDayOrMonthVO.setTradePercent(percentVOList);
|
|
statUserGetUserStatByDayOrMonthVO.setTradePercent(percentVOList);
|
|
|
|
|
|
|
|
//激活商户占比
|
|
//激活商户占比
|
|
|
- List<MchActPercentVO> mchActPercentList = kxsUserActTradeMapper.getMchActTimePercent(userId, times, type == 1 ? 1 : 0, TotalTypeEnum.TEAM.getType());
|
|
|
|
|
|
|
+ List<MchActPercentVO> mchActPercentList = kxsUserActTradeMapper.getMchActTimePercent(userId, times, type, TotalTypeEnum.TEAM.getType());
|
|
|
mchActPercentList.forEach(item -> item.setName(getBrandMap().get(item.getBrandId()).getName()));
|
|
mchActPercentList.forEach(item -> item.setName(getBrandMap().get(item.getBrandId()).getName()));
|
|
|
statUserGetUserStatByDayOrMonthVO.setActMchPercent(mchActPercentList);
|
|
statUserGetUserStatByDayOrMonthVO.setActMchPercent(mchActPercentList);
|
|
|
|
|
|
|
|
//新增激活商户趋势图
|
|
//新增激活商户趋势图
|
|
|
- List<TrendVO> addMchTrendList = kxsUserActTradeService.getAddActMchTrend(userId, times, type == 1 ? 1 : 0, TotalTypeEnum.TEAM, getBrandMap());
|
|
|
|
|
|
|
+ List<TrendVO> addMchTrendList = kxsUserActTradeService.getAddActMchTrend(userId, times, type, TotalTypeEnum.TEAM.getType(), getBrandMap());
|
|
|
statUserGetUserStatByDayOrMonthVO.setMchAddTrend(addMchTrendList);
|
|
statUserGetUserStatByDayOrMonthVO.setMchAddTrend(addMchTrendList);
|
|
|
|
|
|
|
|
//新增创客趋势图
|
|
//新增创客趋势图
|
|
|
- List<UserAddTrendVO> userAddTrendVOList = kxsUserNewTradeService.getAddUserTrend(userId, times, type == 1 ? 1 : 0, TotalTypeEnum.TEAM.getType());
|
|
|
|
|
|
|
+ List<UserAddTrendVO> userAddTrendVOList = kxsUserNewTradeService.getAddUserTrend(userId, times, type, TotalTypeEnum.TEAM.getType());
|
|
|
|
|
+ statUserGetUserStatByDayOrMonthVO.setUserAddTrend(userAddTrendVOList);
|
|
|
|
|
+
|
|
|
|
|
+ return R.ok(statUserGetUserStatByDayOrMonthVO);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public R getUserTrend(Integer totalType, Integer type) {
|
|
|
|
|
+
|
|
|
|
|
+ Long userId = SecurityUtils.getUser().getId();
|
|
|
|
|
+ LocalDate now = LocalDate.now();
|
|
|
|
|
+ List<Integer> times;
|
|
|
|
|
+ StatUserGetUserStatByDayOrMonthVO statUserGetUserStatByDayOrMonthVO = new StatUserGetUserStatByDayOrMonthVO();
|
|
|
|
|
+ if (type == 0) {
|
|
|
|
|
+ times = TotalDateUtil.getDayList(now.minusDays(1), 7);
|
|
|
|
|
+ } else if (type == 1) {
|
|
|
|
|
+ //近半年
|
|
|
|
|
+ times = TotalDateUtil.getMonthList(now.minusDays(1), 6);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return R.failed("类型错误");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //交易趋势图
|
|
|
|
|
+ List<TrendVO> trendVOList = setTradeTrend(userId, times, type, totalType);
|
|
|
|
|
+ statUserGetUserStatByDayOrMonthVO.setTradeTrend(trendVOList);
|
|
|
|
|
+
|
|
|
|
|
+ //新增激活商户趋势图
|
|
|
|
|
+ List<TrendVO> addMchTrendList = kxsUserActTradeService.getAddActMchTrend(userId, times, type, totalType, brandsMap);
|
|
|
|
|
+ statUserGetUserStatByDayOrMonthVO.setMchAddTrend(addMchTrendList);
|
|
|
|
|
+
|
|
|
|
|
+ //新增创客趋势图
|
|
|
|
|
+ List<UserAddTrendVO> userAddTrendVOList = kxsUserNewTradeService.getAddUserTrend(userId, times, type, totalType);
|
|
|
statUserGetUserStatByDayOrMonthVO.setUserAddTrend(userAddTrendVOList);
|
|
statUserGetUserStatByDayOrMonthVO.setUserAddTrend(userAddTrendVOList);
|
|
|
|
|
|
|
|
return R.ok(statUserGetUserStatByDayOrMonthVO);
|
|
return R.ok(statUserGetUserStatByDayOrMonthVO);
|
|
@@ -566,6 +597,7 @@ public class KxsUserTradeServiceImpl extends ServiceImpl<KxsUserTradeMapper, Kxs
|
|
|
return R.ok(statUserGetTradeDetailVO);
|
|
return R.ok(statUserGetTradeDetailVO);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
private ArrayList<StatUserGetUserTradeStatListVO> getUserGetUserTradeStatListVOSByDay(String month, Integer totalType, Long userId, Integer getType, LocalDate now, List<String> times, String tableName, Integer tradeType) {
|
|
private ArrayList<StatUserGetUserTradeStatListVO> getUserGetUserTradeStatListVOSByDay(String month, Integer totalType, Long userId, Integer getType, LocalDate now, List<String> times, String tableName, Integer tradeType) {
|
|
|
//校验时间格式是yyyyMM
|
|
//校验时间格式是yyyyMM
|
|
|
AssertUtil.isyyyyMM(month);
|
|
AssertUtil.isyyyyMM(month);
|
|
@@ -825,7 +857,7 @@ public class KxsUserTradeServiceImpl extends ServiceImpl<KxsUserTradeMapper, Kxs
|
|
|
private List<PercentVO> setTradeTotalAndPercent(Long userId, List<Integer> times, Integer type) {
|
|
private List<PercentVO> setTradeTotalAndPercent(Long userId, List<Integer> times, Integer type) {
|
|
|
|
|
|
|
|
List<PercentVO> percentVOList = new ArrayList<>();
|
|
List<PercentVO> percentVOList = new ArrayList<>();
|
|
|
- if (type == 1) {
|
|
|
|
|
|
|
+ if (type == 0) {
|
|
|
//近7天
|
|
//近7天
|
|
|
for (Integer day : times) {
|
|
for (Integer day : times) {
|
|
|
Integer month = TotalDateUtil.getMonthNumber(LocalDateTimeUtil.parseDate(String.valueOf(day), DatePattern.PURE_DATE_PATTERN));
|
|
Integer month = TotalDateUtil.getMonthNumber(LocalDateTimeUtil.parseDate(String.valueOf(day), DatePattern.PURE_DATE_PATTERN));
|
|
@@ -863,32 +895,29 @@ public class KxsUserTradeServiceImpl extends ServiceImpl<KxsUserTradeMapper, Kxs
|
|
|
* @param type 类型
|
|
* @param type 类型
|
|
|
* @return {@link List}<{@link TrendVO}>
|
|
* @return {@link List}<{@link TrendVO}>
|
|
|
*/
|
|
*/
|
|
|
- private List<TrendVO> setTradeTrend(Long userId, List<Integer> times, Integer type) {
|
|
|
|
|
|
|
+ private List<TrendVO> setTradeTrend(Long userId, List<Integer> times, Integer type, Integer totalType) {
|
|
|
|
|
|
|
|
MonthTableNameHandler.setData(MonthTableNameHandler.getThisMoth());
|
|
MonthTableNameHandler.setData(MonthTableNameHandler.getThisMoth());
|
|
|
List<TrendVO> trendVOList = new ArrayList<>();
|
|
List<TrendVO> trendVOList = new ArrayList<>();
|
|
|
- if (type == 1) {
|
|
|
|
|
|
|
+ LinkedHashMap<Integer, List<TrendTimesVO>> tradeTrend = new LinkedHashMap<>();
|
|
|
|
|
+ if (type == 0) {
|
|
|
//近7天交易趋势图
|
|
//近7天交易趋势图
|
|
|
- LinkedHashMap<Integer, List<TrendTimesVO>> tradeTrend = new LinkedHashMap<>();
|
|
|
|
|
for (Integer day : times) {
|
|
for (Integer day : times) {
|
|
|
Integer month = TotalDateUtil.getMonthNumber(LocalDateTimeUtil.parseDate(String.valueOf(day), DatePattern.PURE_DATE_PATTERN));
|
|
Integer month = TotalDateUtil.getMonthNumber(LocalDateTimeUtil.parseDate(String.valueOf(day), DatePattern.PURE_DATE_PATTERN));
|
|
|
//每个月表统计查询出来后再合并进map里
|
|
//每个月表统计查询出来后再合并进map里
|
|
|
- List<TrendTimesVO> monthTradeTrend = baseMapper.getUserTradeDayTrend(CommonConstants.USER_TABLE_PREFIX + month, userId, day, TotalTypeEnum.TEAM.getType());
|
|
|
|
|
|
|
+ List<TrendTimesVO> monthTradeTrend = baseMapper.getUserTradeDayTrend(CommonConstants.USER_TABLE_PREFIX + month, userId, day, totalType);
|
|
|
tradeTrend.put(day, monthTradeTrend);
|
|
tradeTrend.put(day, monthTradeTrend);
|
|
|
}
|
|
}
|
|
|
- initUserTrend(trendVOList, tradeTrend);
|
|
|
|
|
- }
|
|
|
|
|
- if (type == 2) {
|
|
|
|
|
|
|
+ }else{
|
|
|
//近半年
|
|
//近半年
|
|
|
- LinkedHashMap<Integer, List<TrendTimesVO>> tradeTrend = new LinkedHashMap<>();
|
|
|
|
|
|
|
|
|
|
for (Integer month : times) {
|
|
for (Integer month : times) {
|
|
|
//每个月表统计查询出来后再合并进map里
|
|
//每个月表统计查询出来后再合并进map里
|
|
|
- List<TrendTimesVO> monthTradeTrend = baseMapper.getUserTradeMonthTrend(CommonConstants.USER_TABLE_PREFIX + month, userId, TotalTypeEnum.TEAM.getType());
|
|
|
|
|
|
|
+ List<TrendTimesVO> monthTradeTrend = baseMapper.getUserTradeMonthTrend(CommonConstants.USER_TABLE_PREFIX + month, userId, totalType);
|
|
|
tradeTrend.put(month, monthTradeTrend);
|
|
tradeTrend.put(month, monthTradeTrend);
|
|
|
}
|
|
}
|
|
|
- initUserTrend(trendVOList, tradeTrend);
|
|
|
|
|
}
|
|
}
|
|
|
|
|
+ initUserTrend(trendVOList, tradeTrend);
|
|
|
|
|
|
|
|
return trendVOList;
|
|
return trendVOList;
|
|
|
}
|
|
}
|