From 285437902560001a9f0214da71678c297b0aa572 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 11:41:08 +0800 Subject: [PATCH 1/8] huiyuan --- .../src/main/java/com/iformall/mapper/WxCUserMapper.java | 2 ++ .../com/iformall/service/impl/WxCUserServiceImpl.java | 9 +++++++++ .../src/main/resources/mapper/WxCUserMapper.xml | 8 ++++++-- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java index 831dc86f7..2b3f483ce 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java @@ -42,4 +42,6 @@ public interface WxCUserMapper extends CommonMapper { // void updateMsgCountDown(@Param("tenantId")String tenantId, @Param("openId")String openId); List findOpenIdList(@Param("userId")Long userId, @Param("tenantId")String tenantId); + + List findTokenList(@Param("userId")Long userId, @Param("tenantId")String tenantId); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java index c1d7878de..56340972e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java @@ -47,6 +47,9 @@ public class WxCUserServiceImpl implements WxCUserService { @Autowired private MqBaseProducer mqBaseProducer; + @Autowired + private CUserTokenService cUserTokenService; + @Autowired @Qualifier("baseCUserTokenRedisTemplate") RedisTemplate baseCUserTokenRedisTemplate; @@ -321,6 +324,12 @@ public class WxCUserServiceImpl implements WxCUserService { @Override public void delForUserIdOnly(Long id, Long userId, String tenantId) { + List tokenList = wxCUserMapper.findTokenList(userId, tenantId); + if(tokenList != null){ + for (String token:tokenList) { + cUserTokenService.removeTokenCache(token); + } + } wxCUserMapper.delForUserIdOnly(id,userId,tenantId); } diff --git a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml index c1cd74047..e35be7316 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml @@ -426,12 +426,16 @@ update wx_c_user set update_date=now(), - token = null, - expire_time=now(), + phone = null, + pure_phone = null, user_id = null where user_id = #{userId} and tenant_id = #{tenantId} and id != #{id} + + From 6ed49471aa0c858c0ee3768b43631381459f208a Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 12:18:35 +0800 Subject: [PATCH 2/8] huiyuan --- mallinkService/src/main/resources/mapper/WxCUserMapper.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml index e35be7316..83e8a0f67 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml @@ -426,6 +426,7 @@ update wx_c_user set update_date=now(), + expire_time=now(), phone = null, pure_phone = null, user_id = null From 83cb4db6b3019d0ecc7c99c5612822d46178dcb3 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 12:33:16 +0800 Subject: [PATCH 3/8] huiyuan --- .../src/main/java/com/iformall/controller/BaseController.java | 4 +++- .../iformall/controller/WxMsgValidationcodeController.java | 3 ++- .../java/com/iformall/controller/WxUserGrantController.java | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java index 24d20038b..bda8e3caf 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java @@ -215,7 +215,7 @@ public class BaseController { } - public Long saveToBasicInfoByCUser(String userPhone,String userName,String avatarUrl,Integer sex,Long userId) { + public Long saveToBasicInfoByCUser(String userPhone,String userName,String avatarUrl,Integer sex,Long userId,Boolean isFirstPhone) { TenantEntity tenantEntity = getTenantInfo(); if (StringUtils.isBlank(userPhone)) return null; @@ -243,6 +243,7 @@ public class BaseController { basicInfo.setSex(sex); wxCUserBasicInfoService.update(basicInfo); removeCacheMember(basicInfo.getId()); + isFirstPhone = false; return basicInfo.getId(); } else { if (byId != null) { @@ -255,6 +256,7 @@ public class BaseController { byId.setSex(sex); wxCUserBasicInfoService.update(byId); removeCacheMember(basicInfo.getId()); + isFirstPhone = false; return byId.getId(); } else { basicInfo = new WxCUserBasicInfo(); diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java index d98bc9c18..b240ecd44 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java @@ -75,8 +75,9 @@ public class WxMsgValidationcodeController extends BaseController { //wxMsgValidationcode.setAppid(user.getAppId()); ResultData rd = wxMsgValidationcodeService.hasvalidationcode(wxMsgValidationcode); if (rd.code == Result.SUCCESS) { + boolean isFirstPhone = false; // 更新到basicinfo - Long basicUserId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId()); + Long basicUserId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId(),isFirstPhone); if (null != basicUserId) { if(basicUserId.intValue() == -1){ return rd; diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java index 98671232b..0aa870439 100755 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java @@ -622,7 +622,7 @@ public class WxUserGrantController extends BaseController { phone = user.getVerifyCodePhone(); } // 更新到basicinfo - Long userBasicId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId()); + Long userBasicId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId(),isFirstPhone); if (null != userBasicId) { if(userBasicId.intValue() == -1){ return new ResultData(ErrorCode.USER_PHONE_IS_FOUND); From 8d707b76fa14d93af8a8de4980c288bed98164c5 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 12:51:34 +0800 Subject: [PATCH 4/8] huiyuan --- .../src/main/java/com/iformall/mapper/WxCUserMapper.java | 2 +- .../main/java/com/iformall/service/impl/WxCUserServiceImpl.java | 2 +- mallinkService/src/main/resources/mapper/WxCUserMapper.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java index 2b3f483ce..ac874605e 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserMapper.java @@ -43,5 +43,5 @@ public interface WxCUserMapper extends CommonMapper { List findOpenIdList(@Param("userId")Long userId, @Param("tenantId")String tenantId); - List findTokenList(@Param("userId")Long userId, @Param("tenantId")String tenantId); + List findTokenList(@Param("id")Long id,@Param("userId")Long userId, @Param("tenantId")String tenantId); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java index 56340972e..8cd183f35 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java @@ -324,7 +324,7 @@ public class WxCUserServiceImpl implements WxCUserService { @Override public void delForUserIdOnly(Long id, Long userId, String tenantId) { - List tokenList = wxCUserMapper.findTokenList(userId, tenantId); + List tokenList = wxCUserMapper.findTokenList(id,userId, tenantId); if(tokenList != null){ for (String token:tokenList) { cUserTokenService.removeTokenCache(token); diff --git a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml index 83e8a0f67..6e028e747 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml @@ -434,7 +434,7 @@ From 5a7f7ca4449914cf914873ce334bec6c7dfc2912 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 13:00:34 +0800 Subject: [PATCH 5/8] huiyuan --- mallinkService/src/main/resources/mapper/WxCUserMapper.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml index 6e028e747..4146ec925 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserMapper.xml @@ -426,7 +426,6 @@ update wx_c_user set update_date=now(), - expire_time=now(), phone = null, pure_phone = null, user_id = null From b3ac1817d60784ed129378accbe5ae3f015793b4 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 13:50:32 +0800 Subject: [PATCH 6/8] huiyuan --- .../com/iformall/controller/WxMsgValidationcodeController.java | 2 +- .../java/com/iformall/controller/WxUserGrantController.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java index b240ecd44..8ecb2193f 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java @@ -75,7 +75,7 @@ public class WxMsgValidationcodeController extends BaseController { //wxMsgValidationcode.setAppid(user.getAppId()); ResultData rd = wxMsgValidationcodeService.hasvalidationcode(wxMsgValidationcode); if (rd.code == Result.SUCCESS) { - boolean isFirstPhone = false; + Boolean isFirstPhone = false; // 更新到basicinfo Long basicUserId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId(),isFirstPhone); if (null != basicUserId) { diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java index 0aa870439..735519945 100755 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java @@ -598,7 +598,7 @@ public class WxUserGrantController extends BaseController { return new ResultData(ErrorCode.USER_IS_EMPTY); } - boolean isFirstPhone = false; + Boolean isFirstPhone = false; if(user.getUserId() == null) { isFirstPhone = true; } From ab2f2265cc086ac47acb35000eb21d2b52470127 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 14:14:08 +0800 Subject: [PATCH 7/8] huiyuan --- .../iformall/controller/BaseController.java | 25 +++++++++++++------ .../WxMsgValidationcodeController.java | 3 +-- .../controller/WxUserGrantController.java | 17 +------------ 3 files changed, 20 insertions(+), 25 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java index bda8e3caf..877841499 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java @@ -9,11 +9,9 @@ import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.WxAppinfo; import com.iformall.domain.po.WxCUser; import com.iformall.domain.po.WxCUserBasicInfo; +import com.iformall.enums.EnumScoreType; import com.iformall.exception.MallinkException; -import com.iformall.service.CUserTokenService; -import com.iformall.service.WxAppinfoService; -import com.iformall.service.WxCUserBasicChildService; -import com.iformall.service.WxCUserBasicInfoService; +import com.iformall.service.*; import com.iformall.service.wechat.FmOpenService; import com.iformall.utils.Constant; import com.iformall.utils.IPUtil; @@ -61,6 +59,12 @@ public class BaseController { @Autowired private CUserTokenService cUserTokenService; + + @Autowired + private WxScoreRulesService wxScoreRulesService; + + @Autowired + private MemCouponFromDspService memCouponFromDspService; @Autowired @Qualifier("objectCommonRedisTemplate") @@ -215,7 +219,7 @@ public class BaseController { } - public Long saveToBasicInfoByCUser(String userPhone,String userName,String avatarUrl,Integer sex,Long userId,Boolean isFirstPhone) { + public Long saveToBasicInfoByCUser(String userPhone,String userName,String avatarUrl,Integer sex,Long userId) { TenantEntity tenantEntity = getTenantInfo(); if (StringUtils.isBlank(userPhone)) return null; @@ -243,7 +247,6 @@ public class BaseController { basicInfo.setSex(sex); wxCUserBasicInfoService.update(basicInfo); removeCacheMember(basicInfo.getId()); - isFirstPhone = false; return basicInfo.getId(); } else { if (byId != null) { @@ -256,7 +259,6 @@ public class BaseController { byId.setSex(sex); wxCUserBasicInfoService.update(byId); removeCacheMember(basicInfo.getId()); - isFirstPhone = false; return byId.getId(); } else { basicInfo = new WxCUserBasicInfo(); @@ -268,6 +270,15 @@ public class BaseController { basicInfo.setSex(sex); wxCUserBasicInfoService.save(basicInfo); removeCacheMember(basicInfo.getId()); + + // 首次授权, 增加成长值及积分 + // 成长值 + wxScoreRulesService.addScore(tenantEntity, EnumScoreType.WECHAT_PHONE, basicInfo); + // 增加积分 + wxCUserBasicInfoService.addCredit(basicInfo.getId(),tenantEntity,EnumScoreType.WECHAT_PHONE); + // 外部注券 + memCouponFromDspService.couponOrderFromDsp(tenantEntity, userPhone); + return basicInfo.getId(); } } diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java index 8ecb2193f..d98bc9c18 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxMsgValidationcodeController.java @@ -75,9 +75,8 @@ public class WxMsgValidationcodeController extends BaseController { //wxMsgValidationcode.setAppid(user.getAppId()); ResultData rd = wxMsgValidationcodeService.hasvalidationcode(wxMsgValidationcode); if (rd.code == Result.SUCCESS) { - Boolean isFirstPhone = false; // 更新到basicinfo - Long basicUserId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId(),isFirstPhone); + Long basicUserId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId()); if (null != basicUserId) { if(basicUserId.intValue() == -1){ return rd; diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java index 735519945..c9c285775 100755 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java @@ -598,11 +598,6 @@ public class WxUserGrantController extends BaseController { return new ResultData(ErrorCode.USER_IS_EMPTY); } - Boolean isFirstPhone = false; - if(user.getUserId() == null) { - isFirstPhone = true; - } - WxMaService wxMaService = getWeappService(user.getAppId()); String session_key = user.getSessionKey(); @@ -622,7 +617,7 @@ public class WxUserGrantController extends BaseController { phone = user.getVerifyCodePhone(); } // 更新到basicinfo - Long userBasicId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId(),isFirstPhone); + Long userBasicId = saveToBasicInfoByCUser(phone, user.getNickName(), user.getAvatarUrl(), user.getGender(), user.getUserId()); if (null != userBasicId) { if(userBasicId.intValue() == -1){ return new ResultData(ErrorCode.USER_PHONE_IS_FOUND); @@ -638,16 +633,6 @@ public class WxUserGrantController extends BaseController { removeCacheCUser(); - if(isFirstPhone) { - // 首次授权, 增加成长值及积分 - // 成长值 - wxScoreRulesService.addScore(getTenantInfo(),EnumScoreType.WECHAT_PHONE, user); - // 增加积分 - wxCUserBasicInfoService.addCredit(user.getUserId(),getTenantInfo(),EnumScoreType.WECHAT_PHONE); - // 外部注券 - memCouponFromDspService.couponOrderFromDsp(tenantEntity, phoneNoInfo.getPhoneNumber()); - } - resultMap.put("msg", "授权手机成功!"); resultMap.put("phone", phoneNoInfo.getPhoneNumber()); } else { From 202d20926c5937cef7367e4c86d2e51e405b3510 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 18 Aug 2021 15:21:10 +0800 Subject: [PATCH 8/8] huiyuan --- .../src/main/java/com/iformall/controller/BaseController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java index 877841499..d443c15dd 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/BaseController.java @@ -258,7 +258,7 @@ public class BaseController { byId.setAvatarUrl(avatarUrl); byId.setSex(sex); wxCUserBasicInfoService.update(byId); - removeCacheMember(basicInfo.getId()); + removeCacheMember(byId.getId()); return byId.getId(); } else { basicInfo = new WxCUserBasicInfo();