记得上下班打卡 | git大法好,push需谨慎

Commit 2f10f380 authored by jiangxiulong's avatar jiangxiulong

关注也调用积分任务

parent 40b2bf84
...@@ -56,5 +56,6 @@ public class SweetConstant { ...@@ -56,5 +56,6 @@ public class SweetConstant {
public final static String REDIS_KEY_SWEET_WECHAT_USERS = "sweet:wechatUsers:unionId:"; public final static String REDIS_KEY_SWEET_WECHAT_USERS = "sweet:wechatUsers:unionId:";
public final static String REDIS_KEY_SWEET_WECHAT_USERS_TYPE = "type:"; public final static String REDIS_KEY_SWEET_WECHAT_USERS_TYPE = "type:";
public final static String REDIS_KEY_SWEET_WECHAT_USERS_RELATION = "sweet:wechatUsersRelation:mobile:"; public final static String REDIS_KEY_SWEET_WECHAT_USERS_RELATION_PHONE = "sweet:wechatUsersRelation:mobile:";
public final static String REDIS_KEY_SWEET_WECHAT_USERS_RELATION_UNIONID = "sweet:wechatUsersRelation:unionId:";
} }
...@@ -5,10 +5,12 @@ import com.liquidnet.commons.lang.util.DateUtil; ...@@ -5,10 +5,12 @@ import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.base.SqlMapping; import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst; import com.liquidnet.service.base.constant.MQConst;
import com.liquidnet.service.feign.stone.api.FeignStoneIntegralClient;
import com.liquidnet.service.sweet.config.WechatMpConfigure; import com.liquidnet.service.sweet.config.WechatMpConfigure;
import com.liquidnet.service.sweet.service.impl.SweetWechatTemplateServiceImpl; import com.liquidnet.service.sweet.service.impl.SweetWechatTemplateServiceImpl;
import com.liquidnet.service.sweet.utils.QueueUtils; import com.liquidnet.service.sweet.utils.QueueUtils;
import com.liquidnet.service.sweet.utils.WechatUsersRedisUtils; import com.liquidnet.service.sweet.utils.WechatUsersRedisUtils;
import com.liquidnet.service.sweet.vo.SweetWechatUsersRelationVo;
import com.liquidnet.service.sweet.vo.SweetWechatUsersVo; import com.liquidnet.service.sweet.vo.SweetWechatUsersVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import me.chanjar.weixin.common.error.WxErrorException; import me.chanjar.weixin.common.error.WxErrorException;
...@@ -45,6 +47,9 @@ public class SubscribeHandler implements WxMpMessageHandler { ...@@ -45,6 +47,9 @@ public class SubscribeHandler implements WxMpMessageHandler {
@Autowired @Autowired
private SweetWechatTemplateServiceImpl sweetWechatTemplateService; private SweetWechatTemplateServiceImpl sweetWechatTemplateService;
@Autowired
private FeignStoneIntegralClient feignStoneIntegralClient;
@Override @Override
public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, Map<String, Object> context, WxMpService wxMpService, public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, Map<String, Object> context, WxMpService wxMpService,
WxSessionManager sessionManager) throws WxErrorException { WxSessionManager sessionManager) throws WxErrorException {
...@@ -65,9 +70,13 @@ public class SubscribeHandler implements WxMpMessageHandler { ...@@ -65,9 +70,13 @@ public class SubscribeHandler implements WxMpMessageHandler {
type = 1; type = 1;
} else {// 摩登服务号 } else {// 摩登服务号
type = 2; type = 2;
SweetWechatUsersRelationVo usersRelationUnionid = redisUtils.getSweetWechatUsersRelationUnionid(wxMpUser.getUnionId());
if (null != usersRelationUnionid) {
feignStoneIntegralClient.doTask(4, usersRelationUnionid.getUserId());
}
} }
SweetWechatUsersVo sweetWechatUsers = redisUtils.getSweetWechatUsers(wxMpUser.getUnionId(), type); SweetWechatUsersVo sweetWechatUsers = redisUtils.getSweetWechatUsers(wxMpUser.getUnionId(), type);
if (null == sweetWechatUsers && type > 0) { if (null == sweetWechatUsers) {
SweetWechatUsersVo sweetWechatUsersVo = SweetWechatUsersVo.getNew(); SweetWechatUsersVo sweetWechatUsersVo = SweetWechatUsersVo.getNew();
sweetWechatUsersVo.setWechatId(IDGenerator.nextSnowId()); sweetWechatUsersVo.setWechatId(IDGenerator.nextSnowId());
sweetWechatUsersVo.setOpenId(wxMpUser.getOpenId()); sweetWechatUsersVo.setOpenId(wxMpUser.getOpenId());
......
...@@ -114,8 +114,14 @@ public class SweetWechatLoginServiceImpl { ...@@ -114,8 +114,14 @@ public class SweetWechatLoginServiceImpl {
usersRelationVo.setUserId(userId); usersRelationVo.setUserId(userId);
usersRelationVo.setUserPhone(mobile); usersRelationVo.setUserPhone(mobile);
redisUtils.setSweetWechatUsersRelation(usersRelationVo); redisUtils.setSweetWechatUsersRelation(usersRelationVo);
// 调用关注赠积分任务 // 调用关注赠积分任务 这里如果不调用的话
feignStoneIntegralClient.doTask(4, userId); // 1。关注过了也登陆过小程序的可以脚本处理 脚本不处理就需要每个用户点进入小程序登陆
// 2。关注过了 无小程序的 本次登陆才有的 接口也不是前端请求的 就没有地方触发做任务接口
// 3。有小程序未关注的就关注时候适用
SweetWechatUsersVo sweetWechatUsersSky = redisUtils.getSweetWechatUsers(unionId, 2);
if (null != sweetWechatUsersSky) {
feignStoneIntegralClient.doTask(4, userId);
}
} }
// 返回给前端数据 // 返回给前端数据
HashMap<String, Object> userInfo = CollectionUtil.mapStringObject(); HashMap<String, Object> userInfo = CollectionUtil.mapStringObject();
......
...@@ -38,7 +38,17 @@ public class WechatUsersRedisUtils { ...@@ -38,7 +38,17 @@ public class WechatUsersRedisUtils {
} }
public SweetWechatUsersRelationVo getSweetWechatUsersRelation(String mobile) { public SweetWechatUsersRelationVo getSweetWechatUsersRelation(String mobile) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_USERS_RELATION.concat(mobile); String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_USERS_RELATION_PHONE.concat(mobile);
Object obj = redisUtil.get(redisKey);
if (null == obj) {
return null;
} else {
SweetWechatUsersRelationVo sweetWechatUsersRelationVo = (SweetWechatUsersRelationVo) obj;
return sweetWechatUsersRelationVo;
}
}
public SweetWechatUsersRelationVo getSweetWechatUsersRelationUnionid(String mobile) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_USERS_RELATION_PHONE.concat(mobile);
Object obj = redisUtil.get(redisKey); Object obj = redisUtil.get(redisKey);
if (null == obj) { if (null == obj) {
return null; return null;
...@@ -48,8 +58,10 @@ public class WechatUsersRedisUtils { ...@@ -48,8 +58,10 @@ public class WechatUsersRedisUtils {
} }
} }
public void setSweetWechatUsersRelation(SweetWechatUsersRelationVo usersRelationVo) { public void setSweetWechatUsersRelation(SweetWechatUsersRelationVo usersRelationVo) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_USERS_RELATION.concat(usersRelationVo.getUserPhone()); String redisKey = SweetConstant.REDIS_KEY_SWEET_WECHAT_USERS_RELATION_PHONE.concat(usersRelationVo.getUserPhone());
String redisKey2 = SweetConstant.REDIS_KEY_SWEET_WECHAT_USERS_RELATION_UNIONID.concat(usersRelationVo.getUnionId());
redisUtil.set(redisKey, usersRelationVo); redisUtil.set(redisKey, usersRelationVo);
redisUtil.set(redisKey2, usersRelationVo);
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment