|
|
@@ -97,6 +97,8 @@ public class AppLoginController extends AppBaseController{
|
|
|
user.setPassword(Md5Utils.hash(param.getPassword()));
|
|
|
user.setUpdateTime(new DateTime());
|
|
|
userService.updateFsUser(user);
|
|
|
+ // 注册也视为首次使用 app:补写首次登录时间并发放奖励(如符合条件)
|
|
|
+ userNewTaskService.performFirstLoginApp(fsUser.getUserId());
|
|
|
return R.ok("注册成功");
|
|
|
} else {
|
|
|
// 创建新用户
|
|
|
@@ -108,6 +110,8 @@ public class AppLoginController extends AppBaseController{
|
|
|
user.setCreateTime(new Date());
|
|
|
|
|
|
if (userService.insertFsUser(user) > 0) {
|
|
|
+ // 注册也视为首次使用 app:补写首次登录时间并发放奖励(如符合条件)
|
|
|
+ userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
return R.ok("注册成功");
|
|
|
} else {
|
|
|
return R.error("注册失败");
|
|
|
@@ -200,6 +204,8 @@ public class AppLoginController extends AppBaseController{
|
|
|
user.setPassword(Md5Utils.hash(password));
|
|
|
user.setCreateTime(new Date());
|
|
|
if (userService.insertFsUser(user) > 0) {
|
|
|
+ // 注册也视为首次使用 app:补写首次登录时间并发放奖励(如符合条件)
|
|
|
+ userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
return R.ok("注册成功");
|
|
|
} else {
|
|
|
return R.error("注册失败");
|
|
|
@@ -297,6 +303,8 @@ public class AppLoginController extends AppBaseController{
|
|
|
user.setJpushId(param.getJpushId());
|
|
|
}
|
|
|
userService.insertFsUser(user);
|
|
|
+ // 新用户第一次使用 app:补写首次登录时间并发放积分(如符合条件)
|
|
|
+ userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
map.put("isNew", true);
|
|
|
map.put("unionid",unionid);
|
|
|
return R.ok(map);
|
|
|
@@ -312,11 +320,18 @@ public class AppLoginController extends AppBaseController{
|
|
|
}
|
|
|
}
|
|
|
int isFirstLogin = userNewTaskService.performTaskOne(user.getUserId());
|
|
|
+ int isFirstLoginApp = userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
+ if (isFirstLogin == 1 || isFirstLoginApp == 1) {
|
|
|
+ user = userService.selectFsUserByUserId(user.getUserId());
|
|
|
+ }
|
|
|
String token = jwtUtils.generateToken(user.getUserId());
|
|
|
redisCache.setCacheObject("userToken:" + user.getUserId(), token, 604800, TimeUnit.SECONDS);
|
|
|
map.put("token", token);
|
|
|
map.put("user", user);
|
|
|
map.put("isFirst",isFirstLogin);
|
|
|
+ map.put("isFirstLoginApp", isFirstLoginApp);
|
|
|
+ map.put("needFillFirstLoginRewardAddress",
|
|
|
+ user.getFirstLoginAppTime() != null && StringUtils.isBlank(user.getFirstLoginRewardAddress()));
|
|
|
return R.ok(map);
|
|
|
}catch (Exception e){
|
|
|
logger.error("zyp 登录失败:{}", e.getMessage());
|
|
|
@@ -352,11 +367,18 @@ public class AppLoginController extends AppBaseController{
|
|
|
return R.error("登录失败,账户被禁用");
|
|
|
}*/
|
|
|
int isFirstLogin = userNewTaskService.performTaskOne(user.getUserId());
|
|
|
+ int isFirstLoginApp = userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
+ if (isFirstLogin == 1 || isFirstLoginApp == 1) {
|
|
|
+ user = userService.selectFsUserByUserId(user.getUserId());
|
|
|
+ }
|
|
|
String token = jwtUtils.generateToken(user.getUserId());
|
|
|
redisCache.setCacheObject("userToken:" + user.getUserId(), token, 604800, TimeUnit.SECONDS);
|
|
|
map.put("token", token);
|
|
|
map.put("user", user);
|
|
|
map.put("isFirst",isFirstLogin);
|
|
|
+ map.put("isFirstLoginApp", isFirstLoginApp);
|
|
|
+ map.put("needFillFirstLoginRewardAddress",
|
|
|
+ user.getFirstLoginAppTime() != null && StringUtils.isBlank(user.getFirstLoginRewardAddress()));
|
|
|
return R.ok(map);
|
|
|
}catch (Exception e){
|
|
|
logger.error("zyp 苹果登录失败:{}", e.getMessage());
|
|
|
@@ -614,10 +636,17 @@ public class AppLoginController extends AppBaseController{
|
|
|
String token = jwtUtils.generateToken(user.getUserId());
|
|
|
redisCache.setCacheObject("userToken:" + user.getUserId(), token, 604800, TimeUnit.SECONDS);
|
|
|
int isFirstLogin = userNewTaskService.performTaskOne(user.getUserId());
|
|
|
+ int isFirstLoginApp = userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
+ if (isFirstLogin == 1 || isFirstLoginApp == 1) {
|
|
|
+ user = userService.selectFsUserByUserId(user.getUserId());
|
|
|
+ }
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
map.put("token", token);
|
|
|
map.put("user", user);
|
|
|
map.put("isFirst",isFirstLogin);
|
|
|
+ map.put("isFirstLoginApp", isFirstLoginApp);
|
|
|
+ map.put("needFillFirstLoginRewardAddress",
|
|
|
+ user.getFirstLoginAppTime() != null && StringUtils.isBlank(user.getFirstLoginRewardAddress()));
|
|
|
return R.ok(map);
|
|
|
}
|
|
|
|
|
|
@@ -686,6 +715,8 @@ public class AppLoginController extends AppBaseController{
|
|
|
}
|
|
|
//登录成功以后写入达人表
|
|
|
//fsUserTalentService.addFsUserTalent(fsUser.getUserId());
|
|
|
+ // case 1:视为首次使用 app,补写首次登录时间并发放奖励(如符合配置)
|
|
|
+ userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
return generateTokenAndReturn(user);
|
|
|
}else {
|
|
|
return R.ok().put("users",usersByPhone);
|
|
|
@@ -801,6 +832,9 @@ public class AppLoginController extends AppBaseController{
|
|
|
userMapper.updateFsUser(fsUser);
|
|
|
logger.info("zyp \n【手机加密】:{}",encryptPhone(param.getPhone()));
|
|
|
}
|
|
|
+ // 登录接口中:如果仍未绑定 unionId,则该流程仍视为“首次使用 app”
|
|
|
+ // 补写首次登录时间并发放奖励(如符合配置)
|
|
|
+ userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
return R.ok().put("isNew",true).put("phone",encryptPhone(param.getPhone()));
|
|
|
}
|
|
|
if (StringUtils.isNotEmpty(param.getJpushId())) {
|
|
|
@@ -815,6 +849,8 @@ public class AppLoginController extends AppBaseController{
|
|
|
}else {
|
|
|
return R.ok().put("users",usersByPhone);
|
|
|
}
|
|
|
+ // case 3:视为首次使用 app,补写首次登录时间并发放奖励(如符合配置)
|
|
|
+ userNewTaskService.performFirstLoginApp(user.getUserId());
|
|
|
return generateTokenAndReturn(user);
|
|
|
}
|
|
|
|
|
|
@@ -843,6 +879,8 @@ public class AppLoginController extends AppBaseController{
|
|
|
newUser.setJpushId(param.getJpushId());
|
|
|
}
|
|
|
userService.insertFsUser(newUser);
|
|
|
+ // 该注册/创建流程也视为首次使用 app:补写首次登录时间并发放积分(如符合条件)
|
|
|
+ userNewTaskService.performFirstLoginApp(newUser.getUserId());
|
|
|
return newUser;
|
|
|
}
|
|
|
|