Browse Source

'兼容完成'

yq 2 years ago
parent
commit
d44a0b6939
84 changed files with 2264 additions and 682 deletions
  1. 4 0
      service-system/service-system-api/pom.xml
  2. 29 0
      service-system/service-system-api/src/main/java/com/usky/system/RemoteFileService.java
  3. 42 0
      service-system/service-system-api/src/main/java/com/usky/system/RemoteLogService.java
  4. 0 29
      service-system/service-system-api/src/main/java/com/usky/system/RemoteSystemService.java
  5. 39 0
      service-system/service-system-api/src/main/java/com/usky/system/RemoteUserService.java
  6. 203 0
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysDeptVO.java
  7. 167 0
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysDictDataVO.java
  8. 90 0
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysDictTypeVO.java
  9. 50 0
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysFileVO.java
  10. 95 0
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysLogininforVO.java
  11. 225 0
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysOperLogVO.java
  12. 220 0
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysRoleVO.java
  13. 287 75
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysUserVO.java
  14. 35 0
      service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteFileFallbackFactory.java
  15. 42 0
      service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteLogFallbackFactory.java
  16. 0 48
      service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteSystemFallbackFactory.java
  17. 42 0
      service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteUserFallbackFactory.java
  18. 5 6
      service-system/service-system-api/src/main/java/com/usky/system/model/LoginUser.java
  19. 10 5
      service-system/service-system-biz/pom.xml
  20. 29 59
      service-system/service-system-biz/src/main/java/com/usky/system/controller/api/SysUserControllerApi.java
  21. 7 7
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDictDataController.java
  22. 6 6
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDictTypeController.java
  23. 0 2
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysLogininforController.java
  24. 0 2
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysMenuController.java
  25. 4 4
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysOperlogController.java
  26. 7 8
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysRoleController.java
  27. 3 3
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysUserController.java
  28. 0 13
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TestController.java
  29. 87 0
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TokenController.java
  30. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysConfig.java
  31. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDept.java
  32. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDictData.java
  33. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDictType.java
  34. 12 53
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysLogininfor.java
  35. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMenu.java
  36. 2 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysNotice.java
  37. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysOperLog.java
  38. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPost.java
  39. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysRole.java
  40. 7 7
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysUser.java
  41. 0 119
      service-system/service-system-biz/src/main/java/com/usky/system/domain/core/BaseEntity.java
  42. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysConfigMapper.java
  43. 7 8
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysDictDataMapper.java
  44. 9 10
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysDictTypeMapper.java
  45. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysLogininforMapper.java
  46. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMenuMapper.java
  47. 5 6
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysOperLogMapper.java
  48. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysPostMapper.java
  49. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysRoleDeptMapper.java
  50. 11 12
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysRoleMapper.java
  51. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysRoleMenuMapper.java
  52. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysUserRoleMapper.java
  53. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysConfigService.java
  54. 6 7
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysDictDataService.java
  55. 11 12
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysDictTypeService.java
  56. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysLogininforService.java
  57. 5 6
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysOperLogService.java
  58. 22 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysPermissionService.java
  59. 0 1
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysPostService.java
  60. 13 14
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysRoleService.java
  61. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysUserOnlineService.java
  62. 6 1
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysUserService.java
  63. 145 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/SysLoginService.java
  64. 0 2
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysConfigServiceImpl.java
  65. 2 3
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDeptServiceImpl.java
  66. 10 12
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDictDataServiceImpl.java
  67. 19 21
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDictTypeServiceImpl.java
  68. 0 2
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysLogininforServiceImpl.java
  69. 4 5
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java
  70. 5 7
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysOperLogServiceImpl.java
  71. 0 3
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPermissionService.java
  72. 66 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPermissionServiceImpl.java
  73. 0 2
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPostServiceImpl.java
  74. 25 25
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysRoleServiceImpl.java
  75. 1 4
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysUserOnlineServiceImpl.java
  76. 48 3
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysUserServiceImpl.java
  77. 10 10
      service-system/service-system-biz/src/main/java/com/usky/system/service/util/DictUtils.java
  78. 39 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/LoginBody.java
  79. 5 5
      service-system/service-system-biz/src/main/resources/mapper/system/SysDictDataMapper.xml
  80. 4 4
      service-system/service-system-biz/src/main/resources/mapper/system/SysDictTypeMapper.xml
  81. 19 22
      service-system/service-system-biz/src/main/resources/mapper/system/SysLogininforMapper.xml
  82. 3 3
      service-system/service-system-biz/src/main/resources/mapper/system/SysOperLogMapper.xml
  83. 4 4
      service-system/service-system-biz/src/main/resources/mapper/system/SysRoleMapper.xml
  84. 3 3
      service-system/service-system-biz/src/main/resources/mapper/system/SysUserMapper.xml

+ 4 - 0
service-system/service-system-api/pom.xml

@@ -18,6 +18,10 @@
             <groupId>com.usky</groupId>
             <artifactId>usky-common-core</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.usky</groupId>
+            <artifactId>usky-common-mvc</artifactId>
+        </dependency>
     </dependencies>
 
     <build>

+ 29 - 0
service-system/service-system-api/src/main/java/com/usky/system/RemoteFileService.java

@@ -0,0 +1,29 @@
+//package com.usky.system;
+//
+//import com.baomidou.mybatisplus.extension.api.R;
+//import com.usky.common.core.bean.ApiResult;
+//import com.usky.system.domain.SysFileVO;
+//import com.usky.system.factory.RemoteFileFallbackFactory;
+//import org.springframework.cloud.openfeign.FeignClient;
+//import org.springframework.http.MediaType;
+//import org.springframework.web.bind.annotation.PostMapping;
+//import org.springframework.web.bind.annotation.RequestPart;
+//import org.springframework.web.multipart.MultipartFile;
+//
+///**
+// * 文件服务
+// *
+// * @author ruoyi
+// */
+//@FeignClient(contextId = "remoteFileService", value = ServiceNameConstants.FILE_SERVICE, fallbackFactory = RemoteFileFallbackFactory.class)
+//public interface RemoteFileService
+//{
+//    /**
+//     * 上传文件
+//     *
+//     * @param file 文件信息
+//     * @return 结果
+//     */
+//    @PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
+//    public ApiResult<SysFileVO> upload(@RequestPart(value = "file") MultipartFile file);
+//}

+ 42 - 0
service-system/service-system-api/src/main/java/com/usky/system/RemoteLogService.java

@@ -0,0 +1,42 @@
+//package com.usky.system;
+//
+//
+//import com.baomidou.mybatisplus.extension.api.R;
+//import com.usky.common.core.bean.ApiResult;
+//import com.usky.system.domain.SysLogininforVO;
+//import com.usky.system.domain.SysOperLogVO;
+//import com.usky.system.factory.RemoteLogFallbackFactory;
+//import org.springframework.cloud.openfeign.FeignClient;
+//import org.springframework.web.bind.annotation.PostMapping;
+//import org.springframework.web.bind.annotation.RequestBody;
+//import org.springframework.web.bind.annotation.RequestHeader;
+//import sun.security.util.SecurityConstants;
+//
+///**
+// * 日志服务
+// *
+// * @author ruoyi
+// */
+//@FeignClient(contextId = "remoteLogService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteLogFallbackFactory.class)
+//public interface RemoteLogService
+//{
+//    /**
+//     * 保存系统日志
+//     *
+//     * @param sysOperLog 日志实体
+//     * @param source 请求来源
+//     * @return 结果
+//     */
+//    @PostMapping("/operlog")
+//    public ApiResult<Boolean> saveLog(@RequestBody SysOperLogVO sysOperLog, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+//
+//    /**
+//     * 保存访问记录
+//     *
+//     * @param sysLogininfor 访问实体
+//     * @param source 请求来源
+//     * @return 结果
+//     */
+//    @PostMapping("/logininfor")
+//    public ApiResult<Boolean> saveLogininfor(@RequestBody SysLogininforVO sysLogininfor, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+//}

+ 0 - 29
service-system/service-system-api/src/main/java/com/usky/system/RemoteSystemService.java

@@ -1,29 +0,0 @@
-package com.usky.system;
-
-
-import com.usky.common.core.bean.ApiResult;
-import com.usky.system.domain.SysUserVO;
-import com.usky.system.factory.RemoteSystemFallbackFactory;
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.MediaType;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.util.List;
-
-@FeignClient(contextId = "remoteSystemService", value = "usky-demo",fallbackFactory = RemoteSystemFallbackFactory.class)
-public interface RemoteSystemService {
-
-
-
-    @GetMapping("/byUserName")
-    ApiResult<List<SysUserVO>> getByUserName(@RequestParam("userName") String userName);
-
-
-    @PostMapping("/byUserName")
-    ApiResult<List<SysUserVO>> add(@RequestBody SysUserVO sysUserVO);
-
-
-    @PostMapping(value = "/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
-    ApiResult<String> upload(@RequestPart(value = "file") MultipartFile file);
-}

+ 39 - 0
service-system/service-system-api/src/main/java/com/usky/system/RemoteUserService.java

@@ -0,0 +1,39 @@
+package com.usky.system;
+
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.system.domain.SysUserVO;
+import com.usky.system.factory.RemoteUserFallbackFactory;
+import com.usky.system.model.LoginUser;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+/**
+ * 用户服务
+ * 
+ * @author ruoyi
+ */
+@FeignClient(contextId = "remoteUserService", value = "usky-system", fallbackFactory = RemoteUserFallbackFactory.class)
+public interface RemoteUserService
+{
+    /**
+     * 通过用户名查询用户信息
+     *
+     * @param username 用户名
+     * @return 结果
+     */
+    @GetMapping("/user/info/{username}")
+    public ApiResult<LoginUser> getUserInfo(@PathVariable("username") String username);
+
+    /**
+     * 注册用户信息
+     *
+     * @param sysUser 用户信息
+     * @return 结果
+     */
+    @PostMapping("/user/register")
+    public ApiResult<Boolean> registerUserInfo(@RequestBody SysUserVO sysUser);
+}

+ 203 - 0
service-system/service-system-api/src/main/java/com/usky/system/domain/SysDeptVO.java

@@ -0,0 +1,203 @@
+package com.usky.system.domain;
+
+import com.usky.common.mvc.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import javax.validation.constraints.Email;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 部门表 sys_dept
+ * 
+ * @author ruoyi
+ */
+public class SysDeptVO extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 部门ID */
+    private Long deptId;
+
+    /** 父部门ID */
+    private Long parentId;
+
+    /** 祖级列表 */
+    private String ancestors;
+
+    /** 部门名称 */
+    private String deptName;
+
+    /** 显示顺序 */
+    private String orderNum;
+
+    /** 负责人 */
+    private String leader;
+
+    /** 联系电话 */
+    private String phone;
+
+    /** 邮箱 */
+    private String email;
+
+    /** 部门状态:0正常,1停用 */
+    private String status;
+
+    /** 删除标志(0代表存在 2代表删除) */
+    private String delFlag;
+
+    /** 父部门名称 */
+    private String parentName;
+    
+    /** 子部门 */
+    private List<SysDeptVO> children = new ArrayList<SysDeptVO>();
+
+    public Long getDeptId()
+    {
+        return deptId;
+    }
+
+    public void setDeptId(Long deptId)
+    {
+        this.deptId = deptId;
+    }
+
+    public Long getParentId()
+    {
+        return parentId;
+    }
+
+    public void setParentId(Long parentId)
+    {
+        this.parentId = parentId;
+    }
+
+    public String getAncestors()
+    {
+        return ancestors;
+    }
+
+    public void setAncestors(String ancestors)
+    {
+        this.ancestors = ancestors;
+    }
+
+    @NotBlank(message = "部门名称不能为空")
+    @Size(min = 0, max = 30, message = "部门名称长度不能超过30个字符")
+    public String getDeptName()
+    {
+        return deptName;
+    }
+
+    public void setDeptName(String deptName)
+    {
+        this.deptName = deptName;
+    }
+
+    @NotBlank(message = "显示顺序不能为空")
+    public String getOrderNum()
+    {
+        return orderNum;
+    }
+
+    public void setOrderNum(String orderNum)
+    {
+        this.orderNum = orderNum;
+    }
+
+    public String getLeader()
+    {
+        return leader;
+    }
+
+    public void setLeader(String leader)
+    {
+        this.leader = leader;
+    }
+
+    @Size(min = 0, max = 11, message = "联系电话长度不能超过11个字符")
+    public String getPhone()
+    {
+        return phone;
+    }
+
+    public void setPhone(String phone)
+    {
+        this.phone = phone;
+    }
+
+    @Email(message = "邮箱格式不正确")
+    @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
+    public String getEmail()
+    {
+        return email;
+    }
+
+    public void setEmail(String email)
+    {
+        this.email = email;
+    }
+
+    public String getStatus()
+    {
+        return status;
+    }
+
+    public void setStatus(String status)
+    {
+        this.status = status;
+    }
+
+    public String getDelFlag()
+    {
+        return delFlag;
+    }
+
+    public void setDelFlag(String delFlag)
+    {
+        this.delFlag = delFlag;
+    }
+
+    public String getParentName()
+    {
+        return parentName;
+    }
+
+    public void setParentName(String parentName)
+    {
+        this.parentName = parentName;
+    }
+
+    public List<SysDeptVO> getChildren()
+    {
+        return children;
+    }
+
+    public void setChildren(List<SysDeptVO> children)
+    {
+        this.children = children;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("deptId", getDeptId())
+            .append("parentId", getParentId())
+            .append("ancestors", getAncestors())
+            .append("deptName", getDeptName())
+            .append("orderNum", getOrderNum())
+            .append("leader", getLeader())
+            .append("phone", getPhone())
+            .append("email", getEmail())
+            .append("status", getStatus())
+            .append("delFlag", getDelFlag())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .toString();
+    }
+}

+ 167 - 0
service-system/service-system-api/src/main/java/com/usky/system/domain/SysDictDataVO.java

@@ -0,0 +1,167 @@
+package com.usky.system.domain;
+
+import com.usky.common.mvc.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+
+/**
+ * 字典数据表 sys_dict_data
+ * 
+ * @author ruoyi
+ */
+public class SysDictDataVO extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 字典编码 */
+    private Long dictCode;
+
+    /** 字典排序 */
+    private Long dictSort;
+
+    /** 字典标签 */
+    private String dictLabel;
+
+    /** 字典键值 */
+    private String dictValue;
+
+    /** 字典类型 */
+    private String dictType;
+
+    /** 样式属性(其他样式扩展) */
+    private String cssClass;
+
+    /** 表格字典样式 */
+    private String listClass;
+
+    /** 是否默认(Y是 N否) */
+    private String isDefault;
+
+    /** 状态(0正常 1停用) */
+    private String status;
+
+    public Long getDictCode()
+    {
+        return dictCode;
+    }
+
+    public void setDictCode(Long dictCode)
+    {
+        this.dictCode = dictCode;
+    }
+
+    public Long getDictSort()
+    {
+        return dictSort;
+    }
+
+    public void setDictSort(Long dictSort)
+    {
+        this.dictSort = dictSort;
+    }
+
+    @NotBlank(message = "字典标签不能为空")
+    @Size(min = 0, max = 100, message = "字典标签长度不能超过100个字符")
+    public String getDictLabel()
+    {
+        return dictLabel;
+    }
+
+    public void setDictLabel(String dictLabel)
+    {
+        this.dictLabel = dictLabel;
+    }
+
+    @NotBlank(message = "字典键值不能为空")
+    @Size(min = 0, max = 100, message = "字典键值长度不能超过100个字符")
+    public String getDictValue()
+    {
+        return dictValue;
+    }
+
+    public void setDictValue(String dictValue)
+    {
+        this.dictValue = dictValue;
+    }
+
+    @NotBlank(message = "字典类型不能为空")
+    @Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
+    public String getDictType()
+    {
+        return dictType;
+    }
+
+    public void setDictType(String dictType)
+    {
+        this.dictType = dictType;
+    }
+
+    @Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符")
+    public String getCssClass()
+    {
+        return cssClass;
+    }
+
+    public void setCssClass(String cssClass)
+    {
+        this.cssClass = cssClass;
+    }
+
+    public String getListClass()
+    {
+        return listClass;
+    }
+
+    public void setListClass(String listClass)
+    {
+        this.listClass = listClass;
+    }
+
+    public boolean getDefault()
+    {
+        return true;
+    }
+
+    public String getIsDefault()
+    {
+        return isDefault;
+    }
+
+    public void setIsDefault(String isDefault)
+    {
+        this.isDefault = isDefault;
+    }
+
+    public String getStatus()
+    {
+        return status;
+    }
+
+    public void setStatus(String status)
+    {
+        this.status = status;
+    }
+    
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("dictCode", getDictCode())
+            .append("dictSort", getDictSort())
+            .append("dictLabel", getDictLabel())
+            .append("dictValue", getDictValue())
+            .append("dictType", getDictType())
+            .append("cssClass", getCssClass())
+            .append("listClass", getListClass())
+            .append("isDefault", getIsDefault())
+            .append("status", getStatus())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("remark", getRemark())
+            .toString();
+    }
+}

