From 0f29cd3995d28921d7d22501aabc73e33628344a Mon Sep 17 00:00:00 2001 From: maliang Date: Mon, 6 Mar 2017 14:48:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=A7=92=E8=89=B2=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E4=BF=A1=E6=81=AF=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lyms/cm/controller/sys/SysUsersController.java | 19 ++++- .../main/java/com/lyms/cm/entity/sys/SysRoles.java | 36 +++++---- .../main/java/com/lyms/cm/entity/sys/SysUsers.java | 20 ++--- .../main/java/com/lyms/cm/enums/StatusEnum.java | 34 ++++++++ .../src/main/java/com/lyms/cm/enums/TypeEnum.java | 31 ++++++++ .../java/com/lyms/cm/enums/UserStatusEnum.java | 34 -------- .../main/java/com/lyms/cm/enums/UserTypeEnum.java | 31 -------- .../java/com/lyms/cm/enums/UserValidityEnum.java | 26 ------ .../main/java/com/lyms/cm/enums/ValidityEnum.java | 26 ++++++ .../com/lyms/cm/service/sys/SysRolesService.java | 41 +++++++++- .../com/lyms/cm/service/sys/SysUsersService.java | 9 +++ .../cm/service/sys/impl/SysRolesServiceImpl.java | 92 +++++++++++++++++++++- .../cm/service/sys/impl/SysUsersServiceImpl.java | 30 ++++++- .../main/webapp/WEB-INF/views/user/user_list.html | 2 +- 14 files changed, 303 insertions(+), 128 deletions(-) create mode 100644 center.manager/src/main/java/com/lyms/cm/enums/StatusEnum.java create mode 100644 center.manager/src/main/java/com/lyms/cm/enums/TypeEnum.java delete mode 100644 center.manager/src/main/java/com/lyms/cm/enums/UserStatusEnum.java delete mode 100644 center.manager/src/main/java/com/lyms/cm/enums/UserTypeEnum.java delete mode 100644 center.manager/src/main/java/com/lyms/cm/enums/UserValidityEnum.java create mode 100644 center.manager/src/main/java/com/lyms/cm/enums/ValidityEnum.java diff --git a/center.manager/src/main/java/com/lyms/cm/controller/sys/SysUsersController.java b/center.manager/src/main/java/com/lyms/cm/controller/sys/SysUsersController.java index fd00fd3..d4ada64 100644 --- a/center.manager/src/main/java/com/lyms/cm/controller/sys/SysUsersController.java +++ b/center.manager/src/main/java/com/lyms/cm/controller/sys/SysUsersController.java @@ -41,9 +41,10 @@ public class SysUsersController extends BaseController { * @return */ @RequestMapping(value = "/create", method = RequestMethod.POST) - public String create(SysUsers user) { - boolean tag = userService.addUser(user); - return null; + @ResponseBody + public AjaxResult create(SysUsers user, AjaxResult ajaxResult) { + boolean tag = userService.updateUser(user); + return handleAjaxResult(ajaxResult, tag, OperationName.UPDATE); } /** @@ -94,4 +95,16 @@ public class SysUsersController extends BaseController { } + /** + * 删除用户 + * + * @return + */ + @RequestMapping(value = "/{id}/delete", method = { RequestMethod.GET, RequestMethod.POST }) + @ResponseBody + public AjaxResult del(@PathVariable String id, AjaxResult ajaxResult) { + boolean tag = userService.delete(id); + return handleAjaxResult(ajaxResult, tag, OperationName.DELETE); + } + } diff --git a/center.manager/src/main/java/com/lyms/cm/entity/sys/SysRoles.java b/center.manager/src/main/java/com/lyms/cm/entity/sys/SysRoles.java index 7a5f992..fb10073 100644 --- a/center.manager/src/main/java/com/lyms/cm/entity/sys/SysRoles.java +++ b/center.manager/src/main/java/com/lyms/cm/entity/sys/SysRoles.java @@ -1,11 +1,12 @@ package com.lyms.cm.entity.sys; - -import com.baomidou.mybatisplus.annotations.TableName; -import com.baomidou.mybatisplus.annotations.TableField; import java.io.Serializable; import java.util.Date; +import com.baomidou.mybatisplus.annotations.TableField; +import com.baomidou.mybatisplus.annotations.TableName; +import com.lyms.cm.enums.StatusEnum; + /** *

* 角色表 @@ -17,65 +18,64 @@ import java.util.Date; @TableName("SYS_ROLES") public class SysRoles implements Serializable { - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = 1L; /** * */ - @TableField(value="ID") + @TableField(value = "ID") private String id; /** * 0:管理员角色,1:用户角色 */ - @TableField(value="TYPE") + @TableField(value = "TYPE") private Integer type; /** * 角色名称 */ - @TableField(value="NAME") + @TableField(value = "NAME") private String name; /** * */ - @TableField(value="PUBLISH_ID") + @TableField(value = "PUBLISH_ID") private String publishId; /** * 1:启用,2:停用 */ - @TableField(value="ENABLE") + @TableField(value = "ENABLE") private Integer enable; /** * 1:有效,2:无效 */ - @TableField(value="YN") + @TableField(value = "YN") private Integer yn; /** * 备注 */ - @TableField(value="REMARKS") + @TableField(value = "REMARKS") private String remarks; /** * 简码 */ - @TableField(value="SHORT_CODE") + @TableField(value = "SHORT_CODE") private String shortCode; /** * 机构id */ - @TableField(value="ORG_ID") + @TableField(value = "ORG_ID") private String orgId; /** * */ - @TableField(value="CREATED") + @TableField(value = "CREATED") private Date created; /** * */ - @TableField(value="MODIFIED") + @TableField(value = "MODIFIED") private Date modified; - public String getId() { return id; } @@ -164,4 +164,8 @@ public class SysRoles implements Serializable { this.modified = modified; } + public boolean isEnable() { + return StatusEnum.isEnabled(this.getEnable()); + } + } diff --git a/center.manager/src/main/java/com/lyms/cm/entity/sys/SysUsers.java b/center.manager/src/main/java/com/lyms/cm/entity/sys/SysUsers.java index 3f29dc0..855aab9 100644 --- a/center.manager/src/main/java/com/lyms/cm/entity/sys/SysUsers.java +++ b/center.manager/src/main/java/com/lyms/cm/entity/sys/SysUsers.java @@ -5,9 +5,9 @@ import java.util.Date; import com.baomidou.mybatisplus.annotations.TableField; import com.baomidou.mybatisplus.annotations.TableName; -import com.lyms.cm.enums.UserStatusEnum; -import com.lyms.cm.enums.UserTypeEnum; -import com.lyms.cm.enums.UserValidityEnum; +import com.lyms.cm.enums.StatusEnum; +import com.lyms.cm.enums.TypeEnum; +import com.lyms.cm.enums.ValidityEnum; /** *

@@ -37,10 +37,10 @@ public class SysUsers implements Serializable { /** * 0:管理员,1:用户 *

- * {@link UserTypeEnum#MANAGER} OR {@link UserTypeEnum#USER} + * {@link TypeEnum#MANAGER} OR {@link TypeEnum#USER} */ @TableField(value = "TYPE") - private Integer type = UserTypeEnum.USER.getType(); + private Integer type = TypeEnum.USER.getType(); /** * 机构id */ @@ -79,17 +79,17 @@ public class SysUsers implements Serializable { /** * 1:有效,2:无效 *

- * {@link UserValidityEnum#VALIDITY} OR {@link UserValidityEnum#UNVALIDITY} + * {@link ValidityEnum#VALIDITY} OR {@link ValidityEnum#UNVALIDITY} */ @TableField(value = "YN") - private Integer yn = UserValidityEnum.VALIDITY.getValidity(); + private Integer yn = ValidityEnum.VALIDITY.getValidity(); /** * 1:启用,2:停用 *

- * {@link UserStatusEnum#ENABLED} OR {@link UserStatusEnum#DISENABLED} + * {@link StatusEnum#ENABLED} OR {@link StatusEnum#DISENABLED} */ @TableField(value = "ENABLE") - private Integer enable = UserStatusEnum.ENABLED.getStatus(); + private Integer enable = StatusEnum.ENABLED.getStatus(); /** * 最后修改时间 */ @@ -336,7 +336,7 @@ public class SysUsers implements Serializable { } public boolean isEnabled() { - return UserStatusEnum.isEnabled(this.getEnable()); + return StatusEnum.isEnabled(this.getEnable()); } } diff --git a/center.manager/src/main/java/com/lyms/cm/enums/StatusEnum.java b/center.manager/src/main/java/com/lyms/cm/enums/StatusEnum.java new file mode 100644 index 0000000..bd79f88 --- /dev/null +++ b/center.manager/src/main/java/com/lyms/cm/enums/StatusEnum.java @@ -0,0 +1,34 @@ +package com.lyms.cm.enums; + +/** + * 用户状态标识 + * + * @author maliang + * + */ +public enum StatusEnum { + + // 启用 + ENABLED(1), + // 禁用 + DISENABLED(2); + + private int status; + + private StatusEnum(int status) { + this.status = status; + } + + public int getStatus() { + return this.status; + } + + public static boolean isEnabled(Integer status) { + return status != null && ENABLED.getStatus() == status; + } + + public static boolean isDisEnabled(Integer status) { + return status != null && DISENABLED.getStatus() == status; + } + +} diff --git a/center.manager/src/main/java/com/lyms/cm/enums/TypeEnum.java b/center.manager/src/main/java/com/lyms/cm/enums/TypeEnum.java new file mode 100644 index 0000000..a772733 --- /dev/null +++ b/center.manager/src/main/java/com/lyms/cm/enums/TypeEnum.java @@ -0,0 +1,31 @@ +package com.lyms.cm.enums; + +/** + * 用户类型 + * + * @author maliang + * + */ +public enum TypeEnum { + + // 管理员 + MANAGER(0), + // 用户 + USER(1); + + private int type; + + private TypeEnum(int type) { + this.type = type; + } + + /** + * 获取类型 + * + * @return + */ + public int getType() { + return this.type; + } + +} diff --git a/center.manager/src/main/java/com/lyms/cm/enums/UserStatusEnum.java b/center.manager/src/main/java/com/lyms/cm/enums/UserStatusEnum.java deleted file mode 100644 index 298063a..0000000 --- a/center.manager/src/main/java/com/lyms/cm/enums/UserStatusEnum.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.lyms.cm.enums; - -/** - * 用户状态标识 - * - * @author maliang - * - */ -public enum UserStatusEnum { - - // 启用 - ENABLED(1), - // 禁用 - DISENABLED(2); - - private int status; - - private UserStatusEnum(int status) { - this.status = status; - } - - public int getStatus() { - return this.status; - } - - public static boolean isEnabled(Integer status) { - return status != null && ENABLED.getStatus() == status; - } - - public static boolean isDisEnabled(Integer status) { - return status != null && DISENABLED.getStatus() == status; - } - -} diff --git a/center.manager/src/main/java/com/lyms/cm/enums/UserTypeEnum.java b/center.manager/src/main/java/com/lyms/cm/enums/UserTypeEnum.java deleted file mode 100644 index 10f3591..0000000 --- a/center.manager/src/main/java/com/lyms/cm/enums/UserTypeEnum.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.lyms.cm.enums; - -/** - * 用户类型 - * - * @author maliang - * - */ -public enum UserTypeEnum { - - // 管理员 - MANAGER(0), - // 用户 - USER(1); - - private int type; - - private UserTypeEnum(int type) { - this.type = type; - } - - /** - * 获取类型 - * - * @return - */ - public int getType() { - return this.type; - } - -} diff --git a/center.manager/src/main/java/com/lyms/cm/enums/UserValidityEnum.java b/center.manager/src/main/java/com/lyms/cm/enums/UserValidityEnum.java deleted file mode 100644 index f487669..0000000 --- a/center.manager/src/main/java/com/lyms/cm/enums/UserValidityEnum.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.lyms.cm.enums; - -/** - * 用户是否有效 - * - * @author maliang - * - */ -public enum UserValidityEnum { - - // 有效 - VALIDITY(1), - // 无效 - UNVALIDITY(2); - - private int validity; - - private UserValidityEnum(int validity) { - this.validity = validity; - } - - public int getValidity() { - return this.validity; - } - -} diff --git a/center.manager/src/main/java/com/lyms/cm/enums/ValidityEnum.java b/center.manager/src/main/java/com/lyms/cm/enums/ValidityEnum.java new file mode 100644 index 0000000..56ac964 --- /dev/null +++ b/center.manager/src/main/java/com/lyms/cm/enums/ValidityEnum.java @@ -0,0 +1,26 @@ +package com.lyms.cm.enums; + +/** + * 用户是否有效 + * + * @author maliang + * + */ +public enum ValidityEnum { + + // 有效 + VALIDITY(1), + // 无效 + UNVALIDITY(2); + + private int validity; + + private ValidityEnum(int validity) { + this.validity = validity; + } + + public int getValidity() { + return this.validity; + } + +} diff --git a/center.manager/src/main/java/com/lyms/cm/service/sys/SysRolesService.java b/center.manager/src/main/java/com/lyms/cm/service/sys/SysRolesService.java index ea37b47..86d4a49 100644 --- a/center.manager/src/main/java/com/lyms/cm/service/sys/SysRolesService.java +++ b/center.manager/src/main/java/com/lyms/cm/service/sys/SysRolesService.java @@ -1,5 +1,6 @@ package com.lyms.cm.service.sys; +import com.baomidou.mybatisplus.plugins.Page; import com.lyms.cm.entity.sys.SysRoles; import com.lyms.exception.SystemException; import com.lyms.web.service.BaseService; @@ -32,7 +33,41 @@ public interface SysRolesService extends BaseService { */ public boolean updateRole(SysRoles role) throws SystemException; - - - + /** + * 删除角色信息 + * + * @param roleId + * @return + * @throws SystemException + */ + public boolean deleteRole(String roleId) throws SystemException; + + /** + * 分页获取角色信息 + *

+ * 目前没有参数设置,过滤 + * + * @param page + * @return + */ + public Page getRolesByPage(Page page) throws SystemException; + + /** + * 根据roleId 获取角色信息 + * + * @param roleId + * @return + * @throws SystemException + */ + public SysRoles getRoleById(String roleId) throws SystemException; + + /** + * 禁/启用角色 + * + * @param roleId + * @return + * @throws SystemException + */ + public boolean enable(String roleId) throws SystemException; + } diff --git a/center.manager/src/main/java/com/lyms/cm/service/sys/SysUsersService.java b/center.manager/src/main/java/com/lyms/cm/service/sys/SysUsersService.java index 715550f..e3a94eb 100644 --- a/center.manager/src/main/java/com/lyms/cm/service/sys/SysUsersService.java +++ b/center.manager/src/main/java/com/lyms/cm/service/sys/SysUsersService.java @@ -66,4 +66,13 @@ public interface SysUsersService extends BaseService { */ public boolean enabled(String userId) throws SystemException; + /** + * 删除用户信息 + * + * @param userId + * @return + * @throws SystemException + */ + public boolean delete(String userId) throws SystemException; + } diff --git a/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysRolesServiceImpl.java b/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysRolesServiceImpl.java index 763baf4..f4f2ddb 100644 --- a/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysRolesServiceImpl.java +++ b/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysRolesServiceImpl.java @@ -1,10 +1,18 @@ package com.lyms.cm.service.sys.impl; +import java.util.List; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.lyms.cm.dao.sys.SysRolesMapper; import com.lyms.cm.entity.sys.SysRoles; +import com.lyms.cm.enums.StatusEnum; +import com.lyms.cm.enums.ValidityEnum; import com.lyms.cm.service.sys.SysRolesService; import com.lyms.exception.SystemException; @@ -19,13 +27,95 @@ import com.lyms.exception.SystemException; @Service public class SysRolesServiceImpl extends ServiceImpl implements SysRolesService { + @Autowired + private SysRolesMapper roleMapper; + + /** + * 实体空判断 + * + * @param role + * @return + */ + private boolean empty(SysRoles role) { + return role == null; + } + + @Transactional @Override public boolean addRole(SysRoles role) throws SystemException { - return false; + if (empty(role)) + return false; + Integer tag = roleMapper.insert(role); + return tag != null && tag >= 1; } @Override + @Transactional public boolean updateRole(SysRoles role) throws SystemException { + if (empty(role)) + return false; + Integer tag = roleMapper.updateById(role); + return tag != null && tag >= 1; + } + + @Override + @Transactional + public boolean deleteRole(String roleId) throws SystemException { + if (StringUtils.isBlank(roleId)) + return false; + // 并非真实删除,通过字段属性控制 + // TODO 通过sql 修改 + SysRoles role = roleMapper.selectById(roleId); + if (role != null) { + Integer yn = role.getYn(); + if (yn == null || yn == ValidityEnum.VALIDITY.getValidity()) { + yn = ValidityEnum.UNVALIDITY.getValidity(); + } else { + yn = ValidityEnum.VALIDITY.getValidity(); + } + role.setYn(yn); + Integer tag = roleMapper.updateById(role); + return tag != null && tag >= 1; + } + return false; + } + + @Override + public Page getRolesByPage(Page page) throws SystemException { + + if (page == null) + return null; + + // TODO 添加参数过滤 + List roles = roleMapper.selectPage(page, null); + page.setRecords(roles); + + return page; + } + + @Override + public SysRoles getRoleById(String roleId) throws SystemException { + if (StringUtils.isBlank(roleId)) + return null; + return roleMapper.selectById(roleId); + } + + @Override + public boolean enable(String roleId) throws SystemException { + + SysRoles role = this.getRoleById(roleId); + + if (empty(role)) + return false; + + // 判断当前用户的启用,禁用情况 + // TODO 拆分成SQL执行,两种操作 + if (role.isEnable()) { + role.setEnable(StatusEnum.DISENABLED.getStatus()); + } else { + role.setEnable(StatusEnum.ENABLED.getStatus()); + } + return false; } diff --git a/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysUsersServiceImpl.java b/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysUsersServiceImpl.java index 19002e4..15259d4 100644 --- a/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysUsersServiceImpl.java +++ b/center.manager/src/main/java/com/lyms/cm/service/sys/impl/SysUsersServiceImpl.java @@ -11,7 +11,8 @@ import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.lyms.cm.dao.sys.SysUsersMapper; import com.lyms.cm.entity.sys.SysUsers; -import com.lyms.cm.enums.UserStatusEnum; +import com.lyms.cm.enums.StatusEnum; +import com.lyms.cm.enums.ValidityEnum; import com.lyms.cm.service.sys.SysUsersService; import com.lyms.exception.SystemException; import com.lyms.util.MD5Utils; @@ -99,9 +100,9 @@ public class SysUsersServiceImpl extends ServiceImpl i // 判断当前用户的启用,禁用情况 if (user.isEnabled()) { - user.setEnable(UserStatusEnum.DISENABLED.getStatus()); + user.setEnable(StatusEnum.DISENABLED.getStatus()); } else { - user.setEnable(UserStatusEnum.ENABLED.getStatus()); + user.setEnable(StatusEnum.ENABLED.getStatus()); } return this.updateUser(user); } @@ -111,9 +112,32 @@ public class SysUsersServiceImpl extends ServiceImpl i if (page == null) return null; + // TODO 添加过过滤条件 List users = userMapper.selectPage(page, null); page.setRecords(users); return page; } + @Override + @Transactional + public boolean delete(String userId) throws SystemException { + + if (StringUtils.isBlank(userId)) + return false; + // TODO 通过sql 修改 + SysUsers user = userMapper.selectById(userId); + if (user != null) { + Integer yn = user.getYn(); + if (yn == null || yn == ValidityEnum.VALIDITY.getValidity()) { + yn = ValidityEnum.UNVALIDITY.getValidity(); + } else { + yn = ValidityEnum.VALIDITY.getValidity(); + } + user.setYn(yn); + Integer tag = userMapper.updateById(user); + return tag != null && tag >= 1; + } + return false; + } + } diff --git a/center.manager/src/main/webapp/WEB-INF/views/user/user_list.html b/center.manager/src/main/webapp/WEB-INF/views/user/user_list.html index 46bdcea..68a116b 100644 --- a/center.manager/src/main/webapp/WEB-INF/views/user/user_list.html +++ b/center.manager/src/main/webapp/WEB-INF/views/user/user_list.html @@ -45,7 +45,7 @@ function edit(){ } function del(){ - goDelete("dataTable","id", APP.PATH + "/user/@value@/delete"); + goDelete("dataTable","id", APP.PATH + "/sysUsers/@value@/delete"); } ## 参考 base_table_init.js 或者根据empty_bootstrap_table_init.js 来自己创建特殊的table ## 注意:自己创建的特殊的table不能extends base_list.html -- 1.8.3.1