|
|
@@ -63,7 +63,6 @@ public class SecurityController {
|
|
|
private SigninLogService signinLogService;
|
|
|
@Autowired
|
|
|
private UserLoginTimeDao userLoginTimeDao;
|
|
|
-
|
|
|
@Autowired
|
|
|
private EnterpriseService enterpriseService;
|
|
|
|
|
|
@@ -356,27 +355,43 @@ public class SecurityController {
|
|
|
String callback =request.getParameter("jsoncallback");
|
|
|
response.setContentType("text/html;charset=UTF-8");
|
|
|
if (userAccount != null && userAccount.getMobile() != null) {
|
|
|
- SSOToken tk = new SSOToken();
|
|
|
- tk.setUid(userAccount.getMobile());
|
|
|
- tk.setTime(System.currentTimeMillis());
|
|
|
- tk.setData(JSON.toJSONString(userAccount));
|
|
|
- if (null != maxage) {
|
|
|
- request.setAttribute("sso_cookie_maxage", maxage);
|
|
|
- }
|
|
|
- SSOHelper.setSSOCookie(request, response, tk, true);
|
|
|
- response.setHeader("P3P","CP='IDCDSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'");
|
|
|
+ SSOToken tk = new SSOToken();
|
|
|
+ tk.setUid(userAccount.getMobile());
|
|
|
+ tk.setTime(System.currentTimeMillis());
|
|
|
+ tk.setData(JSON.toJSONString(userAccount));
|
|
|
+ if (null != maxage) {
|
|
|
+ request.setAttribute("sso_cookie_maxage", maxage);
|
|
|
+ }
|
|
|
+ SSOHelper.setSSOCookie(request, response, tk, true);
|
|
|
+ response.setHeader("P3P","CP='IDCDSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'");
|
|
|
|
|
|
- response.setHeader("P3P","CP=\"CURaADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSPCOR\"");
|
|
|
- User user = getUserByToken(tk);
|
|
|
- if (user != null) {
|
|
|
- /*if (!user.getUserPwd().equals(FlexJsonUtils.fromJson(tk.getData(), com.uas.account.entity.User.class).getPassword())){
|
|
|
- return "successCallback({success:'0'})";
|
|
|
- }*/
|
|
|
- user.setIp(AgentUtils.getIp(request));
|
|
|
- request.getSession().setAttribute("user", user);
|
|
|
- SystemSession.setUser(user);
|
|
|
- log(request, user);
|
|
|
- }
|
|
|
+ response.setHeader("P3P","CP=\"CURaADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSPCOR\"");
|
|
|
+ User user = getUserByToken(tk);
|
|
|
+ User currentUser = null;
|
|
|
+ if (userAccount.getMobile() != null) {
|
|
|
+ // UID表示所有系统公认的唯一标识,这里统一使用手机号
|
|
|
+ currentUser = userService.findUserByUserTel(userAccount.getMobile());
|
|
|
+ } else if (userAccount.getUserUU() != null) {
|
|
|
+ // dialectUID表示client系统自己的唯一标识,比如user_uu,手机号没设置的情况下使用
|
|
|
+ currentUser = userService.findUserByUserUU(userAccount.getUserUU());
|
|
|
+ } else {
|
|
|
+ logger.error(String.format("invalid user %s, please set uid or dialectUID", userAccount.getVipName()));
|
|
|
+ }
|
|
|
+ if (userAccount.getLastLoginTime() != null) {
|
|
|
+ currentUser.setLastLoginTime(userAccount.getLastLoginTime().getTime());
|
|
|
+ }
|
|
|
+ if (currentUser != null) {
|
|
|
+ userDao.save(currentUser);
|
|
|
+ }
|
|
|
+ if (user != null) {
|
|
|
+ /*if (!user.getUserPwd().equals(FlexJsonUtils.fromJson(tk.getData(), com.uas.account.entity.User.class).getPassword())){
|
|
|
+ return "successCallback({success:'0'})";
|
|
|
+ }*/
|
|
|
+ user.setIp(AgentUtils.getIp(request));
|
|
|
+ request.getSession().setAttribute("user", user);
|
|
|
+ SystemSession.setUser(user);
|
|
|
+ log(request, user);
|
|
|
+ }
|
|
|
|
|
|
return "successCallback({success:'1'})";
|
|
|
}
|
|
|
@@ -468,6 +483,7 @@ public class SecurityController {
|
|
|
logger.error(String.format("invalid user %s, please set uid or dialectUID", tokenUser.getVipName()));
|
|
|
}
|
|
|
if (authedUser != null && authedUser.getEnterprises() != null) {
|
|
|
+
|
|
|
// 企业资料在client系统自己的唯一标识,比如en_uu
|
|
|
if (tokenUser.getSpaceUU() != null) {
|
|
|
// 如果企业不存在则更新该企业
|