+ 90 - 0
service-system/service-system-api/src/main/java/com/usky/system/domain/SysDictTypeVO.java

@@ -0,0 +1,90 @@
+package com.usky.system.domain;
+
+
+import com.usky.common.mvc.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+
+/**
+ * 字典类型表 sys_dict_type
+ * 
+ * @author ruoyi
+ */
+public class SysDictTypeVO extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 字典主键 */
+    private Long dictId;
+
+    /** 字典名称 */
+    private String dictName;
+
+    /** 字典类型 */
+    private String dictType;
+
+    /** 状态(0正常 1停用) */
+    private String status;
+
+    public Long getDictId()
+    {
+        return dictId;
+    }
+
+    public void setDictId(Long dictId)
+    {
+        this.dictId = dictId;
+    }
+
+    @NotBlank(message = "字典名称不能为空")
+    @Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
+    public String getDictName()
+    {
+        return dictName;
+    }
+
+    public void setDictName(String dictName)
+    {
+        this.dictName = dictName;
+    }
+
+    @NotBlank(message = "字典类型不能为空")
+    @Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符")
+    public String getDictType()
+    {
+        return dictType;
+    }
+
+    public void setDictType(String dictType)
+    {
+        this.dictType = dictType;
+    }
+
+    public String getStatus()
+    {
+        return status;
+    }
+
+    public void setStatus(String status)
+    {
+        this.status = status;
+    }
+    
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("dictId", getDictId())
+            .append("dictName", getDictName())
+            .append("dictType", getDictType())
+            .append("status", getStatus())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("remark", getRemark())
+            .toString();
+    }
+}

+ 50 - 0
service-system/service-system-api/src/main/java/com/usky/system/domain/SysFileVO.java

@@ -0,0 +1,50 @@
+package com.usky.system.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 文件信息
+ * 
+ * @author ruoyi
+ */
+public class SysFileVO
+{
+    /**
+     * 文件名称
+     */
+    private String name;
+
+    /**
+     * 文件地址
+     */
+    private String url;
+
+    public String getName()
+    {
+        return name;
+    }
+
+    public void setName(String name)
+    {
+        this.name = name;
+    }
+
+    public String getUrl()
+    {
+        return url;
+    }
+
+    public void setUrl(String url)
+    {
+        this.url = url;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("name", getName())
+            .append("url", getUrl())
+            .toString();
+    }
+}

+ 95 - 0
service-system/service-system-api/src/main/java/com/usky/system/domain/SysLogininforVO.java

@@ -0,0 +1,95 @@
+package com.usky.system.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.usky.common.mvc.domain.BaseEntity;
+
+import java.util.Date;
+
+/**
+ * 系统访问记录表 sys_logininfor
+ * 
+ * @author ruoyi
+ */
+public class SysLogininforVO extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** ID */
+    private Long infoId;
+
+    /** 用户账号 */
+    private String userName;
+
+    /** 状态 0成功 1失败 */
+    private String status;
+
+    /** 地址 */
+    private String ipaddr;
+
+    /** 描述 */
+    private String msg;
+
+    /** 访问时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date accessTime;
+
+    public Long getInfoId()
+    {
+        return infoId;
+    }
+
+    public void setInfoId(Long infoId)
+    {
+        this.infoId = infoId;
+    }
+
+    public String getUserName()
+    {
+        return userName;
+    }
+
+    public void setUserName(String userName)
+    {
+        this.userName = userName;
+    }
+
+    public String getStatus()
+    {
+        return status;
+    }
+
+    public void setStatus(String status)
+    {
+        this.status = status;
+    }
+
+    public String getIpaddr()
+    {
+        return ipaddr;
+    }
+
+    public void setIpaddr(String ipaddr)
+    {
+        this.ipaddr = ipaddr;
+    }
+
+    public String getMsg()
+    {
+        return msg;
+    }
+
+    public void setMsg(String msg)
+    {
+        this.msg = msg;
+    }
+
+    public Date getAccessTime()
+    {
+        return accessTime;
+    }
+
+    public void setAccessTime(Date accessTime)
+    {
+        this.accessTime = accessTime;
+    }
+}

+ 225 - 0
service-system/service-system-api/src/main/java/com/usky/system/domain/SysOperLogVO.java

@@ -0,0 +1,225 @@
+package com.usky.system.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.usky.common.mvc.domain.BaseEntity;
+
+import java.util.Date;
+
+/**
+ * 操作日志记录表 oper_log
+ * 
+ * @author ruoyi
+ */
+public class SysOperLogVO extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 日志主键 */
+    private Long operId;
+
+    /** 操作模块 */
+    private String title;
+
+    /** 业务类型(0其它 1新增 2修改 3删除) */
+    private Integer businessType;
+
+    /** 业务类型数组 */
+    private Integer[] businessTypes;
+
+    /** 请求方法 */
+    private String method;
+
+    /** 请求方式 */
+    private String requestMethod;
+
+    /** 操作类别(0其它 1后台用户 2手机端用户) */
+    private Integer operatorType;
+
+    /** 操作人员 */
+    private String operName;
+
+    /** 部门名称 */
+    private String deptName;
+
+    /** 请求url */
+    private String operUrl;
+
+    /** 操作地址 */
+    private String operIp;
+
+    /** 请求参数 */
+    private String operParam;
+
+    /** 返回参数 */
+    private String jsonResult;
+
+    /** 操作状态(0正常 1异常) */
+    private Integer status;
+
+    /** 错误消息 */
+    private String errorMsg;
+
+    /** 操作时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date operTime;
+
+    public Long getOperId()
+    {
+        return operId;
+    }
+
+    public void setOperId(Long operId)
+    {
+        this.operId = operId;
+    }
+
+    public String getTitle()
+    {
+        return title;
+    }
+
+    public void setTitle(String title)
+    {
+        this.title = title;
+    }
+
+    public Integer getBusinessType()
+    {
+        return businessType;
+    }
+
+    public void setBusinessType(Integer businessType)
+    {
+        this.businessType = businessType;
+    }
+
+    public Integer[] getBusinessTypes()
+    {
+        return businessTypes;
+    }
+
+    public void setBusinessTypes(Integer[] businessTypes)
+    {
+        this.businessTypes = businessTypes;
+    }
+
+    public String getMethod()
+    {
+        return method;
+    }
+
+    public void setMethod(String method)
+    {
+        this.method = method;
+    }
+
+    public String getRequestMethod()
+    {
+        return requestMethod;
+    }
+
+    public void setRequestMethod(String requestMethod)
+    {
+        this.requestMethod = requestMethod;
+    }
+
+    public Integer getOperatorType()
+    {
+        return operatorType;
+    }
+
+    public void setOperatorType(Integer operatorType)
+    {
+        this.operatorType = operatorType;
+    }
+
+    public String getOperName()
+    {
+        return operName;
+    }
+
+    public void setOperName(String operName)
+    {
+        this.operName = operName;
+    }
+
+    public String getDeptName()
+    {
+        return deptName;
+    }
+
+    public void setDeptName(String deptName)
+    {
+        this.deptName = deptName;
+    }
+
+    public String getOperUrl()
+    {
+        return operUrl;
+    }
+
+    public void setOperUrl(String operUrl)
+    {
+        this.operUrl = operUrl;
+    }
+
+    public String getOperIp()
+    {
+        return operIp;
+    }
+
+    public void setOperIp(String operIp)
+    {
+        this.operIp = operIp;
+    }
+
+    public String getOperParam()
+    {
+        return operParam;
+    }
+
+    public void setOperParam(String operParam)
+    {
+        this.operParam = operParam;
+    }
+
+    public String getJsonResult()
+    {
+        return jsonResult;
+    }
+
+    public void setJsonResult(String jsonResult)
+    {
+        this.jsonResult = jsonResult;
+    }
+
+    public Integer getStatus()
+    {
+        return status;
+    }
+
+    public void setStatus(Integer status)
+    {
+        this.status = status;
+    }
+
+    public String getErrorMsg()
+    {
+        return errorMsg;
+    }
+
+    public void setErrorMsg(String errorMsg)
+    {
+        this.errorMsg = errorMsg;
+    }
+
+    public Date getOperTime()
+    {
+        return operTime;
+    }
+
+    public void setOperTime(Date operTime)
+    {
+        this.operTime = operTime;
+    }
+}

+ 220 - 0
service-system/service-system-api/src/main/java/com/usky/system/domain/SysRoleVO.java

@@ -0,0 +1,220 @@
+package com.usky.system.domain;
+
+import com.usky.common.mvc.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+
+
+/**
+ * 角色表 sys_role
+ * 
+ * @author ruoyi
+ */
+public class SysRoleVO extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 角色ID */
+    private Long roleId;
+
+    /** 角色名称 */
+    private String roleName;
+
+    /** 角色权限 */
+    private String roleKey;
+
+    /** 角色排序 */
+    private String roleSort;
+
+    /** 数据范围(1:所有数据权限;2:自定义数据权限;3:本部门数据权限;4:本部门及以下数据权限;5:仅本人数据权限) */
+    private String dataScope;
+
+    /** 菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示) */
+    private boolean menuCheckStrictly;
+
+    /** 部门树选择项是否关联显示(0:父子不互相关联显示 1:父子互相关联显示 ) */
+    private boolean deptCheckStrictly;
+
+    /** 角色状态(0正常 1停用) */
+    private String status;
+
+    /** 删除标志(0代表存在 2代表删除) */
+    private String delFlag;
+
+    /** 用户是否存在此角色标识 默认不存在 */
+    private boolean flag = false;
+
+    /** 菜单组 */
+    private Long[] menuIds;
+
+    /** 部门组(数据权限) */
+    private Long[] deptIds;
+
+    public SysRoleVO()
+    {
+
+    }
+
+    public SysRoleVO(Long roleId)
+    {
+        this.roleId = roleId;
+    }
+
+    public Long getRoleId()
+    {
+        return roleId;
+    }
+
+    public void setRoleId(Long roleId)
+    {
+        this.roleId = roleId;
+    }
+
+    public boolean isAdmin()
+    {
+        return isAdmin(this.roleId);
+    }
+
+    public static boolean isAdmin(Long roleId)
+    {
+        return roleId != null && 1L == roleId;
+    }
+
+    @NotBlank(message = "角色名称不能为空")
+    @Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符")
+    public String getRoleName()
+    {
+        return roleName;
+    }
+
+    public void setRoleName(String roleName)
+    {
+        this.roleName = roleName;
+    }
+
+    @NotBlank(message = "权限字符不能为空")
+    @Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符")
+    public String getRoleKey()
+    {
+        return roleKey;
+    }
+
+    public void setRoleKey(String roleKey)
+    {
+        this.roleKey = roleKey;
+    }
+
+    @NotBlank(message = "显示顺序不能为空")
+    public String getRoleSort()
+    {
+        return roleSort;
+    }
+
+    public void setRoleSort(String roleSort)
+    {
+        this.roleSort = roleSort;
+    }
+
+    public String getDataScope()
+    {
+        return dataScope;
+    }
+
+    public void setDataScope(String dataScope)
+    {
+        this.dataScope = dataScope;
+    }
+
+    public boolean isMenuCheckStrictly()
+    {
+        return menuCheckStrictly;
+    }
+
+    public void setMenuCheckStrictly(boolean menuCheckStrictly)
+    {
+        this.menuCheckStrictly = menuCheckStrictly;
+    }
+
+    public boolean isDeptCheckStrictly()
+    {
+        return deptCheckStrictly;
+    }
+
+    public void setDeptCheckStrictly(boolean deptCheckStrictly)
+    {
+        this.deptCheckStrictly = deptCheckStrictly;
+    }
+
+    public String getStatus()
+    {
+        return status;
+    }
+
+    public void setStatus(String status)
+    {
+        this.status = status;
+    }
+
+    public String getDelFlag()
+    {
+        return delFlag;
+    }
+
+    public void setDelFlag(String delFlag)
+    {
+        this.delFlag = delFlag;
+    }
+
+    public boolean isFlag()
+    {
+        return flag;
+    }
+
+    public void setFlag(boolean flag)
+    {
+        this.flag = flag;
+    }
+
+    public Long[] getMenuIds()
+    {
+        return menuIds;
+    }
+
+    public void setMenuIds(Long[] menuIds)
+    {
+        this.menuIds = menuIds;
+    }
+
+    public Long[] getDeptIds()
+    {
+        return deptIds;
+    }
+
+    public void setDeptIds(Long[] deptIds)
+    {
+        this.deptIds = deptIds;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("roleId", getRoleId())
+            .append("roleName", getRoleName())
+            .append("roleKey", getRoleKey())
+            .append("roleSort", getRoleSort())
+            .append("dataScope", getDataScope())
+            .append("menuCheckStrictly", isMenuCheckStrictly())
+            .append("deptCheckStrictly", isDeptCheckStrictly())
+            .append("status", getStatus())
+            .append("delFlag", getDelFlag())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("remark", getRemark())
+            .toString();
+    }
+}

+ 287 - 75
service-system/service-system-api/src/main/java/com/usky/system/domain/SysUserVO.java

@@ -1,105 +1,317 @@
 package com.usky.system.domain;
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.usky.common.mvc.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
 
-import lombok.Data;
+import javax.validation.constraints.Email;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+import java.util.Date;
+import java.util.List;
 
-import java.time.LocalDateTime;
+/**
+ * 用户对象 sys_user
+ * 
+ * @author ruoyi
+ */
+public class SysUserVO extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
 
-@Data
-public class SysUserVO {
-
-    /**
-     * 用户ID
-     */
+    /** 用户ID */
     private Long userId;
 
-    /**
-     * 部门ID
-     */
+    /** 部门ID */
     private Long deptId;
 
-    /**
-     * 用户账号
-     */
+    /** 用户账号 */
     private String userName;
 
-    /**
-     * 用户昵称
-     */
+    /** 用户昵称 */
     private String nickName;
 
-    /**
-     * 用户类型(00系统用户)
-     */
-    private String userType;
-
-    /**
-     * 用户邮箱
-     */
+    /** 用户邮箱 */
     private String email;
 
-    /**
-     * 手机号码
-     */
+    /** 手机号码 */
     private String phonenumber;
 
-    /**
-     * 用户性别(0男 1女 2未知)
-     */
+    /** 用户性别 */
     private String sex;
 
-    /**
-     * 头像地址
-     */
+    /** 用户头像 */
     private String avatar;
 
-    /**
-     * 密码
-     */
+    /** 密码 */
     private String password;
 
-    /**
-     * 帐号状态(0正常 1停用)
-     */
+    /** 帐号状态(0正常 1停用) */
     private String status;
 
-    /**
-     * 删除标志(0代表存在 2代表删除)
-     */
+    /** 删除标志(0代表存在 2代表删除) */
     private String delFlag;
 
-    /**
-     * 最后登录IP
-     */
+    /** 最后登录IP */
     private String loginIp;
 
-    /**
-     * 最后登录时间
-     */
-    private LocalDateTime loginDate;
-
-    /**
-     * 创建者
-     */
-    private String createBy;
-
-    /**
-     * 创建时间
-     */
-    private LocalDateTime createTime;
-
-    /**
-     * 更新者
-     */
-    private String updateBy;
-
-    /**
-     * 更新时间
-     */
-    private LocalDateTime updateTime;
-
-    /**
-     * 备注
-     */
-    private String remark;
+    /** 最后登录时间 */
+    private Date loginDate;
+
+    /** 部门对象 */
+    private SysDeptVO dept;
+
+    /** 角色对象 */
+    private List<SysRoleVO> roles;
+
+    /** 角色组 */
+    private Long[] roleIds;
+
+    /** 岗位组 */
+    private Long[] postIds;
+
+    /** 角色ID */
+    private Long roleId;
+
+    public Integer getTenantId() {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId) {
+        this.tenantId = tenantId;
+    }
+
+    private Integer tenantId;
+
+    public SysUserVO()
+    {
+
+    }
+
+    public SysUserVO(Long userId)
+    {
+        this.userId = userId;
+    }
+
+    public Long getUserId()
+    {
+        return userId;
+    }
+
+    public void setUserId(Long userId)
+    {
+        this.userId = userId;
+    }
+
+    public boolean isAdmin()
+    {
+        return isAdmin(this.userId);
+    }
+
+    public static boolean isAdmin(Long userId)
+    {
+        return userId != null && 1L == userId;
+    }
+
+    public Long getDeptId()
+    {
+        return deptId;
+    }
+
+    public void setDeptId(Long deptId)
+    {
+        this.deptId = deptId;
+    }
+
+    @Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符")
+    public String getNickName()
+    {
+        return nickName;
+    }
+
+    public void setNickName(String nickName)
+    {
+        this.nickName = nickName;
+    }
+
+    @NotBlank(message = "用户账号不能为空")
+    @Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符")
+    public String getUserName()
+    {
+        return userName;
+    }
+
+    public void setUserName(String userName)
+    {
+        this.userName = userName;
+    }
+
+    @Email(message = "邮箱格式不正确")
+    @Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
+    public String getEmail()
+    {
+        return email;
+    }
+
+    public void setEmail(String email)
+    {
+        this.email = email;
+    }
+
+    @Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符")
+    public String getPhonenumber()
+    {
+        return phonenumber;
+    }
+
+    public void setPhonenumber(String phonenumber)
+    {
+        this.phonenumber = phonenumber;
+    }
+
+    public String getSex()
+    {
+        return sex;
+    }
+
+    public void setSex(String sex)
+    {
+        this.sex = sex;
+    }
+
+    public String getAvatar()
+    {
+        return avatar;
+    }
+
+    public void setAvatar(String avatar)
+    {
+        this.avatar = avatar;
+    }
+
+    @JsonProperty
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword(String password)
+    {
+        this.password = password;
+    }
+
+    public String getStatus()
+    {
+        return status;
+    }
+
+    public void setStatus(String status)
+    {
+        this.status = status;
+    }
+
+    public String getDelFlag()
+    {
+        return delFlag;
+    }
+
+    public void setDelFlag(String delFlag)
+    {
+        this.delFlag = delFlag;
+    }
+
+    public String getLoginIp()
+    {
+        return loginIp;
+    }
+
+    public void setLoginIp(String loginIp)
+    {
+        this.loginIp = loginIp;
+    }
+
+    public Date getLoginDate()
+    {
+        return loginDate;
+    }
+
+    public void setLoginDate(Date loginDate)
+    {
+        this.loginDate = loginDate;
+    }
+
+    public SysDeptVO getDept()
+    {
+        return dept;
+    }
+
+    public void setDept(SysDeptVO dept)
+    {
+        this.dept = dept;
+    }
+
+    public List<SysRoleVO> getRoles()
+    {
+        return roles;
+    }
+
+    public void setRoles(List<SysRoleVO> roles)
+    {
+        this.roles = roles;
+    }
+
+    public Long[] getRoleIds()
+    {
+        return roleIds;
+    }
+
+    public void setRoleIds(Long[] roleIds)
+    {
+        this.roleIds = roleIds;
+    }
+
+    public Long[] getPostIds()
+    {
+        return postIds;
+    }
+
+    public void setPostIds(Long[] postIds)
+    {
+        this.postIds = postIds;
+    }
+
+    public Long getRoleId()
+    {
+        return roleId;
+    }
+
+    public void setRoleId(Long roleId)
+    {
+        this.roleId = roleId;
+    }
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("userId", getUserId())
+            .append("deptId", getDeptId())
+            .append("userName", getUserName())
+            .append("nickName", getNickName())
+            .append("email", getEmail())
+            .append("phonenumber", getPhonenumber())
+            .append("sex", getSex())
+            .append("avatar", getAvatar())
+            .append("password", getPassword())
+            .append("status", getStatus())
+            .append("delFlag", getDelFlag())
+            .append("loginIp", getLoginIp())
+            .append("loginDate", getLoginDate())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("remark", getRemark())
+            .append("dept", getDept())
+            .toString();
+    }
 }

