From 52d4fbddfd46b0dd684d99e5c0849b022606c8e2 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期二, 26 五月 2020 10:37:32 +0800 Subject: [PATCH] 邀请成功消息延迟 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java | 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 109 insertions(+), 9 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java index 4345f80..1f3232c 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/UserMoneyControllerV2.java @@ -34,6 +34,7 @@ import com.yeshi.fanli.entity.order.OrderMoneyDailyCount; import com.yeshi.fanli.entity.order.OrderMoneyDailyCount.SourceTypeEnum; import com.yeshi.fanli.entity.system.ConfigKeyEnum; +import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; import com.yeshi.fanli.service.inter.money.TeamEincomeRecordService; @@ -41,6 +42,7 @@ import com.yeshi.fanli.service.inter.money.extract.ExtractService; import com.yeshi.fanli.service.inter.order.HongBaoV2Service; import com.yeshi.fanli.service.inter.order.OrderMoneyDailyCountService; +import com.yeshi.fanli.service.inter.order.dividents.TeamDividentsSourceOrderUserMapService; import com.yeshi.fanli.service.inter.user.PreviewInfoService; import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoService; @@ -54,6 +56,7 @@ import com.yeshi.fanli.vo.money.MoneyStatisticVO; import com.yeshi.fanli.vo.money.TeamPredictVO; import com.yeshi.fanli.vo.order.OrderRankingVO; +import com.yeshi.fanli.vo.order.TeamDividentsVO; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -98,6 +101,9 @@ @Resource private PreviewInfoService previewInfoService; + @Resource + private TeamDividentsSourceOrderUserMapService teamDividentsSourceOrderUserMapService; + private Gson getGson() { GsonBuilder builder = new GsonBuilder(); @@ -108,7 +114,7 @@ return new JsonPrimitive(""); } else { // 淇濈暀2浣嶅皬鏁� - value = value.setScale(2); + value = value.setScale(2, BigDecimal.ROUND_DOWN); return new JsonPrimitive(value.toString()); } } @@ -478,7 +484,9 @@ object.put("list", gson.toJson(list)); out.print(JsonUtil.loadTrueResult(object)); } catch (ParseException e) { + out.print(JsonUtil.loadFalseResult(1, "鏌ヨ澶辫触")); e.printStackTrace(); + LogHelper.errorDetailInfo(e); } } @@ -558,9 +566,9 @@ * @param out */ @RequestMapping(value = "getTeamDividendStatistic") - public void getTeamDividendStatistic(AcceptData acceptData, Long uid, PrintWriter out) { + public void getTeamDividendStatistic(String callback, AcceptData acceptData, Long uid, PrintWriter out) { if (uid == null || uid == 0) { - out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�")); return; } @@ -593,7 +601,7 @@ object.put("subsidy", subsidy.setScale(2).toString()); object.put("today", gson.toJson(todayVO)); object.put("month", gson.toJson(monthVO)); - out.print(JsonUtil.loadTrueResult(object)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(object)); } private TeamPredictVO crateTeamPredictVO(List<OrderMoneyDailyCount> list) { @@ -628,15 +636,15 @@ * @param out */ @RequestMapping(value = "getTeamDividendHistory") - public void getTeamDividendHistory(AcceptData acceptData, Long uid, String date, Integer datetype, + public void getTeamDividendHistory(String callback, AcceptData acceptData, Long uid, String date, Integer datetype, PrintWriter out) { if (uid == null || uid == 0) { - out.print(JsonUtil.loadFalseResult(1, "鐢ㄦ埛鏈櫥褰�")); + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�")); return; } if (StringUtil.isNullOrEmpty(date) || datetype == null) { - out.print(JsonUtil.loadFalseResult(1, "鍙傛暟涓嶅畬鏁�")); + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍙傛暟涓嶅畬鏁�")); return; } @@ -728,9 +736,93 @@ JSONObject object = new JSONObject(); object.put("count", list.size()); object.put("list", gson.toJson(list)); - out.print(JsonUtil.loadTrueResult(object)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(object)); } catch (ParseException e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("缁熻澶辫触")); e.printStackTrace(); + LogHelper.errorDetailInfo(e); + } + } + + + + /** + * 鍒嗙孩璇︽儏 + * + * @param acceptData + * @param uid + * @param datetype 1-澶� - 2鏈� + * @param out + */ + @RequestMapping(value = "getTeamDividendDetail") + public void getTeamDividendDetail(String callback, AcceptData acceptData, Integer page, Long uid, + String date, Integer datetype, String key, PrintWriter out) { + if (uid == null || uid == 0) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鐢ㄦ埛鏈櫥褰�")); + return; + } + + if (StringUtil.isNullOrEmpty(date) || datetype == null) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鍙傛暟涓嶅畬鏁�")); + return; + } + + if (page == null) + page = 1; + int pageSize = Constant.PAGE_SIZE; + + + try { + Date minDay = new Date(); + Date maxDay = new Date(); + if (datetype == 1) { + minDay = TimeUtil.parseYYYYMMDD(date); + maxDay = TimeUtil.parseYYYYMMDD_HHMMSS(date + " 23:59:59"); + } else if (datetype == 2) { + minDay = TimeUtil.parseYYYYMMDD(DateUtil.getFirstDayOfMonth(date)); + maxDay = TimeUtil.parseYYYYMMDD_HHMMSS(DateUtil.getLastDayOfMonth(date) + " 23:59:59"); + } + List<TeamDividentsVO> list = teamDividentsSourceOrderUserMapService.listByDateAndTargetUid((page-1) * pageSize, pageSize, uid, minDay, maxDay, key); + if (list == null) { + list = new ArrayList<>(); + } + long count = teamDividentsSourceOrderUserMapService.countByDateAndTargetUid(uid, minDay, maxDay, key); + + GsonBuilder builder = new GsonBuilder(); + builder.registerTypeAdapter(BigDecimal.class, new JsonSerializer<BigDecimal>() { + @Override + public JsonElement serialize(BigDecimal value, Type theType, JsonSerializationContext context) { + if (value == null) { + return new JsonPrimitive("0.00"); + } else { + // 淇濈暀3浣嶅皬鏁� + value = value.setScale(3,RoundingMode.DOWN); + return new JsonPrimitive(value.toString()); + } + } + }); + + Gson gson = builder.create(); + JSONObject object = new JSONObject(); + + if (page == 1) { + TeamDividentsVO teamDividentsVO = teamDividentsSourceOrderUserMapService.sumByDateAndTargetUid(uid, minDay, maxDay, key); + if (teamDividentsVO == null) { + teamDividentsVO = new TeamDividentsVO(); + teamDividentsVO.setSubsidy(BigDecimal.ZERO); + teamDividentsVO.setDividents(BigDecimal.ZERO); + } + object.put("subsidy", teamDividentsVO.getSubsidy().setScale(2,RoundingMode.DOWN).toString()); + object.put("dividents", teamDividentsVO.getDividents().setScale(2, RoundingMode.DOWN).toString()); + } + + object.put("count", count); + object.put("list", gson.toJson(list)); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(object)); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鏌ヨ澶辫触")); + e.printStackTrace(); + LogHelper.errorDetailInfo(e); } } @@ -805,6 +897,7 @@ } catch (Exception e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("缁熻澶辫触")); e.printStackTrace(); + LogHelper.errorDetailInfo(e); } } @@ -866,8 +959,14 @@ List<OrderRankingVO> list = orderMoneyDailyCountService.getRankingByOrderNum(uid, minDate, maxDate); if (list.size() > 0) { - for (OrderRankingVO vo: list) { + for (int i = 0; i < list.size(); i ++) { + OrderRankingVO vo = list.get(i); UserInfo user = userInfoService.getUserByIdWithMybatis(vo.getUid()); + if (user == null) { + list.remove(i); + i--; + continue; + } vo.setNickName(user.getNickName()); vo.setPortrait(user.getPortrait()); } @@ -879,6 +978,7 @@ } catch (Exception e) { JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("缁熻澶辫触")); e.printStackTrace(); + LogHelper.errorDetailInfo(e); } } } -- Gitblit v1.8.0