diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/service/impl/ResourceServiceImpl.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/service/impl/ResourceServiceImpl.java index eb1615990dac4d3267236c76c5a95d4325d6e953..15c6d9e7fdc76b8a84a84fc97f124de5c5d04687 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/service/impl/ResourceServiceImpl.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/service/impl/ResourceServiceImpl.java @@ -15,7 +15,6 @@ import com.mortals.xhx.base.system.resource.dao.ResourceDao; import com.mortals.xhx.base.system.resource.model.ResourceEntity; import com.mortals.xhx.base.system.resource.model.ResourceQuery; import com.mortals.xhx.base.system.resource.service.ResourceService; - import org.springframework.stereotype.Service; import java.util.HashSet; diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/web/ResourceController.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/web/ResourceController.java index 191bd918690ff3e7459d74685d9a396d8747a351..c75ef9606437b03ee9b3073d14f3c660256e48ff 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/web/ResourceController.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/web/ResourceController.java @@ -1,27 +1,22 @@ package com.mortals.xhx.base.system.resource.web; -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - +import com.alibaba.fastjson.JSONObject; import com.mortals.framework.common.IBaseEnum; import com.mortals.framework.common.code.UserType; +import com.mortals.framework.model.Context; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; +import com.mortals.xhx.base.system.resource.model.ResourceEntity; +import com.mortals.xhx.base.system.resource.service.ResourceService; +import com.mortals.xhx.common.code.AuthType; +import com.mortals.xhx.common.code.SourceType; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import com.alibaba.fastjson.JSONObject; -import com.mortals.framework.model.Context; -import com.mortals.framework.web.BaseCRUDJsonMappingController; -import com.mortals.xhx.base.system.resource.model.ResourceEntity; -import com.mortals.xhx.base.system.resource.service.ResourceService; -import com.mortals.xhx.common.code.AuthType; -import com.mortals.xhx.common.code.SourceType; +import java.util.HashMap; +import java.util.Map; /** * 资源信息 @@ -35,7 +30,6 @@ import com.mortals.xhx.common.code.SourceType; public class ResourceController extends BaseCRUDJsonBodyMappingController { public ResourceController(){ - super.setFormClass(ResourceForm.class); super.setModuleDesc("资源信息"); } diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/web/ResourceForm.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/web/ResourceForm.java deleted file mode 100644 index a03f1e3b9dae56d9a9fd30854ba09ee1721f77c4..0000000000000000000000000000000000000000 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/resource/web/ResourceForm.java +++ /dev/null @@ -1,47 +0,0 @@ -/** -* 文件:ResourceForm.java -* 版本:1.0.0 -* 日期: -* Copyright ® -* All right reserved. -*/ -package com.mortals.xhx.base.system.resource.web; - - -import com.mortals.framework.web.BaseCRUDFormLong; -import com.mortals.xhx.base.system.resource.model.ResourceEntity; -import com.mortals.xhx.base.system.resource.model.ResourceQuery; - -/** - *

Title: 资源信息

- *

Description: ResourceForm

- *

Copyright: Copyright ®

- *

Company:

- * @author - * @version 1.0.0 - */ -public class ResourceForm extends BaseCRUDFormLong { - private ResourceEntity entity = new ResourceEntity(); - private ResourceQuery query = new ResourceQuery(); - public ResourceForm(){ - - } - - @Override - public ResourceEntity getEntity() { - return entity; - } - - public void setEntity(ResourceEntity entity) { - this.entity = entity; - } - - @Override - public ResourceQuery getQuery() { - return query; - } - - public void setQuery(ResourceQuery query) { - this.query = query; - } -} \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleAuthServiceImpl.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleAuthServiceImpl.java index 8beaea0d99a98569f8d23fd78fddf465e8f41863..55cc76f1728d385cdf3e5d0971d7c3ed6a9590a8 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleAuthServiceImpl.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleAuthServiceImpl.java @@ -1,37 +1,44 @@ /** -* 文件:RoleAuthServiceImpl.java -* 版本:1.0.0 -* 日期: -* Copyright ® -* All right reserved. -*/ + * 文件:RoleAuthServiceImpl.java + * 版本:1.0.0 + * 日期: + * Copyright ® + * All right reserved. + */ package com.mortals.xhx.base.system.role.service.impl; +import com.mortals.framework.service.ICacheService; import com.mortals.framework.service.impl.AbstractCRUDServiceImpl; +import com.mortals.framework.util.DataUtil; +import com.mortals.xhx.base.system.resource.service.ResourceService; import com.mortals.xhx.base.system.role.dao.RoleAuthDao; import com.mortals.xhx.base.system.role.model.RoleAuthEntity; import com.mortals.xhx.base.system.role.model.RoleAuthQuery; import com.mortals.xhx.base.system.role.service.RoleAuthService; - +import com.mortals.xhx.common.key.RedisKey; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; + +import static com.mortals.xhx.common.utils.MenuEncodeUtil.generateMenuUrlCode; /** *

Title: 角色资源权限

*

Description: RoleAuthServiceImpl service接口

*

Copyright: Copyright ®

*

Company:

- * @author + * @author * @version 1.0.0 */ @Service("roleAuthService") -public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl implements RoleAuthService { +public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl implements RoleAuthService { + @Autowired + private ICacheService cacheService; + @Autowired + private ResourceService resourceService; @Override public void doDistributionSource(RoleAuthQuery query) { @@ -49,6 +56,18 @@ public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl hkeys = cacheService.hkeys(RedisKey.KEY_USER_MENU_CACHE); + for (String userId : hkeys) { + Set urls = resourceService.findUrlSetByUserId(DataUtil.converStr2Long(userId, 0L)); + String menuUrlCode = generateMenuUrlCode(urls); + cacheService.hset(RedisKey.KEY_USER_MENU_CACHE, userId, menuUrlCode); + } + } + } \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleServiceImpl.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleServiceImpl.java index 36c6c9a088f149ec4c1602005f132fb050531342..29028b8a1cc707939b570cac5cd6f7dd6179b8ba 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleServiceImpl.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleServiceImpl.java @@ -1,10 +1,10 @@ /** -* 文件:RoleServiceImpl.java -* 版本:1.0.0 -* 日期: -* Copyright ® -* All right reserved. -*/ + * 文件:RoleServiceImpl.java + * 版本:1.0.0 + * 日期: + * Copyright ® + * All right reserved. + */ package com.mortals.xhx.base.system.role.service.impl; @@ -15,7 +15,6 @@ import com.mortals.xhx.base.system.role.dao.RoleDao; import com.mortals.xhx.base.system.role.model.*; import com.mortals.xhx.base.system.role.service.RoleAuthService; import com.mortals.xhx.base.system.role.service.RoleService; - import com.mortals.xhx.base.system.role.service.RoleUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -27,7 +26,7 @@ import java.util.Arrays; *

Description: RoleServiceImpl service接口

*

Copyright: Copyright ®

*

Company:

- * @author + * @author * @version 1.0.0 */ @Service("roleService") @@ -56,5 +55,5 @@ public class RoleServiceImpl extends AbstractCRUDServiceImplTitle: 角色用户

*

Description: RoleUserServiceImpl service接口

*

Copyright: Copyright ®

*

Company:

- * @author + * @author * @version 1.0.0 */ @Service("roleUserService") -public class RoleUserServiceImpl extends AbstractCRUDServiceImpl implements RoleUserService { +public class RoleUserServiceImpl extends AbstractCRUDServiceImpl implements RoleUserService { + + @Autowired + private ICacheService cacheService; + @Autowired + private ResourceService resourceService; @Override public void doDistributionUser(RoleUserQuery query) { @@ -50,6 +60,7 @@ public class RoleUserServiceImpl extends AbstractCRUDServiceImpl hkeys = cacheService.hkeys(RedisKey.KEY_USER_MENU_CACHE); + for (String userId : hkeys) { + Set urls = resourceService.findUrlSetByUserId(DataUtil.converStr2Long(userId, 0L)); + String menuUrlCode = generateMenuUrlCode(urls); + cacheService.hset(RedisKey.KEY_USER_MENU_CACHE, userId, menuUrlCode); + } + } } \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthController.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthController.java index 6eab8dd48cdcce7c3e39eb888da1f06b1a1462e0..a983f7c2fbc480f7a6304e591dcbe2081059a443 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthController.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthController.java @@ -3,20 +3,15 @@ package com.mortals.xhx.base.system.role.web; import com.alibaba.fastjson.JSONObject; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; +import com.mortals.xhx.base.system.role.model.RoleAuthEntity; import com.mortals.xhx.base.system.role.model.RoleAuthQuery; +import com.mortals.xhx.base.system.role.service.RoleAuthService; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import com.mortals.framework.web.BaseCRUDJsonMappingController; -import com.mortals.xhx.base.system.role.model.RoleAuthEntity; -import com.mortals.xhx.base.system.role.service.RoleAuthService; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - /** * 角色资源权限 * @@ -29,7 +24,6 @@ import javax.servlet.http.HttpServletResponse; public class RoleAuthController extends BaseCRUDJsonBodyMappingController { public RoleAuthController() { - super.setFormClass(RoleAuthForm.class); super.setModuleDesc("角色资源权限"); } diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthForm.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthForm.java deleted file mode 100644 index 59730f336e9f7fbb43eb19e4b4d9faa0d2596d93..0000000000000000000000000000000000000000 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthForm.java +++ /dev/null @@ -1,47 +0,0 @@ -/** -* 文件:RoleAuthForm.java -* 版本:1.0.0 -* 日期: -* Copyright ® -* All right reserved. -*/ -package com.mortals.xhx.base.system.role.web; - - -import com.mortals.framework.web.BaseCRUDFormLong; -import com.mortals.xhx.base.system.role.model.RoleAuthEntity; -import com.mortals.xhx.base.system.role.model.RoleAuthQuery; - -/** - *

Title: 角色资源权限

- *

Description: RoleAuthForm

- *

Copyright: Copyright ®

- *

Company:

- * @author - * @version 1.0.0 - */ -public class RoleAuthForm extends BaseCRUDFormLong { - private RoleAuthEntity entity = new RoleAuthEntity(); - private RoleAuthQuery query = new RoleAuthQuery(); - public RoleAuthForm(){ - - } - - @Override - public RoleAuthEntity getEntity() { - return entity; - } - - public void setEntity(RoleAuthEntity entity) { - this.entity = entity; - } - - @Override - public RoleAuthQuery getQuery() { - return query; - } - - public void setQuery(RoleAuthQuery query) { - this.query = query; - } -} \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleController.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleController.java index a8f342b57713ded8ef4c29e97ea0171b3bb591f8..f491e678b00e3a11efe463778aa9b443167619fc 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleController.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleController.java @@ -5,21 +5,18 @@ import com.alibaba.fastjson.JSONObject; import com.mortals.framework.common.IBaseEnum; import com.mortals.framework.common.code.UserType; import com.mortals.framework.model.Context; - import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; -import com.mortals.framework.web.BasePhpCRUDJsonMappingController; -import com.mortals.xhx.base.system.role.model.RoleQuery; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; -import com.mortals.framework.web.BaseCRUDJsonMappingController; import com.mortals.xhx.base.system.role.model.RoleEntity; import com.mortals.xhx.base.system.role.model.RoleUserEntity; import com.mortals.xhx.base.system.role.service.RoleService; import com.mortals.xhx.base.system.role.service.RoleUserService; import com.mortals.xhx.common.code.RoleType; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -39,7 +36,6 @@ public class RoleController extends BaseCRUDJsonBodyMappingControllerTitle: 角色信息

- *

Description: RoleForm

- *

Copyright: Copyright ®

- *

Company:

- * @author - * @version 1.0.0 - */ -public class RoleForm extends BaseCRUDFormLong { - private RoleEntity entity = new RoleEntity(); - private RoleQuery query = new RoleQuery(); - /** 用户ID */ - private Long userId; - public RoleForm(){ - - } - - @Override - public RoleEntity getEntity() { - return entity; - } - - public void setEntity(RoleEntity entity) { - this.entity = entity; - } - - @Override - public RoleQuery getQuery() { - return query; - } - - public void setQuery(RoleQuery query) { - this.query = query; - } - - public Long getUserId() { - return userId; - } - - public void setUserId(Long userId) { - this.userId = userId; - } - -} \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleUserController.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleUserController.java index b182860a4460fb5ebe608937962fc024f5fb03ae..63feafc8d7134265b39c87306f3e78a461002f73 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleUserController.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleUserController.java @@ -7,26 +7,22 @@ import com.mortals.framework.ap.SysConstains; import com.mortals.framework.exception.AppException; import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.Context; - import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; -import com.mortals.xhx.base.system.role.model.RoleUserQuery; -import org.apache.commons.beanutils.MethodUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; -import com.mortals.framework.web.BaseCRUDJsonMappingController; import com.mortals.xhx.base.system.role.model.RoleEntity; import com.mortals.xhx.base.system.role.model.RoleUserEntity; +import com.mortals.xhx.base.system.role.model.RoleUserQuery; import com.mortals.xhx.base.system.role.service.RoleService; import com.mortals.xhx.base.system.role.service.RoleUserService; import com.mortals.xhx.base.system.user.model.UserEntity; import com.mortals.xhx.base.system.user.model.UserQuery; import com.mortals.xhx.base.system.user.service.UserService; +import org.apache.commons.beanutils.MethodUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -49,7 +45,6 @@ public class RoleUserController extends BaseCRUDJsonBodyMappingControllerTitle: 角色用户

- *

Description: RoleUserForm

- *

Copyright: Copyright ®

- *

Company:

- * @author - * @version 1.0.0 - */ -public class RoleUserForm extends BaseCRUDFormLong { - private RoleUserEntity entity = new RoleUserEntity(); - private RoleUserQuery query = new RoleUserQuery(); - public RoleUserForm(){ - - } - - @Override - public RoleUserEntity getEntity() { - return entity; - } - - public void setEntity(RoleUserEntity entity) { - this.entity = entity; - } - - @Override - public RoleUserQuery getQuery() { - return query; - } - - public void setQuery(RoleUserQuery query) { - this.query = query; - } -} \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/user/model/UserEntityExt.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/user/model/UserEntityExt.java index 204419c46c09c8a2bcf7fa7440d176673fde6b9b..18acc5f8728e34d9318e614d52d94f5ef78ab9a5 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/user/model/UserEntityExt.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/user/model/UserEntityExt.java @@ -35,8 +35,10 @@ public class UserEntityExt extends BaseEntityLong { * 过期时间 */ private Long expireTime; - - + /** + * 所属区域code,多个逗号分隔 + */ + private String areaCodes; } \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java index 741268692c12c00895ba1c6dce9a146e44ce24c8..6ccc59927f31e603590889d29bd5f70f69427fdb 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java @@ -10,7 +10,7 @@ package com.mortals.xhx.base.system.user.service; import com.mortals.framework.exception.AppException; import com.mortals.framework.model.Result; -import com.mortals.framework.service.ICRUDService; +import com.mortals.framework.service.ICRUDCacheService; import com.mortals.framework.service.IUser; import com.mortals.xhx.base.system.menu.model.MenuEntity; import com.mortals.xhx.base.system.user.dao.UserDao; @@ -28,7 +28,7 @@ import java.util.Set; * @version 1.0.0 */ -public interface UserService extends ICRUDService { +public interface UserService extends ICRUDCacheService { /** * 用户登录 * @@ -38,7 +38,7 @@ public interface UserService extends ICRUDService { * @return * @throws AppException */ - UserEntity doLogin(String loginName, String password, String loginIp) throws AppException; + public UserEntity doLogin(String loginName, String password, String loginIp) throws AppException; /** * 校验用户名与密码是否正确 @@ -48,7 +48,7 @@ public interface UserService extends ICRUDService { * @return * @throws AppException */ - UserEntity doCheckUser(String loginName, String password) throws AppException; + public UserEntity doCheckUser(String loginName, String password) throws AppException; /** * 检查用户是否存在 @@ -57,7 +57,7 @@ public interface UserService extends ICRUDService { * @param userId 密码 * @return */ - boolean existUser(String loginName, Long userId) throws AppException; + public boolean existUser(String loginName, Long userId) throws AppException; /** * 通过登录用户获取菜单功能权限 @@ -65,7 +65,7 @@ public interface UserService extends ICRUDService { * @param user * @return */ - List findOutlookBarList(IUser user); + public List findOutlookBarList(IUser user); /** * 查询用户所有有权限的菜单ID @@ -73,7 +73,7 @@ public interface UserService extends ICRUDService { * @param userEntity * @return */ - Set findAllAuthIds(UserEntity userEntity) throws AppException; + public Set findAllAuthIds(UserEntity userEntity) throws AppException; /** * 查询用户记录 @@ -85,7 +85,7 @@ public interface UserService extends ICRUDService { * @return * @throws AppException */ - Result find(Long platformId, UserEntity params, int currPage, int prePageResult) throws AppException; + public Result find(Long platformId, UserEntity params, int currPage, int prePageResult) throws AppException; /** * 为客户创建用户 @@ -100,7 +100,7 @@ public interface UserService extends ICRUDService { * @return * @throws AppException */ - UserEntity createUser(IUser currUser, Long customerId, String customerName, String loginName, String password, + public UserEntity createUser(IUser currUser, Long customerId, String customerName, String loginName, String password, String userName, String mobile) throws AppException; /** @@ -112,10 +112,9 @@ public interface UserService extends ICRUDService { * @return * @throws AppException */ - boolean updateUserPwd(String loginName, String oldPwd, String newPwd) throws AppException; + public boolean updateUserPwd(String loginName, String oldPwd, String newPwd) throws AppException; - - UserDao getUserDao(); + UserDao getUserDao(); } \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java b/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java index cc0cf32509c85d23a759937c6b82cc7a7aa53129..53a12b0df26b589a267dacce58df6b05e570a58d 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java +++ b/fill-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java @@ -15,41 +15,35 @@ import com.mortals.framework.model.Context; import com.mortals.framework.model.PageInfo; import com.mortals.framework.model.Result; import com.mortals.framework.service.IUser; -import com.mortals.framework.service.impl.AbstractCRUDServiceImpl; +import com.mortals.framework.service.impl.AbstractCRUDCacheServiceImpl; import com.mortals.framework.util.SecurityUtil; import com.mortals.framework.util.StringUtils; import com.mortals.xhx.base.system.menu.model.MenuEntity; import com.mortals.xhx.base.system.menu.service.MenuService; import com.mortals.xhx.base.system.resource.model.ResourceEntity; import com.mortals.xhx.base.system.resource.service.ResourceService; +import com.mortals.xhx.base.system.role.dao.RoleUserDao; import com.mortals.xhx.base.system.role.model.RoleUserEntity; -import com.mortals.xhx.base.system.role.model.RoleUserQuery; -import com.mortals.xhx.base.system.role.service.RoleService; -import com.mortals.xhx.base.system.role.service.RoleUserService; import com.mortals.xhx.base.system.user.dao.UserDao; import com.mortals.xhx.base.system.user.model.UserEntity; import com.mortals.xhx.base.system.user.model.UserQuery; import com.mortals.xhx.base.system.user.service.UserService; - - +import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.util.ObjectUtils; import java.util.*; -import java.util.stream.Collectors; /** *

Title: 用户信息

*

Description: UserServiceImpl service接口

*

Copyright: Copyright ®

*

Company:

- * * @author * @version 1.0.0 */ @Service("userService") -public class UserServiceImpl extends AbstractCRUDServiceImpl implements UserService { +public class UserServiceImpl extends AbstractCRUDCacheServiceImpl implements UserService { @Autowired @@ -57,9 +51,14 @@ public class UserServiceImpl extends AbstractCRUDServiceImpl idList = Arrays.asList(entity.getRoleIds().split(",")).stream().map(Long::parseLong).collect(Collectors.toList()); - roleUserQuery.setRoleIdList(idList); - roleUserService.doDistributionRole(roleUserQuery); + protected void saveAfter(UserEntity entity, Context context) throws AppException { + if(CollectionUtils.isNotEmpty(entity.getRoleIds())){ + List roleUserEntityList = new ArrayList<>(); + entity.getRoleIds().stream().forEach(item->{ + RoleUserEntity roleUserEntity = new RoleUserEntity(); + roleUserEntity.setUserId(entity.getId()); + roleUserEntity.setRoleId(item); + roleUserEntityList.add(roleUserEntity); + }); + roleUserDao.insertBatch(roleUserEntityList); } } @Override - protected void saveAfter(UserEntity entity, Context context) throws AppException { - //更新角色 - if(!ObjectUtils.isEmpty(entity.getId())&&entity.getId().longValue() != SysConstains.ADMIN_ID &&!ObjectUtils.isEmpty(entity.getRoleIds())){ - RoleUserQuery roleUserQuery = new RoleUserQuery(); - roleUserQuery.setUserId(entity.getId()); - List idList = Arrays.asList(entity.getRoleIds().split(",")).stream().map(Long::parseLong).collect(Collectors.toList()); - roleUserQuery.setRoleIdList(idList); - roleUserService.doDistributionRole(roleUserQuery); + protected void updateBefore(UserEntity entity, Context context) throws AppException { + if (entity.getId().longValue() == SysConstains.ADMIN_ID && !context.getUser().isAdmin()) { + throw new AppException("你没有权限执行该操作"); } - super.saveAfter(entity, context); + this.doHandlerUser(entity); } @Override - protected void findAfter(UserEntity params, PageInfo pageInfo, Context context, List list) throws AppException { - list.stream().peek(item -> { - RoleUserQuery roleUserQuery = new RoleUserQuery(); - roleUserQuery.setUserId(item.getId()); - String roleIds = roleUserService.find(roleUserQuery).stream().map(RoleUserEntity::getRoleId).map(String::valueOf).collect(Collectors.joining(",")); - item.setRoleIds(roleIds); - }).count(); - super.findAfter(params, pageInfo, context, list); + protected void updateAfter(UserEntity entity, Context context) throws AppException { + if(CollectionUtils.isNotEmpty(entity.getRoleIds())){ + List roleUserEntityList = new ArrayList<>(); + entity.getRoleIds().stream().forEach(item->{ + RoleUserEntity roleUserEntity = new RoleUserEntity(); + roleUserEntity.setUserId(entity.getId()); + roleUserEntity.setRoleId(item); + roleUserEntityList.add(roleUserEntity); + }); + RoleUserEntity condition = new RoleUserEntity(); + condition.setUserId(entity.getId()); + roleUserDao.delete(condition); + roleUserDao.insertBatch(roleUserEntityList); + } } @Override @@ -141,6 +137,23 @@ public class UserServiceImpl extends AbstractCRUDServiceImpl list) throws AppException { + if(CollectionUtils.isNotEmpty(list)) { + list.stream().forEach(item->{ + RoleUserEntity query = new RoleUserEntity(); + query.setUserId(item.getId()); + List roleUserEntityList = roleUserDao.getList(query); + List roleIds = new ArrayList<>(); + roleUserEntityList.stream().forEach(role->{ + roleIds.add(role.getRoleId()); + }); + item.setRoleIds(roleIds); + }); + //List roleUserEntityList = + } + } + public UserEntity findByLoginName(String loginName) { UserQuery params = new UserQuery(); params.setLoginName(loginName); @@ -164,6 +177,11 @@ public class UserServiceImpl extends AbstractCRUDServiceImpl authIds = new HashSet<>(); + Set authIds = new HashSet(); Map menuMap = new HashMap(); List userModuleList = this.menuService.findAllEnable(); for (MenuEntity sysModule : userModuleList) { @@ -215,7 +233,6 @@ public class UserServiceImpl extends AbstractCRUDServiceImpl{ - RoleUserQuery roleUserQuery = new RoleUserQuery(); - roleUserQuery.setUserId(userId); - Long[] userIds = roleUserService.find(roleUserQuery).stream().map(RoleUserEntity::getId).toArray(Long[]::new); - roleUserService.remove(userIds,context); - }).count(); - - super.removeAfter(ids, context, result); + return this.getDao(); } } \ No newline at end of file diff --git a/fill-manager/src/main/java/com/mortals/xhx/common/key/ParamKey.java b/fill-manager/src/main/java/com/mortals/xhx/common/key/ParamKey.java index 24d5f3431e7f2a21722a1ad1eeedd50afaa409a7..2dabb94428e22ba86c48a1fb901a4ad219ac589d 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/common/key/ParamKey.java +++ b/fill-manager/src/main/java/com/mortals/xhx/common/key/ParamKey.java @@ -15,4 +15,6 @@ public class ParamKey { public static final String MATTER_RECOMMEND_COUNT = "matter:recommend"; /** 事项材料推荐个数 */ public static final String MATTER_DATUM_RECOMMEND_COUNT = "matter:datum:recommend"; + + public static final String KEY_USER_MENU_CACHE = "user:menu"; } diff --git a/fill-manager/src/main/java/com/mortals/xhx/common/utils/MenuEncodeUtil.java b/fill-manager/src/main/java/com/mortals/xhx/common/utils/MenuEncodeUtil.java new file mode 100644 index 0000000000000000000000000000000000000000..9de4fc113650d8e44ba74848042ff3b59db7f4f8 --- /dev/null +++ b/fill-manager/src/main/java/com/mortals/xhx/common/utils/MenuEncodeUtil.java @@ -0,0 +1,30 @@ +package com.mortals.xhx.common.utils; + +import com.mortals.framework.ap.GlobalSysInfo; +import com.mortals.framework.ap.SysConstains; +import com.mortals.framework.util.AESUtil; +import lombok.extern.slf4j.Slf4j; + +import java.util.Set; + +@Slf4j +public class MenuEncodeUtil { + + public static String generateMenuUrlCode(Set urls) { + try { + String securityKey = GlobalSysInfo.getPropertyValue(SysConstains.PROP_COOKIE_SECURITY_KEY); + StringBuilder sb = new StringBuilder(); + if (urls != null && urls.size() > 0) { + for (String url : urls) { + int index = url.hashCode() & (Integer.MAX_VALUE - 1); + sb.append(index).append(","); + } + } + String menuUrl = sb.toString(); + return AESUtil.encrypt(menuUrl, securityKey); + } catch (Throwable e) { + log.error("编码异常",e); + return null; + } + } +} diff --git a/fill-manager/src/main/java/com/mortals/xhx/module/skin/service/impl/SkinServiceImpl.java b/fill-manager/src/main/java/com/mortals/xhx/module/skin/service/impl/SkinServiceImpl.java index 476b624ccb64c2398129f31faded7ff1eb239fc4..a152fb086feeaf4fee08b257cf2b1f945ef74fb8 100644 --- a/fill-manager/src/main/java/com/mortals/xhx/module/skin/service/impl/SkinServiceImpl.java +++ b/fill-manager/src/main/java/com/mortals/xhx/module/skin/service/impl/SkinServiceImpl.java @@ -72,8 +72,8 @@ public class SkinServiceImpl extends AbstractCRUDServiceImpl f != null).collect(Collectors.toList()); -// if (!ObjectUtils.isEmpty(updateSkinLsit)) { -// log.info("皮肤更新,size:{}", updateSkinLsit.size()); -// skinService.update(updateSkinLsit); -// } + if (!ObjectUtils.isEmpty(updateSkinLsit)) { + log.info("皮肤更新,size:{}", updateSkinLsit.size()); + this.update(updateSkinLsit); + } if (!ObjectUtils.isEmpty(saveSkinList)) { log.info("皮肤新增,size:{}", saveSkinList.size());