+ 35 - 0
service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteFileFallbackFactory.java

@@ -0,0 +1,35 @@
+//package com.usky.system.factory;
+//
+//import com.usky.common.core.bean.ApiResult;
+//import com.usky.system.RemoteFileService;
+//import com.usky.system.domain.SysFileVO;
+//import org.slf4j.Logger;
+//import org.slf4j.LoggerFactory;
+//import org.springframework.cloud.openfeign.FallbackFactory;
+//import org.springframework.stereotype.Component;
+//import org.springframework.web.multipart.MultipartFile;
+//
+///**
+// * 文件服务降级处理
+// *
+// * @author ruoyi
+// */
+//@Component
+//public class RemoteFileFallbackFactory implements FallbackFactory<RemoteFileService>
+//{
+//    private static final Logger log = LoggerFactory.getLogger(RemoteFileFallbackFactory.class);
+//
+//    @Override
+//    public RemoteFileService create(Throwable throwable)
+//    {
+//        log.error("文件服务调用失败:{}", throwable.getMessage());
+//        return new RemoteFileService()
+//        {
+//            @Override
+//            public ApiResult<SysFileVO> upload(MultipartFile file)
+//            {
+//                return ApiResult.error("500","上传文件失败:" + throwable.getMessage());
+//            }
+//        };
+//    }
+//}

+ 42 - 0
service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteLogFallbackFactory.java

@@ -0,0 +1,42 @@
+//package com.usky.system.factory;
+//
+//import com.usky.common.core.bean.ApiResult;
+//import com.usky.system.RemoteLogService;
+//import com.usky.system.domain.SysLogininforVO;
+//import com.usky.system.domain.SysOperLogVO;
+//import org.slf4j.Logger;
+//import org.slf4j.LoggerFactory;
+//import org.springframework.cloud.openfeign.FallbackFactory;
+//import org.springframework.stereotype.Component;
+//
+///**
+// * 日志服务降级处理
+// *
+// * @author ruoyi
+// */
+//@Component
+//public class RemoteLogFallbackFactory implements FallbackFactory<RemoteLogService>
+//{
+//    private static final Logger log = LoggerFactory.getLogger(RemoteLogFallbackFactory.class);
+//
+//    @Override
+//    public RemoteLogService create(Throwable throwable)
+//    {
+//        log.error("日志服务调用失败:{}", throwable.getMessage());
+//        return new RemoteLogService()
+//        {
+//            @Override
+//            public ApiResult<Boolean> saveLog(SysOperLogVO sysOperLog, String source)
+//            {
+//                return ApiResult.error("500","保存日志失败");
+//            }
+//
+//            @Override
+//            public ApiResult<Boolean> saveLogininfor(SysLogininforVO sysLogininfor, String source)
+//            {
+//                return ApiResult.error("500","保存日志失败");
+//            }
+//        };
+//
+//    }
+//}

+ 0 - 48
service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteSystemFallbackFactory.java

@@ -1,48 +0,0 @@
-package com.usky.system.factory;
-
-import com.usky.common.core.bean.ApiResult;
-import com.usky.common.core.exception.BusinessException;
-import com.usky.system.RemoteSystemService;
-import com.usky.system.domain.SysUserVO;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import org.springframework.cloud.openfeign.FallbackFactory;
-import org.springframework.stereotype.Component;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.util.List;
-
-
-/**
- * 用户服务降级处理
- *
- * @author ruoyi
- */
-@Component
-public class RemoteSystemFallbackFactory implements FallbackFactory<RemoteSystemService>
-{
-    private static final Logger log = LoggerFactory.getLogger(RemoteSystemFallbackFactory.class);
-
-    @Override
-    public RemoteSystemService create(Throwable throwable)
-    {
-        log.error("用户服务调用失败:{}", throwable.getMessage());
-        return new RemoteSystemService() {
-            @Override
-            public ApiResult<List<SysUserVO>> getByUserName(String userName) {
-                throw new BusinessException(throwable.getMessage());
-            }
-
-            @Override
-            public ApiResult<List<SysUserVO>> add(SysUserVO sysUserVO) {
-                throw new BusinessException(throwable.getMessage());
-            }
-
-            @Override
-            public ApiResult<String> upload(MultipartFile file) {
-                throw new BusinessException(throwable.getMessage());
-            }
-        };
-    }
-}

+ 42 - 0
service-system/service-system-api/src/main/java/com/usky/system/factory/RemoteUserFallbackFactory.java

@@ -0,0 +1,42 @@
+package com.usky.system.factory;
+
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.system.RemoteUserService;
+import com.usky.system.domain.SysUserVO;
+import com.usky.system.model.LoginUser;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * 用户服务降级处理
+ * 
+ * @author ruoyi
+ */
+@Component
+public class RemoteUserFallbackFactory implements FallbackFactory<RemoteUserService>
+{
+    private static final Logger log = LoggerFactory.getLogger(RemoteUserFallbackFactory.class);
+
+    @Override
+    public RemoteUserService create(Throwable throwable)
+    {
+        log.error("用户服务调用失败:{}", throwable.getMessage());
+        return new RemoteUserService()
+        {
+            @Override
+            public ApiResult<LoginUser> getUserInfo(String username)
+            {
+                return ApiResult.error("500","获取用户失败:" + throwable.getMessage());
+            }
+
+            @Override
+            public ApiResult<Boolean> registerUserInfo(SysUserVO sysUser)
+            {
+                return ApiResult.error("500","注册用户失败:" + throwable.getMessage());
+            }
+        };
+    }
+}

+ 5 - 6
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/LoginUser.java → service-system/service-system-api/src/main/java/com/usky/system/model/LoginUser.java

@@ -1,8 +1,7 @@
-package com.usky.system.service.vo;
+package com.usky.system.model;
 
 
-
-import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysUserVO;
 
 import java.io.Serializable;
 import java.util.Set;
@@ -59,7 +58,7 @@ public class LoginUser implements Serializable
     /**
      * 用户信息
      */
-    private SysUser sysUser;
+    private SysUserVO sysUser;
 
     public String getToken()
     {
@@ -141,12 +140,12 @@ public class LoginUser implements Serializable
         this.roles = roles;
     }
 
-    public SysUser getSysUser()
+    public SysUserVO getSysUser()
     {
         return sysUser;
     }
 
-    public void setSysUser(SysUser sysUser)
+    public void setSysUser(SysUserVO sysUser)
     {
         this.sysUser = sysUser;
     }

+ 10 - 5
service-system/service-system-biz/pom.xml

@@ -90,11 +90,11 @@
             <artifactId>common-cloud-starter</artifactId>
         </dependency>
 
-        <dependency>
-            <groupId>com.usky</groupId>
-            <artifactId>usky-module-demo-api</artifactId>
-            <version>0.0.1</version>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>com.usky</groupId>-->
+<!--            <artifactId>usky-module-demo-api</artifactId>-->
+<!--            <version>0.0.1</version>-->
+<!--        </dependency>-->
 
 
         <!-- Pagehelper -->
@@ -103,6 +103,11 @@
             <artifactId>pagehelper-spring-boot-starter</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>com.usky</groupId>
+            <artifactId>ruoyi-common-security</artifactId>
+        </dependency>
+
     </dependencies>
 
     <build>

+ 29 - 59
service-system/service-system-biz/src/main/java/com/usky/system/controller/api/SysUserControllerApi.java

@@ -1,59 +1,29 @@
-//package com.usky.system.controller.api;
-//
-//import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-//import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-//import com.usky.common.core.bean.ApiResult;
-//import com.usky.common.core.exception.BusinessException;
-//import com.usky.common.core.util.BeanMapperUtils;
-//import com.usky.common.core.util.FileUtils;
-//import com.usky.common.spring.util.GlobalUtils;
-//import com.usky.demo.RemoteUserService;
-//import com.usky.system.domain.SysUserVO;
-//import com.usky.system.domain.SysUser;
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.web.bind.annotation.RestController;
-//import org.springframework.web.multipart.MultipartFile;
-//
-//import java.io.File;
-//import java.io.IOException;
-//import java.util.ArrayList;
-//import java.util.List;
-//import java.util.Optional;
-//
-//@RestController
-//public class SysUserControllerApi implements RemoteUserService {
-//
-//    @Autowired
-//    private SysUserService sysUserService;
-//    @Override
-//    public ApiResult<List<SysUserVO>> getByUserName(String userName) {
-//        LambdaQueryWrapper<SysUser> queryWrapper = Wrappers.lambdaQuery();
-//        queryWrapper.eq(SysUser::getUserName,userName);
-//        return ApiResult.success(BeanMapperUtils.mapList(sysUserService.list(queryWrapper),SysUser.class,SysUserVO.class));
-//    }
-//
-//    @Override
-//    public ApiResult<List<SysUserVO>> add(SysUserVO sysUserVO) {
-//        sysUserService.save(BeanMapperUtils.map(sysUserVO, SysUser.class));
-//        return ApiResult.success(new ArrayList<>());
-//    }
-//
-//    @Override
-//    public ApiResult<String> upload(MultipartFile multipartFile) {
-//        Optional.ofNullable(multipartFile).orElseThrow(() ->  new BusinessException("文件为空"));
-//        String originalFilename = multipartFile.getOriginalFilename();
-//        String newFileName = System.currentTimeMillis() + originalFilename;
-//        File file = FileUtils.getFile(GlobalUtils.getTempBaseDir(), newFileName);
-//        String urlPath = "";
-//        try {
-//            try {
-//                multipartFile.transferTo(file);
-//            } catch (IOException e) {
-//                throw new BusinessException("文件上传失败");
-//            }
-//        } catch (Exception e) {
-//
-//        }
-//        return ApiResult.success(urlPath);
-//    }
-//}
+package com.usky.system.controller.api;
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.common.core.util.BeanMapperUtils;
+import com.usky.system.RemoteUserService;
+import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysUserVO;
+import com.usky.system.model.LoginUser;
+import com.usky.system.service.ISysUserService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+public class SysUserControllerApi implements RemoteUserService {
+
+
+    @Autowired
+    private ISysUserService iSysUserService;
+
+    @Override
+    public ApiResult<LoginUser> getUserInfo(String username) {
+        return ApiResult.success(iSysUserService.getUserInfo(username));
+    }
+
+    @Override
+    public ApiResult<Boolean> registerUserInfo(SysUserVO sysUser) {
+        return ApiResult.success(iSysUserService.register(BeanMapperUtils.map(sysUser, SysUser.class)));
+    }
+}

+ 7 - 7
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDictDataController.java

@@ -4,7 +4,7 @@ package com.usky.system.controller.web;
 
 import com.usky.common.core.bean.ApiResult;
 import com.usky.system.controller.web.page.TableDataInfo;
-import com.usky.system.domain.SysDictData;
+import com.usky.system.domain.SysDictDataVO;
 import com.usky.system.service.ISysDictDataService;
 import com.usky.system.service.ISysDictTypeService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -32,10 +32,10 @@ public class SysDictDataController extends BaseController
     private ISysDictTypeService dictTypeService;
 
     @GetMapping("/list")
-    public ApiResult<TableDataInfo> list(SysDictData dictData)
+    public ApiResult<TableDataInfo> list(SysDictDataVO dictData)
     {
         startPage();
-        List<SysDictData> list = dictDataService.selectDictDataList(dictData);
+        List<SysDictDataVO> list = dictDataService.selectDictDataList(dictData);
         return ApiResult.success(getDataTable(list));
     }
 
@@ -54,10 +54,10 @@ public class SysDictDataController extends BaseController
     @GetMapping(value = "/type/{dictType}")
     public ApiResult dictType(@PathVariable String dictType)
     {
-        List<SysDictData> data = dictTypeService.selectDictDataByType(dictType);
+        List<SysDictDataVO> data = dictTypeService.selectDictDataByType(dictType);
         if (Objects.isNull(data))
         {
-            data = new ArrayList<SysDictData>();
+            data = new ArrayList<SysDictDataVO>();
         }
         return ApiResult.success(data);
     }
@@ -66,7 +66,7 @@ public class SysDictDataController extends BaseController
      * 新增字典类型
      */
     @PostMapping
