Commit 954d7f48 authored by 唐峰's avatar 唐峰

注册登录神策上报改为异步,去掉定时删除注销用户记录操作

parent 21eb104a
......@@ -24,6 +24,9 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.UUID;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
* 极光一键登录
......@@ -43,6 +46,9 @@ public class SMSDirectJiLoginStrategy implements LoginStrategy {
private final IUserRegisterService userRegisterService;
private ExecutorService executorService = Executors.newFixedThreadPool(10);
public SMSDirectJiLoginStrategy(ILockIpv4Service lockIpv4Service, IUserService userService, ISessionService sessionService, ISensorsAnalytics iSensorsAnalytics, JiGuangRemoteService jiGuangRemoteService, IUserRegisterService userRegisterService) {
this.lockIpv4Service = lockIpv4Service;
this.userService = userService;
......@@ -95,7 +101,43 @@ public class SMSDirectJiLoginStrategy implements LoginStrategy {
}
}
//上报神策
if (scIsOpen) {
reportSensorsAnalytics(user, sessionStruct);
}
LoginProperties loginProperties = new LoginProperties(1, sessionStruct.getRegisteredFrom(), sessionStruct.getTenantId());
AuthBean authBean = sessionService.createSession(user, loginProperties, LoginType.AUTHLOGIN.ordinal(), sessionStruct.getTenantId(), false);
if (authBean != null) {
loginBean.setToken(authBean.getToken());
loginBean.setPhoneNo(authBean.getPhoneNo());
loginBean.setUuid(authBean.getUuid());
loginBean.setHasPassword(authBean.isHasPassword());
loginBean.setUserId(user.getId());
loginBean.setTenantId(user.getTenantId());
}
loginBean.setRegister(register);
lockIpv4Service.unLockPhone(smsLoginParam.getPhone());
return loginBean;
}
@Override
public BaseLoginParam checkParam(LoginReq loginReq) {
SMSDirectLoginParam param = loginReq.getData().toJavaObject(SMSDirectLoginParam.class);
param.setClientType(loginReq.getClientType());
validator.validate(param);
return param;
}
/**
* 上报神策
*/
private void reportSensorsAnalytics(User user, SessionStruct sessionStruct) {
executorService.execute(new Runnable() {
@Override
public void run() {
try {
if (!StringUtils.isEmpty(sessionStruct.getScDeviceId())) {
iSensorsAnalytics.trackSignUp(user.getUuid(), sessionStruct.getScDeviceId());
......@@ -123,29 +165,6 @@ public class SMSDirectJiLoginStrategy implements LoginStrategy {
log.info("神策埋点出现问题", e);
}
}
LoginProperties loginProperties = new LoginProperties(1, sessionStruct.getRegisteredFrom(), sessionStruct.getTenantId());
AuthBean authBean = sessionService.createSession(user, loginProperties, LoginType.AUTHLOGIN.ordinal(), sessionStruct.getTenantId(), false);
if (authBean != null) {
loginBean.setToken(authBean.getToken());
loginBean.setPhoneNo(authBean.getPhoneNo());
loginBean.setUuid(authBean.getUuid());
loginBean.setHasPassword(authBean.isHasPassword());
loginBean.setUserId(user.getId());
loginBean.setTenantId(user.getTenantId());
}
loginBean.setRegister(register);
lockIpv4Service.unLockPhone(smsLoginParam.getPhone());
return loginBean;
}
@Override
public BaseLoginParam checkParam(LoginReq loginReq) {
SMSDirectLoginParam param = loginReq.getData().toJavaObject(SMSDirectLoginParam.class);
param.setClientType(loginReq.getClientType());
validator.validate(param);
return param;
});
}
}
......@@ -14,7 +14,10 @@ public class DeregisterTimeJobHandler {
@Autowired
private IUserDeregisterService userDeregisterService;
@XxlJob(value = "DeregisterTimeJobHandler")
/**
* 为什么要删除呢?可以不删除
*/
//@XxlJob(value = "DeregisterTimeJobHandler")
public void execute() throws Exception {
userDeregisterService.executeTask();
XxlJobHelper.handleSuccess();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment