admin
2020-04-27 cc44f797c5a0a2f462c3426f477c00737fbf79b2
导师消息消费订阅用户活跃
2个文件已修改
33 ■■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/TearcherMessageListener.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/rocket/consumer.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/rocketmq/consumer/user/TearcherMessageListener.java
@@ -15,6 +15,7 @@
import com.google.gson.Gson;
import com.yeshi.fanli.dto.mq.user.UserTopicTagEnum;
import com.yeshi.fanli.dto.mq.user.body.InviteCodeActiveMQMsg;
import com.yeshi.fanli.dto.mq.user.body.UserActiveMQMsg;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.vip.TearcherInfo;
import com.yeshi.fanli.log.LogHelper;
@@ -65,9 +66,26 @@
                        InviteCodeActiveMQMsg.class);
                if (inviteCodeActiveMQMsg != null) {
                    // 顶级为测试用户的全部分配官方导师微信
                    initTearcher(inviteCodeActiveMQMsg.getUid());
                }
            } else if (tag.equalsIgnoreCase(UserTopicTagEnum.userActve.name())) {
                UserActiveMQMsg userActiveMQMsg = new Gson().fromJson(new String(message.getBody()),
                        UserActiveMQMsg.class);
                if (userActiveMQMsg != null) {
                    initTearcher(userActiveMQMsg.getUid());
                }
            }
        }
        return Action.CommitMessage;
    }
    private void initTearcher(Long uid) {
        if (tearcherService.selectByUid(uid) != null)
            return;
                    // 获取顶级boss
                    Long bossId = threeSaleSerivce.getTopBoss(inviteCodeActiveMQMsg.getUid());
        Long bossId = threeSaleSerivce.getTopBoss(uid);
                    if (bossId != null) {
                        if (officialUids == null) {
@@ -79,18 +97,11 @@
                        }
                        if (officialUids.contains(bossId)) {
                            List<TearcherInfo> tearcherList = tearcherService.listByType(TearcherInfo.TYPE_OFFICIAL, 1,
                                    1);
                List<TearcherInfo> tearcherList = tearcherService.listByType(TearcherInfo.TYPE_OFFICIAL, 1, 1);
                            if (tearcherList != null && tearcherList.size() > 0) {
                                tearcherService.addUserTearcherMap(tearcherList.get(0).getId(),
                                        inviteCodeActiveMQMsg.getUid());
                    tearcherService.addUserTearcherMap(tearcherList.get(0).getId(), uid);
                            }
                        }
                    }
                }
            }
        }
        return Action.CommitMessage;
    }
}
fanli/src/main/resource/rocket/consumer.xml
@@ -305,7 +305,7 @@
                    <key>
                        <bean class="com.aliyun.openservices.ons.api.bean.Subscription">
                            <property name="topic" value="TOPIC_USER" />
                            <property name="expression" value="inviteCodeActive" />
                            <property name="expression" value="inviteCodeActive||userActve" />
                        </bean>
                    </key>
                </entry>