From 84c7afc62bb1eb6f5d80d2d9928d0d11a1ffbdda Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 15 Aug 2023 21:14:13 +0800 Subject: [PATCH] 赠送积分更新状态 --- src/main/java/cc/mrbird/febs/pay/util/WechatEventUtil.java | 40 +++++++++++++++++++++++++++++++--------- 1 files changed, 31 insertions(+), 9 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/pay/util/WechatEventUtil.java b/src/main/java/cc/mrbird/febs/pay/util/WechatEventUtil.java index 0f103b9..de265bb 100644 --- a/src/main/java/cc/mrbird/febs/pay/util/WechatEventUtil.java +++ b/src/main/java/cc/mrbird/febs/pay/util/WechatEventUtil.java @@ -106,28 +106,43 @@ result = imgTextMsg(toUserName, fromUserName, "欢迎光临", "欢迎光临【药王谷铺子】,点击左下角【药王谷铺子】-【商城】,进入商城。", "https://excoin.oss-cn-hangzhou.aliyuncs.com/uploadeFile/1690447963307584cd27ac623427f8c07ed1d3bbe4279.png", "http://ywgouth.meiao.biz/"); log.info("新增关注事件:toUserName{}、fromUserName{}", toUserName, fromUserName); StringBuffer stringBuffer = new StringBuffer(); - if(map.containsKey("EventKey")){ + if(map.containsKey("EventKey") && ObjectUtil.isNotEmpty(map.get("EventKey"))){ /** * 扫带参数二维码 */ String eventKey = map.get("EventKey"); if(StrUtil.isNotEmpty(eventKey)){ - stringBuffer.append(eventKey); - stringBuffer.append("-"); + + String[] eventKeyStr = StrUtil.split(eventKey, "_"); + stringBuffer.append(eventKeyStr[1]); + stringBuffer.append("@"); stringBuffer.append(fromUserName); agentProducer.sendMemberSubScanMsg(stringBuffer.toString()); } + }else{ + /** + * 普通关注事件 + */ + agentProducer.sendMemberSubMsg(fromUserName); } - /** - * 普通关注事件 - */ - agentProducer.sendMemberSubMsg(fromUserName); } else if ("unsubscribe".equals(eventType)) { log.info("取消关注事件:toUserName{}、fromUserName{}", toUserName, fromUserName); //取消关注则退出商城 MallMember mallMember = mallMemberMapper.selectMemberByOpenId(fromUserName); - redisUtils.del(AppContants.XCX_LOGIN_PREFIX + mallMember.getId()); - redisUtils.del(AppContants.XCX_LOGIN_PHONE_PREFIX + mallMember.getId()); + mallMember.setSubStatus(MallMember.SUB_STATUS_DISABLED); + mallMemberMapper.updateById(mallMember); + if(ObjectUtil.isNotEmpty(mallMember)){ + String redisKey = AppContants.XCX_LOGIN_PREFIX + mallMember.getId(); + String existToken = redisUtils.getString(redisKey); + if (StrUtil.isNotBlank(existToken)) { + Object o = redisUtils.get(existToken); + if (ObjectUtil.isNotEmpty(o)) { + redisUtils.del(existToken); + } + } + redisUtils.del(existToken); + redisUtils.del(AppContants.XCX_LOGIN_PREFIX + mallMember.getId()); + } }else if ("SCAN".equals(eventType)) { log.info("扫码关注事件:toUserName{}、fromUserName{}", toUserName, fromUserName); if(map.containsKey("EventKey")){ @@ -137,12 +152,19 @@ */ String eventKey = map.get("EventKey"); if(StrUtil.isNotEmpty(eventKey)){ +// String[] eventKeyStr = StrUtil.split(eventKey, "_"); +// stringBuffer.append(eventKeyStr[1]); stringBuffer.append(eventKey); stringBuffer.append("@"); stringBuffer.append(fromUserName); agentProducer.sendMemberSubScanMsg(stringBuffer.toString()); } } + }else if ("VIEW".equals(eventType)) { + /** + * 普通关注事件 + */ + agentProducer.sendMemberSubMsg(fromUserName); } } return result; -- Gitblit v1.9.1