mirror of
https://github.com/chatopera/cosin.git
synced 2025-08-01 16:38:02 +08:00
#61 add myorgans into loginUser
This commit is contained in:
parent
2cdbc8a386
commit
0efb7615e0
@ -16,10 +16,26 @@
|
|||||||
*/
|
*/
|
||||||
package com.chatopera.cc.webim.web.handler;
|
package com.chatopera.cc.webim.web.handler;
|
||||||
|
|
||||||
import java.security.NoSuchAlgorithmException;
|
import com.chatopera.cc.core.UKDataContext;
|
||||||
import java.util.ArrayList;
|
import com.chatopera.cc.util.Menu;
|
||||||
import java.util.Date;
|
import com.chatopera.cc.util.UKTools;
|
||||||
import java.util.List;
|
import com.chatopera.cc.webim.service.cache.CacheHelper;
|
||||||
|
import com.chatopera.cc.webim.service.repository.OrganRepository;
|
||||||
|
import com.chatopera.cc.webim.service.repository.RoleAuthRepository;
|
||||||
|
import com.chatopera.cc.webim.service.repository.UserRepository;
|
||||||
|
import com.chatopera.cc.webim.service.repository.UserRoleRepository;
|
||||||
|
import com.chatopera.cc.webim.util.OnlineUserUtils;
|
||||||
|
import com.chatopera.cc.webim.web.model.*;
|
||||||
|
import org.apache.commons.lang.StringUtils;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.jpa.domain.Specification;
|
||||||
|
import org.springframework.stereotype.Controller;
|
||||||
|
import org.springframework.web.bind.annotation.RequestHeader;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import javax.persistence.criteria.CriteriaBuilder;
|
import javax.persistence.criteria.CriteriaBuilder;
|
||||||
import javax.persistence.criteria.CriteriaQuery;
|
import javax.persistence.criteria.CriteriaQuery;
|
||||||
@ -29,80 +45,68 @@ import javax.servlet.http.Cookie;
|
|||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
|
import java.security.NoSuchAlgorithmException;
|
||||||
import com.chatopera.cc.core.UKDataContext;
|
import java.util.ArrayList;
|
||||||
import com.chatopera.cc.util.Menu;
|
import java.util.Date;
|
||||||
import com.chatopera.cc.webim.service.cache.CacheHelper;
|
import java.util.List;
|
||||||
import com.chatopera.cc.webim.service.repository.OrganRepository;
|
|
||||||
import com.chatopera.cc.webim.service.repository.OrganRoleRepository;
|
|
||||||
import com.chatopera.cc.webim.service.repository.RoleAuthRepository;
|
|
||||||
import com.chatopera.cc.webim.service.repository.UserRoleRepository;
|
|
||||||
import com.chatopera.cc.webim.util.OnlineUserUtils;
|
|
||||||
import org.apache.commons.lang.StringUtils;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.data.jpa.domain.Specification;
|
|
||||||
import org.springframework.stereotype.Controller;
|
|
||||||
import org.springframework.web.bind.annotation.RequestHeader;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
|
||||||
|
|
||||||
import com.chatopera.cc.util.UKTools;
|
|
||||||
import com.chatopera.cc.webim.service.repository.UserRepository;
|
|
||||||
import com.chatopera.cc.webim.web.model.Organ;
|
|
||||||
import com.chatopera.cc.webim.web.model.OrganRole;
|
|
||||||
import com.chatopera.cc.webim.web.model.Role;
|
|
||||||
import com.chatopera.cc.webim.web.model.RoleAuth;
|
|
||||||
import com.chatopera.cc.webim.web.model.SystemConfig;
|
|
||||||
import com.chatopera.cc.webim.web.model.User;
|
|
||||||
import com.chatopera.cc.webim.web.model.UserRole;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
|
||||||
* @author UK
|
* @author UK
|
||||||
* @version 1.0.0
|
* @version 1.0.0
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
@Controller
|
@Controller
|
||||||
public class LoginController extends Handler{
|
public class LoginController extends Handler {
|
||||||
|
private final static Logger logger = LoggerFactory.getLogger(LoginController.class);
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserRepository userRepository;
|
private UserRepository userRepository;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private OrganRoleRepository organRoleRes ;
|
private UserRoleRepository userRoleRes;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserRoleRepository userRoleRes ;
|
private RoleAuthRepository roleAuthRes;
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private RoleAuthRepository roleAuthRes ;
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private OrganRepository organRepository;
|
private OrganRepository organRepository;
|
||||||
|
|
||||||
@RequestMapping(value = "/login" , method=RequestMethod.GET)
|
/**
|
||||||
@Menu(type = "apps" , subtype = "user" , access = true)
|
* 获取一个用户所拥有的所有部门ID
|
||||||
public ModelAndView login(HttpServletRequest request, HttpServletResponse response , @RequestHeader(value = "referer", required = false) String referer , @Valid String msg) throws NoSuchAlgorithmException {
|
*
|
||||||
ModelAndView view = request(super.createRequestPageTempletResponse("redirect:/"));
|
* @param user
|
||||||
if(request.getSession(true).getAttribute(UKDataContext.USER_SESSION_NAME) ==null){
|
*/
|
||||||
view = request(super.createRequestPageTempletResponse("/login"));
|
private void organs(final User user, final String organ) {
|
||||||
if(!StringUtils.isBlank(request.getParameter("referer"))){
|
if (organ == null)
|
||||||
referer = request.getParameter("referer") ;
|
return;
|
||||||
|
user.getMyorgans().add(organ);
|
||||||
|
List<Organ> y = organRepository.findByOrgiAndParent(user.getOrgi(), organ);
|
||||||
|
for (Organ x : y) {
|
||||||
|
organs(user, x.getId());
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(referer)){
|
}
|
||||||
view.addObject("referer", referer) ;
|
|
||||||
|
@RequestMapping(value = "/login", method = RequestMethod.GET)
|
||||||
|
@Menu(type = "apps", subtype = "user", access = true)
|
||||||
|
public ModelAndView login(HttpServletRequest request, HttpServletResponse response, @RequestHeader(value = "referer", required = false) String referer, @Valid String msg) throws NoSuchAlgorithmException {
|
||||||
|
ModelAndView view = request(super.createRequestPageTempletResponse("redirect:/"));
|
||||||
|
if (request.getSession(true).getAttribute(UKDataContext.USER_SESSION_NAME) == null) {
|
||||||
|
view = request(super.createRequestPageTempletResponse("/login"));
|
||||||
|
if (!StringUtils.isBlank(request.getParameter("referer"))) {
|
||||||
|
referer = request.getParameter("referer");
|
||||||
|
}
|
||||||
|
if (!StringUtils.isBlank(referer)) {
|
||||||
|
view.addObject("referer", referer);
|
||||||
}
|
}
|
||||||
Cookie[] cookies = request.getCookies();//这样便可以获取一个cookie数组
|
Cookie[] cookies = request.getCookies();//这样便可以获取一个cookie数组
|
||||||
if(cookies!=null) {
|
if (cookies != null) {
|
||||||
for(Cookie cookie : cookies){
|
for (Cookie cookie : cookies) {
|
||||||
if(cookie!=null && !StringUtils.isBlank(cookie.getName()) && !StringUtils.isBlank(cookie.getValue())){
|
if (cookie != null && !StringUtils.isBlank(cookie.getName()) && !StringUtils.isBlank(cookie.getValue())) {
|
||||||
if(cookie.getName().equals(UKDataContext.UKEFU_SYSTEM_COOKIES_FLAG)){
|
if (cookie.getName().equals(UKDataContext.UKEFU_SYSTEM_COOKIES_FLAG)) {
|
||||||
String flagid = UKTools.decryption(cookie.getValue());
|
String flagid = UKTools.decryption(cookie.getValue());
|
||||||
if(!StringUtils.isBlank(flagid)) {
|
if (!StringUtils.isBlank(flagid)) {
|
||||||
User user = userRepository.findById(flagid) ;
|
User user = userRepository.findById(flagid);
|
||||||
if(user!=null) {
|
if (user != null) {
|
||||||
view = this.processLogin(request, response, view, user, referer) ;
|
view = this.processLogin(request, response, view, user, referer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -110,118 +114,124 @@ public class LoginController extends Handler{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(msg)){
|
if (!StringUtils.isBlank(msg)) {
|
||||||
view.addObject("msg", msg) ;
|
view.addObject("msg", msg);
|
||||||
}
|
}
|
||||||
SystemConfig systemConfig = UKTools.getSystemConfig();
|
SystemConfig systemConfig = UKTools.getSystemConfig();
|
||||||
if(systemConfig!=null&&systemConfig.isEnableregorgi()) {
|
if (systemConfig != null && systemConfig.isEnableregorgi()) {
|
||||||
view.addObject("show", true);
|
view.addObject("show", true);
|
||||||
}
|
}
|
||||||
if(systemConfig != null){
|
if (systemConfig != null) {
|
||||||
view.addObject("systemConfig", systemConfig) ;
|
view.addObject("systemConfig", systemConfig);
|
||||||
}
|
}
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping(value = "/login" , method=RequestMethod.POST)
|
@RequestMapping(value = "/login", method = RequestMethod.POST)
|
||||||
@Menu(type = "apps" , subtype = "user" , access = true)
|
@Menu(type = "apps", subtype = "user", access = true)
|
||||||
public ModelAndView login(HttpServletRequest request, HttpServletResponse response , @Valid User user ,@Valid String referer,@Valid String sla) throws NoSuchAlgorithmException {
|
public ModelAndView login(HttpServletRequest request, HttpServletResponse response, @Valid User user, @Valid String referer, @Valid String sla) throws NoSuchAlgorithmException {
|
||||||
ModelAndView view = request(super.createRequestPageTempletResponse("redirect:/"));
|
ModelAndView view = request(super.createRequestPageTempletResponse("redirect:/"));
|
||||||
if(request.getSession(true).getAttribute(UKDataContext.USER_SESSION_NAME) ==null){
|
if (request.getSession(true).getAttribute(UKDataContext.USER_SESSION_NAME) == null) {
|
||||||
if(user!=null && user.getUsername()!=null){
|
if (user != null && user.getUsername() != null) {
|
||||||
final User loginUser = userRepository.findByUsernameAndPasswordAndDatastatus(user.getUsername() , UKTools.md5(user.getPassword()),false) ;
|
final User loginUser = userRepository.findByUsernameAndPasswordAndDatastatus(user.getUsername(), UKTools.md5(user.getPassword()), false);
|
||||||
if(loginUser!=null && !StringUtils.isBlank(loginUser.getId())){
|
if (loginUser != null && !StringUtils.isBlank(loginUser.getId())) {
|
||||||
view = this.processLogin(request, response, view, loginUser, referer) ;
|
view = this.processLogin(request, response, view, loginUser, referer);
|
||||||
if(!StringUtils.isBlank(sla) && sla.equals("1")) {
|
if (!StringUtils.isBlank(sla) && sla.equals("1")) {
|
||||||
Cookie flagid = new Cookie(UKDataContext.UKEFU_SYSTEM_COOKIES_FLAG,UKTools.encryption(loginUser.getId()));
|
Cookie flagid = new Cookie(UKDataContext.UKEFU_SYSTEM_COOKIES_FLAG, UKTools.encryption(loginUser.getId()));
|
||||||
flagid.setMaxAge(7*24*60*60);
|
flagid.setMaxAge(7 * 24 * 60 * 60);
|
||||||
response.addCookie(flagid);
|
response.addCookie(flagid);
|
||||||
// add authorization code for rest api
|
// add authorization code for rest api
|
||||||
String auth = UKTools.getUUID();
|
String auth = UKTools.getUUID();
|
||||||
CacheHelper.getApiUserCacheBean().put(auth, loginUser, UKDataContext.SYSTEM_ORGI);
|
CacheHelper.getApiUserCacheBean().put(auth, loginUser, UKDataContext.SYSTEM_ORGI);
|
||||||
response.addCookie((new Cookie("authorization", auth)));
|
response.addCookie((new Cookie("authorization", auth)));
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
view = request(super.createRequestPageTempletResponse("/login"));
|
view = request(super.createRequestPageTempletResponse("/login"));
|
||||||
if(!StringUtils.isBlank(referer)){
|
if (!StringUtils.isBlank(referer)) {
|
||||||
view.addObject("referer", referer) ;
|
view.addObject("referer", referer);
|
||||||
}
|
}
|
||||||
view.addObject("msg", "0") ;
|
view.addObject("msg", "0");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
SystemConfig systemConfig = UKTools.getSystemConfig();
|
SystemConfig systemConfig = UKTools.getSystemConfig();
|
||||||
if(systemConfig!=null&&systemConfig.isEnableregorgi()) {
|
if (systemConfig != null && systemConfig.isEnableregorgi()) {
|
||||||
view.addObject("show", true);
|
view.addObject("show", true);
|
||||||
}
|
}
|
||||||
if(systemConfig != null){
|
if (systemConfig != null) {
|
||||||
view.addObject("systemConfig", systemConfig) ;
|
view.addObject("systemConfig", systemConfig);
|
||||||
}
|
}
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
private ModelAndView processLogin(HttpServletRequest request, HttpServletResponse response , ModelAndView view ,final User loginUser , String referer) {
|
private ModelAndView processLogin(HttpServletRequest request, HttpServletResponse response, ModelAndView view, final User loginUser, String referer) {
|
||||||
if(loginUser!=null) {
|
if (loginUser != null) {
|
||||||
loginUser.setLogin(true);
|
loginUser.setLogin(true);
|
||||||
if(!StringUtils.isBlank(referer)){
|
if (!StringUtils.isBlank(referer)) {
|
||||||
view = request(super.createRequestPageTempletResponse("redirect:"+referer));
|
view = request(super.createRequestPageTempletResponse("redirect:" + referer));
|
||||||
}else {
|
} else {
|
||||||
view = request(super.createRequestPageTempletResponse("redirect:/"));
|
view = request(super.createRequestPageTempletResponse("redirect:/"));
|
||||||
}
|
}
|
||||||
//登录成功 判断是否进入多租户页面
|
//登录成功 判断是否进入多租户页面
|
||||||
SystemConfig systemConfig = UKTools.getSystemConfig();
|
SystemConfig systemConfig = UKTools.getSystemConfig();
|
||||||
if(systemConfig!=null&&systemConfig.isEnabletneant() && systemConfig.isTenantconsole() &&!loginUser.isSuperuser()) {
|
if (systemConfig != null && systemConfig.isEnabletneant() && systemConfig.isTenantconsole() && !loginUser.isSuperuser()) {
|
||||||
view = request(super.createRequestPageTempletResponse("redirect:/apps/tenant/index"));
|
view = request(super.createRequestPageTempletResponse("redirect:/apps/tenant/index"));
|
||||||
}
|
}
|
||||||
List<UserRole> userRoleList = userRoleRes.findByOrgiAndUser(loginUser.getOrgi(), loginUser);
|
List<UserRole> userRoleList = userRoleRes.findByOrgiAndUser(loginUser.getOrgi(), loginUser);
|
||||||
if(userRoleList!=null && userRoleList.size()>0){
|
if (userRoleList != null && userRoleList.size() > 0) {
|
||||||
for(UserRole userRole : userRoleList){
|
for (UserRole userRole : userRoleList) {
|
||||||
loginUser.getRoleList().add(userRole.getRole()) ;
|
loginUser.getRoleList().add(userRole.getRole());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//获取用户的角色权限,进行授权
|
// 获取用户部门以及下级部门
|
||||||
List<RoleAuth> roleAuthList = roleAuthRes.findAll(new Specification<RoleAuth>(){
|
organs(loginUser, loginUser.getOrgan()); // 添加部门到myorgans中
|
||||||
|
|
||||||
|
// 获取用户的角色权限,进行授权
|
||||||
|
List<RoleAuth> roleAuthList = roleAuthRes.findAll(new Specification<RoleAuth>() {
|
||||||
@Override
|
@Override
|
||||||
public Predicate toPredicate(Root<RoleAuth> root, CriteriaQuery<?> query,
|
public Predicate toPredicate(Root<RoleAuth> root, CriteriaQuery<?> query,
|
||||||
CriteriaBuilder cb) {
|
CriteriaBuilder cb) {
|
||||||
List<Predicate> list = new ArrayList<Predicate>();
|
List<Predicate> list = new ArrayList<Predicate>();
|
||||||
if(loginUser.getRoleList()!=null && loginUser.getRoleList().size() > 0){
|
if (loginUser.getRoleList() != null && loginUser.getRoleList().size() > 0) {
|
||||||
for(Role role : loginUser.getRoleList()){
|
for (Role role : loginUser.getRoleList()) {
|
||||||
list.add(cb.equal(root.get("roleid").as(String.class), role.getId())) ;
|
list.add(cb.equal(root.get("roleid").as(String.class), role.getId()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Predicate[] p = new Predicate[list.size()];
|
Predicate[] p = new Predicate[list.size()];
|
||||||
cb.and(cb.equal(root.get("orgi").as(String.class), loginUser.getOrgi())) ;
|
cb.and(cb.equal(root.get("orgi").as(String.class), loginUser.getOrgi()));
|
||||||
return cb.or(list.toArray(p));
|
return cb.or(list.toArray(p));
|
||||||
}}) ;
|
}
|
||||||
if(roleAuthList!=null) {
|
});
|
||||||
for(RoleAuth roleAuth:roleAuthList) {
|
|
||||||
|
if (roleAuthList != null) {
|
||||||
|
for (RoleAuth roleAuth : roleAuthList) {
|
||||||
loginUser.getRoleAuthMap().put(roleAuth.getDicvalue(), true);
|
loginUser.getRoleAuthMap().put(roleAuth.getDicvalue(), true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
loginUser.setLastlogintime(new Date());
|
loginUser.setLastlogintime(new Date());
|
||||||
if(!StringUtils.isBlank(loginUser.getId())){
|
if (!StringUtils.isBlank(loginUser.getId())) {
|
||||||
userRepository.save(loginUser) ;
|
userRepository.save(loginUser);
|
||||||
}
|
}
|
||||||
|
|
||||||
super.setUser(request, loginUser);
|
super.setUser(request, loginUser);
|
||||||
//当前用户 企业id为空 调到创建企业页面
|
//当前用户 企业id为空 调到创建企业页面
|
||||||
if(StringUtils.isBlank(loginUser.getOrgid())) {
|
if (StringUtils.isBlank(loginUser.getOrgid())) {
|
||||||
view = request(super.createRequestPageTempletResponse("redirect:/apps/organization/add.html"));
|
view = request(super.createRequestPageTempletResponse("redirect:/apps/organization/add.html"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return view ;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/logout")
|
@RequestMapping("/logout")
|
||||||
public String logout(HttpServletRequest request , HttpServletResponse response){
|
public String logout(HttpServletRequest request, HttpServletResponse response) {
|
||||||
request.getSession().removeAttribute(UKDataContext.USER_SESSION_NAME) ;
|
request.getSession().removeAttribute(UKDataContext.USER_SESSION_NAME);
|
||||||
Cookie[] cookies = request.getCookies();
|
Cookie[] cookies = request.getCookies();
|
||||||
if(cookies!=null) {
|
if (cookies != null) {
|
||||||
for(Cookie cookie : cookies){
|
for (Cookie cookie : cookies) {
|
||||||
if(cookie!=null && !StringUtils.isBlank(cookie.getName()) && !StringUtils.isBlank(cookie.getValue())){
|
if (cookie != null && !StringUtils.isBlank(cookie.getName()) && !StringUtils.isBlank(cookie.getValue())) {
|
||||||
if(cookie.getName().equals(UKDataContext.UKEFU_SYSTEM_COOKIES_FLAG)){
|
if (cookie.getName().equals(UKDataContext.UKEFU_SYSTEM_COOKIES_FLAG)) {
|
||||||
cookie.setMaxAge(0);
|
cookie.setMaxAge(0);
|
||||||
response.addCookie(cookie);
|
response.addCookie(cookie);
|
||||||
}
|
}
|
||||||
@ -231,30 +241,30 @@ public class LoginController extends Handler{
|
|||||||
return "redirect:/";
|
return "redirect:/";
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping(value = "/register" )
|
@RequestMapping(value = "/register")
|
||||||
@Menu(type = "apps" , subtype = "user" , access = true)
|
@Menu(type = "apps", subtype = "user", access = true)
|
||||||
public ModelAndView register(HttpServletRequest request, HttpServletResponse response,@Valid String msg) {
|
public ModelAndView register(HttpServletRequest request, HttpServletResponse response, @Valid String msg) {
|
||||||
ModelAndView view = request(super.createRequestPageTempletResponse("redirect:/"));
|
ModelAndView view = request(super.createRequestPageTempletResponse("redirect:/"));
|
||||||
if(request.getSession(true).getAttribute(UKDataContext.USER_SESSION_NAME) ==null){
|
if (request.getSession(true).getAttribute(UKDataContext.USER_SESSION_NAME) == null) {
|
||||||
view = request(super.createRequestPageTempletResponse("/register"));
|
view = request(super.createRequestPageTempletResponse("/register"));
|
||||||
}
|
}
|
||||||
if(!StringUtils.isBlank(msg)){
|
if (!StringUtils.isBlank(msg)) {
|
||||||
view.addObject("msg", msg) ;
|
view.addObject("msg", msg);
|
||||||
}
|
}
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/addAdmin")
|
@RequestMapping("/addAdmin")
|
||||||
@Menu(type = "apps" , subtype = "user",access=true)
|
@Menu(type = "apps", subtype = "user", access = true)
|
||||||
public ModelAndView addAdmin(HttpServletRequest request ,HttpServletResponse response,@Valid User user) {
|
public ModelAndView addAdmin(HttpServletRequest request, HttpServletResponse response, @Valid User user) {
|
||||||
String msg = "" ;
|
String msg = "";
|
||||||
msg = validUser(user);
|
msg = validUser(user);
|
||||||
if(!StringUtils.isBlank(msg)){
|
if (!StringUtils.isBlank(msg)) {
|
||||||
return request(super.createRequestPageTempletResponse("redirect:/register.html?msg="+msg));
|
return request(super.createRequestPageTempletResponse("redirect:/register.html?msg=" + msg));
|
||||||
}else{
|
} else {
|
||||||
user.setUname(user.getUsername());
|
user.setUname(user.getUsername());
|
||||||
user.setUsertype("0");
|
user.setUsertype("0");
|
||||||
if(!StringUtils.isBlank(user.getPassword())){
|
if (!StringUtils.isBlank(user.getPassword())) {
|
||||||
user.setPassword(UKTools.md5(user.getPassword()));
|
user.setPassword(UKTools.md5(user.getPassword()));
|
||||||
}
|
}
|
||||||
user.setOrgi(super.getOrgiByTenantshare(request));
|
user.setOrgi(super.getOrgiByTenantshare(request));
|
||||||
@ -263,13 +273,13 @@ public class LoginController extends Handler{
|
|||||||
}else {
|
}else {
|
||||||
user.setOrgid(UKDataContext.SYSTEM_ORGI);
|
user.setOrgid(UKDataContext.SYSTEM_ORGI);
|
||||||
}*/
|
}*/
|
||||||
userRepository.save(user) ;
|
userRepository.save(user);
|
||||||
OnlineUserUtils.clean(super.getOrgi(request));
|
OnlineUserUtils.clean(super.getOrgi(request));
|
||||||
|
|
||||||
}
|
}
|
||||||
ModelAndView view = this.processLogin(request, response, request(super.createRequestPageTempletResponse("redirect:/")), user, "");
|
ModelAndView view = this.processLogin(request, response, request(super.createRequestPageTempletResponse("redirect:/")), user, "");
|
||||||
//当前用户 企业id为空 调到创建企业页面
|
//当前用户 企业id为空 调到创建企业页面
|
||||||
if(StringUtils.isBlank(user.getOrgid())) {
|
if (StringUtils.isBlank(user.getOrgid())) {
|
||||||
view = request(super.createRequestPageTempletResponse("redirect:/apps/organization/add.html"));
|
view = request(super.createRequestPageTempletResponse("redirect:/apps/organization/add.html"));
|
||||||
}
|
}
|
||||||
return view;
|
return view;
|
||||||
@ -277,18 +287,18 @@ public class LoginController extends Handler{
|
|||||||
|
|
||||||
private String validUser(User user) {
|
private String validUser(User user) {
|
||||||
String msg = "";
|
String msg = "";
|
||||||
User tempUser = userRepository.findByUsernameAndDatastatus(user.getUsername(),false) ;
|
User tempUser = userRepository.findByUsernameAndDatastatus(user.getUsername(), false);
|
||||||
if(tempUser!=null) {
|
if (tempUser != null) {
|
||||||
msg = "username_exist";
|
msg = "username_exist";
|
||||||
return msg;
|
return msg;
|
||||||
}
|
}
|
||||||
tempUser = userRepository.findByEmailAndDatastatus(user.getEmail(),false) ;
|
tempUser = userRepository.findByEmailAndDatastatus(user.getEmail(), false);
|
||||||
if(tempUser!=null) {
|
if (tempUser != null) {
|
||||||
msg = "email_exist";
|
msg = "email_exist";
|
||||||
return msg;
|
return msg;
|
||||||
}
|
}
|
||||||
tempUser = userRepository.findByMobileAndDatastatus(user.getMobile(),false) ;
|
tempUser = userRepository.findByMobileAndDatastatus(user.getMobile(), false);
|
||||||
if(tempUser!=null) {
|
if (tempUser != null) {
|
||||||
msg = "mobile_exist";
|
msg = "mobile_exist";
|
||||||
return msg;
|
return msg;
|
||||||
}
|
}
|
||||||
|
@ -217,6 +217,7 @@ public class AppsController extends Handler {
|
|||||||
User sessionUser = super.getUser(request) ;
|
User sessionUser = super.getUser(request) ;
|
||||||
tempUser.setRoleList(sessionUser.getRoleList()) ;
|
tempUser.setRoleList(sessionUser.getRoleList()) ;
|
||||||
tempUser.setRoleAuthMap(sessionUser.getRoleAuthMap());
|
tempUser.setRoleAuthMap(sessionUser.getRoleAuthMap());
|
||||||
|
tempUser.setMyorgans(sessionUser.getMyorgans());
|
||||||
User u = tempUser;
|
User u = tempUser;
|
||||||
u.setOrgi(super.getOrgi(request));
|
u.setOrgi(super.getOrgi(request));
|
||||||
super.setUser(request, u);
|
super.setUser(request, u);
|
||||||
|
@ -17,11 +17,7 @@
|
|||||||
package com.chatopera.cc.webim.web.model;
|
package com.chatopera.cc.webim.web.model;
|
||||||
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Date;
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import javax.persistence.Column;
|
import javax.persistence.Column;
|
||||||
import javax.persistence.Entity;
|
import javax.persistence.Entity;
|
||||||
@ -104,6 +100,7 @@ public class User implements java.io.Serializable{
|
|||||||
private int fans; //粉丝
|
private int fans; //粉丝
|
||||||
private int follows; //关注
|
private int follows; //关注
|
||||||
private int integral; //积分
|
private int integral; //积分
|
||||||
|
private HashSet<String> myorgans = new HashSet<>();
|
||||||
private List<Role> roleList = new ArrayList<Role>();
|
private List<Role> roleList = new ArrayList<Role>();
|
||||||
private Map<String ,Object> roleAuthMap = new HashMap<String ,Object>();
|
private Map<String ,Object> roleAuthMap = new HashMap<String ,Object>();
|
||||||
|
|
||||||
@ -517,4 +514,13 @@ public class User implements java.io.Serializable{
|
|||||||
public void setOrdertype(String ordertype) {
|
public void setOrdertype(String ordertype) {
|
||||||
this.ordertype = ordertype;
|
this.ordertype = ordertype;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Transient
|
||||||
|
public HashSet<String> getMyorgans() {
|
||||||
|
return myorgans;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMyorgans(HashSet<String> myorgans) {
|
||||||
|
this.myorgans = myorgans;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user