Award points to new mini-program users

This commit is contained in:
王鹏
2026-09-16 17:11:46 +08:00
parent f4673f0613
commit a9789fe324

View File

@@ -53,6 +53,8 @@ import java.util.Date;
@Component
public class SysLoginService
{
private static final int NEW_USER_REGISTER_POINTS = 50;
@Autowired
private TokenService tokenService;
@@ -312,7 +314,24 @@ public class SysLoginService
sysUser.setUserName(openid);
sysUser.setNickName("微信用户");
sysUser.setOpenId(openid);
sysUserMapper.insertUser(sysUser);
if (sysUserMapper.insertUser(sysUser) != 1 || sysUser.getUserId() == null)
{
throw new ServiceException("新用户创建失败,请重试");
}
if (sysUserMapper.addIntegralByUserId(NEW_USER_REGISTER_POINTS, sysUser.getUserId()) != 1)
{
throw new ServiceException("新用户注册积分发放失败,请重试");
}
AppIntegralRecord registerReward = new AppIntegralRecord();
registerReward.setSource("新用户注册");
registerReward.setIsAdd(0L);
registerReward.setIntegralNumber((long) NEW_USER_REGISTER_POINTS);
registerReward.setUserId(sysUser.getUserId());
registerReward.setIntegralTime(new Date());
if (appIntegralRecordService.insertAppIntegralRecord(registerReward) != 1)
{
throw new ServiceException("新用户注册积分流水记录失败,请重试");
}
userName = openid;
}else {
userName = user.getUserName();