-    public ApiResult add(@Validated @RequestBody SysDictData dict)
+    public ApiResult add(@Validated @RequestBody SysDictDataVO dict)
     {
 //        dict.setCreateBy(SecurityUtils.getUsername());
         return toAjax(dictDataService.insertDictData(dict));
@@ -76,7 +76,7 @@ public class SysDictDataController extends BaseController
      * 修改保存字典类型
      */
     @PutMapping
-    public ApiResult edit(@Validated @RequestBody SysDictData dict)
+    public ApiResult edit(@Validated @RequestBody SysDictDataVO dict)
     {
 //        dict.setUpdateBy(SecurityUtils.getUsername());
         return toAjax(dictDataService.updateDictData(dict));

+ 6 - 6
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDictTypeController.java

@@ -5,7 +5,7 @@ package com.usky.system.controller.web;
 import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessErrorCode;
 import com.usky.system.controller.web.page.TableDataInfo;
-import com.usky.system.domain.SysDictType;
+import com.usky.system.domain.SysDictTypeVO;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.service.ISysDictTypeService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -28,10 +28,10 @@ public class SysDictTypeController extends BaseController
 
 
     @GetMapping("/list")
-    public ApiResult<TableDataInfo> list(SysDictType dictType)
+    public ApiResult<TableDataInfo> list(SysDictTypeVO dictType)
     {
         startPage();
-        List<SysDictType> list = dictTypeService.selectDictTypeList(dictType);
+        List<SysDictTypeVO> list = dictTypeService.selectDictTypeList(dictType);
         return ApiResult.success(getDataTable(list));
     }
 
@@ -48,7 +48,7 @@ public class SysDictTypeController extends BaseController
      * 新增字典类型
      */
     @PostMapping
-    public ApiResult add(@Validated @RequestBody SysDictType dict)
+    public ApiResult add(@Validated @RequestBody SysDictTypeVO dict)
     {
         if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictTypeUnique(dict)))
         {
@@ -62,7 +62,7 @@ public class SysDictTypeController extends BaseController
      * 修改字典类型
      */
     @PutMapping
-    public ApiResult edit(@Validated @RequestBody SysDictType dict)
+    public ApiResult edit(@Validated @RequestBody SysDictTypeVO dict)
     {
         if (UserConstants.NOT_UNIQUE.equals(dictTypeService.checkDictTypeUnique(dict)))
         {
@@ -98,7 +98,7 @@ public class SysDictTypeController extends BaseController
     @GetMapping("/optionselect")
     public ApiResult optionselect()
     {
-        List<SysDictType> dictTypes = dictTypeService.selectDictTypeAll();
+        List<SysDictTypeVO> dictTypes = dictTypeService.selectDictTypeAll();
         return ApiResult.success(dictTypes);
     }
 }

+ 0 - 2
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysLogininforController.java

@@ -5,11 +5,9 @@ import com.usky.common.core.bean.ApiResult;
 import com.usky.system.controller.web.page.TableDataInfo;
 import com.usky.system.domain.SysLogininfor;
 import com.usky.system.service.ISysLogininforService;
-import lombok.extern.java.Log;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**

+ 0 - 2
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysMenuController.java

@@ -6,11 +6,9 @@ import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.constants.CommonConst;
 import com.usky.common.core.exception.BusinessErrorCode;
 import com.usky.common.core.util.StringUtils;
-import com.usky.common.mvc.utils.ServletUtils;
 import com.usky.system.domain.SysMenu;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.service.ISysMenuService;
-import com.usky.system.service.vo.LoginUser;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;

+ 4 - 4
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysOperlogController.java

@@ -3,7 +3,7 @@ package com.usky.system.controller.web;
 
 import com.usky.common.core.bean.ApiResult;
 import com.usky.system.controller.web.page.TableDataInfo;
-import com.usky.system.domain.SysOperLog;
+import com.usky.system.domain.SysOperLogVO;
 import com.usky.system.service.ISysOperLogService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -23,10 +23,10 @@ public class SysOperlogController extends BaseController
     private ISysOperLogService operLogService;
 
     @GetMapping("/list")
-    public TableDataInfo list(SysOperLog operLog)
+    public TableDataInfo list(SysOperLogVO operLog)
     {
         startPage();
-        List<SysOperLog> list = operLogService.selectOperLogList(operLog);
+        List<SysOperLogVO> list = operLogService.selectOperLogList(operLog);
         return getDataTable(list);
     }
 
@@ -46,7 +46,7 @@ public class SysOperlogController extends BaseController
     }
 
     @PostMapping
-    public ApiResult<Void> add(@RequestBody SysOperLog operLog)
+    public ApiResult<Void> add(@RequestBody SysOperLogVO operLog)
     {
         operLogService.insertOperlog(operLog);
         return ApiResult.success();

+ 7 - 8
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysRoleController.java

@@ -4,9 +4,8 @@ package com.usky.system.controller.web;
 
 import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessErrorCode;
-import com.usky.common.mvc.utils.ServletUtils;
 import com.usky.system.controller.web.page.TableDataInfo;
-import com.usky.system.domain.SysRole;
+import com.usky.system.domain.SysRoleVO;
 import com.usky.system.domain.SysUser;
 import com.usky.system.domain.SysUserRole;
 import com.usky.system.domain.constants.UserConstants;
@@ -39,10 +38,10 @@ public class SysRoleController extends BaseController
     private ISysUserService userService;
 
     @GetMapping("/list")
-    public ApiResult<TableDataInfo> list(SysRole role)
+    public ApiResult<TableDataInfo> list(SysRoleVO role)
     {
         startPage();
-        List<SysRole> list = roleService.selectRoleList(role);
+        List<SysRoleVO> list = roleService.selectRoleList(role);
         return ApiResult.success(getDataTable(list));
     }
 
@@ -59,7 +58,7 @@ public class SysRoleController extends BaseController
      * 新增角色
      */
     @PostMapping
-    public ApiResult add(@Validated @RequestBody SysRole role)
+    public ApiResult add(@Validated @RequestBody SysRoleVO role)
     {
         if (UserConstants.NOT_UNIQUE.equals(roleService.checkRoleNameUnique(role)))
         {
@@ -78,7 +77,7 @@ public class SysRoleController extends BaseController
      * 修改保存角色
      */
     @PutMapping
-    public ApiResult edit(@Validated @RequestBody SysRole role)
+    public ApiResult edit(@Validated @RequestBody SysRoleVO role)
     {
         roleService.checkRoleAllowed(role);
         if (UserConstants.NOT_UNIQUE.equals(roleService.checkRoleNameUnique(role)))
@@ -97,7 +96,7 @@ public class SysRoleController extends BaseController
      * 修改保存数据权限
      */
     @PutMapping("/dataScope")
-    public ApiResult dataScope(@RequestBody SysRole role)
+    public ApiResult dataScope(@RequestBody SysRoleVO role)
     {
         roleService.checkRoleAllowed(role);
         return toAjax(roleService.authDataScope(role));
@@ -107,7 +106,7 @@ public class SysRoleController extends BaseController
      * 状态修改
      */
     @PutMapping("/changeStatus")
-    public ApiResult changeStatus(@RequestBody SysRole role)
+    public ApiResult changeStatus(@RequestBody SysRoleVO role)
     {
         roleService.checkRoleAllowed(role);
 //        role.setUpdateBy(SecurityUtils.getUsername());

+ 3 - 3
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysUserController.java

@@ -6,7 +6,7 @@ import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessErrorCode;
 import com.usky.common.core.util.StringUtils;
 import com.usky.system.controller.web.page.TableDataInfo;
-import com.usky.system.domain.SysRole;
+import com.usky.system.domain.SysRoleVO;
 import com.usky.system.domain.SysUser;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.service.ISysPostService;
@@ -59,7 +59,7 @@ public class SysUserController extends BaseController
     public ApiResult<Map<String,Object>> getInfo(@PathVariable(value = "userId", required = false) Long userId)
     {
         Map<String,Object> ajax = new HashMap<>();
-        List<SysRole> roles = roleService.selectRoleAll();
+        List<SysRoleVO> roles = roleService.selectRoleAll();
         ajax.put("roles", SysUser.isAdmin(userId) ? roles : roles.stream().filter(r -> !r.isAdmin()).collect(Collectors.toList()));
         ajax.put("posts", postService.selectPostAll());
         if (Objects.nonNull(userId))
@@ -160,7 +160,7 @@ public class SysUserController extends BaseController
     {
         Map<String,Object> ajax = new HashMap<>();
         SysUser user = userService.selectUserById(userId);
-        List<SysRole> roles = roleService.selectRolesByUserId(userId);
+        List<SysRoleVO> roles = roleService.selectRolesByUserId(userId);
         ajax.put("user", user);
         ajax.put("roles", SysUser.isAdmin(userId) ? roles : roles.stream().filter(r -> !r.isAdmin()).collect(Collectors.toList()));
         return ApiResult.success(ajax);

+ 0 - 13
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TestController.java

@@ -1,10 +1,7 @@
 package com.usky.system.controller.web;
 
-import com.usky.demo.RemoteUserService;
-import com.usky.system.RemoteSystemService;
 import com.usky.system.domain.SysConfig;
 import com.usky.system.service.*;
-import com.usky.system.service.impl.SysConfigServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -50,14 +47,4 @@ public class TestController {
 
     }
 
-
-    @Autowired
-    private RemoteUserService remoteUserService;
-
-    @RequestMapping("test2")
-    public void test2(){
-        remoteUserService.getByUserName("name");
-        System.out.println("远程调用成功");
-    }
-
 }

+ 87 - 0
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TokenController.java

@@ -0,0 +1,87 @@
+package com.usky.system.controller.web;
+
+import com.ruoyi.common.core.utils.JwtUtils;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.security.auth.AuthUtil;
+import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.usky.common.core.bean.ApiResult;
+import com.usky.system.model.LoginUser;
+import com.usky.system.service.SysLoginService;
+import com.usky.system.service.vo.LoginBody;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * token 控制
+ *
+ * @author ruoyi
+ */
+@RestController
+public class TokenController
+{
+    @Autowired
+    private TokenService tokenService;
+
+    @Autowired
+    private SysLoginService sysLoginService;
+
+    @PostMapping("login")
+    public ApiResult<?> login(@RequestBody LoginBody form)
+    {
+        // 用户登录
+        LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword());
+        // 获取登录token
+        return ApiResult.success(tokenService.createToken(userInfo));
+    }
+
+    @PostMapping("login1")
+    public ApiResult<?> login1(@RequestBody LoginBody form)
+    {
+        // 用户登录
+        LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword());
+        // 获取登录token
+        return ApiResult.success(tokenService.createToken(userInfo));
+    }
+
+    @DeleteMapping("logout")
+    public ApiResult<?> logout(HttpServletRequest request)
+    {
+        String token = SecurityUtils.getToken(request);
+        if (StringUtils.isNotEmpty(token))
+        {
+            String username = JwtUtils.getUserName(token);
+            // 删除用户缓存记录
+            AuthUtil.logoutByToken(token);
+            // 记录用户退出日志
+            sysLoginService.logout(username);
+        }
+        return ApiResult.success();
+    }
+
+    @PostMapping("refresh")
+    public ApiResult<?> refresh(HttpServletRequest request)
+    {
+        LoginUser loginUser = tokenService.getLoginUser(request);
+        if (StringUtils.isNotNull(loginUser))
+        {
+            // 刷新令牌有效期
+            tokenService.refreshToken(loginUser);
+            return ApiResult.success();
+        }
+        return ApiResult.success();
+    }
+
+//    @PostMapping("register")
+//    public ApiResult<?> register(@RequestBody RegisterBody registerBody)
+//    {
+//        // 用户注册
+//        sysLoginService.register(registerBody.getUsername(), registerBody.getPassword());
+//        return ApiResult.success();
+//    }
+}

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysConfig.java

@@ -1,7 +1,7 @@
 package com.usky.system.domain;
 
 
-import com.usky.system.domain.core.BaseEntity;
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDept.java

@@ -2,7 +2,7 @@ package com.usky.system.domain;
 
 import  com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
-import com.usky.system.domain.core.BaseEntity;
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDictData.java

@@ -1,8 +1,8 @@
 package com.usky.system.domain;
 
 
+import com.usky.common.mvc.domain.BaseEntity;
 import com.usky.system.domain.constants.UserConstants;
-import com.usky.system.domain.core.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDictType.java

@@ -1,7 +1,7 @@
 package com.usky.system.domain;
 
 
-import com.usky.system.domain.core.BaseEntity;
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 12 - 53
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysLogininfor.java

@@ -1,15 +1,13 @@
 package com.usky.system.domain;
 
-import  com.fasterxml.jackson.annotation.JsonFormat;
-import com.usky.system.domain.core.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonFormat;
 
 import java.util.Date;
 
-
 /**
  * 系统访问记录表 sys_logininfor
- * 
- * @author yq
+ *
+ * @author ruoyi
  */
 public class SysLogininfor
 {
@@ -21,27 +19,18 @@ public class SysLogininfor
     /** 用户账号 */
     private String userName;
 
-    /** 登录状态 0成功 1失败 */
+    /** 状态 0成功 1失败 */
     private String status;
 
-    /** 登录IP地址 */
+    /** 地址 */
     private String ipaddr;
 
-    /** 登录地点 */
-    private String loginLocation;
-
-    /** 浏览器类型 */
-    private String browser;
-
-    /** 操作系统 */
-    private String os;
-
-    /** 提示消息 */
+    /** 描述 */
     private String msg;
 
     /** 访问时间 */
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date loginTime;
+    private Date accessTime;
 
     public Long getInfoId()
     {
@@ -83,36 +72,6 @@ public class SysLogininfor
         this.ipaddr = ipaddr;
     }
 
-    public String getLoginLocation()
-    {
-        return loginLocation;
-    }
-
-    public void setLoginLocation(String loginLocation)
-    {
-        this.loginLocation = loginLocation;
-    }
-
-    public String getBrowser()
-    {
-        return browser;
-    }
-
-    public void setBrowser(String browser)
-    {
-        this.browser = browser;
-    }
-
-    public String getOs()
-    {
-        return os;
-    }
-
-    public void setOs(String os)
-    {
-        this.os = os;
-    }
-
     public String getMsg()
     {
         return msg;
@@ -123,13 +82,13 @@ public class SysLogininfor
         this.msg = msg;
     }
 
-    public Date getLoginTime()
+    public Date getAccessTime()
     {
-        return loginTime;
+        return accessTime;
     }
 
-    public void setLoginTime(Date loginTime)
+    public void setAccessTime(Date accessTime)
     {
-        this.loginTime = loginTime;
+        this.accessTime = accessTime;
     }
-}
+}

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMenu.java

@@ -1,7 +1,7 @@
 package com.usky.system.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
-import com.usky.system.domain.core.BaseEntity;
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 2 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysNotice.java

@@ -1,6 +1,7 @@
 package com.usky.system.domain;
 
-import com.usky.system.domain.core.BaseEntity;
+
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysOperLog.java

@@ -2,7 +2,6 @@ package com.usky.system.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import  com.fasterxml.jackson.annotation.JsonFormat;
-import com.usky.system.domain.core.BaseEntity;
 
 import java.util.Date;
 

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPost.java

@@ -1,7 +1,7 @@
 package com.usky.system.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
-import com.usky.system.domain.core.BaseEntity;
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysRole.java

@@ -1,6 +1,6 @@
 package com.usky.system.domain;
 
-import com.usky.system.domain.core.BaseEntity;
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 

+ 7 - 7
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysUser.java

@@ -4,7 +4,7 @@ import  com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
-import com.usky.system.domain.core.BaseEntity;
+import com.usky.common.mvc.domain.BaseEntity;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 
@@ -70,11 +70,11 @@ public class SysUser extends BaseEntity
 
     /** 部门对象 */
     @TableField(exist = false)
-    private SysDept dept;
+    private SysDeptVO dept;
 
     /** 角色对象 */
     @TableField(exist = false)
-    private List<SysRole> roles;
+    private List<SysRoleVO> roles;
 
     /** 角色组 */
     @TableField(exist = false)
@@ -258,22 +258,22 @@ public class SysUser extends BaseEntity
         this.loginDate = loginDate;
     }
 
-    public SysDept getDept()
+    public SysDeptVO getDept()
     {
         return dept;
     }
 
-    public void setDept(SysDept dept)
+    public void setDept(SysDeptVO dept)
     {
         this.dept = dept;
     }
 
-    public List<SysRole> getRoles()
+    public List<SysRoleVO> getRoles()
     {
         return roles;
     }
 
-    public void setRoles(List<SysRole> roles)
+    public void setRoles(List<SysRoleVO> roles)
     {
         this.roles = roles;
     }

+ 0 - 119
service-system/service-system-biz/src/main/java/com/usky/system/domain/core/BaseEntity.java

@@ -1,119 +0,0 @@
-package com.usky.system.domain.core;
-
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-
-import java.io.Serializable;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * Entity基类
- * 
- * @author yq
- */
-public class BaseEntity implements Serializable
-{
-    private static final long serialVersionUID = 1L;
-
-    /** 搜索值 */
-    @TableField(exist = false)
-    private String searchValue;
-
-    /** 创建者 */
-    private String createBy;
-
-    /** 创建时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date createTime;
-
-    /** 更新者 */
-    private String updateBy;
-
-    /** 更新时间 */
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date updateTime;
-
-    /** 备注 */
-    @TableField(exist = false)
-    private String remark;
-
-    /** 请求参数 */
-    @TableField(exist = false)
-    private Map<String, Object> params;
-
-    public String getSearchValue()
-    {
-        return searchValue;
-    }
-
-    public void setSearchValue(String searchValue)
-    {
-        this.searchValue = searchValue;
-    }
-
-    public String getCreateBy()
-    {
-        return createBy;
-    }
-
-    public void setCreateBy(String createBy)
-    {
-        this.createBy = createBy;
-    }
-
-    public Date getCreateTime()
-    {
-        return createTime;
-    }
-
-    public void setCreateTime(Date createTime)
-    {
-        this.createTime = createTime;
-    }
-
-    public String getUpdateBy()
-    {
-        return updateBy;
-    }
-
-    public void setUpdateBy(String updateBy)
-    {
-        this.updateBy = updateBy;
-    }
-
-    public Date getUpdateTime()
-    {
-        return updateTime;
-    }
-
-    public void setUpdateTime(Date updateTime)
-    {
-        this.updateTime = updateTime;
-    }
-
-    public String getRemark()
-    {
-        return remark;
-    }
-
-    public void setRemark(String remark)
-    {
-        this.remark = remark;
-    }
-
-    public Map<String, Object> getParams()
-    {
-        if (params == null)
-        {
-            params = new HashMap<>();
-        }
-        return params;
-    }
-
-    public void setParams(Map<String, Object> params)
-    {
-        this.params = params;
-    }
-}

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysConfigMapper.java

@@ -3,7 +3,6 @@ package com.usky.system.mapper;
 
 import com.usky.common.mvc.base.CrudMapper;
 import com.usky.system.domain.SysConfig;
-import com.usky.system.domain.SysDictData;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;

+ 7 - 8
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysDictDataMapper.java

@@ -2,8 +2,7 @@ package com.usky.system.mapper;
 
 
 import com.usky.common.mvc.base.CrudMapper;
-import com.usky.system.domain.SysDictData;
-import com.usky.system.domain.SysDictType;
+import com.usky.system.domain.SysDictDataVO;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
@@ -16,7 +15,7 @@ import java.util.List;
  * @author yq
  */
 @Repository
-public interface SysDictDataMapper extends CrudMapper<SysDictData>
+public interface SysDictDataMapper extends CrudMapper<SysDictDataVO>
 {
     /**
      * 根据条件分页查询字典数据
@@ -24,7 +23,7 @@ public interface SysDictDataMapper extends CrudMapper<SysDictData>
      * @param dictData 字典数据信息
      * @return 字典数据集合信息
      */
-    public List<SysDictData> selectDictDataList(SysDictData dictData);
+    public List<SysDictDataVO> selectDictDataList(SysDictDataVO dictData);
 
     /**
      * 根据字典类型查询字典数据
@@ -32,7 +31,7 @@ public interface SysDictDataMapper extends CrudMapper<SysDictData>
      * @param dictType 字典类型
      * @return 字典数据集合信息
      */
-    public List<SysDictData> selectDictDataByType(String dictType);
+    public List<SysDictDataVO> selectDictDataByType(String dictType);
 
     /**
      * 根据字典类型和字典键值查询字典数据信息
@@ -49,7 +48,7 @@ public interface SysDictDataMapper extends CrudMapper<SysDictData>
      * @param dictCode 字典数据ID
      * @return 字典数据
      */
-    public SysDictData selectDictDataById(Long dictCode);
+    public SysDictDataVO selectDictDataById(Long dictCode);
 
     /**
      * 查询字典数据
@@ -81,7 +80,7 @@ public interface SysDictDataMapper extends CrudMapper<SysDictData>
      * @param dictData 字典数据信息
      * @return 结果
      */
-    public int insertDictData(SysDictData dictData);
+    public int insertDictData(SysDictDataVO dictData);
 
     /**
      * 修改字典数据信息
@@ -89,7 +88,7 @@ public interface SysDictDataMapper extends CrudMapper<SysDictData>
      * @param dictData 字典数据信息
      * @return 结果
      */
-    public int updateDictData(SysDictData dictData);
+    public int updateDictData(SysDictDataVO dictData);
 
     /**
      * 同步修改字典类型

+ 9 - 10
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysDictTypeMapper.java

@@ -2,8 +2,7 @@ package com.usky.system.mapper;
 
 
 import com.usky.common.mvc.base.CrudMapper;
-import com.usky.system.domain.SysDictType;
-import com.usky.system.domain.SysLogininfor;
+import com.usky.system.domain.SysDictTypeVO;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -15,7 +14,7 @@ import java.util.List;
  * @author yq
  */
 @Repository
-public interface SysDictTypeMapper extends CrudMapper<SysDictType>
+public interface SysDictTypeMapper extends CrudMapper<SysDictTypeVO>
 {
     /**
      * 根据条件分页查询字典类型
@@ -23,14 +22,14 @@ public interface SysDictTypeMapper extends CrudMapper<SysDictType>
      * @param dictType 字典类型信息
      * @return 字典类型集合信息
      */
-    public List<SysDictType> selectDictTypeList(SysDictType dictType);
+    public List<SysDictTypeVO> selectDictTypeList(SysDictTypeVO dictType);
 
     /**
      * 根据所有字典类型
      * 
      * @return 字典类型集合信息
      */
-    public List<SysDictType> selectDictTypeAll();
+    public List<SysDictTypeVO> selectDictTypeAll();
 
     /**
      * 根据字典类型ID查询信息
@@ -38,7 +37,7 @@ public interface SysDictTypeMapper extends CrudMapper<SysDictType>
      * @param dictId 字典类型ID
      * @return 字典类型
      */
-    public SysDictType selectDictTypeById(Long dictId);
+    public SysDictTypeVO selectDictTypeById(Long dictId);
 
     /**
      * 根据字典类型查询信息
@@ -46,7 +45,7 @@ public interface SysDictTypeMapper extends CrudMapper<SysDictType>
      * @param dictType 字典类型
      * @return 字典类型
      */
-    public SysDictType selectDictTypeByType(String dictType);
+    public SysDictTypeVO selectDictTypeByType(String dictType);
 
     /**
      * 通过字典ID删除字典信息
@@ -70,7 +69,7 @@ public interface SysDictTypeMapper extends CrudMapper<SysDictType>
      * @param dictType 字典类型信息
      * @return 结果
      */
-    public int insertDictType(SysDictType dictType);
+    public int insertDictType(SysDictTypeVO dictType);
 
     /**
      * 修改字典类型信息
@@ -78,7 +77,7 @@ public interface SysDictTypeMapper extends CrudMapper<SysDictType>
      * @param dictType 字典类型信息
      * @return 结果
      */
-    public int updateDictType(SysDictType dictType);
+    public int updateDictType(SysDictTypeVO dictType);
 
     /**
      * 校验字典类型称是否唯一
@@ -86,5 +85,5 @@ public interface SysDictTypeMapper extends CrudMapper<SysDictType>
      * @param dictType 字典类型
      * @return 结果
      */
-    public SysDictType checkDictTypeUnique(String dictType);
+    public SysDictTypeVO checkDictTypeUnique(String dictType);
 }

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysLogininforMapper.java

@@ -3,7 +3,6 @@ package com.usky.system.mapper;
 
 import com.usky.common.mvc.base.CrudMapper;
 import com.usky.system.domain.SysLogininfor;
-import com.usky.system.domain.SysMenu;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMenuMapper.java

@@ -3,7 +3,6 @@ package com.usky.system.mapper;
 
 import com.usky.common.mvc.base.CrudMapper;
 import com.usky.system.domain.SysMenu;
-import com.usky.system.domain.SysOperLog;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 

+ 5 - 6
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysOperLogMapper.java

@@ -2,8 +2,7 @@ package com.usky.system.mapper;
 
 
 import com.usky.common.mvc.base.CrudMapper;
-import com.usky.system.domain.SysOperLog;
-import com.usky.system.domain.SysPost;
+import com.usky.system.domain.SysOperLogVO;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -15,14 +14,14 @@ import java.util.List;
  * @author yq
  */
 @Repository
-public interface SysOperLogMapper extends CrudMapper<SysOperLog>
+public interface SysOperLogMapper extends CrudMapper<SysOperLogVO>
 {
     /**
      * 新增操作日志
      * 
      * @param operLog 操作日志对象
      */
-    public void insertOperlog(SysOperLog operLog);
+    public void insertOperlog(SysOperLogVO operLog);
 
     /**
      * 查询系统操作日志集合
@@ -30,7 +29,7 @@ public interface SysOperLogMapper extends CrudMapper<SysOperLog>
      * @param operLog 操作日志对象
      * @return 操作日志集合
      */
-    public List<SysOperLog> selectOperLogList(SysOperLog operLog);
+    public List<SysOperLogVO> selectOperLogList(SysOperLogVO operLog);
 
     /**
      * 批量删除系统操作日志
@@ -46,7 +45,7 @@ public interface SysOperLogMapper extends CrudMapper<SysOperLog>
      * @param operId 操作ID
      * @return 操作日志对象
      */
-    public SysOperLog selectOperLogById(Long operId);
+    public SysOperLogVO selectOperLogById(Long operId);
 
     /**
      * 清空操作日志

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysPostMapper.java

@@ -3,7 +3,6 @@ package com.usky.system.mapper;
 
 import com.usky.common.mvc.base.CrudMapper;
 import com.usky.system.domain.SysPost;
-import com.usky.system.domain.SysRole;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysRoleDeptMapper.java

@@ -2,7 +2,6 @@ package com.usky.system.mapper;
 
 
 import com.usky.common.mvc.base.CrudMapper;
-import com.usky.system.domain.SysRole;
 import com.usky.system.domain.SysRoleDept;
 import org.springframework.stereotype.Repository;
 

+ 11 - 12
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysRoleMapper.java

@@ -2,8 +2,7 @@ package com.usky.system.mapper;
 
 
 import com.usky.common.mvc.base.CrudMapper;
-import com.usky.system.domain.SysRole;
-import com.usky.system.domain.SysRoleMenu;
+import com.usky.system.domain.SysRoleVO;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -14,7 +13,7 @@ import java.util.List;
  * @author yq
  */
 @Repository
-public interface SysRoleMapper extends CrudMapper<SysRole>
+public interface SysRoleMapper extends CrudMapper<SysRoleVO>
 {
     /**
      * 根据条件分页查询角色数据
@@ -22,7 +21,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param role 角色信息
      * @return 角色数据集合信息
      */
-    public List<SysRole> selectRoleList(SysRole role);
+    public List<SysRoleVO> selectRoleList(SysRoleVO role);
 
     /**
      * 根据用户ID查询角色
@@ -30,14 +29,14 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param userId 用户ID
      * @return 角色列表
      */
-    public List<SysRole> selectRolePermissionByUserId(Long userId);
+    public List<SysRoleVO> selectRolePermissionByUserId(Long userId);
 
     /**
      * 查询所有角色
      * 
      * @return 角色列表
      */
-    public List<SysRole> selectRoleAll();
+    public List<SysRoleVO> selectRoleAll();
 
     /**
      * 根据用户ID获取角色选择框列表
@@ -53,7 +52,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param roleId 角色ID
      * @return 角色对象信息
      */
-    public SysRole selectRoleById(Long roleId);
+    public SysRoleVO selectRoleById(Long roleId);
 
     /**
      * 根据用户ID查询角色
@@ -61,7 +60,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param userName 用户名
      * @return 角色列表
      */
-    public List<SysRole> selectRolesByUserName(String userName);
+    public List<SysRoleVO> selectRolesByUserName(String userName);
 
     /**
      * 校验角色名称是否唯一
@@ -69,7 +68,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param roleName 角色名称
      * @return 角色信息
      */
-    public SysRole checkRoleNameUnique(String roleName);
+    public SysRoleVO checkRoleNameUnique(String roleName);
 
     /**
      * 校验角色权限是否唯一
@@ -77,7 +76,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param roleKey 角色权限
      * @return 角色信息
      */
-    public SysRole checkRoleKeyUnique(String roleKey);
+    public SysRoleVO checkRoleKeyUnique(String roleKey);
 
     /**
      * 修改角色信息
@@ -85,7 +84,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public int updateRole(SysRole role);
+    public int updateRole(SysRoleVO role);
 
     /**
      * 新增角色信息
@@ -93,7 +92,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public int insertRole(SysRole role);
+    public int insertRole(SysRoleVO role);
 
     /**
      * 通过角色ID删除角色

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysRoleMenuMapper.java

@@ -3,7 +3,6 @@ package com.usky.system.mapper;
 
 import com.usky.common.mvc.base.CrudMapper;
 import com.usky.system.domain.SysRoleMenu;
-import com.usky.system.domain.SysUser;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysUserRoleMapper.java

@@ -2,7 +2,6 @@ package com.usky.system.mapper;
 
 
 import com.usky.common.mvc.base.CrudMapper;
-import com.usky.system.domain.SysUser;
 import com.usky.system.domain.SysUserRole;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysConfigService.java

@@ -5,7 +5,6 @@ package com.usky.system.service;
 
 import com.usky.common.mvc.base.CrudService;
 import com.usky.system.domain.SysConfig;
-import com.usky.system.domain.SysDictType;
 
 import java.util.List;
 

+ 6 - 7
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysDictDataService.java

@@ -2,8 +2,7 @@ package com.usky.system.service;
 
 
 import com.usky.common.mvc.base.CrudService;
-import com.usky.system.domain.SysDictData;
-import com.usky.system.domain.SysDictType;
+import com.usky.system.domain.SysDictDataVO;
 
 import java.util.List;
 
@@ -12,7 +11,7 @@ import java.util.List;
  * 
  * @author yq
  */
-public interface ISysDictDataService extends CrudService<SysDictData>
+public interface ISysDictDataService extends CrudService<SysDictDataVO>
 {
     /**
      * 根据条件分页查询字典数据
@@ -20,7 +19,7 @@ public interface ISysDictDataService extends CrudService<SysDictData>
      * @param dictData 字典数据信息
      * @return 字典数据集合信息
      */
-    public List<SysDictData> selectDictDataList(SysDictData dictData);
+    public List<SysDictDataVO> selectDictDataList(SysDictDataVO dictData);
 
     /**
      * 根据字典类型和字典键值查询字典数据信息
@@ -37,7 +36,7 @@ public interface ISysDictDataService extends CrudService<SysDictData>
      * @param dictCode 字典数据ID
      * @return 字典数据
      */
-    public SysDictData selectDictDataById(Long dictCode);
+    public SysDictDataVO selectDictDataById(Long dictCode);
 
     /**
      * 批量删除字典数据信息
@@ -53,7 +52,7 @@ public interface ISysDictDataService extends CrudService<SysDictData>
      * @param dictData 字典数据信息
      * @return 结果
      */
-    public int insertDictData(SysDictData dictData);
+    public int insertDictData(SysDictDataVO dictData);
 
     /**
      * 修改保存字典数据信息
@@ -61,5 +60,5 @@ public interface ISysDictDataService extends CrudService<SysDictData>
      * @param dictData 字典数据信息
      * @return 结果
      */
-    public int updateDictData(SysDictData dictData);
+    public int updateDictData(SysDictDataVO dictData);
 }

+ 11 - 12
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysDictTypeService.java

@@ -6,9 +6,8 @@ package com.usky.system.service;
 
 
 import com.usky.common.mvc.base.CrudService;
-import com.usky.system.domain.SysDictData;
-import com.usky.system.domain.SysDictType;
-import com.usky.system.domain.SysPost;
+import com.usky.system.domain.SysDictDataVO;
+import com.usky.system.domain.SysDictTypeVO;
 
 import java.util.List;
 
@@ -18,7 +17,7 @@ import java.util.List;
  * 
  * @author yq
  */
-public interface ISysDictTypeService extends CrudService<SysDictType>
+public interface ISysDictTypeService extends CrudService<SysDictTypeVO>
 {
     /**
      * 根据条件分页查询字典类型
@@ -26,14 +25,14 @@ public interface ISysDictTypeService extends CrudService<SysDictType>
      * @param dictType 字典类型信息
      * @return 字典类型集合信息
      */
-    public List<SysDictType> selectDictTypeList(SysDictType dictType);
+    public List<SysDictTypeVO> selectDictTypeList(SysDictTypeVO dictType);
 
     /**
      * 根据所有字典类型
      * 
      * @return 字典类型集合信息
      */
-    public List<SysDictType> selectDictTypeAll();
+    public List<SysDictTypeVO> selectDictTypeAll();
 
     /**
      * 根据字典类型查询字典数据
@@ -41,7 +40,7 @@ public interface ISysDictTypeService extends CrudService<SysDictType>
      * @param dictType 字典类型
      * @return 字典数据集合信息
      */
-    public List<SysDictData> selectDictDataByType(String dictType);
+    public List<SysDictDataVO> selectDictDataByType(String dictType);
 
     /**
      * 根据字典类型ID查询信息
@@ -49,7 +48,7 @@ public interface ISysDictTypeService extends CrudService<SysDictType>
      * @param dictId 字典类型ID
      * @return 字典类型
      */
-    public SysDictType selectDictTypeById(Long dictId);
+    public SysDictTypeVO selectDictTypeById(Long dictId);
 
     /**
      * 根据字典类型查询信息
@@ -57,7 +56,7 @@ public interface ISysDictTypeService extends CrudService<SysDictType>
      * @param dictType 字典类型
      * @return 字典类型
      */
-    public SysDictType selectDictTypeByType(String dictType);
+    public SysDictTypeVO selectDictTypeByType(String dictType);
 
     /**
      * 批量删除字典信息
@@ -88,7 +87,7 @@ public interface ISysDictTypeService extends CrudService<SysDictType>
      * @param dictType 字典类型信息
      * @return 结果
      */
-    public int insertDictType(SysDictType dictType);
+    public int insertDictType(SysDictTypeVO dictType);
 
     /**
      * 修改保存字典类型信息
@@ -96,7 +95,7 @@ public interface ISysDictTypeService extends CrudService<SysDictType>
      * @param dictType 字典类型信息
      * @return 结果
      */
-    public int updateDictType(SysDictType dictType);
+    public int updateDictType(SysDictTypeVO dictType);
 
     /**
      * 校验字典类型称是否唯一
@@ -104,5 +103,5 @@ public interface ISysDictTypeService extends CrudService<SysDictType>
      * @param dictType 字典类型
      * @return 结果
      */
-    public String checkDictTypeUnique(SysDictType dictType);
+    public String checkDictTypeUnique(SysDictTypeVO dictType);
 }

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysLogininforService.java

@@ -5,7 +5,6 @@ package com.usky.system.service;
 
 import com.usky.common.mvc.base.CrudService;
 import com.usky.system.domain.SysLogininfor;
-import com.usky.system.domain.SysPost;
 
 import java.util.List;
 

+ 5 - 6
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysOperLogService.java

@@ -4,8 +4,7 @@ package com.usky.system.service;
 
 
 import com.usky.common.mvc.base.CrudService;
-import com.usky.system.domain.SysOperLog;
-import com.usky.system.domain.SysPost;
+import com.usky.system.domain.SysOperLogVO;
 
 import java.util.List;
 
@@ -14,14 +13,14 @@ import java.util.List;
  * 
  * @author yq
  */
-public interface ISysOperLogService extends CrudService<SysOperLog>
+public interface ISysOperLogService extends CrudService<SysOperLogVO>
 {
     /**
      * 新增操作日志
      * 
      * @param operLog 操作日志对象
      */
-    public void insertOperlog(SysOperLog operLog);
+    public void insertOperlog(SysOperLogVO operLog);
 
     /**
      * 查询系统操作日志集合
@@ -29,7 +28,7 @@ public interface ISysOperLogService extends CrudService<SysOperLog>
      * @param operLog 操作日志对象
      * @return 操作日志集合
      */
-    public List<SysOperLog> selectOperLogList(SysOperLog operLog);
+    public List<SysOperLogVO> selectOperLogList(SysOperLogVO operLog);
 
     /**
      * 批量删除系统操作日志
@@ -45,7 +44,7 @@ public interface ISysOperLogService extends CrudService<SysOperLog>
      * @param operId 操作ID
      * @return 操作日志对象
      */
-    public SysOperLog selectOperLogById(Long operId);
+    public SysOperLogVO selectOperLogById(Long operId);
 
     /**
      * 清空操作日志

+ 22 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysPermissionService.java

@@ -0,0 +1,22 @@
+package com.usky.system.service;
+
+import java.util.Set;
+
+public interface ISysPermissionService
+{
+    /**
+     * 获取角色数据权限
+     * 
+     * @param userId 用户Id
+     * @return 角色权限信息
+     */
+    public Set<String> getRolePermission(Long userId);
+
+    /**
+     * 获取菜单数据权限
+     * 
+     * @param userId 用户Id
+     * @return 菜单权限信息
+     */
+    public Set<String> getMenuPermission(Long userId);
+}

+ 0 - 1
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysPostService.java

@@ -2,7 +2,6 @@ package com.usky.system.service;
 
 import com.usky.common.mvc.base.CrudService;
 import com.usky.system.domain.SysPost;
-import com.usky.system.domain.SysRole;
 
 import java.util.List;
 

+ 13 - 14
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysRoleService.java

@@ -2,8 +2,7 @@ package com.usky.system.service;
 
 
 import com.usky.common.mvc.base.CrudService;
-import com.usky.system.domain.SysRole;
-import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysRoleVO;
 import com.usky.system.domain.SysUserRole;
 
 import java.util.List;
@@ -14,7 +13,7 @@ import java.util.Set;
  * 
  * @author yq
  */
-public interface ISysRoleService extends CrudService<SysRole>
+public interface ISysRoleService extends CrudService<SysRoleVO>
 {
     /**
      * 根据条件分页查询角色数据
@@ -22,7 +21,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param role 角色信息
      * @return 角色数据集合信息
      */
-    public List<SysRole> selectRoleList(SysRole role);
+    public List<SysRoleVO> selectRoleList(SysRoleVO role);
 
     /**
      * 根据用户ID查询角色列表
@@ -30,7 +29,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param userId 用户ID
      * @return 角色列表
      */
-    public List<SysRole> selectRolesByUserId(Long userId);
+    public List<SysRoleVO> selectRolesByUserId(Long userId);
 
     /**
      * 根据用户ID查询角色权限
@@ -45,7 +44,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * 
      * @return 角色列表
      */
-    public List<SysRole> selectRoleAll();
+    public List<SysRoleVO> selectRoleAll();
 
     /**
      * 根据用户ID获取角色选择框列表
@@ -61,7 +60,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param roleId 角色ID
      * @return 角色对象信息
      */
-    public SysRole selectRoleById(Long roleId);
+    public SysRoleVO selectRoleById(Long roleId);
 
     /**
      * 校验角色名称是否唯一
@@ -69,7 +68,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public String checkRoleNameUnique(SysRole role);
+    public String checkRoleNameUnique(SysRoleVO role);
 
     /**
      * 校验角色权限是否唯一
@@ -77,14 +76,14 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public String checkRoleKeyUnique(SysRole role);
+    public String checkRoleKeyUnique(SysRoleVO role);
 
     /**
      * 校验角色是否允许操作
      * 
      * @param role 角色信息
      */
-    public void checkRoleAllowed(SysRole role);
+    public void checkRoleAllowed(SysRoleVO role);
 
     /**
      * 通过角色ID查询角色使用数量
@@ -100,7 +99,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public int insertRole(SysRole role);
+    public int insertRole(SysRoleVO role);
 
     /**
      * 修改保存角色信息
@@ -108,7 +107,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public int updateRole(SysRole role);
+    public int updateRole(SysRoleVO role);
 
     /**
      * 修改角色状态
@@ -116,7 +115,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public int updateRoleStatus(SysRole role);
+    public int updateRoleStatus(SysRoleVO role);
 
     /**
      * 修改数据权限信息
@@ -124,7 +123,7 @@ public interface ISysRoleService extends CrudService<SysRole>
      * @param role 角色信息
      * @return 结果
      */
-    public int authDataScope(SysRole role);
+    public int authDataScope(SysRoleVO role);
 
     /**
      * 通过角色ID删除角色

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysUserOnlineService.java

@@ -2,7 +2,7 @@ package com.usky.system.service;
 
 
 import com.usky.system.domain.SysUserOnline;
-import com.usky.system.service.vo.LoginUser;
+import com.usky.system.model.LoginUser;
 
 /**
  * 在线用户 服务层

+ 6 - 1
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysUserService.java

@@ -1,9 +1,9 @@
 package com.usky.system.service;
 
 
-
 import com.usky.common.mvc.base.CrudService;
 import com.usky.system.domain.SysUser;
+import com.usky.system.model.LoginUser;
 
 import java.util.List;
 
@@ -194,6 +194,11 @@ public interface ISysUserService extends CrudService<SysUser> {
      */
     public int deleteUserByIds(Long[] userIds);
 
+    public LoginUser getUserInfo(String username);
+
+
+    public Boolean register(SysUser sysUser);
+
 
 
 }

+ 145 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/SysLoginService.java

@@ -0,0 +1,145 @@
+package com.usky.system.service;
+
+import com.ruoyi.common.core.constant.Constants;
+import com.ruoyi.common.core.constant.UserConstants;
+import com.ruoyi.common.core.enums.UserStatus;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.ServletUtils;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.utils.ip.IpUtils;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.usky.common.core.util.BeanMapperUtils;
+import com.usky.system.domain.SysLogininfor;
+import com.usky.system.domain.SysLogininforVO;
+import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysUserVO;
+import com.usky.system.model.LoginUser;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * 登录校验方法
+ * 
+ * @author ruoyi
+ */
+@Component
+public class SysLoginService
+{
+
+    @Autowired
+    private ISysLogininforService sysLogininforService;
+
+    @Autowired
+    private ISysUserService sysUserService;
+
+    /**
+     * 登录
+     */
+    public LoginUser login(String username, String password)
+    {
+        // 用户名或密码为空 错误
+        if (StringUtils.isAnyBlank(username, password))
+        {
+            recordLogininfor(username, Constants.LOGIN_FAIL, "用户/密码必须填写");
+            throw new ServiceException("用户/密码必须填写");
+        }
+        // 密码如果不在指定范围内 错误
+        if (password.length() < UserConstants.PASSWORD_MIN_LENGTH
+                || password.length() > UserConstants.PASSWORD_MAX_LENGTH)
+        {
+            recordLogininfor(username, Constants.LOGIN_FAIL, "用户密码不在指定范围");
+            throw new ServiceException("用户密码不在指定范围");
+        }
+        // 用户名不在指定范围内 错误
+        if (username.length() < UserConstants.USERNAME_MIN_LENGTH
+                || username.length() > UserConstants.USERNAME_MAX_LENGTH)
+        {
+            recordLogininfor(username, Constants.LOGIN_FAIL, "用户名不在指定范围");
+            throw new ServiceException("用户名不在指定范围");
+        }
+
+        // 查询用户信息
+        LoginUser loginUser = sysUserService.getUserInfo(username);
+        SysUserVO user = loginUser.getSysUser();
+        if (UserStatus.DELETED.getCode().equals(user.getDelFlag()))
+        {
+            recordLogininfor(username, Constants.LOGIN_FAIL, "对不起,您的账号已被删除");
+            throw new ServiceException("对不起,您的账号:" + username + " 已被删除");
+        }
+        if (UserStatus.DISABLE.getCode().equals(user.getStatus()))
+        {
+            recordLogininfor(username, Constants.LOGIN_FAIL, "用户已停用,请联系管理员");
+            throw new ServiceException("对不起,您的账号:" + username + " 已停用");
+        }
+        if (!SecurityUtils.matchesPassword(password, user.getPassword()))
+        {
+            recordLogininfor(username, Constants.LOGIN_FAIL, "用户密码错误");
+            throw new ServiceException("用户不存在/密码错误");
+        }
+        recordLogininfor(username, Constants.LOGIN_SUCCESS, "登录成功");
+        return loginUser;
+    }
+
+    public void logout(String loginName)
+    {
+        recordLogininfor(loginName, Constants.LOGOUT, "退出成功");
+    }
+
+    /**
+     * 注册
+     */
+    public void register(String username, String password)
+    {
+        // 用户名或密码为空 错误
+        if (StringUtils.isAnyBlank(username, password))
+        {
+            throw new ServiceException("用户/密码必须填写");
+        }
+        if (username.length() < UserConstants.USERNAME_MIN_LENGTH
+                || username.length() > UserConstants.USERNAME_MAX_LENGTH)
+        {
+            throw new ServiceException("账户长度必须在2到20个字符之间");
+        }
+        if (password.length() < UserConstants.PASSWORD_MIN_LENGTH
+                || password.length() > UserConstants.PASSWORD_MAX_LENGTH)
+        {
+            throw new ServiceException("密码长度必须在5到20个字符之间");
+        }
+
+        // 注册用户信息
+        SysUserVO sysUser = new SysUserVO();
+        sysUser.setUserName(username);
+        sysUser.setNickName(username);
+        sysUser.setPassword(SecurityUtils.encryptPassword(password));
+        sysUserService.register(BeanMapperUtils.map(sysUser, SysUser.class));
+        recordLogininfor(username, Constants.REGISTER, "注册成功");
+    }
+
+    /**
+     * 记录登录信息
+     * 
+     * @param username 用户名
+     * @param status 状态
+     * @param message 消息内容
+     * @return
+     */
+    public void recordLogininfor(String username, String status, String message)
+    {
+        SysLogininforVO logininfor = new SysLogininforVO();
+        logininfor.setUserName(username);
+        logininfor.setIpaddr(IpUtils.getIpAddr(ServletUtils.getRequest()));
+        logininfor.setMsg(message);
+        // 日志状态
+        if (StringUtils.equalsAny(status, Constants.LOGIN_SUCCESS, Constants.LOGOUT, Constants.REGISTER))
+        {
+            logininfor.setStatus(Constants.LOGIN_SUCCESS_STATUS);
+        }
+        else if (Constants.LOGIN_FAIL.equals(status))
+        {
+            logininfor.setStatus(Constants.LOGIN_FAIL_STATUS);
+        }
+        sysLogininforService.insertLogininfor(BeanMapperUtils.map(logininfor, SysLogininfor.class));
+    }
+
+
+}

+ 0 - 2
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysConfigServiceImpl.java

@@ -8,11 +8,9 @@ import com.usky.common.core.util.StringUtils;
 import com.usky.common.mvc.base.AbstractCrudService;
 import com.usky.common.spring.config.redis.RedisHelper;
 import com.usky.system.domain.SysConfig;
-import com.usky.system.domain.SysUser;
 import com.usky.system.domain.constants.Constants;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.SysConfigMapper;
-import com.usky.system.mapper.SysUserMapper;
 import com.usky.system.service.ISysConfigService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;

+ 2 - 3
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDeptServiceImpl.java

@@ -2,13 +2,12 @@ package com.usky.system.service.impl;
 
 
 
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.core.util.Convert;
 import com.usky.common.core.util.StringUtils;
 import com.usky.common.mvc.base.AbstractCrudService;
 import com.usky.system.domain.SysDept;
-import com.usky.system.domain.SysRole;
+import com.usky.system.domain.SysRoleVO;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.SysDeptMapper;
 import com.usky.system.mapper.SysRoleMapper;
@@ -104,7 +103,7 @@ public class SysDeptServiceImpl extends AbstractCrudService<SysDeptMapper, SysDe
     @Override
     public List<Integer> selectDeptListByRoleId(Long roleId)
     {
-        SysRole role = roleMapper.selectRoleById(roleId);
+        SysRoleVO role = roleMapper.selectRoleById(roleId);
         return deptMapper.selectDeptListByRoleId(roleId, role.isDeptCheckStrictly());
     }
 

+ 10 - 12
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDictDataServiceImpl.java

@@ -2,10 +2,8 @@ package com.usky.system.service.impl;
 
 
 import com.usky.common.mvc.base.AbstractCrudService;
-import com.usky.system.domain.SysDictData;
-import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysDictDataVO;
 import com.usky.system.mapper.SysDictDataMapper;
-import com.usky.system.mapper.SysUserMapper;
 import com.usky.system.service.ISysDictDataService;
 import com.usky.system.service.util.DictUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -20,7 +18,7 @@ import java.util.List;
  * @author yq
  */
 @Service
-public class SysDictDataServiceImpl extends AbstractCrudService<SysDictDataMapper, SysDictData> implements ISysDictDataService
+public class SysDictDataServiceImpl extends AbstractCrudService<SysDictDataMapper, SysDictDataVO> implements ISysDictDataService
 {
     @Autowired
     private SysDictDataMapper dictDataMapper;
@@ -32,7 +30,7 @@ public class SysDictDataServiceImpl extends AbstractCrudService<SysDictDataMappe
      * @return 字典数据集合信息
      */
     @Override
-    public List<SysDictData> selectDictDataList(SysDictData dictData)
+    public List<SysDictDataVO> selectDictDataList(SysDictDataVO dictData)
     {
         return dictDataMapper.selectDictDataList(dictData);
     }
@@ -57,7 +55,7 @@ public class SysDictDataServiceImpl extends AbstractCrudService<SysDictDataMappe
      * @return 字典数据
      */
     @Override
-    public SysDictData selectDictDataById(Long dictCode)
+    public SysDictDataVO selectDictDataById(Long dictCode)
     {
         return dictDataMapper.selectDictDataById(dictCode);
     }
@@ -73,9 +71,9 @@ public class SysDictDataServiceImpl extends AbstractCrudService<SysDictDataMappe
     {
         for (Long dictCode : dictCodes)
         {
-            SysDictData data = selectDictDataById(dictCode);
+            SysDictDataVO data = selectDictDataById(dictCode);
             dictDataMapper.deleteDictDataById(dictCode);
-            List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType());
+            List<SysDictDataVO> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType());
             DictUtils.setDictCache(data.getDictType(), dictDatas);
         }
     }
@@ -87,12 +85,12 @@ public class SysDictDataServiceImpl extends AbstractCrudService<SysDictDataMappe
      * @return 结果
      */
     @Override
-    public int insertDictData(SysDictData data)
+    public int insertDictData(SysDictDataVO data)
     {
         int row = dictDataMapper.insertDictData(data);
         if (row > 0)
         {
-            List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType());
+            List<SysDictDataVO> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType());
             DictUtils.setDictCache(data.getDictType(), dictDatas);
         }
         return row;
@@ -105,12 +103,12 @@ public class SysDictDataServiceImpl extends AbstractCrudService<SysDictDataMappe
      * @return 结果
      */
     @Override
-    public int updateDictData(SysDictData data)
+    public int updateDictData(SysDictDataVO data)
     {
         int row = dictDataMapper.updateDictData(data);
         if (row > 0)
         {
-            List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType());
+            List<SysDictDataVO> dictDatas = dictDataMapper.selectDictDataByType(data.getDictType());
             DictUtils.setDictCache(data.getDictType(), dictDatas);
         }
         return row;

+ 19 - 21
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDictTypeServiceImpl.java

@@ -4,13 +4,11 @@ package com.usky.system.service.impl;
 
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mvc.base.AbstractCrudService;
-import com.usky.system.domain.SysDictData;
-import com.usky.system.domain.SysDictType;
-import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysDictDataVO;
+import com.usky.system.domain.SysDictTypeVO;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.SysDictDataMapper;
 import com.usky.system.mapper.SysDictTypeMapper;
-import com.usky.system.mapper.SysUserMapper;
 import com.usky.system.service.ISysDictTypeService;
 import com.usky.system.service.util.DictUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -28,7 +26,7 @@ import java.util.Objects;
  * @author yq
  */
 @Service
-public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMapper, SysDictType> implements ISysDictTypeService
+public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMapper, SysDictTypeVO> implements ISysDictTypeService
 {
     @Autowired
     private SysDictTypeMapper dictTypeMapper;
@@ -52,7 +50,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      * @return 字典类型集合信息
      */
     @Override
-    public List<SysDictType> selectDictTypeList(SysDictType dictType)
+    public List<SysDictTypeVO> selectDictTypeList(SysDictTypeVO dictType)
     {
         return dictTypeMapper.selectDictTypeList(dictType);
     }
@@ -63,7 +61,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      * @return 字典类型集合信息
      */
     @Override
-    public List<SysDictType> selectDictTypeAll()
+    public List<SysDictTypeVO> selectDictTypeAll()
     {
         return dictTypeMapper.selectDictTypeAll();
     }
@@ -75,9 +73,9 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      * @return 字典数据集合信息
      */
     @Override
-    public List<SysDictData> selectDictDataByType(String dictType)
+    public List<SysDictDataVO> selectDictDataByType(String dictType)
     {
-        List<SysDictData> dictDatas = DictUtils.getDictCache(dictType);
+        List<SysDictDataVO> dictDatas = DictUtils.getDictCache(dictType);
         if (Objects.nonNull(dictDatas))
         {
             return dictDatas;
@@ -98,7 +96,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      * @return 字典类型
      */
     @Override
-    public SysDictType selectDictTypeById(Long dictId)
+    public SysDictTypeVO selectDictTypeById(Long dictId)
     {
         return dictTypeMapper.selectDictTypeById(dictId);
     }
@@ -110,7 +108,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      * @return 字典类型
      */
     @Override
-    public SysDictType selectDictTypeByType(String dictType)
+    public SysDictTypeVO selectDictTypeByType(String dictType)
     {
         return dictTypeMapper.selectDictTypeByType(dictType);
     }
@@ -126,7 +124,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
     {
         for (Long dictId : dictIds)
         {
-            SysDictType dictType = selectDictTypeById(dictId);
+            SysDictTypeVO dictType = selectDictTypeById(dictId);
             if (dictDataMapper.countDictDataByType(dictType.getDictType()) > 0)
             {
                 throw new BusinessException(String.format("%1$s已分配,不能删除", dictType.getDictName()));
@@ -142,10 +140,10 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
     @Override
     public void loadingDictCache()
     {
-        List<SysDictType> dictTypeList = dictTypeMapper.selectDictTypeAll();
-        for (SysDictType dictType : dictTypeList)
+        List<SysDictTypeVO> dictTypeList = dictTypeMapper.selectDictTypeAll();
+        for (SysDictTypeVO dictType : dictTypeList)
         {
-            List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dictType.getDictType());
+            List<SysDictDataVO> dictDatas = dictDataMapper.selectDictDataByType(dictType.getDictType());
             DictUtils.setDictCache(dictType.getDictType(), dictDatas);
         }
     }
@@ -176,7 +174,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      * @return 结果
      */
     @Override
-    public int insertDictType(SysDictType dict)
+    public int insertDictType(SysDictTypeVO dict)
     {
         int row = dictTypeMapper.insertDictType(dict);
         if (row > 0)
@@ -194,14 +192,14 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      */
     @Override
     @Transactional
-    public int updateDictType(SysDictType dict)
+    public int updateDictType(SysDictTypeVO dict)
     {
-        SysDictType oldDict = dictTypeMapper.selectDictTypeById(dict.getDictId());
+        SysDictTypeVO oldDict = dictTypeMapper.selectDictTypeById(dict.getDictId());
         dictDataMapper.updateDictDataType(oldDict.getDictType(), dict.getDictType());
         int row = dictTypeMapper.updateDictType(dict);
         if (row > 0)
         {
-            List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType(dict.getDictType());
+            List<SysDictDataVO> dictDatas = dictDataMapper.selectDictDataByType(dict.getDictType());
             DictUtils.setDictCache(dict.getDictType(), dictDatas);
         }
         return row;
@@ -214,10 +212,10 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
      * @return 结果
      */
     @Override
-    public String checkDictTypeUnique(SysDictType dict)
+    public String checkDictTypeUnique(SysDictTypeVO dict)
     {
         Long dictId = null != dict.getDictId() ? -1L : dict.getDictId();
-        SysDictType dictType = dictTypeMapper.checkDictTypeUnique(dict.getDictType());
+        SysDictTypeVO dictType = dictTypeMapper.checkDictTypeUnique(dict.getDictType());
         if (Objects.nonNull(dictType) && dictType.getDictId().longValue() != dictId.longValue())
         {
             return UserConstants.NOT_UNIQUE;

+ 0 - 2
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysLogininforServiceImpl.java

@@ -4,9 +4,7 @@ package com.usky.system.service.impl;
 
 import com.usky.common.mvc.base.AbstractCrudService;
 import com.usky.system.domain.SysLogininfor;
-import com.usky.system.domain.SysUser;
 import com.usky.system.mapper.SysLogininforMapper;
-import com.usky.system.mapper.SysUserMapper;
 import com.usky.system.service.ISysLogininforService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;

+ 4 - 5
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java

@@ -3,14 +3,13 @@ package com.usky.system.service.impl;
 import com.usky.common.core.util.StringUtils;
 import com.usky.common.mvc.base.AbstractCrudService;
 import com.usky.system.domain.SysMenu;
-import com.usky.system.domain.SysRole;
-import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysRoleVO;
+import com.usky.system.domain.SysUserVO;
 import com.usky.system.domain.constants.Constants;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.SysMenuMapper;
 import com.usky.system.mapper.SysRoleMapper;
 import com.usky.system.mapper.SysRoleMenuMapper;
-import com.usky.system.mapper.SysUserMapper;
 import com.usky.system.service.ISysMenuService;
 import com.usky.system.service.vo.MetaVo;
 import com.usky.system.service.vo.RouterVo;
@@ -64,7 +63,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
     {
         List<SysMenu> menuList = null;
         // 管理员显示所有菜单信息
-        if (SysUser.isAdmin(userId))
+        if (SysUserVO.isAdmin(userId))
         {
             menuList = menuMapper.selectMenuList(menu);
         }
@@ -127,7 +126,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
     @Override
     public List<Integer> selectMenuListByRoleId(Long roleId)
     {
-        SysRole role = roleMapper.selectRoleById(roleId);
+        SysRoleVO role = roleMapper.selectRoleById(roleId);
         return menuMapper.selectMenuListByRoleId(roleId, role.isMenuCheckStrictly());
     }
 

+ 5 - 7
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysOperLogServiceImpl.java

@@ -3,10 +3,8 @@ package com.usky.system.service.impl;
 
 
 import com.usky.common.mvc.base.AbstractCrudService;
-import com.usky.system.domain.SysOperLog;
-import com.usky.system.domain.SysUser;
+import com.usky.system.domain.SysOperLogVO;
 import com.usky.system.mapper.SysOperLogMapper;
-import com.usky.system.mapper.SysUserMapper;
 import com.usky.system.service.ISysOperLogService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -19,7 +17,7 @@ import java.util.List;
  * @author yq
  */
 @Service
-public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper, SysOperLog> implements ISysOperLogService
+public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper, SysOperLogVO> implements ISysOperLogService
 {
     @Autowired
     private SysOperLogMapper operLogMapper;
@@ -30,7 +28,7 @@ public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper,
      * @param operLog 操作日志对象
      */
     @Override
-    public void insertOperlog(SysOperLog operLog)
+    public void insertOperlog(SysOperLogVO operLog)
     {
         operLogMapper.insertOperlog(operLog);
     }
@@ -42,7 +40,7 @@ public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper,
      * @return 操作日志集合
      */
     @Override
-    public List<SysOperLog> selectOperLogList(SysOperLog operLog)
+    public List<SysOperLogVO> selectOperLogList(SysOperLogVO operLog)
     {
         return operLogMapper.selectOperLogList(operLog);
     }
@@ -66,7 +64,7 @@ public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper,
      * @return 操作日志对象
      */
     @Override
-    public SysOperLog selectOperLogById(Long operId)
+    public SysOperLogVO selectOperLogById(Long operId)
     {
         return operLogMapper.selectOperLogById(operId);
     }

+ 0 - 3
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPermissionService.java

@@ -6,7 +6,6 @@ import com.usky.common.core.util.StringUtils;
 import com.usky.system.domain.SysUser;
 import com.usky.system.service.ISysMenuService;
 import com.usky.system.service.ISysRoleService;
-import com.usky.system.service.ISysUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -28,8 +27,6 @@ public class SysPermissionService
     @Autowired
     private ISysMenuService menuService;
 
-    @Autowired
-    private ISysUserService userService;
 
     /**
      * 获取角色数据权限

+ 66 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPermissionServiceImpl.java

@@ -0,0 +1,66 @@
+package com.usky.system.service.impl;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import com.usky.system.domain.SysUserVO;
+import com.usky.system.service.ISysMenuService;
+import com.usky.system.service.ISysPermissionService;
+import com.usky.system.service.ISysRoleService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+
+@Service
+public class SysPermissionServiceImpl implements ISysPermissionService
+{
+    @Autowired
+    private ISysRoleService roleService;
+
+    @Autowired
+    private ISysMenuService menuService;
+
+    /**
+     * 获取角色数据权限
+     * 
+     * @param userId 用户Id
+     * @return 角色权限信息
+     */
+    @Override
+    public Set<String> getRolePermission(Long userId)
+    {
+        Set<String> roles = new HashSet<String>();
+        // 管理员拥有所有权限
+        if (SysUserVO.isAdmin(userId))
+        {
+            roles.add("admin");
+        }
+        else
+        {
+            roles.addAll(roleService.selectRolePermissionByUserId(userId));
+        }
+        return roles;
+    }
+
+    /**
+     * 获取菜单数据权限
+     * 
+     * @param userId 用户Id
+     * @return 菜单权限信息
+     */
+    @Override
+    public Set<String> getMenuPermission(Long userId)
+    {
+        Set<String> perms = new HashSet<String>();
+        // 管理员拥有所有权限
+        if (SysUserVO.isAdmin(userId))
+        {
+            perms.add("*:*:*");
+        }
+        else
+        {
+            perms.addAll(menuService.selectMenuPermsByUserId(userId));
+        }
+        return perms;
+    }
+}

+ 0 - 2
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPostServiceImpl.java

@@ -5,10 +5,8 @@ package com.usky.system.service.impl;
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mvc.base.AbstractCrudService;
 import com.usky.system.domain.SysPost;
-import com.usky.system.domain.SysUser;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.SysPostMapper;
-import com.usky.system.mapper.SysUserMapper;
 import com.usky.system.mapper.SysUserPostMapper;
 import com.usky.system.service.ISysPostService;
 import org.springframework.beans.factory.annotation.Autowired;

+ 25 - 25
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysRoleServiceImpl.java

@@ -21,7 +21,7 @@ import java.util.*;
  * @author yq
  */
 @Service
-public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRole> implements ISysRoleService
+public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRoleVO> implements ISysRoleService
 {
     @Autowired
     private SysRoleMapper roleMapper;
@@ -42,7 +42,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @return 角色数据集合信息
      */
     @Override
-    public List<SysRole> selectRoleList(SysRole role)
+    public List<SysRoleVO> selectRoleList(SysRoleVO role)
     {
         return roleMapper.selectRoleList(role);
     }
@@ -54,13 +54,13 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @return 角色列表
      */
     @Override
-    public List<SysRole> selectRolesByUserId(Long userId)
+    public List<SysRoleVO> selectRolesByUserId(Long userId)
     {
-        List<SysRole> userRoles = roleMapper.selectRolePermissionByUserId(userId);
-        List<SysRole> roles = selectRoleAll();
-        for (SysRole role : roles)
+        List<SysRoleVO> userRoles = roleMapper.selectRolePermissionByUserId(userId);
+        List<SysRoleVO> roles = selectRoleAll();
+        for (SysRoleVO role : roles)
         {
-            for (SysRole userRole : userRoles)
+            for (SysRoleVO userRole : userRoles)
             {
                 if (role.getRoleId().longValue() == userRole.getRoleId().longValue())
                 {
@@ -81,9 +81,9 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
     @Override
     public Set<String> selectRolePermissionByUserId(Long userId)
     {
-        List<SysRole> perms = roleMapper.selectRolePermissionByUserId(userId);
+        List<SysRoleVO> perms = roleMapper.selectRolePermissionByUserId(userId);
         Set<String> permsSet = new HashSet<>();
-        for (SysRole perm : perms)
+        for (SysRoleVO perm : perms)
         {
             if (Objects.nonNull(perm))
             {
@@ -99,9 +99,9 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @return 角色列表
      */
     @Override
-    public List<SysRole> selectRoleAll()
+    public List<SysRoleVO> selectRoleAll()
     {
-        return SpringContextUtils.getAopProxy(this).selectRoleList(new SysRole());
+        return SpringContextUtils.getAopProxy(this).selectRoleList(new SysRoleVO());
     }
 
     /**
@@ -123,7 +123,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @return 角色对象信息
      */
     @Override
-    public SysRole selectRoleById(Long roleId)
+    public SysRoleVO selectRoleById(Long roleId)
     {
         return roleMapper.selectRoleById(roleId);
     }
@@ -135,10 +135,10 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @return 结果
      */
     @Override
-    public String checkRoleNameUnique(SysRole role)
+    public String checkRoleNameUnique(SysRoleVO role)
     {
         Long roleId = Objects.isNull(role.getRoleId()) ? -1L : role.getRoleId();
-        SysRole info = roleMapper.checkRoleNameUnique(role.getRoleName());
+        SysRoleVO info = roleMapper.checkRoleNameUnique(role.getRoleName());
         if (Objects.nonNull(info) && info.getRoleId().longValue() != roleId.longValue())
         {
             return UserConstants.NOT_UNIQUE;
@@ -153,10 +153,10 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @return 结果
      */
     @Override
-    public String checkRoleKeyUnique(SysRole role)
+    public String checkRoleKeyUnique(SysRoleVO role)
     {
         Long roleId = Objects.isNull(role.getRoleId()) ? -1L : role.getRoleId();
-        SysRole info = roleMapper.checkRoleKeyUnique(role.getRoleKey());
+        SysRoleVO info = roleMapper.checkRoleKeyUnique(role.getRoleKey());
         if (Objects.nonNull(info) && info.getRoleId().longValue() != roleId.longValue())
         {
             return UserConstants.NOT_UNIQUE;
@@ -170,7 +170,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @param role 角色信息
      */
     @Override
-    public void checkRoleAllowed(SysRole role)
+    public void checkRoleAllowed(SysRoleVO role)
     {
         if (Objects.nonNull(role.getRoleId()) && role.isAdmin())
         {
@@ -198,7 +198,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      */
     @Override
     @Transactional
-    public int insertRole(SysRole role)
+    public int insertRole(SysRoleVO role)
     {
         // 新增角色信息
         roleMapper.insertRole(role);
@@ -213,7 +213,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      */
     @Override
     @Transactional
-    public int updateRole(SysRole role)
+    public int updateRole(SysRoleVO role)
     {
         // 修改角色信息
         roleMapper.updateRole(role);
@@ -229,7 +229,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * @return 结果
      */
     @Override
-    public int updateRoleStatus(SysRole role)
+    public int updateRoleStatus(SysRoleVO role)
     {
         return roleMapper.updateRole(role);
     }
@@ -242,7 +242,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      */
     @Override
     @Transactional
-    public int authDataScope(SysRole role)
+    public int authDataScope(SysRoleVO role)
     {
         // 修改角色信息
         roleMapper.updateRole(role);
@@ -257,7 +257,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      * 
      * @param role 角色对象
      */
-    public int insertRoleMenu(SysRole role)
+    public int insertRoleMenu(SysRoleVO role)
     {
         int rows = 1;
         // 新增用户与角色管理
@@ -283,7 +283,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
      *
      * @param role 角色对象
      */
-    public int insertRoleDept(SysRole role)
+    public int insertRoleDept(SysRoleVO role)
     {
         int rows = 1;
         // 新增角色与部门(数据权限)管理
@@ -331,8 +331,8 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
     {
         for (Long roleId : roleIds)
         {
-            checkRoleAllowed(new SysRole(roleId));
-            SysRole role = selectRoleById(roleId);
+            checkRoleAllowed(new SysRoleVO(roleId));
+            SysRoleVO role = selectRoleById(roleId);
             if (countUserRoleByRoleId(roleId) > 0)
             {
                 throw new BusinessException(String.format("%1$s已分配,不能删除", role.getRoleName()));

+ 1 - 4
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysUserOnlineServiceImpl.java

@@ -2,12 +2,9 @@ package com.usky.system.service.impl;
 
 
 import com.usky.common.core.util.StringUtils;
-import com.usky.common.mvc.base.AbstractCrudService;
-import com.usky.system.domain.SysUser;
 import com.usky.system.domain.SysUserOnline;
-import com.usky.system.mapper.SysUserMapper;
+import com.usky.system.model.LoginUser;
 import com.usky.system.service.ISysUserOnlineService;
-import com.usky.system.service.vo.LoginUser;
 import org.springframework.stereotype.Service;
 
 import java.util.Objects;

+ 48 - 3
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysUserServiceImpl.java

@@ -1,13 +1,15 @@
 package com.usky.system.service.impl;
 
 
-
 import com.usky.common.core.exception.BusinessException;
+import com.usky.common.core.util.BeanMapperUtils;
 import com.usky.common.core.util.StringUtils;
 import com.usky.common.mvc.base.AbstractCrudService;
 import com.usky.system.domain.*;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.*;
+import com.usky.system.model.LoginUser;
+import com.usky.system.service.ISysConfigService;
 import com.usky.system.service.ISysUserService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -18,6 +20,7 @@ import org.springframework.transaction.annotation.Transactional;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
+import java.util.Set;
 
 /**
  * 用户 业务层处理
@@ -44,6 +47,13 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
     private SysUserPostMapper userPostMapper;
 
 
+    @Autowired
+    private SysPermissionService sysPermissionService;
+
+    @Autowired
+    private ISysConfigService iSysConfigService;
+
+
 
     /**
      * 根据条件分页查询用户列表
@@ -109,9 +119,9 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
      */
     @Override
     public String selectUserRoleGroup(String userName) {
-        List<SysRole> list = roleMapper.selectRolesByUserName(userName);
+        List<SysRoleVO> list = roleMapper.selectRolesByUserName(userName);
         StringBuffer idsStr = new StringBuffer();
-        for (SysRole role : list) {
+        for (SysRoleVO role : list) {
             idsStr.append(role.getRoleName()).append(",");
         }
         if (StringUtils.isNotBlank(idsStr.toString())) {
@@ -418,4 +428,39 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
         userPostMapper.deleteUserPost(userIds);
         return userMapper.deleteUserByIds(userIds);
     }
+
+
+    @Override
+    public LoginUser getUserInfo(String username)
+    {
+        SysUser sysUser = this.selectUserByUserName(username);
+        if (com.ruoyi.common.core.utils.StringUtils.isNull(sysUser))
+        {
+            throw new BusinessException("用户信息/密码不存在");
+        }
+        // 角色集合
+        Set<String> roles = sysPermissionService.getRolePermission(sysUser);
+        // 权限集合
+        Set<String> permissions = sysPermissionService.getMenuPermission(sysUser);
+        LoginUser SysUser = new LoginUser();
+        SysUser.setSysUser(BeanMapperUtils.map(sysUser,SysUserVO.class));
+        SysUser.setRoles(roles);
+        SysUser.setPermissions(permissions);
+        return SysUser;
+    }
+
+    @Override
+    public Boolean register(SysUser sysUser)
+    {
+        String username = sysUser.getUserName();
+        if (!("true".equals(iSysConfigService.selectConfigByKey("sys.account.registerUser"))))
+        {
+            throw new BusinessException("当前系统没有开启注册功能!");
+        }
+        if (com.ruoyi.common.core.constant.UserConstants.NOT_UNIQUE.equals(this.checkUserNameUnique(username)))
+        {
+            throw new BusinessException("保存用户'" + username + "'失败,注册账号已存在");
+        }
+        return this.registerUser(sysUser);
+    }
 }

+ 10 - 10
service-system/service-system-biz/src/main/java/com/usky/system/service/util/DictUtils.java

@@ -5,7 +5,7 @@ package com.usky.system.service.util;
 import com.usky.common.core.util.StringUtils;
 import com.usky.common.spring.config.redis.RedisHelper;
 import com.usky.common.spring.util.SpringContextUtils;
-import com.usky.system.domain.SysDictData;
+import com.usky.system.domain.SysDictDataVO;
 import com.usky.system.domain.constants.Constants;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -36,7 +36,7 @@ public class DictUtils
      * @param key 参数键
      * @param dictDatas 字典数据列表
      */
-    public static void setDictCache(String key, List<SysDictData> dictDatas)
+    public static void setDictCache(String key, List<SysDictDataVO> dictDatas)
     {
         getRedisHelper().set(getCacheKey(key), dictDatas);
     }
@@ -47,12 +47,12 @@ public class DictUtils
      * @param key 参数键
      * @return dictDatas 字典数据列表
      */
-    public static List<SysDictData> getDictCache(String key)
+    public static List<SysDictDataVO> getDictCache(String key)
     {
         Object cacheObj = getRedisHelper().get(getCacheKey(key));
         if (Objects.nonNull(cacheObj))
         {
-            List<SysDictData> dictDatas = (List<SysDictData>) cacheObj;
+            List<SysDictDataVO> dictDatas = (List<SysDictDataVO>) cacheObj;
             return dictDatas;
         }
         return null;
@@ -93,11 +93,11 @@ public class DictUtils
     public static String getDictLabel(String dictType, String dictValue, String separator)
     {
         StringBuilder propertyString = new StringBuilder();
-        List<SysDictData> datas = getDictCache(dictType);
+        List<SysDictDataVO> datas = getDictCache(dictType);
 
         if (StringUtils.containsAny(separator, dictValue) && Objects.nonNull(datas))
         {
-            for (SysDictData dict : datas)
+            for (SysDictDataVO dict : datas)
             {
                 for (String value : dictValue.split(separator))
                 {
@@ -111,7 +111,7 @@ public class DictUtils
         }
         else
         {
-            for (SysDictData dict : datas)
+            for (SysDictDataVO dict : datas)
             {
                 if (dictValue.equals(dict.getDictValue()))
                 {
@@ -133,11 +133,11 @@ public class DictUtils
     public static String getDictValue(String dictType, String dictLabel, String separator)
     {
         StringBuilder propertyString = new StringBuilder();
-        List<SysDictData> datas = getDictCache(dictType);
+        List<SysDictDataVO> datas = getDictCache(dictType);
 
         if (StringUtils.containsAny(separator, dictLabel) && Objects.nonNull(datas))
         {
-            for (SysDictData dict : datas)
+            for (SysDictDataVO dict : datas)
             {
                 for (String label : dictLabel.split(separator))
                 {
@@ -151,7 +151,7 @@ public class DictUtils
         }
         else
         {
-            for (SysDictData dict : datas)
+            for (SysDictDataVO dict : datas)
             {
                 if (dictLabel.equals(dict.getDictLabel()))
                 {

+ 39 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/LoginBody.java

@@ -0,0 +1,39 @@
+package com.usky.system.service.vo;
+
+/**
+ * 用户登录对象
+ * 
+ * @author ruoyi
+ */
+public class LoginBody
+{
+    /**
+     * 用户名
+     */
+    private String username;
+
+    /**
+     * 用户密码
+     */
+    private String password;
+
+    public String getUsername()
+    {
+        return username;
+    }
+
+    public void setUsername(String username)
+    {
+        this.username = username;
+    }
+
+    public String getPassword()
+    {
+        return password;
+    }
+
+    public void setPassword(String password)
+    {
+        this.password = password;
+    }
+}

+ 5 - 5
service-system/service-system-biz/src/main/resources/mapper/system/SysDictDataMapper.xml

@@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.usky.system.mapper.SysDictDataMapper">
 	
-	<resultMap type="com.usky.system.domain.SysDictData" id="SysDictDataResult">
+	<resultMap type="com.usky.system.domain.SysDictDataVO" id="SysDictDataResult">
 		<id     property="dictCode"   column="dict_code"   />
 		<result property="dictSort"   column="dict_sort"   />
 		<result property="dictLabel"  column="dict_label"  />
@@ -25,7 +25,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		from sys_dict_data
     </sql>
 
-	<select id="selectDictDataList" parameterType="com.usky.system.domain.SysDictData" resultMap="SysDictDataResult">
+	<select id="selectDictDataList" parameterType="com.usky.system.domain.SysDictDataVO" resultMap="SysDictDataResult">
 	    <include refid="selectDictDataVo"/>
 		<where>
 		    <if test="dictType != null and dictType != ''">
@@ -41,7 +41,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		order by dict_sort asc
 	</select>
 	
-	<select id="selectDictDataByType" parameterType="com.usky.system.domain.SysDictData" resultMap="SysDictDataResult">
+	<select id="selectDictDataByType" parameterType="com.usky.system.domain.SysDictDataVO" resultMap="SysDictDataResult">
 		<include refid="selectDictDataVo"/>
 		where status = '0' and dict_type = #{dictType} order by dict_sort asc
 	</select>
@@ -71,7 +71,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach> 
  	</delete>
 	
-	<update id="updateDictData" parameterType="com.usky.system.domain.SysDictData">
+	<update id="updateDictData" parameterType="com.usky.system.domain.SysDictDataVO">
  		update sys_dict_data
  		<set>
  			<if test="dictSort != null">dict_sort = #{dictSort},</if>
@@ -93,7 +93,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  		update sys_dict_data set dict_type = #{newDictType} where dict_type = #{oldDictType}
 	</update>
  	
- 	<insert id="insertDictData" parameterType="com.usky.system.domain.SysDictData">
+ 	<insert id="insertDictData" parameterType="com.usky.system.domain.SysDictDataVO">
  		insert into sys_dict_data(
  			<if test="dictSort != null">dict_sort,</if>
  			<if test="dictLabel != null and dictLabel != ''">dict_label,</if>

+ 4 - 4
service-system/service-system-biz/src/main/resources/mapper/system/SysDictTypeMapper.xml

@@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.usky.system.mapper.SysDictTypeMapper">
 
-	<resultMap type="com.usky.system.domain.SysDictType" id="SysDictTypeResult">
+	<resultMap type="com.usky.system.domain.SysDictTypeVO" id="SysDictTypeResult">
 		<id     property="dictId"     column="dict_id"     />
 		<result property="dictName"   column="dict_name"   />
 		<result property="dictType"   column="dict_type"   />
@@ -20,7 +20,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		from sys_dict_type
     </sql>
 
-	<select id="selectDictTypeList" parameterType="com.usky.system.domain.SysDictType" resultMap="SysDictTypeResult">
+	<select id="selectDictTypeList" parameterType="com.usky.system.domain.SysDictTypeVO" resultMap="SysDictTypeResult">
 	    <include refid="selectDictTypeVo"/>
 		<where>
 		    <if test="dictName != null and dictName != ''">
@@ -71,7 +71,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach> 
  	</delete>
 
- 	<update id="updateDictType" parameterType="com.usky.system.domain.SysDictType">
+ 	<update id="updateDictType" parameterType="com.usky.system.domain.SysDictTypeVO">
  		update sys_dict_type
  		<set>
  			<if test="dictName != null and dictName != ''">dict_name = #{dictName},</if>
@@ -84,7 +84,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  		where dict_id = #{dictId}
 	</update>
  	
- 	<insert id="insertDictType" parameterType="com.usky.system.domain.SysDictType">
+ 	<insert id="insertDictType" parameterType="com.usky.system.domain.SysDictTypeVO">
  		insert into sys_dict_type(
  			<if test="dictName != null and dictName != ''">dict_name,</if>
  			<if test="dictType != null and dictType != ''">dict_type,</if>

+ 19 - 22
service-system/service-system-biz/src/main/resources/mapper/system/SysLogininforMapper.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+		PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+		"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.usky.system.mapper.SysLogininforMapper">
 
 	<resultMap type="com.usky.system.domain.SysLogininfor" id="SysLogininforResult">
@@ -9,20 +9,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="userName"      column="user_name"         />
 		<result property="status"        column="status"            />
 		<result property="ipaddr"        column="ipaddr"            />
-		<result property="loginLocation" column="login_location"    />
-		<result property="browser"       column="browser"           />
-		<result property="os"            column="os"                />
 		<result property="msg"           column="msg"               />
-		<result property="loginTime"     column="login_time"        />
+		<result property="accessTime"    column="access_time"       />
 	</resultMap>
 
 	<insert id="insertLogininfor" parameterType="com.usky.system.domain.SysLogininfor">
-		insert into sys_logininfor (user_name, status, ipaddr, login_location, browser, os, msg, login_time)
-		values (#{userName}, #{status}, #{ipaddr}, #{loginLocation}, #{browser}, #{os}, #{msg}, sysdate())
+		insert into sys_logininfor (user_name, status, ipaddr, msg, access_time)
+		values (#{userName}, #{status}, #{ipaddr}, #{msg}, sysdate())
 	</insert>
-	
+
 	<select id="selectLogininforList" parameterType="com.usky.system.domain.SysLogininfor" resultMap="SysLogininforResult">
-		select info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time from sys_logininfor
+		select info_id, user_name, ipaddr, status, msg, access_time from sys_logininfor
 		<where>
 			<if test="ipaddr != null and ipaddr != ''">
 				AND ipaddr like concat('%', #{ipaddr}, '%')
@@ -34,24 +31,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 				AND user_name like concat('%', #{userName}, '%')
 			</if>
 			<if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
-				and date_format(login_time,'%y%m%d') &gt;= date_format(#{params.beginTime},'%y%m%d')
+				and date_format(access_time,'%y%m%d') &gt;= date_format(#{params.beginTime},'%y%m%d')
 			</if>
 			<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
-				and date_format(login_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
+				and date_format(access_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
 			</if>
 		</where>
 		order by info_id desc
 	</select>
-	
+
 	<delete id="deleteLogininforByIds" parameterType="Long">
- 		delete from sys_logininfor where info_id in
- 		<foreach collection="array" item="infoId" open="(" separator="," close=")">
- 			#{infoId}
-        </foreach> 
- 	</delete>
-    
-    <update id="cleanLogininfor">
+		delete from sys_logininfor where info_id in
+		<foreach collection="array" item="infoId" open="(" separator="," close=")">
+			#{infoId}
+		</foreach>
+	</delete>
+
+	<update id="cleanLogininfor">
         truncate table sys_logininfor
     </update>
-    
-</mapper> 
+
+</mapper>

+ 3 - 3
service-system/service-system-biz/src/main/resources/mapper/system/SysOperLogMapper.xml

@@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.usky.system.mapper.SysOperLogMapper">
 
-	<resultMap type="com.usky.system.domain.SysOperLog" id="SysOperLogResult">
+	<resultMap type="com.usky.system.domain.SysOperLogVO" id="SysOperLogResult">
 		<id     property="operId"         column="oper_id"        />
 		<result property="title"          column="title"          />
 		<result property="businessType"   column="business_type"  />
@@ -28,12 +28,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         from sys_oper_log
     </sql>
     
-	<insert id="insertOperlog" parameterType="com.usky.system.domain.SysOperLog">
+	<insert id="insertOperlog" parameterType="com.usky.system.domain.SysOperLogVO">
 		insert into sys_oper_log(title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time)
         values (#{title}, #{businessType}, #{method}, #{requestMethod}, #{operatorType}, #{operName}, #{deptName}, #{operUrl}, #{operIp}, #{operLocation}, #{operParam}, #{jsonResult}, #{status}, #{errorMsg}, sysdate())
 	</insert>
 	
-	<select id="selectOperLogList" parameterType="com.usky.system.domain.SysOperLog" resultMap="SysOperLogResult">
+	<select id="selectOperLogList" parameterType="com.usky.system.domain.SysOperLogVO" resultMap="SysOperLogResult">
 		<include refid="selectOperLogVo"/>
 		<where>
 			<if test="title != null and title != ''">

+ 4 - 4
service-system/service-system-biz/src/main/resources/mapper/system/SysRoleMapper.xml

@@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.usky.system.mapper.SysRoleMapper">
 
-	<resultMap type="com.usky.system.domain.SysRole" id="SysRoleResult">
+	<resultMap type="com.usky.system.domain.SysRoleVO" id="SysRoleResult">
 		<id     property="roleId"             column="role_id"               />
 		<result property="roleName"           column="role_name"             />
 		<result property="roleKey"            column="role_key"              />
@@ -30,7 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	        left join sys_dept d on u.dept_id = d.dept_id
     </sql>
     
-    <select id="selectRoleList" parameterType="com.usky.system.domain.SysRole" resultMap="SysRoleResult">
+    <select id="selectRoleList" parameterType="com.usky.system.domain.SysRoleVO" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 		where r.del_flag = '0'
 		<if test="roleName != null and roleName != ''">
@@ -93,7 +93,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		 where r.role_key=#{roleKey} limit 1
 	</select>
 	
- 	<insert id="insertRole" parameterType="com.usky.system.domain.SysRole" useGeneratedKeys="true" keyProperty="roleId">
+ 	<insert id="insertRole" parameterType="com.usky.system.domain.SysRoleVO" useGeneratedKeys="true" keyProperty="roleId">
  		insert into sys_role(
  			<if test="roleId != null and roleId != 0">role_id,</if>
  			<if test="roleName != null and roleName != ''">role_name,</if>
@@ -121,7 +121,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  		)
 	</insert>
 	
-	<update id="updateRole" parameterType="com.usky.system.domain.SysRole">
+	<update id="updateRole" parameterType="com.usky.system.domain.SysRoleVO">
  		update sys_role
  		<set>
  			<if test="roleName != null and roleName != ''">role_name = #{roleName},</if>

+ 3 - 3
service-system/service-system-biz/src/main/resources/mapper/system/SysUserMapper.xml

@@ -24,11 +24,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="updateTime"   column="update_time"  />
 		<result property="remark"       column="remark"       />
 		<result property="centerUserId"       column="center_user_id"       />
-		<association property="dept"    column="dept_id" javaType="com.usky.system.domain.SysDept" resultMap="deptResult" />
+		<association property="dept" column="dept_id" javaType="com.usky.system.domain.SysDeptVO" resultMap="deptResult" />
 		<collection  property="roles"   javaType="java.util.List"        resultMap="RoleResult" />
 	</resultMap>
 	
-	<resultMap id="deptResult" type="com.usky.system.domain.SysDept">
+	<resultMap id="deptResult" type="com.usky.system.domain.SysDeptVO">
 		<id     property="deptId"   column="dept_id"     />
 		<result property="parentId" column="parent_id"   />
 		<result property="deptName" column="dept_name"   />
@@ -37,7 +37,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="status"   column="dept_status" />
 	</resultMap>
 	
-	<resultMap id="RoleResult" type="com.usky.system.domain.SysRole">
+	<resultMap id="RoleResult" type="com.usky.system.domain.SysRoleVO">
 		<id     property="roleId"       column="role_id"        />
 		<result property="roleName"     column="role_name"      />
 		<result property="roleKey"      column="role_key"       />