Jelajahi Sumber

登录接口修改,可以传入邀请码

zc 2 bulan lalu
induk
melakukan
405c943161

+ 4 - 3
alien-store/src/main/java/shop/alien/store/controller/LifeUserController.java

@@ -41,11 +41,12 @@ public class LifeUserController {
 
     @ApiOperation("用户登录")
     @ApiOperationSupport(order = 1)
-    @ApiImplicitParams({@ApiImplicitParam(name = "phoneNum", value = "手机号", dataType = "String", paramType = "query", required = true)})
+    @ApiImplicitParams({@ApiImplicitParam(name = "phoneNum", value = "手机号", dataType = "String", paramType = "query", required = true),
+                        @ApiImplicitParam(name = "inviteCode", value = "邀请码", dataType = "String", paramType = "query", required = false)})
     @GetMapping("/userLogin")
-    public R<LifeUserVo> userLogin(@RequestParam("phoneNum") String phoneNum) {
+    public R<LifeUserVo> userLogin(@RequestParam("phoneNum") String phoneNum,  @RequestParam(required = false) String inviteCode) {
         log.info("LifeUserController.userLogin?phoneNum={}", phoneNum);
-        LifeUserVo userVo = service.userLogin(phoneNum);
+        LifeUserVo userVo = service.userLogin(phoneNum, inviteCode);
         if (null == userVo) {
             return R.fail("登录失败");
         }

+ 13 - 1
alien-store/src/main/java/shop/alien/store/service/LifeUserService.java

@@ -53,6 +53,8 @@ public class LifeUserService extends ServiceImpl<LifeUserMapper, LifeUser> {
 
     private final WebSocketProcess webSocketProcess;
 
+    private final ActivityInviteConfigService activityInviteConfigService;
+
     @Value("${jwt.expiration-time}")
     private String effectiveTime;
 
@@ -136,7 +138,7 @@ public class LifeUserService extends ServiceImpl<LifeUserMapper, LifeUser> {
         return voList;
     }
 
-    public LifeUserVo userLogin(String phoneNum) {
+    public LifeUserVo userLogin(String phoneNum, String inviteCode) {
         LifeUser user = getUserByPhone(phoneNum);
         if (user == null) {
             LifeUser lifeUser = new LifeUser();
@@ -158,6 +160,11 @@ public class LifeUserService extends ServiceImpl<LifeUserMapper, LifeUser> {
                 String token = getToken(phoneNum, userVo.getUserName(), tokenMap);
                 userVo.setToken(token);
                 baseRedisService.setString("user_" + phoneNum, token);
+
+                // 生成邀请记录
+                if(StringUtils.isNotEmpty(inviteCode)){
+                    activityInviteConfigService.bindInviteCode(lifeUser.getId(), inviteCode);
+                }
                 return userVo;
             } else {
                 return null;
@@ -173,6 +180,11 @@ public class LifeUserService extends ServiceImpl<LifeUserMapper, LifeUser> {
             String token = getToken(phoneNum, user.getUserName(), tokenMap);
             userVo.setToken(token);
             baseRedisService.setString("user_" + phoneNum, token);
+            if(StringUtils.isNotEmpty(inviteCode)){
+                // 生成邀请记录
+                activityInviteConfigService.bindInviteCode(user.getId(), inviteCode);
+            }
+
             return userVo;
         }
     }