From ee5c8055b1c0dd7c67a9025a76b10bd287c93d9a Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 15 四月 2020 09:52:27 +0800 Subject: [PATCH] 资金明细增加团队分红 --- fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java | 63 +++++++++++++++++++++++++++++-- 1 files changed, 58 insertions(+), 5 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java b/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java index 751df38..e024e5e 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/SpringContext.java @@ -20,6 +20,7 @@ import com.yeshi.fanli.dto.ad.DouYinDeviceActiveQueueDTO; import com.yeshi.fanli.dto.money.UserMoneyChangeDTO; +import com.yeshi.fanli.dto.order.dividents.UserDividentsDayDTO; import com.yeshi.fanli.entity.ad.DouYinClickEvent; import com.yeshi.fanli.entity.bus.user.AlipayTransferResultInfo; import com.yeshi.fanli.entity.bus.user.HongBaoV2; @@ -57,6 +58,7 @@ import com.yeshi.fanli.service.inter.user.integral.IntegralGetService; import com.yeshi.fanli.service.inter.user.integral.IntegralTaskRecordService; import com.yeshi.fanli.service.inter.user.invite.ThreeSaleSerivce; +import com.yeshi.fanli.service.manger.order.TeamDividentsManager; import com.yeshi.fanli.util.ad.DouYinAdUtil; import com.yeshi.fanli.util.cmq.DouYinDeviceActiveCMQManager; import com.yeshi.fanli.util.cmq.HongBaoRecieveCMQManager; @@ -138,6 +140,9 @@ @Resource private DeviceActiveService deviceActiveService; + @Resource + private TeamDividentsManager teamDividentsManager; + private static boolean isInited = false; public void onApplicationEvent(ContextRefreshedEvent arg0) { @@ -174,6 +179,9 @@ doHongBaoRecieveIntegralGetJob();// 杩斿埄鍒拌处锛岄噾甯佸鍔� // doPlaceOrderIntegralJob();// 涓嬪崟璧犻�侀噾甯佷换鍔� // doDouYinDeviceActiveJob();// 鎶栭煶璁惧婵�娲诲箍鍛婄洃娴� + + doDividentsJob(); + } } @@ -327,7 +335,8 @@ try { HongBaoV2 hongbao = map.get(handler); if (hongbao != null) { - String key = "hongbao-fanli-" + hongbao.getId(); + String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.hongBaoFanLi, + hongbao.getId() + ""); if (StringUtil.isNullOrEmpty(redisManager.getCommonString(key))) { // 澶勭悊涔嬪悗瑕侀殧2灏忔椂鍐嶆杩涜澶勭悊 redisManager.cacheCommonString(key, "1", 60 * 60 * 2); @@ -840,14 +849,28 @@ private void fanliGetIntegral(HongBaoV2 hongBaoV2) { if (hongBaoV2 != null && hongBaoV2.getState() == HongBaoV2.STATE_YILINGQU && hongBaoV2.getMoney().compareTo(new BigDecimal(0)) > 0) { + // 鏌ヨ瀵瑰簲鐨勮鍗曞彿 + Long mainHongBaoId = hongBaoV2.getId(); + if (hongBaoV2.getParent() != null && hongBaoV2.getParent().getId() != null) + mainHongBaoId = hongBaoV2.getParent().getId(); + + HongBaoOrder hongbaoOrder = hongBaoOrderService.selectDetailByHongBaoId(mainHongBaoId); + if (hongbaoOrder == null || hongbaoOrder.getCommonOrder() == null) + return; + CommonOrder commonOrder = hongbaoOrder.getCommonOrder(); + if (hongBaoV2.getType() == HongBaoV2.TYPE_ZIGOU) {// 鑷喘璁㈠崟 - integralGetService.addRebateOrder(hongBaoV2.getUserInfo().getId()); + integralGetService.addRebateOrder(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(), + commonOrder.getSourceType()); } else if (hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_GOODS) {// 鍒嗕韩璁㈠崟 - integralGetService.addShareOrder(hongBaoV2.getUserInfo().getId()); + integralGetService.addShareOrder(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(), + commonOrder.getSourceType()); } else if (hongBaoV2.getType() == HongBaoV2.TYPE_YIJI || hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_YIJI) {// 涓�绾ч個璇� - integralGetService.addInviteOrderLevelOne(hongBaoV2.getUserInfo().getId()); + integralGetService.addInviteOrderLevelOne(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(), + commonOrder.getSourceType()); } else if (hongBaoV2.getType() == HongBaoV2.TYPE_ERJI || hongBaoV2.getType() == HongBaoV2.TYPE_SHARE_ERJI) {// 浜岀骇閭�璇� - integralGetService.addInviteOrderLevelTwo(hongBaoV2.getUserInfo().getId()); + integralGetService.addInviteOrderLevelTwo(hongBaoV2.getUserInfo().getId(), commonOrder.getOrderNo(), + commonOrder.getSourceType()); } } } @@ -1051,4 +1074,34 @@ }); } + // 鍒嗙孩 + public void doDividentsJob() { + executor.execute(new Runnable() { + @Override + public void run() { + while (true) { + Map<String, UserDividentsDayDTO> map = CMQManager.getInstance().consumeTeamDividentsMsg(16); + if (map != null) { + Iterator<String> its = map.keySet().iterator(); + while (its.hasNext()) { + String key = its.next(); + UserDividentsDayDTO dto = map.get(key); + try { + teamDividentsManager.addToTeamEincome(dto.getUid(), dto.getPreGetTime()); + } catch (Exception e) { + try { + LogHelper.errorDetailInfo(e); + } catch (Exception e1) { + e1.printStackTrace(); + } + } finally { + + } + } + } + } + } + }); + } + } -- Gitblit v1.8.0