From 51a4ff5d777028d52a19c314a99f796334cb7b51 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 23 十一月 2019 18:30:01 +0800 Subject: [PATCH] 配置文件修改 --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/ThreeSaleSerivceImpl.java | 141 ++++++++++++++-------------------------------- 1 files changed, 44 insertions(+), 97 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/ThreeSaleSerivceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/ThreeSaleSerivceImpl.java index c31f84f..addd16c 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/ThreeSaleSerivceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/invite/ThreeSaleSerivceImpl.java @@ -13,16 +13,19 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import com.aliyun.openservices.ons.api.Message; +import com.aliyun.openservices.ons.api.Producer; +import com.google.gson.Gson; import com.yeshi.fanli.dao.mybatis.ThreeSaleMapper; import com.yeshi.fanli.dao.mybatis.UserInfoMapper; +import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum; +import com.yeshi.fanli.dto.mq.user.body.UserInviteMQMsg; import com.yeshi.fanli.entity.bus.user.ThreeSale; import com.yeshi.fanli.entity.bus.user.ThreeSaleExtraInfo; import com.yeshi.fanli.entity.bus.user.UserActiveLog; import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.exception.user.ThreeSaleException; -import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; -import com.yeshi.fanli.service.inter.tlj.UserTaoLiJinOriginService; import com.yeshi.fanli.service.inter.user.UserActiveLogService; import com.yeshi.fanli.service.inter.user.UserInfoExtraService; import com.yeshi.fanli.service.inter.user.UserInfoService; @@ -34,7 +37,8 @@ import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.VersionUtil; -import com.yeshi.fanli.util.cmq.ThreeSaleCMQManager; +import com.yeshi.fanli.util.rocketmq.MQMsgBodyFactory; +import com.yeshi.fanli.util.rocketmq.MQTopicName; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -61,9 +65,6 @@ private MsgInviteDetailService msgInviteDetailService; @Resource - private UserTaoLiJinOriginService userTaoLiJinOriginService; - - @Resource private UserActiveLogService userActiveLogService; @Resource @@ -72,13 +73,15 @@ @Resource private ThreeSaleExtraInfoSerivce threeSaleExtraInfoSerivce; - @Lazy @Resource private IntegralGetService integralGetService; @Resource(name = "taskExecutor") private TaskExecutor executor; + + @Resource(name = "producer") + private Producer producer; public UserInfo getBoss(final long uid) { return threeSaleMapper.selectBoss(uid); @@ -193,8 +196,7 @@ ts.setSucceedTime(System.currentTimeMillis()); ts.setWorker(worker); threeSaleMapper.insertSelective(ts); - ThreeSaleCMQManager.getInstance().addThreeSaleMsg(ts); - userInviteMsgNotificationService.inviteSuccess(inviter.getId(), ts); + inviteSuccess(inviter.getId(), worker.getId(), ts); } else { if (!list.get(0).getState() && list.get(0).getExpire() == ThreeSale.EXPIRE_NORMAL && list.get(0).getBoss().getId() == inviter.getId().longValue()) {// 鏈敓鏁堢殑涓婄骇鍜岀幇鍦ㄤ笂绾т竴鏍峰氨鐢熸晥 @@ -202,8 +204,7 @@ update.setState(true); update.setSucceedTime(System.currentTimeMillis()); threeSaleMapper.updateByPrimaryKeySelective(update); - ThreeSaleCMQManager.getInstance().addThreeSaleMsg(list.get(0));// 娣诲姞閫氱煡 - userInviteMsgNotificationService.inviteSuccess(inviter.getId(), list.get(0)); + inviteSuccess(list.get(0).getBoss().getId(), list.get(0).getWorker().getId(), list.get(0)); } } } @@ -234,14 +235,11 @@ oldSale.setState(update.getState()); oldSale.setSucceedTime(update.getSucceedTime()); - UserInfo inviter = list.get(0).getBoss(); // 涓嶄互閭�璇蜂汉鏁拌绠楃瓑绾� // if (inviter != null) // reComputeUserRank(inviter.getId()); // 娣诲姞鍒伴槦鍒� - ThreeSaleCMQManager.getInstance().addThreeSaleMsg(oldSale); - // 閫氱煡 - userInviteMsgNotificationService.inviteSuccess(inviter.getId(), oldSale); + inviteSuccess(oldSale.getBoss().getId(), oldSale.getWorker().getId(), oldSale); } } @@ -544,52 +542,7 @@ threeSaleMapper.deleteExpireRecord(inviter.getId(), invitee.getId()); } - // 娣诲姞鍒伴槦鍒� - ThreeSaleCMQManager.getInstance().addThreeSaleMsg(threeSale); - - // 閭�璇锋秷鎭� - userInviteMsgNotificationService.inviteSuccess(inviter.getId(), threeSale); - - executor.execute(new Runnable() { - @Override - public void run() { - - UserActiveLog activeLog = userActiveLogService.getUserLatestActiveInfo(inviter.getId()); - try { - if (activeLog != null && !StringUtil.isNullOrEmpty(activeLog.getVersionCode())) { - String versionCode = activeLog.getVersionCode(); - String channel = activeLog.getChannel(); - - boolean result = false; - // 娓犻亾鏄痑ppstore 鍒ゆ柇涓篒OS - if (!StringUtil.isNullOrEmpty(channel) && "appstore".equalsIgnoreCase(channel)) { - result = VersionUtil.greaterThan_1_5_60("ios", versionCode); - } else { - result = VersionUtil.greaterThan_1_5_60("android", versionCode); - } - - if (result) { - // 琚個璇峰悕绉� - String inviteName = invitee.getNickName(); - if (StringUtil.isNullOrEmpty(inviteName)) { - UserInfo userInfo = userInfoService.selectByPKey(invitee.getId()); - if (userInfo != null) { - inviteName = userInfo.getNickName(); - } - } - // 濂栧姳閭�璇风孩鍖咃紙娣樼ぜ閲戯級 - userTaoLiJinOriginService.addInviteWinMoney(inviter.getId(), inviteName); - } - } - } catch (Exception e) { - LogHelper.errorDetailInfo(e); - } - - // 閭�璇烽噾甯� - integralGetService.addInviteLevelOne(inviter.getId(), invitee.getId()); - } - }); - + inviteSuccess(inviter.getId(), invitee.getId(), threeSale); } @Override @@ -640,50 +593,35 @@ threeSale.setBoss(boss); threeSale.setWorker(invitee); - // 娣诲姞鍒伴槦鍒� - ThreeSaleCMQManager.getInstance().addThreeSaleMsg(threeSale); + inviteSuccess(boss.getId(), invitee.getId(), threeSale); + } + + /** + * 閭�璇锋垚鍔� + */ + @Transactional + private void inviteSuccess(Long bossId, Long workerId, ThreeSale threeSale) { // 閭�璇锋秷鎭� - userInviteMsgNotificationService.inviteSuccess(threeSale.getBoss().getId(), threeSale); - + UserActiveLog activeLog = userActiveLogService.getUserLatestActiveInfo(bossId); + if (activeLog != null && VersionUtil.greaterThan_2_1("appstore".equalsIgnoreCase(activeLog.getChannel()) ? "ios" : "android", + activeLog.getVersionCode())) { // 2.1鐗堟湰浠ヤ笂 + userInviteMsgNotificationService.inviteSuccess2_1(bossId, threeSale); + } else { // 鏈�鍒濇秷鎭� + userInviteMsgNotificationService.inviteSuccess(threeSale.getBoss().getId(), threeSale); + } + executor.execute(new Runnable() { @Override public void run() { - try { - UserActiveLog activeLog = userActiveLogService.getUserLatestActiveInfo(inviterId); - if (activeLog != null && !StringUtil.isNullOrEmpty(activeLog.getVersionCode())) { - boolean result = false; - String versionCode = activeLog.getVersionCode(); - String channel = activeLog.getChannel(); - - // 娓犻亾鏄痑ppstore 鍒ゆ柇涓篒OS - if (!StringUtil.isNullOrEmpty(channel) && "appstore".equalsIgnoreCase(channel)) { - result = VersionUtil.greaterThan_1_5_60("ios", versionCode); - } else { - result = VersionUtil.greaterThan_1_5_60("android", versionCode); - } - - if (result) { - // 琚個璇峰悕绉� - String inviteName = invitee.getNickName(); - if (StringUtil.isNullOrEmpty(inviteName)) { - UserInfo userInfo = userInfoService.selectByPKey(invitee.getId()); - if (userInfo != null) { - inviteName = userInfo.getNickName(); - } - } - // 濂栧姳閭�璇风孩鍖咃紙娣樼ぜ閲戯級 - userTaoLiJinOriginService.addInviteWinMoney(inviterId, inviteName); - } - } - } catch (Exception e) { - LogHelper.errorDetailInfo(e); - } - // 閭�璇烽噾甯� - integralGetService.addInviteLevelOne(boss.getId(), invitee.getId()); + integralGetService.addInviteLevelOne(bossId, workerId); } }); + UserInviteMQMsg msg = new UserInviteMQMsg(bossId, workerId, null, new Date(), UserInviteMQMsg.STATE_SUCCESS); + Message message = MQMsgBodyFactory.create(MQTopicName.TOPIC_USER, UserTopicTagEnum.inviteSuccess, + msg); + producer.send(message); } /** @@ -722,4 +660,13 @@ return threeSaleMapper.listSecondTeam(start, count, uid, state); } + @Override + public ThreeSale selectLatestByWorkerIdAndState(Long workerId, int state) { + return threeSaleMapper.selectLatestByWorkerIdAndState(workerId, state); + } + + @Override + public ThreeSale getByWorkerIdAndTime(Long workerId, long time) { + return threeSaleMapper.getByWorkerIdAndTime(workerId, time); + } } -- Gitblit v1.8.0