瀏覽代碼

Merge branch 'JCB-KF' of uskycloud/usky-modules into master

解决冲突
jichaobo 2 年之前
父節點
當前提交
28417d0c42
共有 75 個文件被更改,包括 3490 次插入267 次删除
  1. 5 1
      service-system/service-system-api/src/main/java/com/usky/system/domain/SysUserVO.java
  2. 79 0
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/AuthorityConfigController.java
  3. 1 0
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDeptController.java
  4. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDictDataController.java
  5. 2 1
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDictTypeController.java
  6. 17 4
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysMenuController.java
  7. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysNoticeController.java
  8. 86 0
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysPlatformController.java
  9. 2 1
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysPostController.java
  10. 2 1
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysRoleController.java
  11. 131 0
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysTenantConfigController.java
  12. 7 28
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysUserController.java
  13. 84 0
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TenantConfigController.java
  14. 156 0
      service-system/service-system-biz/src/main/java/com/usky/system/controller/web/UserConfigController.java
  15. 15 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDept.java
  16. 13 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysDictType.java
  17. 76 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPlatform.java
  18. 35 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPlatformMenu.java
  19. 14 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPost.java
  20. 13 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysRole.java
  21. 118 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenant.java
  22. 139 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenantConfig.java
  23. 37 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenantMenu.java
  24. 51 0
      service-system/service-system-biz/src/main/java/com/usky/system/domain/SysUser.java
  25. 4 2
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysDeptMapper.java
  26. 1 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysDictTypeMapper.java
  27. 5 0
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMenuMapper.java
  28. 37 0
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysPlatformMapper.java
  29. 31 0
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysPlatformMenuMapper.java
  30. 2 2
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysPostMapper.java
  31. 2 2
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysRoleMapper.java
  32. 24 0
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantConfigMapper.java
  33. 38 0
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMapper.java
  34. 16 0
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMenuMapper.java
  35. 9 1
      service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysUserMapper.java
  36. 2 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysMenuService.java
  37. 10 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/ISysUserService.java
  38. 3 3
      service-system/service-system-biz/src/main/java/com/usky/system/service/SysLoginService.java
  39. 28 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/SysPlatformMenuService.java
  40. 28 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/SysPlatformService.java
  41. 36 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantConfigService.java
  42. 16 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantMenuService.java
  43. 31 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantService.java
  44. 5 3
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDeptServiceImpl.java
  45. 4 2
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDictTypeServiceImpl.java
  46. 6 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java
  47. 260 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPlatformMenuServiceImpl.java
  48. 144 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPlatformServiceImpl.java
  49. 5 3
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPostServiceImpl.java
  50. 4 3
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysRoleServiceImpl.java
  51. 129 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantConfigServiceImpl.java
  52. 20 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantMenuServiceImpl.java
  53. 107 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantServiceImpl.java
  54. 47 2
      service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysUserServiceImpl.java
  55. 39 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/PlatformMenuVo.java
  56. 37 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysMenuOneVo.java
  57. 34 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysMenuTwoVo.java
  58. 39 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysMenuVo.java
  59. 82 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysPlatformVo.java
  60. 67 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysTenantConfigVo.java
  61. 66 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysTenantOneVo.java
  62. 124 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysTenantTwoVo.java
  63. 145 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysTenantVo.java
  64. 34 0
      service-system/service-system-biz/src/main/java/com/usky/system/service/vo/TenantMenuVo.java
  65. 16 2
      service-system/service-system-biz/src/main/resources/mapper/system/SysDeptMapper.xml
  66. 11 1
      service-system/service-system-biz/src/main/resources/mapper/system/SysDictTypeMapper.xml
  67. 276 178
      service-system/service-system-biz/src/main/resources/mapper/system/SysMenuMapper.xml
  68. 76 0
      service-system/service-system-biz/src/main/resources/mapper/system/SysPlatformMapper.xml
  69. 60 0
      service-system/service-system-biz/src/main/resources/mapper/system/SysPlatformMenuMapper.xml
  70. 16 2
      service-system/service-system-biz/src/main/resources/mapper/system/SysPostMapper.xml
  71. 16 2
      service-system/service-system-biz/src/main/resources/mapper/system/SysRoleMapper.xml
  72. 51 0
      service-system/service-system-biz/src/main/resources/mapper/system/SysTenantConfigMapper.xml
  73. 89 0
      service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMapper.xml
  74. 12 0
      service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMenuMapper.xml
  75. 61 20
      service-system/service-system-biz/src/main/resources/mapper/system/SysUserMapper.xml

+ 5 - 1
service-system/service-system-api/src/main/java/com/usky/system/domain/SysUserVO.java

@@ -73,6 +73,10 @@ public class SysUserVO extends BaseEntity
 
     /** 角色ID */
     private Long roleId;
+    /**
+     * 租户id
+     */
+    private Integer tenantId;
 
     public Integer getTenantId() {
         return tenantId;
@@ -82,7 +86,7 @@ public class SysUserVO extends BaseEntity
         this.tenantId = tenantId;
     }
 
-    private Integer tenantId;
+
 
     public SysUserVO()
     {

+ 79 - 0
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/AuthorityConfigController.java

@@ -0,0 +1,79 @@
+package com.usky.system.controller.web;
+
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.service.ISysMenuService;
+import com.usky.system.service.SysPlatformMenuService;
+import com.usky.system.service.vo.TenantMenuVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 租户管理-权限配置
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+@RestController
+@RequestMapping("/authorityConfig")
+public class AuthorityConfigController {
+
+    @Autowired
+    private SysPlatformMenuService sysPlatformMenuService;
+
+    @Autowired
+    private ISysMenuService menuService;
+
+
+    /**
+     * 租户管理-权限配置-目录查询
+     *
+     * @param platformId 平台ID
+     * @param tenantId   租户ID
+     * @return
+     */
+    @GetMapping("getMenuList")
+    public ApiResult<Map<String, Object>> getMenuList(@RequestParam(value = "platformId") Integer platformId,
+                                                      @RequestParam(value = "tenantId") Integer tenantId) {
+        return ApiResult.success(sysPlatformMenuService.getMenuList(platformId, tenantId));
+    }
+
+
+    /**
+     * 租户管理-权限配置-目录查询
+     *
+     * @param platformId 平台ID
+     * @param tenantId   租户ID
+     * @return
+     */
+    @GetMapping("getAuthorityConfigMenuList")
+    public ApiResult<Map<String, Object>> getAuthorityConfigMenuList(@RequestParam(value = "platformId") Integer platformId,
+                                                                     @RequestParam(value = "tenantId") Integer tenantId) {
+        List<SysMenu> menus =sysPlatformMenuService.getPlatformMenuList(platformId);
+        Map<String, Object> ajax = new HashMap<>();
+        ajax.put("checkedKeys", sysPlatformMenuService.selectPlatformMenu(tenantId));
+        ajax.put("menus", menuService.buildMenuTreeSelect(menus));
+        return ApiResult.success(ajax);
+    }
+
+    /**
+     * 租户管理-权限配置-目录保存
+     *
+     * @param tenantMenuVo
+     * @return
+     */
+//    @Log(title = "权限配置", businessType = BusinessType.UPDATE)
+    @PostMapping("updateMenu")
+    public ApiResult<Void> updateMenu(@RequestBody TenantMenuVo tenantMenuVo) {
+        sysPlatformMenuService.updateMenu(tenantMenuVo);
+        return ApiResult.success();
+    }
+
+
+}
+

+ 1 - 0
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysDeptController.java

@@ -103,6 +103,7 @@ public class SysDeptController extends BaseController
         {
             return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增部门'" + dept.getDeptName() + "'失败,部门名称已存在");
         }
+        dept.setTenantId(SecurityUtils.getTenantId());
         dept.setCreateBy(SecurityUtils.getUsername());
         return toAjax(deptService.insertDept(dept));
     }

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

@@ -1,8 +1,8 @@
 package com.usky.system.controller.web;
 
 
-import com.usky.common.core.bean.ApiResult;
 import com.usky.common.security.utils.SecurityUtils;
+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.service.ISysDictDataService;

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

@@ -1,9 +1,9 @@
 package com.usky.system.controller.web;
 
 
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessErrorCode;
-import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.controller.web.page.TableDataInfo;
 import com.usky.system.domain.SysDictType;
 import com.usky.system.domain.constants.UserConstants;
@@ -54,6 +54,7 @@ public class SysDictTypeController extends BaseController
         {
             return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增字典'" + dict.getDictName() + "'失败,字典类型已存在");
         }
+        dict.setTenantId(SecurityUtils.getTenantId());
         dict.setCreateBy(SecurityUtils.getUsername());
         return toAjax(dictTypeService.insertDictType(dict));
     }

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

@@ -1,21 +1,24 @@
 package com.usky.system.controller.web;
 
 
+import com.usky.common.core.util.ServletUtils;
+import com.usky.common.security.service.TokenService;
+import com.usky.common.security.utils.SecurityUtils;
 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.ServletUtils;
 import com.usky.common.core.util.StringUtils;
-import com.usky.common.security.service.TokenService;
-import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysUser;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.model.LoginUser;
 import com.usky.system.service.ISysMenuService;
+import com.usky.system.service.ISysUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -33,6 +36,9 @@ public class SysMenuController extends BaseController
     @Autowired
     private ISysMenuService menuService;
 
+    @Autowired
+    private ISysUserService userService;
+
     @Autowired
     private TokenService tokenService;
 
@@ -151,7 +157,14 @@ public class SysMenuController extends BaseController
     public ApiResult getRouters()
     {
         Long userId = SecurityUtils.getUserId();
-        List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
+
+        SysUser sysUser = userService.selectUserById(userId);
+        List<SysMenu> menus = new ArrayList<>();
+        if ("01".equals(sysUser.getUserType())){
+            menus = menuService.selectMenuTreeByUserIdOne(SecurityUtils.getTenantId());
+        }else {
+            menus = menuService.selectMenuTreeByUserId(userId);
+        }
         return ApiResult.success(menuService.buildMenus(menus));
     }
 }

+ 1 - 1
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysNoticeController.java

@@ -1,8 +1,8 @@
 package com.usky.system.controller.web;
 
-import com.usky.common.core.bean.ApiResult;
 import com.usky.common.security.annotation.RequiresPermissions;
 import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.bean.ApiResult;
 import com.usky.system.controller.web.page.TableDataInfo;
 import com.usky.system.domain.SysNotice;
 import com.usky.system.service.ISysNoticeService;

+ 86 - 0
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysPlatformController.java

@@ -0,0 +1,86 @@
+package com.usky.system.controller.web;
+
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.service.ISysMenuService;
+import com.usky.system.service.SysPlatformService;
+import com.usky.system.service.vo.PlatformMenuVo;
+import com.usky.system.service.vo.SysPlatformVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 平台管理
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@RestController
+@RequestMapping("/sysPlatform")
+public class SysPlatformController {
+    @Autowired
+    private SysPlatformService sysPlatformService;
+
+    @Autowired
+    private ISysMenuService menuService;
+
+    /**
+     * 平台挂管理-列表查询
+     *
+     * @param platformName 平台名称
+     * @param startTime    开始时间
+     * @param endTime      结束时间
+     * @param page         当前页
+     * @param size         每页条数
+     * @param id           平台ID
+     * @return
+     */
+    @GetMapping("/getPlatformList")
+    public ApiResult<CommonPage<SysPlatformVo>> getPlatformList(@RequestParam(value = "platformName", required = false) String platformName,
+                                                                @RequestParam(value = "startTime", required = false) String startTime,
+                                                                @RequestParam(value = "endTime", required = false) String endTime,
+                                                                @RequestParam(value = "page", required = false, defaultValue = "0") Integer page,
+                                                                @RequestParam(value = "size", required = false, defaultValue = "0") Integer size,
+                                                                @RequestParam(value = "id", required = false, defaultValue = "0") Integer id) {
+        return ApiResult.success(sysPlatformService.getPlatformList(platformName, startTime, endTime, page, size, id));
+    }
+
+    /**
+     * 平台挂管理-菜单查询
+     *
+     * @param platformId 平台ID
+     * @return
+     */
+    @GetMapping("/getPlatformMenu")
+    public ApiResult<Map<String, Object>> getPlatformMenu(@RequestParam Long platformId) {
+
+        Long userId = SecurityUtils.getUserId();
+        List<SysMenu> menus = menuService.selectMenuList(userId);
+        Map<String,Object> ajax = new HashMap<>();
+        ajax.put("checkedKeys", sysPlatformService.getPlatformMenu(platformId));
+        ajax.put("menus", menuService.buildMenuTreeSelect(menus));
+        return ApiResult.success(ajax);
+    }
+
+
+    /**
+     * 平台挂管理-菜单编辑
+     *
+     * @param platformMenuVo
+     * @return
+     */
+//    @Log(title = "平台挂管理", businessType = BusinessType.INSERT)
+    @PostMapping("updatePlatformMenu")
+    public ApiResult<Void> updatePlatformMenu(@RequestBody PlatformMenuVo platformMenuVo) {
+        sysPlatformService.updatePlatformMenu(platformMenuVo);
+        return ApiResult.success();
+    }
+}
+

+ 2 - 1
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysPostController.java

@@ -1,9 +1,9 @@
 package com.usky.system.controller.web;
 
 
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessErrorCode;
-import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.controller.web.page.TableDataInfo;
 import com.usky.system.domain.SysPost;
 import com.usky.system.domain.constants.UserConstants;
@@ -61,6 +61,7 @@ public class SysPostController extends BaseController
         {
             return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增岗位'" + post.getPostName() + "'失败,岗位编码已存在");
         }
+        post.setTenantId(SecurityUtils.getTenantId());
         post.setCreateBy(SecurityUtils.getUsername());
         return toAjax(postService.insertPost(post));
     }

+ 2 - 1
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysRoleController.java

@@ -1,9 +1,9 @@
 package com.usky.system.controller.web;
 
 
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessErrorCode;
-import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.controller.web.page.TableDataInfo;
 import com.usky.system.domain.SysRole;
 import com.usky.system.domain.SysUser;
@@ -68,6 +68,7 @@ public class SysRoleController extends BaseController
         {
             return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增角色'" + role.getRoleName() + "'失败,角色权限已存在");
         }
+        role.setTenantId(SecurityUtils.getTenantId());
         role.setCreateBy(SecurityUtils.getUsername());
         return toAjax(roleService.insertRole(role));
 

+ 131 - 0
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysTenantConfigController.java

@@ -0,0 +1,131 @@
+package com.usky.system.controller.web;
+
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.common.core.bean.CommonPage;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysTenantConfig;
+import com.usky.system.service.SysTenantConfigService;
+import com.usky.system.service.SysTenantService;
+import com.usky.system.service.vo.SysTenantConfigVo;
+import com.usky.system.service.vo.SysTenantOneVo;
+import com.usky.system.service.vo.SysTenantTwoVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+
+/**
+ * 登录中间页配置
+ *
+ * @author ya
+ * @since 2022-05-06
+ */
+@RestController
+@RequestMapping("/sysTenantConfig")
+public class SysTenantConfigController {
+    @Autowired
+    private SysTenantConfigService sysTenantConfigService;
+
+    @Autowired
+    private SysTenantService sysTenantService;
+
+
+    /**
+     * 登录页-样式配置查询
+     *
+     * @param url 域名
+     * @return
+     */
+    @GetMapping("/getTenantConfig")
+    public ApiResult<List<SysTenantConfigVo>> getTenantConfig(@RequestParam String url) {
+        return ApiResult.success(sysTenantConfigService.getTenantConfig(url));
+    }
+
+
+    /**
+     * 中间页-样式配置查询
+     */
+    @GetMapping("/getMiddleConfig")
+    public ApiResult<List<SysTenantConfig>> getMiddleConfig() {
+        return ApiResult.success(sysTenantConfigService.getMiddleConfig());
+    }
+
+
+    /**
+     * 租户管理-系统配置-主列表查询
+     *
+     * @param sysTenantOneVo
+     * @return
+     */
+    @PostMapping("getTenantData")
+    public ApiResult<CommonPage<SysTenantTwoVo>> getTenantData(@RequestBody SysTenantOneVo sysTenantOneVo) {
+        return ApiResult.success(sysTenantService.getTenantData(sysTenantOneVo));
+    }
+
+    /**
+     * 租户管理-系统配置-租户配置查询
+     *
+     * @param tenantId 租户ID
+     * @return
+     */
+    @GetMapping("/getMiddleConfigList")
+    public ApiResult<List<SysTenantConfig>> getMiddleConfigList(@RequestParam Integer tenantId) {
+        return ApiResult.success(sysTenantConfigService.getMiddleConfigList(tenantId));
+    }
+
+    /**
+     * 租户管理-系统配置-租户配置新增
+     *
+     * @param sysTenantConfig
+     * @return
+     */
+//    @Log(title = "租户管理-系统配置", businessType = BusinessType.INSERT)
+    @PostMapping("addMiddleConfig")
+    public ApiResult<Void> addMiddleConfig(@RequestBody SysTenantConfig sysTenantConfig) {
+        sysTenantConfigService.addMiddleConfig(sysTenantConfig);
+        return ApiResult.success();
+    }
+
+    /**
+     * 租户管理-系统配置-租户配置修改
+     *
+     * @param sysTenantConfig
+     * @return
+     */
+//    @Log(title = "租户管理-系统配置", businessType = BusinessType.UPDATE)
+    @PostMapping("updaMiddleConfig")
+    public ApiResult<Void> updaMiddleConfig(@RequestBody SysTenantConfig sysTenantConfig) {
+        sysTenantConfigService.updaMiddleConfig(sysTenantConfig);
+        return ApiResult.success();
+    }
+
+    /**
+     * 租户管理-系统配置-图片上传
+     *
+     * @param file    图片
+     * @param request
+     * @return
+     */
+    @PostMapping("pictureUpload")
+    public ApiResult<String> pictureUpload(@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request
+    ) {
+        return ApiResult.success(sysTenantConfigService.pictureUpload(file, request));
+    }
+
+
+    /**
+     * 租户管理-系统配置-首页请求地址下拉框查询
+     *
+     * @param tenantId 租户ID
+     * @return
+     */
+    @GetMapping("/getMenuBoxList")
+    public ApiResult<List<SysMenu>> getMenuBoxList(@RequestParam Integer tenantId) {
+        return ApiResult.success(sysTenantConfigService.getMenuBoxList(tenantId));
+    }
+
+}
+

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

@@ -1,12 +1,9 @@
 package com.usky.system.controller.web;
 
 
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.exception.BusinessErrorCode;
-import com.usky.common.core.util.StringUtils;
-import com.usky.common.log.annotation.Log;
-import com.usky.common.log.enums.BusinessType;
-import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.controller.web.page.TableDataInfo;
 import com.usky.system.domain.SysRole;
 import com.usky.system.domain.SysUser;
@@ -46,7 +43,7 @@ public class SysUserController extends BaseController
     /**
      * 获取用户列表
      */
-    @Log(title = "用户管理", businessType = BusinessType.OTHER)
+//    @Log(title = "用户管理", businessType = BusinessType.OTHER)
     @GetMapping("/list")
     public ApiResult<TableDataInfo> list(SysUser user)
     {
@@ -77,7 +74,7 @@ public class SysUserController extends BaseController
     /**
      * 新增用户
      */
-    @Log(title = "用户管理", businessType = BusinessType.INSERT)
+//    @Log(title = "用户管理", businessType = BusinessType.INSERT)
     @Transactional
     @PostMapping
     public ApiResult<Void> add(@Validated @RequestBody SysUser user)
@@ -86,16 +83,8 @@ public class SysUserController extends BaseController
         {
             return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,登录账号已存在");
         }
-        else if (StringUtils.isNotBlank(user.getPhonenumber())
-                && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
-        {
-            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,手机号码已存在");
-        }
-        else if (StringUtils.isNotBlank(user.getEmail())
-                && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user)))
-        {
-            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,邮箱账号已存在");
-        }
+        user.setUserType("00");
+        user.setTenantId(SecurityUtils.getTenantId());
         user.setCreateBy(SecurityUtils.getUsername());
         user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         int row = userService.insertUser(user);
@@ -105,22 +94,12 @@ public class SysUserController extends BaseController
     /**
      * 修改用户
      */
-    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
+//    @Log(title = "用户管理", businessType = BusinessType.UPDATE)
     @Transactional
     @PutMapping
     public ApiResult<Void> edit(@Validated @RequestBody SysUser user)
     {
         userService.checkUserAllowed(user);
-        if (StringUtils.isNotEmpty(user.getPhonenumber())
-                && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
-        {
-            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,手机号码已存在");
-        }
-        else if (StringUtils.isNotEmpty(user.getEmail())
-                && UserConstants.NOT_UNIQUE.equals(userService.checkEmailUnique(user)))
-        {
-            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "修改用户'" + user.getUserName() + "'失败,邮箱账号已存在");
-        }
         user.setUpdateBy(SecurityUtils.getUsername());
         return toAjax(userService.updateUser(user));
     }
@@ -128,7 +107,7 @@ public class SysUserController extends BaseController
     /**
      * 删除用户
      */
-    @Log(title = "用户管理", businessType = BusinessType.DELETE)
+//    @Log(title = "用户管理", businessType = BusinessType.DELETE)
     @DeleteMapping("/{userIds}")
     public ApiResult<Void> remove(@PathVariable Long[] userIds)
     {

+ 84 - 0
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TenantConfigController.java

@@ -0,0 +1,84 @@
+package com.usky.system.controller.web;
+
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.common.core.bean.CommonPage;
+import com.usky.system.domain.SysPlatform;
+import com.usky.system.domain.SysTenant;
+import com.usky.system.service.SysPlatformService;
+import com.usky.system.service.SysTenantService;
+import com.usky.system.service.vo.SysTenantOneVo;
+import com.usky.system.service.vo.SysTenantTwoVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 个人中心
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+@RestController
+@RequestMapping("/tenantConfig")
+public class TenantConfigController {
+
+    @Autowired
+    private SysTenantService sysTenantService;
+
+    @Autowired
+    private SysPlatformService sysPlatformService;
+
+
+    /**
+     * 租户管理-租户单位配置-列表查询
+     *
+     * @param sysTenantOneVo
+     * @return
+     */
+    @PostMapping("getTenantData")
+    public ApiResult<CommonPage<SysTenantTwoVo>> getTenantData(@RequestBody SysTenantOneVo sysTenantOneVo) {
+        return ApiResult.success(sysTenantService.getTenantData(sysTenantOneVo));
+    }
+
+
+    /**
+     * 租户管理-租户单位配置-新增
+     *
+     * @param sysTenant
+     * @return
+     */
+//    @Log(title = "租户管理-单位管理", businessType = BusinessType.INSERT)
+    @PostMapping("addTenantData")
+    public ApiResult<Void> addTenantData(@RequestBody SysTenant sysTenant) {
+        sysTenantService.addTenantData(sysTenant);
+        return ApiResult.success();
+    }
+
+    /**
+     * 租户管理-租户单位配置-修改
+     *
+     * @param sysTenant
+     * @return
+     */
+//    @Log(title = "租户管理-单位管理", businessType = BusinessType.UPDATE)
+    @PostMapping("updateTenantData")
+    public ApiResult<Void> updateTenantData(@RequestBody SysTenant sysTenant) {
+        sysTenantService.updateTenantData(sysTenant);
+        return ApiResult.success();
+    }
+
+
+    /**
+     * 租户管理-租户单位配置-系统平台下拉框数据查询
+     *
+     * @return
+     */
+    @GetMapping("/getPlatformBoxList")
+    public ApiResult<List<SysPlatform>> getPlatformBoxList() {
+        return ApiResult.success(sysPlatformService.getPlatformBoxList());
+    }
+
+}
+

+ 156 - 0
service-system/service-system-biz/src/main/java/com/usky/system/controller/web/UserConfigController.java

@@ -0,0 +1,156 @@
+package com.usky.system.controller.web;
+
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.bean.ApiResult;
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.core.exception.BusinessErrorCode;
+import com.usky.system.domain.SysUser;
+import com.usky.system.domain.constants.UserConstants;
+import com.usky.system.service.ISysUserService;
+import com.usky.system.service.SysTenantService;
+import com.usky.system.service.vo.SysTenantTwoVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+
+/**
+ * 租户管理-管理员配置
+ *
+ * @author yq
+ */
+@RestController
+@RequestMapping("/userconfig")
+public class UserConfigController extends BaseController {
+    @Autowired
+    private ISysUserService userService;
+
+    @Autowired
+    private SysTenantService sysTenantService;
+
+
+    /**
+     * 租户管理-管理员配置-新增
+     *
+     * @param user
+     * @return
+     */
+//    @Log(title = "租户管理-管理员配置", businessType = BusinessType.INSERT)
+    @Transactional
+    @PostMapping("/addUserData")
+    public ApiResult<Void> addUserData(@Validated @RequestBody SysUser user) {
+        if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName()))) {
+            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新增用户'" + user.getUserName() + "'失败,登录账号已存在");
+        }
+        user.setCreateBy(SecurityUtils.getUsername());
+        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
+        user.setCreateTime(new Date());
+        user.setUserType("01");
+        user.setFullName(user.getNickName());
+//        user.setStatus("0");
+        user.setDelFlag("0");
+        int row = userService.addUser(user);
+        return toAjax(row);
+    }
+
+
+    /**
+     * 租户管理-管理员配置-修改
+     *
+     * @param user
+     * @return
+     */
+//    @Log(title = "租户管理-管理员配置", businessType = BusinessType.UPDATE)
+    @Transactional
+    @PostMapping("/updateserData")
+    public ApiResult<Void> updateserData(@Validated @RequestBody SysUser user) {
+        user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
+        user.setUpdateBy(SecurityUtils.getUsername());
+        user.setUpdateTime(new Date());
+        return toAjax(userService.updateUserData(user));
+    }
+
+
+    /**
+     * 租户管理-管理员配置-删除
+     *
+     * @param userId 用户ID
+     * @return
+     */
+//    @Log(title = "租户管理-管理员配置", businessType = BusinessType.DELETE)
+    @GetMapping("/delUsers")
+    public ApiResult<Void> delUsers(@RequestParam Long userId) {
+        SysUser user = new SysUser();
+        if (userId == 0 && userId == null) {
+            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "用户ID不能为空");
+        }
+        user.setUserId(userId);
+        userService.checkUserAllowed(user);
+        user.setUpdateBy(SecurityUtils.getUsername());
+        user.setUpdateTime(new Date());
+        user.setRemark("注销用户");
+        user.setDelFlag("2");
+        return toAjax(userService.updateUserData(user));
+    }
+
+
+    /**
+     * 租户管理-管理员配置-重置密码
+     *
+     * @param newPassword 新密码
+     * @param UserId      用户ID
+     * @return
+     */
+//    @Log(title = "租户管理-管理员配置", businessType = BusinessType.UPDATE)
+    @PutMapping("/updatePwd")
+    public ApiResult updatePwd(String newPassword, Long UserId) {
+        SysUser sysUser = userService.selectUserById(UserId);
+        if (sysUser.getUserId() == 0 && sysUser.getUserId() == null) {
+            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "无此用户,请联系管理员");
+        }
+        if (SecurityUtils.matchesPassword(newPassword, sysUser.getPassword())) {
+            return ApiResult.error(BusinessErrorCode.BIZ_BUSINESS_ERROR.getCode(), "新密码不能与旧密码相同");
+        }
+        userService.resetUserPwdOne(UserId, SecurityUtils.encryptPassword(newPassword));
+        return ApiResult.success();
+    }
+
+
+    /**
+     * 租户管理-管理员配置-管理员信息查询
+     *
+     * @param tenantId 租户ID
+     * @param page     当前页
+     * @param size     每页条数
+     * @return
+     */
+    @GetMapping("getUserList")
+    public ApiResult<CommonPage<SysUser>> getUserList(@RequestParam(value = "tenantId", required = false, defaultValue = "0") Integer tenantId,
+                                                      @RequestParam(value = "page", required = false, defaultValue = "0") Integer page,
+                                                      @RequestParam(value = "size", required = false, defaultValue = "0") Integer size,
+                                                      @RequestParam(value = "userId", required = false, defaultValue = "0") long userId) {
+        return ApiResult.success(userService.userList(tenantId, page, size, userId));
+    }
+
+
+    /**
+     * 租户管理-管理员配置-列表查询
+     *
+     * @param tenantName    租户名称
+     * @param tenantManager 租户责任人名称
+     * @param page          当前页
+     * @param size          每页条数
+     * @return
+     */
+    @GetMapping("getTenantDataOne")
+    public ApiResult<CommonPage<SysTenantTwoVo>> getTenantDataOne(@RequestParam(value = "tenantName", required = false) String tenantName,
+                                                                  @RequestParam(value = "tenantManager", required = false) String tenantManager,
+                                                                  @RequestParam(value = "page", required = false, defaultValue = "0") Integer page,
+                                                                  @RequestParam(value = "size", required = false, defaultValue = "0") Integer size) {
+        return ApiResult.success(sysTenantService.getTenantDataOne(tenantName, tenantManager, page, size));
+    }
+
+
+}

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

@@ -57,6 +57,21 @@ public class SysDept extends BaseEntity
     @TableField(exist = false)
     private String parentName;
 
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
+
     /** 子部门 */
     @TableField(exist = false)
     private List<SysDept> children = new ArrayList<SysDept>();

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

@@ -30,6 +30,19 @@ public class SysDictType extends BaseEntity
     /** 状态(0正常 1停用) */
     private String status;
 
+    /** 租户ID */
+    private Integer tenantId;
+
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
+
     public Long getDictId()
     {
         return dictId;

+ 76 - 0
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPlatform.java

@@ -0,0 +1,76 @@
+package com.usky.system.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 平台信息表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysPlatform implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 主键ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 平台名称
+     */
+    private String platformName;
+
+    /**
+     * 平台状态(0 停用 1 启用)
+     */
+    private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建者
+     */
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新者
+     */
+    private String updateBy;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     * 激活码
+     */
+    @TableField("tenantKey")
+    private String tenantKey;
+
+
+}

+ 35 - 0
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPlatformMenu.java

@@ -0,0 +1,35 @@
+package com.usky.system.domain;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 平台和菜单关联表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysPlatformMenu implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 平台ID
+     */
+    private Long platformId;
+
+    /**
+     * 菜单ID
+     */
+    private Long menuId;
+
+
+}

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

@@ -33,6 +33,20 @@ public class SysPost extends BaseEntity
     /** 状态(0正常 1停用) */
     private String status;
 
+    /** 租户ID */
+    private Integer tenantId;
+
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
+
+
     /** 用户是否存在此岗位标识 默认不存在 */
     @TableField(exist = false)
     private boolean flag = false;

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

@@ -54,11 +54,24 @@ public class SysRole extends BaseEntity
     /** 部门组(数据权限) */
     private Long[] deptIds;
 
+    /** 租户ID */
+    private Integer tenantId;
+
     public SysRole()
     {
 
     }
 
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
+
     public SysRole(Long roleId)
     {
         this.roleId = roleId;

+ 118 - 0
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenant.java

@@ -0,0 +1,118 @@
+package com.usky.system.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 租户信息表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenant implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 租户ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 租户编号
+     */
+    private String tenantCode;
+
+    /**
+     * 租户名称
+     */
+    private String tenantName;
+
+    /**
+     * 租户负责人
+     */
+    private String tenantManager;
+
+    /**
+     * 租户类型(0 试用租户  1 正式租户)
+     */
+    private String tenantType;
+
+    /**
+     * 租户站点域名
+     */
+    private String domain;
+
+    /**
+     * 租户邮箱
+     */
+    private String email;
+
+    /**
+     * 手机号码
+     */
+    private String phoneNumber;
+
+    /**
+     * 联系地址
+     */
+    private String address;
+
+    /**
+     * 地理位置
+     */
+    private String geoPosition;
+
+    /**
+     * 有效期限
+     */
+    private String tenantTerm;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 租户状态(0正常 1停用)
+     */
+    private String status;
+
+    /**
+     * 创建者
+     */
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新者
+     */
+    private String updateBy;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     * 系统名称
+     */
+    private String systemName;
+
+}

+ 139 - 0
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenantConfig.java

@@ -0,0 +1,139 @@
+package com.usky.system.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 租户配置表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-06
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenantConfig implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 租户ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 租户名称
+     */
+    private String loginTitle;
+
+    /**
+     * 登录页log
+     */
+    private String loginLogo;
+
+    /**
+     * 登录页背景地址
+     */
+    private String loginBackUrl;
+
+    /**
+     * 登录页底部名称
+     */
+    private String loginFooter;
+
+    /**
+     * 登录类型
+     */
+    private String loginType;
+
+    /**
+     * 中间页logo地址
+     */
+    private String middleLogo;
+
+    /**
+     * 中间页背景URL
+     */
+    private String middleBackUrl;
+
+    /**
+     * 中间页标题
+     */
+    private String middleTitle;
+
+    /**
+     * 中间页底部名称
+     */
+    private String middleFooter;
+
+    /**
+     * 主页logo地址
+     */
+    private String homeLogo;
+
+    /**
+     * 主页默认访问地址
+     */
+    private String homePageUrl;
+
+    /**
+     * 主页导航布局
+     */
+    private String homeLayout;
+
+    /**
+     * 主页主题样式
+     */
+    private String homeStyle;
+
+    /**
+     * 创建者
+     */
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新者
+     */
+    private String updateBy;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     * 标签页图标
+     */
+    private String labelIcon;
+
+    /**
+     * 是否开启中间页:0 否 1 是
+     */
+    private Integer middleStatus;
+
+    /**
+     * 大屏路径
+     */
+    private String largeScreenUrl;
+
+
+}

+ 37 - 0
service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenantMenu.java

@@ -0,0 +1,37 @@
+package com.usky.system.domain;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户和菜单关联表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenantMenu implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 租户ID
+     */
+    private Long tenantId;
+
+    /**
+     * 菜单ID
+     */
+    private Long menuId;
+
+    private String menuAliasName;
+
+
+}

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

@@ -87,11 +87,42 @@ public class SysUser extends BaseEntity
     /** 角色ID */
     @TableField(exist = false)
     private Long roleId;
+
+    /** 租户ID */
+    private Integer tenantId;
+
+    /** 地址 */
+    private String address;
+
+    /** 用户类型 */
+    private String userType;
+
+    /** 姓名 */
+    private String fullName;
+
     public SysUser()
     {
 
     }
 
+    public String getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
+
     public SysUser(Long userId)
     {
         this.userId = userId;
@@ -107,6 +138,16 @@ public class SysUser extends BaseEntity
         this.userId = userId;
     }
 
+    public String getUserType()
+    {
+        return userType;
+    }
+
+    public void setUserType(String userType)
+    {
+        this.userType = userType;
+    }
+
     public boolean isAdmin()
     {
         return isAdmin(this.userId);
@@ -183,6 +224,16 @@ public class SysUser extends BaseEntity
         this.sex = sex;
     }
 
+    public String getFullName()
+    {
+        return fullName;
+    }
+
+    public void setFullName(String fullName)
+    {
+        this.fullName = fullName;
+    }
+
     public String getAvatar()
     {
         return avatar;

+ 4 - 2
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysDeptMapper.java

@@ -55,7 +55,7 @@ public interface SysDeptMapper extends BaseMapper<SysDept>
      * @param deptId 部门ID
      * @return 子部门数
      */
-    public int selectNormalChildrenDeptById(Long deptId);
+    public int selectNormalChildrenDeptById(Long deptId,Integer tenantId);
 
     /**
      * 是否存在子节点
@@ -80,7 +80,9 @@ public interface SysDeptMapper extends BaseMapper<SysDept>
      * @param parentId 父部门ID
      * @return 结果
      */
-    public SysDept checkDeptNameUnique(@Param("deptName") String deptName, @Param("parentId") Long parentId);
+    public SysDept checkDeptNameUnique(@Param("deptName") String deptName,
+                                       @Param("parentId") Long parentId,
+                                       @Param("tenantId") Integer tenantId);
 
     /**
      * 新增部门信息

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

@@ -85,5 +85,5 @@ public interface SysDictTypeMapper extends CrudMapper<SysDictType>
      * @param dictType 字典类型
      * @return 结果
      */
-    public SysDictType checkDictTypeUnique(String dictType);
+    public SysDictType checkDictTypeUnique(String dictType,Integer tenantId);
 }

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

@@ -63,6 +63,8 @@ public interface SysMenuMapper extends CrudMapper<SysMenu>
      */
     public List<SysMenu> selectMenuTreeByUserId(Long userId);
 
+    public List<SysMenu> selectMenuTreeByUserIdOne(Integer tenantId);
+
     /**
      * 根据角色ID查询菜单树信息
      * 
@@ -120,4 +122,7 @@ public interface SysMenuMapper extends CrudMapper<SysMenu>
      * @return 结果
      */
     public SysMenu checkMenuNameUnique(@Param("menuName") String menuName, @Param("parentId") Long parentId);
+
+    public List<SysMenu> getSysMenuList(String menuType);
+
 }

+ 37 - 0
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysPlatformMapper.java

@@ -0,0 +1,37 @@
+package com.usky.system.mapper;
+
+import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysPlatform;
+import com.usky.system.domain.SysPlatformMenu;
+import com.usky.system.service.vo.SysPlatformVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 平台信息表 Mapper 接口
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+public interface SysPlatformMapper extends CrudMapper<SysPlatform> {
+
+    List<SysPlatformVo> getPlatformList(@Param("platformName") String platformName,
+                                        @Param("startTime") String startTime,
+                                        @Param("endTime") String endTime,
+                                        @Param("current") Integer current,
+                                        @Param("size") Integer size,
+                                        @Param("id") Integer id);
+
+    List<SysMenu> getMenuIdListOne(@Param("menuIds") Long[] menuIds,
+                                   @Param("menuType") String menuType);
+
+    int deletePlatformMenuBy(@Param("platformId") Long platformId);
+
+
+    List<SysPlatformMenu> getMenuListOne(@Param("platformId") Long platformId,
+                                         @Param("menuType")  String menuType);
+}

+ 31 - 0
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysPlatformMenuMapper.java

@@ -0,0 +1,31 @@
+package com.usky.system.mapper;
+
+import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysPlatformMenu;
+import com.usky.system.domain.SysTenantMenu;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 平台和菜单关联表 Mapper 接口
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+public interface SysPlatformMenuMapper extends CrudMapper<SysPlatformMenu> {
+
+    List<SysMenu> getMenuList(@Param("platformId") Integer platformId,
+                              @Param("menuType") String menuType);
+
+    List<SysMenu> getMenuIdList(@Param("menuIds") Long[] menuIds,
+                                @Param("menuType") String menuType);
+
+    int deleteTenantMenuBy(@Param("tenantId") Long tenantId);
+
+    List<SysTenantMenu> getMenuListOne(@Param("tenantId") Integer tenantId,
+                                       @Param("menuType") String menuType);
+}

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

@@ -92,7 +92,7 @@ public interface SysPostMapper extends CrudMapper<SysPost>
      * @param postName 岗位名称
      * @return 结果
      */
-    public SysPost checkPostNameUnique(String postName);
+    public SysPost checkPostNameUnique(String postName,Integer tenantId);
 
     /**
      * 校验岗位编码
@@ -100,5 +100,5 @@ public interface SysPostMapper extends CrudMapper<SysPost>
      * @param postCode 岗位编码
      * @return 结果
      */
-    public SysPost checkPostCodeUnique(String postCode);
+    public SysPost checkPostCodeUnique(String postCode,Integer tenantId);
 }

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

@@ -68,7 +68,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param roleName 角色名称
      * @return 角色信息
      */
-    public SysRole checkRoleNameUnique(String roleName);
+    public SysRole checkRoleNameUnique(String roleName,Integer tenantId);
 
     /**
      * 校验角色权限是否唯一
@@ -76,7 +76,7 @@ public interface SysRoleMapper extends CrudMapper<SysRole>
      * @param roleKey 角色权限
      * @return 角色信息
      */
-    public SysRole checkRoleKeyUnique(String roleKey);
+    public SysRole checkRoleKeyUnique(String roleKey,Integer tenantId);
 
     /**
      * 修改角色信息

+ 24 - 0
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantConfigMapper.java

@@ -0,0 +1,24 @@
+package com.usky.system.mapper;
+
+import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysTenantConfig;
+import com.usky.system.service.vo.SysTenantConfigVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 租户配置表 Mapper 接口
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-06
+ */
+public interface SysTenantConfigMapper extends CrudMapper<SysTenantConfig> {
+    List<SysTenantConfigVo> getTenantConfig(@Param("url") String url);
+
+    List<SysMenu> getMenuBoxList(@Param("tenantId") Integer tenantId,
+                                 @Param("menuType") String menuType);
+}

+ 38 - 0
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMapper.java

@@ -0,0 +1,38 @@
+package com.usky.system.mapper;
+
+import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.SysTenant;
+import com.usky.system.service.vo.SysTenantTwoVo;
+import com.usky.system.service.vo.SysTenantVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 租户信息表 Mapper 接口
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+public interface SysTenantMapper extends CrudMapper<SysTenant> {
+
+    List<SysTenantVo> getUserData(@Param("userId") int userId);
+
+    List<SysTenantTwoVo> getTenantData(@Param("tenantName") String tenantName,
+                                       @Param("tenantManager") String tenantManager,
+                                       @Param("tenantType") String tenantType,
+                                       @Param("status") String status,
+                                       @Param("startTime") String startTime,
+                                       @Param("endTime") String endTime,
+                                       @Param("current") Integer current,
+                                       @Param("size") Integer size,
+                                       @Param("id") Integer id);
+
+    List<SysTenantTwoVo> getTenantDataOne(@Param("tenantName") String tenantName,
+                                          @Param("tenantManager") String tenantManager,
+                                          @Param("current") Integer current,
+                                          @Param("size") Integer size);
+
+}

+ 16 - 0
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMenuMapper.java

@@ -0,0 +1,16 @@
+package com.usky.system.mapper;
+
+import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.SysTenantMenu;
+
+/**
+ * <p>
+ * 租户和菜单关联表 Mapper 接口
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+public interface SysTenantMenuMapper extends CrudMapper<SysTenantMenu> {
+
+}

+ 9 - 1
service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysUserMapper.java

@@ -1,6 +1,7 @@
 package com.usky.system.mapper;
 
 
+import com.usky.common.mybatis.core.CrudMapper;
 import com.usky.common.mybatis.core.CrudMapper;
 import com.usky.system.domain.SysUser;
 import org.apache.ibatis.annotations.Param;
@@ -113,7 +114,7 @@ public interface SysUserMapper extends CrudMapper<SysUser>
      * @param userName 用户名称
      * @return 结果
      */
-    public int checkUserNameUnique(String userName);
+    public int checkUserNameUnique(String userName,Integer tenantId);
 
     /**
      * 校验手机号码是否唯一
@@ -130,4 +131,11 @@ public interface SysUserMapper extends CrudMapper<SysUser>
      * @return 结果
      */
     public SysUser checkEmailUnique(String email);
+
+    public int resetUserPwdOne(@Param("userId") Long userId, @Param("password") String password);
+
+    public List<SysUser> getUserData(@Param("tenantId") Integer tenantId,
+                                     @Param("current") Integer current,
+                                     @Param("size") Integer size,
+                                     @Param("userId") long userId);
 }

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

@@ -49,6 +49,8 @@ public interface ISysMenuService extends CrudService<SysMenu>
      */
     public List<SysMenu> selectMenuTreeByUserId(Long userId);
 
+    List<SysMenu> selectMenuTreeByUserIdOne(Integer tenantId);
+
     /**
      * 根据角色ID查询菜单树信息
      * 

+ 10 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/ISysUserService.java

@@ -1,5 +1,6 @@
 package com.usky.system.service;
 
+import com.usky.common.core.bean.CommonPage;
 import com.usky.common.mybatis.core.CrudService;
 import com.usky.system.domain.SysUser;
 import com.usky.system.model.LoginUser;
@@ -198,6 +199,15 @@ public interface ISysUserService extends CrudService<SysUser> {
 
     public Boolean register(SysUser sysUser);
 
+    public int addUser(SysUser user);
+
+
+    public int updateUserData(SysUser user);
+
+    public int resetUserPwdOne(Long userId, String password);
+
+    public CommonPage<SysUser> userList(Integer tenantId, Integer page, Integer size, long userId);
+
 
 
 }

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

@@ -1,12 +1,12 @@
 package com.usky.system.service;
 
 import com.usky.common.core.constants.Constants;
-import com.usky.common.core.exception.BusinessException;
-import com.usky.common.core.util.BeanMapperUtils;
 import com.usky.common.core.util.IpUtils;
 import com.usky.common.core.util.ServletUtils;
-import com.usky.common.core.util.StringUtils;
 import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.exception.BusinessException;
+import com.usky.common.core.util.BeanMapperUtils;
+import com.usky.common.core.util.StringUtils;
 import com.usky.system.domain.SysLogininfor;
 import com.usky.system.domain.SysLogininforVO;
 import com.usky.system.domain.SysUser;

+ 28 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/SysPlatformMenuService.java

@@ -0,0 +1,28 @@
+package com.usky.system.service;
+
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysPlatformMenu;
+import com.usky.system.service.vo.TenantMenuVo;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 平台和菜单关联表 服务类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+public interface SysPlatformMenuService extends CrudService<SysPlatformMenu> {
+
+    List<SysMenu> getPlatformMenuList(Integer platformId);
+
+    Long[] selectPlatformMenu(Integer tenantId);
+
+    Map<String, Object> getMenuList(Integer platformId, Integer tenantId);
+
+    void updateMenu(TenantMenuVo tenantMenuVo);
+}

+ 28 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/SysPlatformService.java

@@ -0,0 +1,28 @@
+package com.usky.system.service;
+
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysPlatform;
+import com.usky.system.service.vo.PlatformMenuVo;
+import com.usky.system.service.vo.SysPlatformVo;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 平台信息表 服务类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+public interface SysPlatformService extends CrudService<SysPlatform> {
+    List<SysPlatform> getPlatformBoxList();
+
+    CommonPage<SysPlatformVo> getPlatformList(String platformName, String startTime, String endTime, Integer page, Integer size, Integer id);
+
+    Long[] getPlatformMenu(Long platformId);
+
+    void updatePlatformMenu(PlatformMenuVo platformMenuVo);
+}

+ 36 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantConfigService.java

@@ -0,0 +1,36 @@
+package com.usky.system.service;
+
+
+
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysTenantConfig;
+import com.usky.system.service.vo.SysTenantConfigVo;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+
+/**
+ * <p>
+ * 租户配置表 服务类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-06
+ */
+public interface SysTenantConfigService extends CrudService<SysTenantConfig> {
+    List<SysTenantConfigVo> getTenantConfig(String url);
+
+    List<SysTenantConfig> getMiddleConfig();
+
+    List<SysTenantConfig> getMiddleConfigList(Integer tenantId);
+
+    void addMiddleConfig(SysTenantConfig sysTenantConfig);
+
+    void updaMiddleConfig(SysTenantConfig sysTenantConfig);
+
+    List<SysMenu> getMenuBoxList(Integer tenantId);
+
+    String pictureUpload(MultipartFile file, HttpServletRequest request);
+}

+ 16 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantMenuService.java

@@ -0,0 +1,16 @@
+package com.usky.system.service;
+
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysTenantMenu;
+
+/**
+ * <p>
+ * 租户和菜单关联表 服务类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+public interface SysTenantMenuService extends CrudService<SysTenantMenu> {
+
+}

+ 31 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantService.java

@@ -0,0 +1,31 @@
+package com.usky.system.service;
+
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysTenant;
+import com.usky.system.service.vo.SysTenantOneVo;
+import com.usky.system.service.vo.SysTenantTwoVo;
+import com.usky.system.service.vo.SysTenantVo;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 租户信息表 服务类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+public interface SysTenantService extends CrudService<SysTenant> {
+    List<SysTenantVo> getUserData();
+
+    CommonPage<SysTenantTwoVo> getTenantData(SysTenantOneVo sysTenantOneVo);
+
+    void addTenantData(SysTenant sysTenant);
+
+    void updateTenantData(SysTenant sysTenant);
+
+    CommonPage<SysTenantTwoVo> getTenantDataOne(String tenantName, String tenantManager, Integer page, Integer size);
+
+}

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

@@ -1,10 +1,11 @@
 package com.usky.system.service.impl;
 
 
+import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
 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.mybatis.core.AbstractCrudService;
 import com.usky.system.domain.SysDept;
 import com.usky.system.domain.SysRole;
 import com.usky.system.domain.constants.UserConstants;
@@ -45,6 +46,7 @@ public class SysDeptServiceImpl extends AbstractCrudService<SysDeptMapper, SysDe
     @Override
     public List<SysDept> selectDeptList(SysDept dept)
     {
+        dept.setTenantId(SecurityUtils.getTenantId());
         return deptMapper.selectDeptList(dept);
     }
 
@@ -127,7 +129,7 @@ public class SysDeptServiceImpl extends AbstractCrudService<SysDeptMapper, SysDe
     @Override
     public int selectNormalChildrenDeptById(Long deptId)
     {
-        return deptMapper.selectNormalChildrenDeptById(deptId);
+        return deptMapper.selectNormalChildrenDeptById(deptId,SecurityUtils.getTenantId());
     }
 
     /**
@@ -166,7 +168,7 @@ public class SysDeptServiceImpl extends AbstractCrudService<SysDeptMapper, SysDe
     public String checkDeptNameUnique(SysDept dept)
     {
         Long deptId = Objects.isNull(dept.getDeptId()) ? -1L : dept.getDeptId();
-        SysDept info = deptMapper.checkDeptNameUnique(dept.getDeptName(), dept.getParentId());
+        SysDept info = deptMapper.checkDeptNameUnique(dept.getDeptName(), dept.getParentId(),SecurityUtils.getTenantId());
         if (Objects.nonNull(info) && info.getDeptId().longValue() != deptId.longValue())
         {
             return UserConstants.NOT_UNIQUE;

+ 4 - 2
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysDictTypeServiceImpl.java

@@ -1,8 +1,9 @@
 package com.usky.system.service.impl;
 
 
-import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.exception.BusinessException;
 import com.usky.system.domain.SysDictData;
 import com.usky.system.domain.SysDictType;
 import com.usky.system.domain.constants.UserConstants;
@@ -51,6 +52,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
     @Override
     public List<SysDictType> selectDictTypeList(SysDictType dictType)
     {
+        dictType.setTenantId(SecurityUtils.getTenantId());
         return dictTypeMapper.selectDictTypeList(dictType);
     }
 
@@ -214,7 +216,7 @@ public class SysDictTypeServiceImpl extends AbstractCrudService<SysDictTypeMappe
     public String checkDictTypeUnique(SysDictType dict)
     {
         Long dictId = null == dict.getDictId() ? -1L : dict.getDictId();
-        SysDictType dictType = dictTypeMapper.checkDictTypeUnique(dict.getDictType());
+        SysDictType dictType = dictTypeMapper.checkDictTypeUnique(dict.getDictType(),SecurityUtils.getTenantId());
         if (Objects.nonNull(dictType) && dictType.getDictId().longValue() != dictId.longValue())
         {
             return UserConstants.NOT_UNIQUE;

+ 6 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java

@@ -117,6 +117,12 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
         return getChildPerms(menus, 0);
     }
 
+
+    public List<SysMenu> selectMenuTreeByUserIdOne(Integer tenantId){
+        List<SysMenu> menus = menuMapper.selectMenuTreeByUserIdOne(tenantId);
+        return getChildPerms(menus, 0);
+    }
+
     /**
      * 根据角色ID查询菜单树信息
      *

+ 260 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPlatformMenuServiceImpl.java

@@ -0,0 +1,260 @@
+package com.usky.system.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysPlatformMenu;
+import com.usky.system.domain.SysTenantMenu;
+import com.usky.system.mapper.SysPlatformMenuMapper;
+import com.usky.system.service.SysPlatformMenuService;
+import com.usky.system.service.SysTenantMenuService;
+import com.usky.system.service.vo.SysMenuOneVo;
+import com.usky.system.service.vo.SysMenuTwoVo;
+import com.usky.system.service.vo.SysMenuVo;
+import com.usky.system.service.vo.TenantMenuVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 平台和菜单关联表 服务实现类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Service
+public class SysPlatformMenuServiceImpl extends AbstractCrudService<SysPlatformMenuMapper, SysPlatformMenu> implements SysPlatformMenuService {
+
+    @Autowired
+    private SysTenantMenuService sysTenantMenuService;
+
+
+    public List<SysMenu> getPlatformMenuList(Integer platformId){
+        return baseMapper.getMenuList(platformId, null);
+    }
+
+    public Long[] selectPlatformMenu(Integer tenantId){
+        LambdaQueryWrapper<SysTenantMenu> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(SysTenantMenu::getTenantId, tenantId);
+        List<SysTenantMenu> menuList = sysTenantMenuService.list(queryWrapper);
+        Long[] arr = new Long[menuList.size()];
+        for (int i = 0; i < menuList.size(); i++) {
+            arr[i] = menuList.get(i).getMenuId();
+        }
+        return arr;
+    }
+
+
+    public Map<String, Object> getMenuList(Integer platformId, Integer tenantId) {
+        //全部目录查询
+        List<SysMenu> sysMenuListTwo = baseMapper.getMenuList(platformId, "M");
+        //全部菜单查询
+        List<SysMenu> sysMenuListOne = baseMapper.getMenuList(platformId, "C");
+        //全部按钮列表
+        List<SysMenu> sysMenuListThree = baseMapper.getMenuList(platformId, "F");
+        //已选中按钮列表
+
+        LambdaQueryWrapper<SysTenantMenu> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(SysTenantMenu::getTenantId, tenantId);
+        List<SysTenantMenu> sysMenuListFour = sysTenantMenuService.list(queryWrapper);
+
+        List<SysTenantMenu> menuList = baseMapper.getMenuListOne(tenantId, "F");
+        Long[] arr = new Long[menuList.size()];
+        for (int i = 0; i < menuList.size(); i++) {
+            arr[i] = menuList.get(i).getMenuId();
+        }
+
+
+        List<SysMenuTwoVo> sysMenuVoListOne = new ArrayList<>();
+        List<SysMenuOneVo> SysMenuVoList = new ArrayList<>();
+        List<SysMenuVo> SysMenuVoListOne = new ArrayList<>();
+        List<Object> list = new ArrayList<>();
+//        if (sysMenuListFour.size()>0){
+        for (int i = 0; i < sysMenuListThree.size(); i++) {
+            SysMenuTwoVo sysMenuTwoVo = new SysMenuTwoVo();
+            sysMenuTwoVo.setId(sysMenuListThree.get(i).getMenuId());
+            sysMenuTwoVo.setName(sysMenuListThree.get(i).getMenuName());
+            sysMenuTwoVo.setFid(sysMenuListThree.get(i).getParentId());
+            long Id = sysMenuListThree.get(i).getMenuId();
+            sysMenuTwoVo.setChecked(false);
+            if (sysMenuListFour.size() > 0) {
+                for (int j = 0; j < sysMenuListFour.size(); j++) {
+                    long MenuId = sysMenuListFour.get(j).getMenuId();
+                    if (Id == MenuId) {
+                        sysMenuTwoVo.setChecked(true);
+                    }
+                }
+            } else {
+                sysMenuTwoVo.setChecked(false);
+            }
+
+            sysMenuVoListOne.add(sysMenuTwoVo);
+        }
+        for (int i = 0; i < sysMenuListOne.size(); i++) {
+            SysMenuOneVo sysMenuOneVo = new SysMenuOneVo();
+            sysMenuOneVo.setId(sysMenuListOne.get(i).getMenuId());
+            sysMenuOneVo.setMenu(sysMenuListOne.get(i).getMenuName());
+            sysMenuOneVo.setFid(sysMenuListOne.get(i).getParentId());
+            long id = sysMenuListOne.get(i).getMenuId();
+            List<SysMenuTwoVo> sysMenuVoListTwo = new ArrayList<>();
+            List<SysMenuTwoVo> menuListTrue = new ArrayList<>();
+            for (int j = 0; j < sysMenuVoListOne.size(); j++) {
+                long FId = sysMenuVoListOne.get(j).getFid();
+                Boolean pd = sysMenuVoListOne.get(j).getChecked();
+                if (id == FId) {
+                    sysMenuVoListTwo.add(sysMenuVoListOne.get(j));
+                    if (pd == true) {
+                        menuListTrue.add(sysMenuVoListOne.get(j));
+                    }
+                }
+            }
+            sysMenuOneVo.setAuthority(sysMenuVoListTwo);
+            if (menuListTrue.size() > 0) {
+                sysMenuOneVo.setChecked(true);
+            } else {
+                sysMenuOneVo.setChecked(false);
+            }
+            SysMenuVoList.add(sysMenuOneVo);
+        }
+
+        for (int i = 0; i < sysMenuListTwo.size(); i++) {
+            SysMenuVo sysMenuVo = new SysMenuVo();
+            sysMenuVo.setId(sysMenuListTwo.get(i).getMenuId());
+            sysMenuVo.setMenu(sysMenuListTwo.get(i).getMenuName());
+            sysMenuVo.setFid(sysMenuListTwo.get(i).getParentId());
+            long id = sysMenuListTwo.get(i).getMenuId();
+            List<SysMenuOneVo> SysMenuVoListThree = new ArrayList<>();
+            List<SysMenuOneVo> menuListtrueOne = new ArrayList<>();
+            for (int j = 0; j < SysMenuVoList.size(); j++) {
+                long FId = SysMenuVoList.get(j).getFid();
+                Boolean pd = SysMenuVoList.get(j).getChecked();
+                if (id == FId) {
+                    SysMenuVoListThree.add(SysMenuVoList.get(j));
+                    if (pd == true) {
+                        menuListtrueOne.add(SysMenuVoList.get(j));
+                    }
+                }
+            }
+            sysMenuVo.setChildren(SysMenuVoListThree);
+            if (menuListtrueOne.size() > 0) {
+                sysMenuVo.setChecked(true);
+            } else {
+                sysMenuVo.setChecked(false);
+            }
+
+            SysMenuVoListOne.add(sysMenuVo);
+        }
+
+        for (int i = 0; i < SysMenuVoListOne.size(); i++) {
+            String name = SysMenuVoListOne.get(i).getMenu();
+            if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理") || name.equals("租户管理") || name.equals("统计管理")) {
+                list.add(SysMenuVoListOne.get(i));
+            } else {
+                for (int j = 0; j < SysMenuVoList.size(); j++) {
+                    String name2 = SysMenuVoList.get(j).getMenu();
+                    if (name.equals(name2)) {
+                        list.add(SysMenuVoList.get(j));
+                    }
+                }
+            }
+        }
+//        }
+        Map<String, Object> ajax = new HashMap<>();
+        ajax.put("checkedKeys", arr);
+        ajax.put("menus", list);
+
+        return ajax;
+    }
+
+
+    @Override
+    @Transactional
+    public void updateMenu(TenantMenuVo tenantMenuVo) {
+        Long[] arr = tenantMenuVo.getMenuIds();
+        //菜单ID
+        List<SysMenu> menuIdList = baseMapper.getMenuIdList(arr, "F");
+        Long arr1[] = new Long[menuIdList.size()];
+        for (int i = 0; i < menuIdList.size(); i++) {
+            arr1[i] = menuIdList.get(i).getParentId();
+        }
+        //目录ID
+        List<SysMenu> menuIdListOne = baseMapper.getMenuIdList(arr1, "C");
+        Long arr2[] = new Long[menuIdListOne.size()];
+        for (int i = 0; i < menuIdListOne.size(); i++) {
+            arr2[i] = menuIdListOne.get(i).getParentId();
+        }
+        List<SysMenu> menuIdListTwo = baseMapper.getMenuIdList(arr, "C");
+        Long arr4[] = new Long[menuIdListTwo.size()];
+        for (int i = 0; i < menuIdListTwo.size(); i++) {
+            arr4[i] = menuIdListTwo.get(i).getParentId();
+        }
+        Long[] arr5 = arrayMerge(arr1, arr2);
+        Long[] arr6 = arrayMerge(arr5, arr4);
+        Long[] arr7 = arrayMerge(arr6, arr);
+        List arr3 = new ArrayList();
+        for (int i = 0; i < arr7.length; i++) {
+            if (!arr3.contains(arr7[i])) {
+                arr3.add(arr7[i]);
+            }
+        }
+//        Long[] arr3 =ifRepeat2(arr6);
+//        Long arr3[] = new Long[arr1.length+arr2.length+arr.length];
+//        for (int i=0;i<arr1.length;i++){
+//            arr3[i] = arr1[i];
+//        }
+//        for (int i=0;i<arr2.length;i++){
+//            arr3[i+arr1.length] = arr2[i];
+//        }
+//        for (int i=0;i<arr.length;i++){
+//            arr3[i+arr1.length+arr2.length] = arr[i];
+//        }
+
+        // 删除租户菜单关联
+        baseMapper.deleteTenantMenuBy(tenantMenuVo.getTenantId());
+        //新增菜单
+        if (arr3.size() > 0) {
+            for (int i = 0; i < arr3.size(); i++) {
+                SysTenantMenu sysTenantMenu = new SysTenantMenu();
+                sysTenantMenu.setMenuId((Long) arr3.get(i));
+                sysTenantMenu.setTenantId(tenantMenuVo.getTenantId());
+                sysTenantMenuService.save(sysTenantMenu);
+            }
+        }
+    }
+
+    public Long[] arrayMerge(Long[] arr1, Long[] arr2) {
+        Long arr3[] = new Long[arr1.length + arr2.length];
+        for (int i = 0; i < arr1.length; i++) {
+            arr3[i] = arr1[i];
+        }
+        for (int i = 0; i < arr2.length; i++) {
+            arr3[i + arr1.length] = arr2[i];
+        }
+        return arr3;
+    }
+
+    public Object[] ifRepeat2(Object[] arr) {
+        //创建一个集合
+        List list = new ArrayList();
+        //遍历数组往集合里存元素
+        for (int i = 0; i < arr.length; i++) {
+            //如果集合里面没有相同的元素才往里存
+            if (!list.contains(arr[i])) {
+                list.add(arr[i]);
+            }
+        }
+
+        //toArray()方法会返回一个包含集合所有元素的Object类型数组
+        Object[] newArr = list.toArray();
+        return newArr;
+
+    }
+}

+ 144 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPlatformServiceImpl.java

@@ -0,0 +1,144 @@
+package com.usky.system.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysPlatform;
+import com.usky.system.domain.SysPlatformMenu;
+import com.usky.system.mapper.SysMenuMapper;
+import com.usky.system.mapper.SysPlatformMapper;
+import com.usky.system.service.SysPlatformMenuService;
+import com.usky.system.service.SysPlatformService;
+import com.usky.system.service.vo.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 平台信息表 服务实现类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Service
+public class SysPlatformServiceImpl extends AbstractCrudService<SysPlatformMapper, SysPlatform> implements SysPlatformService {
+
+    @Autowired
+    private SysMenuMapper menuMapper;
+    @Autowired
+    private SysPlatformMenuService sysPlatformMenuService;
+
+    @Override
+    public List<SysPlatform> getPlatformBoxList() {
+        LambdaQueryWrapper<SysPlatform> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(SysPlatform::getStatus, "1");
+        List<SysPlatform> list = this.list(queryWrapper);
+        return list;
+    }
+
+    @Override
+    public CommonPage<SysPlatformVo> getPlatformList(String platformName, String startTime, String endTime, Integer page, Integer size, Integer id) {
+        List<SysPlatformVo> list1 = baseMapper.getPlatformList(platformName, startTime, endTime, null, null, id);
+        int total = 0;
+        if (list1.size() > 0) {
+            total = list1.size();
+        }
+        Integer current = null;
+        if (page != null && size > 0) {
+            current = (page - 1) * size;
+        }
+        List<SysPlatformVo> list = baseMapper.getPlatformList(platformName, startTime, endTime, current, size, id);
+        return new CommonPage<>(list, total, size, page);
+    }
+
+    @Override
+    public Long[] getPlatformMenu(Long platformId) {
+        LambdaQueryWrapper<SysPlatformMenu> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(SysPlatformMenu::getPlatformId, platformId);
+        List<SysPlatformMenu> menuList = sysPlatformMenuService.list(queryWrapper);
+//        List<SysPlatformMenu> menuList = baseMapper.getMenuListOne(platformId, null);
+        Long[] arr = new Long[menuList.size()];
+        for (int i = 0; i < menuList.size(); i++) {
+            arr[i] = menuList.get(i).getMenuId();
+        }
+        return arr;
+    }
+
+
+    @Override
+    @Transactional
+    public void updatePlatformMenu(PlatformMenuVo platformMenuVo) {
+        SysPlatform sysPlatform = new SysPlatform();
+        if (platformMenuVo.getPlatformId().intValue() == 0) {
+            sysPlatform.setPlatformName(platformMenuVo.getPlatformName());
+            sysPlatform.setCreateBy(SecurityUtils.getUsername());
+            sysPlatform.setCreateTime(LocalDateTime.now());
+            this.save(sysPlatform);
+            Integer fid = sysPlatform.getId();
+            platformMenuVo.setPlatformId(fid.longValue());
+        }
+
+        Long[] arr = platformMenuVo.getMenuIds();
+        //菜单ID
+        List<SysMenu> menuIdList = baseMapper.getMenuIdListOne(arr, "F");
+        Long arr1[] = new Long[menuIdList.size()];
+        for (int i = 0; i < menuIdList.size(); i++) {
+            arr1[i] = menuIdList.get(i).getParentId();
+        }
+        //目录ID
+        List<SysMenu> menuIdListOne = baseMapper.getMenuIdListOne(arr1, "C");
+        Long arr2[] = new Long[menuIdListOne.size()];
+        for (int i = 0; i < menuIdListOne.size(); i++) {
+            arr2[i] = menuIdListOne.get(i).getParentId();
+        }
+        List<SysMenu> menuIdListTwo = baseMapper.getMenuIdListOne(arr, "C");
+        Long arr4[] = new Long[menuIdListTwo.size()];
+        for (int i = 0; i < menuIdListTwo.size(); i++) {
+            arr4[i] = menuIdListTwo.get(i).getParentId();
+        }
+
+        Long[] arr5 = arrayMerge(arr1, arr2);
+        Long[] arr6 = arrayMerge(arr5, arr4);
+        Long[] arr7 = arrayMerge(arr6, arr);
+        List arr3 = new ArrayList();
+        for (int i = 0; i < arr7.length; i++) {
+            if (!arr3.contains(arr7[i])) {
+                arr3.add(arr7[i]);
+            }
+        }
+        // 删除租户菜单关联
+        baseMapper.deletePlatformMenuBy(platformMenuVo.getPlatformId());
+        //新增菜单
+        if (arr3.size() > 0) {
+            for (int i = 0; i < arr3.size(); i++) {
+                SysPlatformMenu sysPlatformMenu = new SysPlatformMenu();
+                sysPlatformMenu.setMenuId((Long) arr3.get(i));
+                sysPlatformMenu.setPlatformId(platformMenuVo.getPlatformId());
+                sysPlatformMenuService.save(sysPlatformMenu);
+            }
+        }
+
+    }
+
+    public Long[] arrayMerge(Long[] arr1, Long[] arr2) {
+        Long arr3[] = new Long[arr1.length + arr2.length];
+        for (int i = 0; i < arr1.length; i++) {
+            arr3[i] = arr1[i];
+        }
+        for (int i = 0; i < arr2.length; i++) {
+            arr3[i + arr1.length] = arr2[i];
+        }
+        return arr3;
+    }
+}

+ 5 - 3
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPostServiceImpl.java

@@ -1,8 +1,9 @@
 package com.usky.system.service.impl;
 
 
-import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.exception.BusinessException;
 import com.usky.system.domain.SysPost;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.SysPostMapper;
@@ -37,6 +38,7 @@ public class SysPostServiceImpl extends AbstractCrudService<SysPostMapper, SysPo
     @Override
     public List<SysPost> selectPostList(SysPost post)
     {
+        post.setTenantId(SecurityUtils.getTenantId());
         return postMapper.selectPostList(post);
     }
 
@@ -85,7 +87,7 @@ public class SysPostServiceImpl extends AbstractCrudService<SysPostMapper, SysPo
     public String checkPostNameUnique(SysPost post)
     {
         Long postId = Objects.isNull(post.getPostId()) ? -1L : post.getPostId();
-        SysPost info = postMapper.checkPostNameUnique(post.getPostName());
+        SysPost info = postMapper.checkPostNameUnique(post.getPostName(),SecurityUtils.getTenantId());
         if (Objects.nonNull(info) && info.getPostId().longValue() != postId.longValue())
         {
             return UserConstants.NOT_UNIQUE;
@@ -103,7 +105,7 @@ public class SysPostServiceImpl extends AbstractCrudService<SysPostMapper, SysPo
     public String checkPostCodeUnique(SysPost post)
     {
         Long postId = Objects.isNull(post.getPostId()) ? -1L : post.getPostId();
-        SysPost info = postMapper.checkPostCodeUnique(post.getPostCode());
+        SysPost info = postMapper.checkPostCodeUnique(post.getPostCode(),SecurityUtils.getTenantId());
         if (Objects.nonNull(info) && info.getPostId().longValue() != postId.longValue())
         {
             return UserConstants.NOT_UNIQUE;

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

@@ -1,9 +1,9 @@
 package com.usky.system.service.impl;
 
-
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.core.util.SpringContextUtils;
 import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.domain.SysRole;
 import com.usky.system.domain.SysRoleDept;
 import com.usky.system.domain.SysRoleMenu;
@@ -49,6 +49,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
     @Override
     public List<SysRole> selectRoleList(SysRole role)
     {
+        role.setTenantId(SecurityUtils.getTenantId());
         return roleMapper.selectRoleList(role);
     }
 
@@ -143,7 +144,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
     public String checkRoleNameUnique(SysRole role)
     {
         Long roleId = Objects.isNull(role.getRoleId()) ? -1L : role.getRoleId();
-        SysRole info = roleMapper.checkRoleNameUnique(role.getRoleName());
+        SysRole info = roleMapper.checkRoleNameUnique(role.getRoleName(),SecurityUtils.getTenantId());
         if (Objects.nonNull(info) && info.getRoleId().longValue() != roleId.longValue())
         {
             return UserConstants.NOT_UNIQUE;
@@ -161,7 +162,7 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
     public String checkRoleKeyUnique(SysRole role)
     {
         Long roleId = Objects.isNull(role.getRoleId()) ? -1L : role.getRoleId();
-        SysRole info = roleMapper.checkRoleKeyUnique(role.getRoleKey());
+        SysRole info = roleMapper.checkRoleKeyUnique(role.getRoleKey(),SecurityUtils.getTenantId());
         if (Objects.nonNull(info) && info.getRoleId().longValue() != roleId.longValue())
         {
             return UserConstants.NOT_UNIQUE;

+ 129 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantConfigServiceImpl.java

@@ -0,0 +1,129 @@
+package com.usky.system.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.usky.common.core.util.GlobalUtils;
+import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.exception.BusinessException;
+import com.usky.common.core.util.FileUtils;
+import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysTenantConfig;
+import com.usky.system.domain.SysUser;
+import com.usky.system.mapper.SysTenantConfigMapper;
+import com.usky.system.mapper.SysUserMapper;
+import com.usky.system.service.ISysUserService;
+import com.usky.system.service.SysTenantConfigService;
+import com.usky.system.service.vo.SysTenantConfigVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.validation.constraints.NotNull;
+import java.io.File;
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.UUID;
+
+/**
+ * <p>
+ * 租户配置表 服务实现类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-06
+ */
+@Service
+public class SysTenantConfigServiceImpl extends AbstractCrudService<SysTenantConfigMapper, SysTenantConfig> implements SysTenantConfigService {
+    @Autowired
+    private SysUserMapper userMapper;
+
+    @Autowired
+    private ISysUserService userService;
+
+
+    @Override
+    public List<SysTenantConfigVo> getTenantConfig(String url) {
+        List<SysTenantConfigVo> list = baseMapper.getTenantConfig(url);
+        return list;
+    }
+
+    @Override
+    public List<SysTenantConfig> getMiddleConfig() {
+        SysUser sysUser = userService.selectUserById(SecurityUtils.getUserId());
+        if ("".equals(sysUser) && sysUser == null) {
+            throw new BusinessException("无此租户,请联系管理员");
+        }
+        LambdaQueryWrapper<SysTenantConfig> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(SysTenantConfig::getTenantId, sysUser.getTenantId());
+        List<SysTenantConfig> list = this.list(queryWrapper);
+        return list;
+    }
+
+
+    @Override
+    public List<SysTenantConfig> getMiddleConfigList(Integer tenantId) {
+        LambdaQueryWrapper<SysTenantConfig> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(SysTenantConfig::getTenantId, tenantId);
+        List<SysTenantConfig> list = this.list(queryWrapper);
+        return list;
+    }
+
+    @Override
+    public void addMiddleConfig(SysTenantConfig sysTenantConfig) {
+        sysTenantConfig.setCreateBy(SecurityUtils.getUsername());
+        sysTenantConfig.setCreateTime(LocalDateTime.now());
+        this.save(sysTenantConfig);
+    }
+
+    @Override
+    public void updaMiddleConfig(SysTenantConfig sysTenantConfig) {
+        sysTenantConfig.setUpdateBy(SecurityUtils.getUsername());
+        sysTenantConfig.setUpdateTime(LocalDateTime.now());
+        this.updateById(sysTenantConfig);
+    }
+
+
+    @Override
+    public List<SysMenu> getMenuBoxList(Integer tenantId) {
+        List<SysMenu> list = baseMapper.getMenuBoxList(tenantId, "C");
+        return list;
+    }
+
+    @Override
+    public String pictureUpload(@NotNull MultipartFile file, HttpServletRequest request) {
+        if (file.isEmpty()) {
+            System.out.println("文件为空空");
+        }
+        String fileName = file.getOriginalFilename();  // 文件名
+        String suffixName = fileName.substring(fileName.lastIndexOf("."));  // 后缀名
+        fileName = UUID.randomUUID() + suffixName; // 新文件名
+
+        File file1 = FileUtils.getFile(GlobalUtils.getTempBaseDir(), fileName);
+        try {
+            file.transferTo(file1);
+        } catch (Exception e) {
+            throw new BusinessException("文件上传异常", e);
+        }
+
+//        String fileName = file.getOriginalFilename();  // 文件名
+//        String suffixName = fileName.substring(fileName.lastIndexOf("."));  // 后缀名
+////        String filePath = "D://temp-rainy//"; // 上传后的路径
+//        fileName = UUID.randomUUID() + suffixName; // 新文件名
+//
+//        String destFileName = request.getServletContext().getRealPath("") + "uploaded" + File.separator + fileName;
+//        File dest = new File(destFileName);
+////        File dest = new File(filePath + fileName);
+//        if (!dest.getParentFile().exists()) {
+//            dest.getParentFile().mkdirs();
+//        }
+//        try {
+//            file.transferTo(dest);
+//        } catch (IOException e) {
+//            e.printStackTrace();
+//        }
+//        String filename = "/uploaded/" + fileName;
+        return fileName;
+    }
+}

+ 20 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantMenuServiceImpl.java

@@ -0,0 +1,20 @@
+package com.usky.system.service.impl;
+
+import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.system.domain.SysTenantMenu;
+import com.usky.system.mapper.SysTenantMenuMapper;
+import com.usky.system.service.SysTenantMenuService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 租户和菜单关联表 服务实现类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Service
+public class SysTenantMenuServiceImpl extends AbstractCrudService<SysTenantMenuMapper, SysTenantMenu> implements SysTenantMenuService {
+
+}

+ 107 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantServiceImpl.java

@@ -0,0 +1,107 @@
+package com.usky.system.service.impl;
+
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.system.domain.SysTenant;
+import com.usky.system.mapper.SysTenantMapper;
+import com.usky.system.service.SysTenantService;
+import com.usky.system.service.vo.SysTenantOneVo;
+import com.usky.system.service.vo.SysTenantTwoVo;
+import com.usky.system.service.vo.SysTenantVo;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.UUID;
+
+/**
+ * <p>
+ * 租户信息表 服务实现类
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+@Service
+public class SysTenantServiceImpl extends AbstractCrudService<SysTenantMapper, SysTenant> implements SysTenantService {
+
+    @Override
+    public List<SysTenantVo> getUserData() {
+        Integer userId = SecurityUtils.getUserId().intValue();
+        List<SysTenantVo> list = baseMapper.getUserData(userId);
+        return list;
+    }
+
+    /**
+     * 租户管理-租户列表查询
+     *
+     * @param sysTenantOneVo
+     * @return
+     */
+    @Override
+    public CommonPage<SysTenantTwoVo> getTenantData(SysTenantOneVo sysTenantOneVo) {
+        if (sysTenantOneVo.getStatus() == null || sysTenantOneVo.getStatus().equals("") || sysTenantOneVo.getStatus().equals("null")) {
+            sysTenantOneVo.setStatus("0");
+        }
+        List<SysTenantTwoVo> list1 = baseMapper.getTenantData(sysTenantOneVo.getTenantName(),
+                sysTenantOneVo.getTenantManager(),
+                sysTenantOneVo.getTenantType(),
+                sysTenantOneVo.getStatus(),
+                sysTenantOneVo.getStartTime(),
+                sysTenantOneVo.getEndTime(), null, null, sysTenantOneVo.getId());
+        int total = 0;
+        if (list1.size() > 0) {
+            total = list1.size();
+        }
+        Integer current = null;
+        if (sysTenantOneVo.getPage() != null && sysTenantOneVo.getSize() > 0) {
+            current = (sysTenantOneVo.getPage() - 1) * sysTenantOneVo.getSize();
+        }
+        List<SysTenantTwoVo> list = baseMapper.getTenantData(sysTenantOneVo.getTenantName(),
+                sysTenantOneVo.getTenantManager(),
+                sysTenantOneVo.getTenantType(),
+                sysTenantOneVo.getStatus(),
+                sysTenantOneVo.getStartTime(),
+                sysTenantOneVo.getEndTime(),
+                current,
+                sysTenantOneVo.getSize(),
+                sysTenantOneVo.getId());
+        return new CommonPage<>(list, total, sysTenantOneVo.getSize(), sysTenantOneVo.getPage());
+    }
+
+    @Override
+    public void addTenantData(SysTenant sysTenant) {
+        String uuid = UUID.randomUUID().toString();
+        uuid = uuid.replace("-", "");
+        sysTenant.setTenantCode(uuid);
+//        sysTenant.setStatus("0");
+        sysTenant.setCreateBy(SecurityUtils.getUsername());
+        sysTenant.setCreateTime(LocalDateTime.now());
+        this.save(sysTenant);
+    }
+
+
+    @Override
+    public void updateTenantData(SysTenant sysTenant) {
+        sysTenant.setUpdateBy(SecurityUtils.getUsername());
+        sysTenant.setUpdateTime(LocalDateTime.now());
+        this.updateById(sysTenant);
+    }
+
+
+    @Override
+    public CommonPage<SysTenantTwoVo> getTenantDataOne(String tenantName, String tenantManager, Integer page, Integer size) {
+        List<SysTenantTwoVo> list1 = baseMapper.getTenantDataOne(tenantName, tenantManager, null, null);
+        int total = 0;
+        if (list1.size() > 0) {
+            total = list1.size();
+        }
+        Integer current = null;
+        if (page != null && size > 0) {
+            current = (page - 1) * size;
+        }
+        List<SysTenantTwoVo> list = baseMapper.getTenantDataOne(tenantName, tenantManager, current, size);
+        return new CommonPage<>(list, total, size, page);
+    }
+}

+ 47 - 2
service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysUserServiceImpl.java

@@ -1,6 +1,8 @@
 package com.usky.system.service.impl;
 
 
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.common.core.bean.CommonPage;
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.core.util.BeanMapperUtils;
 import com.usky.common.core.util.StringUtils;
@@ -63,6 +65,8 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
      */
     @Override
     public List<SysUser> selectUserList(SysUser user) {
+        user.setTenantId( SecurityUtils.getTenantId());
+        user.setUserType("00");
         return userMapper.selectUserList(user);
     }
 
@@ -157,7 +161,7 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
      */
     @Override
     public String checkUserNameUnique(String userName) {
-        int count = userMapper.checkUserNameUnique(userName);
+        int count = userMapper.checkUserNameUnique(userName,SecurityUtils.getTenantId());
         if (count > 0) {
             return UserConstants.NOT_UNIQUE;
         }
@@ -443,7 +447,8 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
         // 权限集合
         Set<String> permissions = sysPermissionService.getMenuPermission(sysUser);
         LoginUser SysUser = new LoginUser();
-        SysUser.setSysUser(BeanMapperUtils.map(sysUser,SysUserVO.class));
+        SysUserVO sysUserVO = BeanMapperUtils.map(sysUser, SysUserVO.class);
+        SysUser.setSysUser(sysUserVO);
         SysUser.setRoles(roles);
         SysUser.setPermissions(permissions);
         return SysUser;
@@ -463,4 +468,44 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
         }
         return this.registerUser(sysUser);
     }
+
+    /**
+     * 租户管理-管理员配置-新增
+     *
+     * @param user
+     * @return
+     */
+    @Override
+    public int addUser(SysUser user) {
+        // 新增用户信息
+        int rows = userMapper.insertUser(user);
+        return rows;
+    }
+
+    @Override
+    public int updateUserData(SysUser user) {
+        return userMapper.updateUser(user);
+    }
+
+
+    @Override
+    public int resetUserPwdOne(Long userId, String password) {
+        return userMapper.resetUserPwdOne(userId, password);
+    }
+
+
+    @Override
+    public CommonPage<SysUser> userList(Integer tenantId, Integer page, Integer size, long userId) {
+        List<SysUser> list1 = userMapper.getUserData(tenantId,null,null,userId);
+        int total = 0;
+        if (list1.size() > 0) {
+            total = list1.size();
+        }
+        Integer current = null;
+        if (page!=null&&size>0){
+            current = (page - 1) * size;
+        }
+        List<SysUser> list = userMapper.getUserData(tenantId, current, size,userId);
+        return new CommonPage<>(list, total, size, page);
+    }
 }

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

@@ -0,0 +1,39 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户和菜单关联表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class PlatformMenuVo implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 平台ID
+     */
+    private Long platformId;
+
+    /**
+     * 平台名称
+     */
+    private String platformName;
+
+    /**
+     * 菜单ID
+     */
+    private Long[] menuIds;
+
+}

+ 37 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysMenuOneVo.java

@@ -0,0 +1,37 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+
+/**
+ *
+ * 
+ * @author yq
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysMenuOneVo implements Serializable
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 菜单ID */
+    private Long id;
+
+    /** 菜单名称 */
+    private String menu;
+
+    /** 子菜单名称 */
+    private Object authority;
+
+    private Long fid;
+
+    /**
+     * 菜单状态
+     */
+    private Boolean checked;
+}

+ 34 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysMenuTwoVo.java

@@ -0,0 +1,34 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+
+/**
+ * @author yq
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysMenuTwoVo implements Serializable {
+
+    /**
+     * 菜单ID
+     */
+    private Long id;
+
+    /**
+     * 菜单名称
+     */
+    private String name;
+
+    /**
+     * 菜单状态
+     */
+    private Boolean checked;
+
+    private Long fid;
+}

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

@@ -0,0 +1,39 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+
+/**
+ *
+ * 
+ * @author yq
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysMenuVo implements Serializable
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 菜单ID */
+    private Long id;
+
+    /** 菜单名称 */
+    private String menu;
+
+    /** 父菜单名称 */
+    private Object children;
+
+
+    private Long fid;
+
+    /**
+     * 菜单状态
+     */
+    private Boolean checked;
+
+}

+ 82 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysPlatformVo.java

@@ -0,0 +1,82 @@
+package com.usky.system.service.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 平台信息表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysPlatformVo implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 主键ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 平台名称
+     */
+    private String platformName;
+
+    /**
+     * 平台状态(0 停用 1 启用)
+     */
+    private String status;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建者
+     */
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新者
+     */
+    private String updateBy;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     * 激活码
+     */
+    @TableField("tenantKey")
+    private String tenantKey;
+
+    /**
+     * 租户数量
+     */
+    @TableField("tenantCount")
+    private Integer tenantCount;
+
+
+}

+ 67 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysTenantConfigVo.java

@@ -0,0 +1,67 @@
+package com.usky.system.service.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户配置表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-06
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenantConfigVo implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 租户ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 租户名称
+     */
+    private String loginTitle;
+
+    /**
+     * 登录页log
+     */
+    private String loginLogo;
+
+    /**
+     * 登录页背景地址
+     */
+    private String loginBackUrl;
+
+    /**
+     * 登录页底部名称
+     */
+    private String loginFooter;
+
+    /**
+     * 登录类型
+     */
+    private String loginType;
+
+    /**
+     * 标签页图标
+     */
+    private String labelIcon;
+
+}

+ 66 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysTenantOneVo.java

@@ -0,0 +1,66 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户信息表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenantOneVo implements Serializable {
+
+    /**
+     * 租户ID
+     */
+    private Integer id;
+
+    /**
+     * 租户名称
+     */
+    private String tenantName;
+
+    /**
+     * 租户负责人
+     */
+    private String tenantManager;
+
+    /**
+     * 租户类型(0 试用租户  1 正式租户)
+     */
+    private String tenantType;
+
+    /**
+     * 开始时间
+     */
+    private String startTime;
+
+    /**
+     * 结束时间
+     */
+    private String endTime;
+
+    /**
+     * 租户状态(0正常 1停用)
+     */
+    private String status;
+
+    /**
+     * 当前页
+     */
+    private Integer page;
+
+    /**
+     * 总条数
+     */
+    private Integer size;
+}

+ 124 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysTenantTwoVo.java

@@ -0,0 +1,124 @@
+package com.usky.system.service.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 租户信息表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenantTwoVo implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 租户ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 租户编号
+     */
+    private String tenantCode;
+
+    /**
+     * 租户名称
+     */
+    private String tenantName;
+
+    /**
+     * 租户负责人
+     */
+    private String tenantManager;
+
+    /**
+     * 租户类型(0 试用租户  1 正式租户)
+     */
+    private String tenantType;
+
+    /**
+     * 租户站点域名
+     */
+    private String domain;
+
+    /**
+     * 租户邮箱
+     */
+    private String email;
+
+    /**
+     * 手机号码
+     */
+    private String phoneNumber;
+
+    /**
+     * 联系地址
+     */
+    private String address;
+
+    /**
+     * 地理位置
+     */
+    private String geoPosition;
+
+    /**
+     * 有效期限
+     */
+    private String tenantTerm;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 租户状态(0正常 1停用)
+     */
+    private String status;
+
+    /**
+     * 创建者
+     */
+    private String createBy;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新者
+     */
+    private String updateBy;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     * 系统ID
+     */
+    private String systemName;
+
+
+    /**
+     * 系统名称
+     */
+    private String platformName;
+
+}

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

@@ -0,0 +1,145 @@
+package com.usky.system.service.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.usky.system.domain.SysDept;
+import com.usky.system.domain.SysRole;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * <p>
+ * 个人信息
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenantVo implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /** 用户ID */
+    private Long userId;
+
+    /** 部门ID */
+    private Long deptId;
+
+    /** 用户账号 */
+    private String userName;
+
+    /** 用户昵称 */
+    private String nickName;
+
+    /** 用户邮箱 */
+    private String email;
+
+    /** 手机号码 */
+    private String phoneNumber;
+
+    /** 用户性别 */
+    private String sex;
+
+    /** 用户头像 */
+    private String avatar;
+
+    /** 密码 */
+    private String password;
+
+    /** 盐加密 */
+    private String salt;
+
+    /** 帐号状态(0正常 1停用) */
+    private String status;
+
+    /** 删除标志(0代表存在 2代表删除) */
+    private String delFlag;
+
+    /** 最后登录IP */
+    private String loginIp;
+
+    /** 最后登录时间 */
+    private Date loginDate;
+
+    /** 部门对象 */
+    private SysDept dept;
+
+    /** 角色对象 */
+    private List<SysRole> roles;
+
+    /** 角色组 */
+    private Long[] roleIds;
+
+    /** 岗位组 */
+    private Long[] postIds;
+
+    /** 角色ID */
+    private Long roleId;
+
+    /** 站点组组 */
+    private int[] siteId;
+
+    /** 创建用户 */
+    private String createByOne;
+
+
+
+    /**
+     * 租户ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 租户编号
+     */
+    private String tenantCode;
+
+    /**
+     * 租户名称
+     */
+    private String tenantName;
+
+    /**
+     * 租户负责人
+     */
+    private String tenantManager;
+
+    /**
+     * 租户类型(0 试用租户  1 正式租户)
+     */
+    private String tenantType;
+
+    /**
+     * 租户站点域名
+     */
+    private String domain;
+
+    /**
+     * 联系地址
+     */
+    private String address;
+
+    /**
+     * 有效期限
+     */
+    private String tenantTerm;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 系统名称
+     */
+    private String systemName;
+}

+ 34 - 0
service-system/service-system-biz/src/main/java/com/usky/system/service/vo/TenantMenuVo.java

@@ -0,0 +1,34 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户和菜单关联表
+ * </p>
+ *
+ * @author ya
+ * @since 2022-05-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class TenantMenuVo implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 租户ID
+     */
+    private Long tenantId;
+
+    /**
+     * 菜单ID
+     */
+    private Long[] menuIds;
+
+}

+ 16 - 2
service-system/service-system-biz/src/main/resources/mapper/system/SysDeptMapper.xml

@@ -20,6 +20,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="createTime" column="create_time" />
 		<result property="updateBy"   column="update_by"   />
 		<result property="updateTime" column="update_time" />
+		<result property="tenantId" column="tenant_id" />
 	</resultMap>
 	
 	<sql id="selectDeptVo">
@@ -38,6 +39,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<if test="deptName != null and deptName != ''">
 			AND dept_name like concat('%', #{deptName}, '%')
 		</if>
+		<if test="tenantId != null and tenantId != '' and tenantId != 0">
+			AND tenant_id = #{tenantId}
+		</if>
 		<if test="status != null and status != ''">
 			AND status = #{status}
 		</if>
@@ -76,12 +80,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	</select>
 	
 	<select id="selectNormalChildrenDeptById" parameterType="Long" resultType="int">
-		select count(*) from sys_dept where status = 0 and del_flag = '0' and find_in_set(#{deptId}, ancestors)
+		select count(*) from sys_dept where status = 0 and del_flag = '0'
+		<if test="tenantId != null and tenantId != 0">
+			and tenant_id = #{tenantId}
+		</if>
+		    and find_in_set(#{deptId}, ancestors)
 	</select>
 	
 	<select id="checkDeptNameUnique" resultMap="SysDeptResult">
 	    <include refid="selectDeptVo"/>
-		where dept_name=#{deptName} and parent_id = #{parentId} and del_flag = '0' limit 1
+		where dept_name=#{deptName} and parent_id = #{parentId} and del_flag = '0'
+		<if test="tenantId != null and tenantId != 0">
+			and tenant_id = #{tenantId}
+		</if>
+		 limit 1
 	</select>
     
     <insert id="insertDept" parameterType="com.usky.system.domain.SysDept">
@@ -96,6 +108,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="email != null and email != ''">email,</if>
  			<if test="status != null">status,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
+			<if test="tenantId != null and tenantId != '' and tenantId != 0">tenant_id,</if>
  			create_time
  		)values(
  			<if test="deptId != null and deptId != 0">#{deptId},</if>
@@ -108,6 +121,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="email != null and email != ''">#{email},</if>
  			<if test="status != null">#{status},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
+			<if test="tenantId != null and tenantId != '' and tenantId != 0">#{tenantId},</if>
  			sysdate()
  		)
 	</insert>

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

@@ -13,6 +13,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="createTime" column="create_time" />
 		<result property="updateBy"   column="update_by"   />
 		<result property="updateTime" column="update_time" />
+		<result property="tenantId" column="tenant_id" />
 	</resultMap>
 	
 	<sql id="selectDictTypeVo">
@@ -32,6 +33,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			<if test="dictType != null and dictType != ''">
 				AND dict_type like concat('%', #{dictType}, '%')
 			</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">
+				AND tenant_id = #{tenantId}
+			</if>
 			<if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
 				and date_format(create_time,'%y%m%d') &gt;= date_format(#{params.beginTime},'%y%m%d')
 			</if>
@@ -57,7 +61,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	
 	<select id="checkDictTypeUnique" parameterType="String" resultMap="SysDictTypeResult">
 		<include refid="selectDictTypeVo"/>
-		where dict_type = #{dictType} limit 1
+		where dict_type = #{dictType}
+		<if test="tenantId != null and tenantId != '' and tenantId !=0">
+			AND tenant_id = #{tenantId}
+		</if>
+		limit 1
 	</select>
 	
 	<delete id="deleteDictTypeById" parameterType="Long">
@@ -91,6 +99,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null">status,</if>
  			<if test="remark != null and remark != ''">remark,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">tenant_id,</if>
  			create_time
  		)values(
  			<if test="dictName != null and dictName != ''">#{dictName},</if>
@@ -98,6 +107,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null">#{status},</if>
  			<if test="remark != null and remark != ''">#{remark},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">#{tenantId},</if>
  			sysdate()
  		)
 	</insert>

+ 276 - 178
service-system/service-system-biz/src/main/resources/mapper/system/SysMenuMapper.xml

@@ -1,191 +1,289 @@
 <?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.SysMenuMapper">
 
-	<resultMap type="com.usky.system.domain.SysMenu" id="SysMenuResult">
-		<id     property="menuId"         column="menu_id"        />
-		<result property="menuName"       column="menu_name"      />
-		<result property="parentName"     column="parent_name"    />
-		<result property="parentId"       column="parent_id"      />
-		<result property="orderNum"       column="order_num"      />
-		<result property="path"           column="path"           />
-		<result property="component"      column="component"      />
-		<result property="isFrame"        column="is_frame"       />
-		<result property="isCache"        column="is_cache"       />
-		<result property="menuType"       column="menu_type"      />
-		<result property="visible"        column="visible"        />
-		<result property="status"         column="status"         />
-		<result property="perms"          column="perms"          />
-		<result property="icon"           column="icon"           />
-		<result property="createBy"       column="create_by"      />
-		<result property="createTime"     column="create_time"    />
-		<result property="updateTime"     column="update_time"    />
-		<result property="updateBy"       column="update_by"      />
-		<result property="remark"         column="remark"         />
-	</resultMap>
-
-	<sql id="selectMenuVo">
-        select menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, create_time 
-		from sys_menu
+    <resultMap type="com.usky.system.domain.SysMenu" id="SysMenuResult">
+        <id property="menuId" column="menu_id"/>
+        <result property="menuName" column="menu_name"/>
+        <result property="parentName" column="parent_name"/>
+        <result property="parentId" column="parent_id"/>
+        <result property="orderNum" column="order_num"/>
+        <result property="path" column="path"/>
+        <result property="component" column="component"/>
+        <result property="isFrame" column="is_frame"/>
+        <result property="isCache" column="is_cache"/>
+        <result property="menuType" column="menu_type"/>
+        <result property="visible" column="visible"/>
+        <result property="status" column="status"/>
+        <result property="perms" column="perms"/>
+        <result property="icon" column="icon"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="remark" column="remark"/>
+    </resultMap>
+
+    <sql id="selectMenuVo">
+        select menu_id,
+               menu_name,
+               parent_id,
+               order_num,
+               path,
+               component,
+               is_frame,
+               is_cache,
+               menu_type,
+               visible,
+               status,
+               ifnull(perms, '') as perms,
+               icon,
+               create_time
+        from sys_menu
     </sql>
-    
+
     <select id="selectMenuList" parameterType="com.usky.system.domain.SysMenu" resultMap="SysMenuResult">
-		<include refid="selectMenuVo"/>
-		<where>
-			<if test="menuName != null and menuName != ''">
-				AND menu_name like concat('%', #{menuName}, '%')
-			</if>
-			<if test="visible != null and visible != ''">
-				AND visible = #{visible}
-			</if>
-			<if test="status != null and status != ''">
-				AND status = #{status}
-			</if>
-		</where>
-		order by parent_id, order_num
-	</select>
-	
-	<select id="selectMenuTreeAll" resultMap="SysMenuResult">
-		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
-		from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0
-		order by m.parent_id, m.order_num
-	</select>
-	
-	<select id="selectMenuListByUserId" parameterType="com.usky.system.domain.SysMenu" resultMap="SysMenuResult">
-		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
-		from sys_menu m
-		left join sys_role_menu rm on m.menu_id = rm.menu_id
-		left join sys_user_role ur on rm.role_id = ur.role_id
-		left join sys_role ro on ur.role_id = ro.role_id
-		where ur.user_id = #{params.userId}
-		<if test="menuName != null and menuName != ''">
+        <include refid="selectMenuVo"/>
+        <where>
+            <if test="menuName != null and menuName != ''">
+                AND menu_name like concat('%', #{menuName}, '%')
+            </if>
+            <if test="visible != null and visible != ''">
+                AND visible = #{visible}
+            </if>
+            <if test="status != null and status != ''">
+                AND status = #{status}
+            </if>
+        </where>
+        order by parent_id, order_num
+    </select>
+
+    <select id="selectMenuTreeAll" resultMap="SysMenuResult">
+        select distinct m.menu_id,
+                        m.parent_id,
+                        m.menu_name,
+                        m.path,
+                        m.component,
+                        m.visible,
+                        m.status,
+                        ifnull(m.perms, '') as perms,
+                        m.is_frame,
+                        m.is_cache,
+                        m.menu_type,
+                        m.icon,
+                        m.order_num,
+                        m.create_time
+        from sys_menu m
+        where m.menu_type in ('M', 'C')
+          and m.status = 0
+        order by m.parent_id, m.order_num
+    </select>
+
+    <select id="selectMenuListByUserId" parameterType="com.usky.system.domain.SysMenu" resultMap="SysMenuResult">
+        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.visible, m.status,
+        ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
+        from sys_menu m
+        left join sys_role_menu rm on m.menu_id = rm.menu_id
+        left join sys_user_role ur on rm.role_id = ur.role_id
+        left join sys_role ro on ur.role_id = ro.role_id
+        where ur.user_id = #{params.userId}
+        <if test="menuName != null and menuName != ''">
             AND menu_name like concat('%', #{menuName}, '%')
-		</if>
-		<if test="visible != null and visible != ''">
+        </if>
+        <if test="visible != null and visible != ''">
             AND visible = #{visible}
-		</if>
-		<if test="status != null and status != ''">
+        </if>
+        <if test="status != null and status != ''">
             AND status = #{status}
-		</if>
-		order by m.parent_id, m.order_num
-	</select>
-    
+        </if>
+        order by m.parent_id, m.order_num
+    </select>
+
     <select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
-		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
-		from sys_menu m
-			 left join sys_role_menu rm on m.menu_id = rm.menu_id
-			 left join sys_user_role ur on rm.role_id = ur.role_id
-			 left join sys_role ro on ur.role_id = ro.role_id
-			 left join sys_user u on ur.user_id = u.user_id
-		where u.user_id = #{userId} and m.menu_type in ('M', 'C') and m.status = 0  AND ro.status = 0
-		order by m.parent_id, m.order_num
-	</select>
-	
-	<select id="selectMenuListByRoleId" resultType="Integer">
-		select m.menu_id
-		from sys_menu m
-            left join sys_role_menu rm on m.menu_id = rm.menu_id
+        select distinct m.menu_id,
+                        m.parent_id,
+                        m.menu_name,
+                        m.path,
+                        m.component,
+                        m.visible,
+                        m.status,
+                        ifnull(m.perms, '') as perms,
+                        m.is_frame,
+                        m.is_cache,
+                        m.menu_type,
+                        m.icon,
+                        m.order_num,
+                        m.create_time
+        from sys_menu m
+                 left join sys_role_menu rm on m.menu_id = rm.menu_id
+                 left join sys_user_role ur on rm.role_id = ur.role_id
+                 left join sys_role ro on ur.role_id = ro.role_id
+                 left join sys_user u on ur.user_id = u.user_id
+        where u.user_id = #{userId}
+          and m.menu_type in ('M', 'C')
+          and m.status = 0
+          AND ro.status = 0
+        order by m.parent_id, m.order_num
+    </select>
+
+    <select id="selectMenuTreeByUserIdOne" parameterType="Long" resultMap="SysMenuResult">
+        SELECT
+            m.menu_id,
+            m.parent_id,
+            m.menu_name,
+            m.path,
+            m.component,
+            m.visible,
+            m. STATUS,
+            ifnull(m.perms, '') AS perms,
+            m.is_frame,
+            m.is_cache,
+            m.menu_type,
+            m.icon,
+            m.order_num,
+            m.create_time
+        FROM
+            sys_menu m
+                JOIN sys_tenant_menu t
+        WHERE
+            m.menu_id = t.menu_id
+          AND m.menu_type IN ('M', 'C')
+          AND m. STATUS = 0
+          AND t.tenant_id=#{tenantId}
+        ORDER BY
+            m.parent_id,
+            m.order_num
+    </select>
+
+    <select id="selectMenuListByRoleId" resultType="Integer">
+        select m.menu_id
+        from sys_menu m
+        left join sys_role_menu rm on m.menu_id = rm.menu_id
         where rm.role_id = #{roleId}
-            <if test="menuCheckStrictly">
-              and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id = rm.menu_id and rm.role_id = #{roleId})
-            </if>
-		order by m.parent_id, m.order_num
-	</select>
-	
-	<select id="selectMenuPerms" resultType="String">
-		select distinct m.perms
-		from sys_menu m
-			 left join sys_role_menu rm on m.menu_id = rm.menu_id
-			 left join sys_user_role ur on rm.role_id = ur.role_id
-	</select>
-
-	<select id="selectMenuPermsByUserId" parameterType="Long" resultType="String">
-		select distinct m.perms
-		from sys_menu m
-			 left join sys_role_menu rm on m.menu_id = rm.menu_id
-			 left join sys_user_role ur on rm.role_id = ur.role_id
-			 left join sys_role r on r.role_id = ur.role_id
-		where m.status = '0' and r.status = '0' and ur.user_id = #{userId}
-	</select>
-	
-	<select id="selectMenuById" parameterType="Long" resultMap="SysMenuResult">
-		<include refid="selectMenuVo"/>
-		where menu_id = #{menuId}
-	</select>
-	
-	<select id="hasChildByMenuId" resultType="Integer">
-	    select count(1) from sys_menu where parent_id = #{menuId}  
-	</select>
-	
-	<select id="checkMenuNameUnique" parameterType="com.usky.system.domain.SysMenu" resultMap="SysMenuResult">
-		<include refid="selectMenuVo"/>
-		where menu_name=#{menuName} and parent_id = #{parentId} limit 1
-	</select>
-	
-	<update id="updateMenu" parameterType="com.usky.system.domain.SysMenu">
-		update sys_menu
-		<set>
-			<if test="menuName != null and menuName != ''">menu_name = #{menuName},</if>
-			<if test="parentId != null">parent_id = #{parentId},</if>
-			<if test="orderNum != null and orderNum != ''">order_num = #{orderNum},</if>
-			<if test="path != null and path != ''">path = #{path},</if>
-			<if test="component != null">component = #{component},</if>
-			<if test="isFrame != null and isFrame != ''">is_frame = #{isFrame},</if>
-			<if test="isCache != null and isCache != ''">is_cache = #{isCache},</if>
-			<if test="menuType != null and menuType != ''">menu_type = #{menuType},</if>
-			<if test="visible != null">visible = #{visible},</if>
-			<if test="status != null">status = #{status},</if>
-			<if test="perms !=null">perms = #{perms},</if>
-			<if test="icon !=null and icon != ''">icon = #{icon},</if>
-			<if test="remark != null and remark != ''">remark = #{remark},</if>
-			<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
-			update_time = sysdate()
-		</set>
-		where menu_id = #{menuId}
-	</update>
-
-	<insert id="insertMenu" parameterType="com.usky.system.domain.SysMenu">
-		insert into sys_menu(
-		<if test="menuId != null and menuId != 0">menu_id,</if>
-		<if test="parentId != null and parentId != 0">parent_id,</if>
-		<if test="menuName != null and menuName != ''">menu_name,</if>
-		<if test="orderNum != null and orderNum != ''">order_num,</if>
-		<if test="path != null and path != ''">path,</if>
-		<if test="component != null and component != ''">component,</if>
-		<if test="isFrame != null and isFrame != ''">is_frame,</if>
-		<if test="isCache != null and isCache != ''">is_cache,</if>
-		<if test="menuType != null and menuType != ''">menu_type,</if>
-		<if test="visible != null">visible,</if>
-		<if test="status != null">status,</if>
-		<if test="perms !=null and perms != ''">perms,</if>
-		<if test="icon != null and icon != ''">icon,</if>
-		<if test="remark != null and remark != ''">remark,</if>
-		<if test="createBy != null and createBy != ''">create_by,</if>
-		create_time
-		)values(
-		<if test="menuId != null and menuId != 0">#{menuId},</if>
-		<if test="parentId != null and parentId != 0">#{parentId},</if>
-		<if test="menuName != null and menuName != ''">#{menuName},</if>
-		<if test="orderNum != null and orderNum != ''">#{orderNum},</if>
-		<if test="path != null and path != ''">#{path},</if>
-		<if test="component != null and component != ''">#{component},</if>
-		<if test="isFrame != null and isFrame != ''">#{isFrame},</if>
-		<if test="isCache != null and isCache != ''">#{isCache},</if>
-		<if test="menuType != null and menuType != ''">#{menuType},</if>
-		<if test="visible != null">#{visible},</if>
-		<if test="status != null">#{status},</if>
-		<if test="perms !=null and perms != ''">#{perms},</if>
-		<if test="icon != null and icon != ''">#{icon},</if>
-		<if test="remark != null and remark != ''">#{remark},</if>
-		<if test="createBy != null and createBy != ''">#{createBy},</if>
-		sysdate()
-		)
-	</insert>
-	
-	<delete id="deleteMenuById" parameterType="Long">
-	    delete from sys_menu where menu_id = #{menuId}
-	</delete>
+        <if test="menuCheckStrictly">
+            and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id =
+            rm.menu_id and rm.role_id = #{roleId})
+        </if>
+        order by m.parent_id, m.order_num
+    </select>
+
+    <select id="selectMenuPerms" resultType="String">
+        select distinct m.perms
+        from sys_menu m
+                 left join sys_role_menu rm on m.menu_id = rm.menu_id
+                 left join sys_user_role ur on rm.role_id = ur.role_id
+    </select>
+
+    <select id="selectMenuPermsByUserId" parameterType="Long" resultType="String">
+        select distinct m.perms
+        from sys_menu m
+                 left join sys_role_menu rm on m.menu_id = rm.menu_id
+                 left join sys_user_role ur on rm.role_id = ur.role_id
+                 left join sys_role r on r.role_id = ur.role_id
+        where m.status = '0'
+          and r.status = '0'
+          and ur.user_id = #{userId}
+    </select>
+
+    <select id="selectMenuById" parameterType="Long" resultMap="SysMenuResult">
+        <include refid="selectMenuVo"/>
+        where menu_id = #{menuId}
+    </select>
+
+    <select id="hasChildByMenuId" resultType="Integer">
+        select count(1)
+        from sys_menu
+        where parent_id = #{menuId}
+    </select>
+
+    <select id="checkMenuNameUnique" parameterType="com.usky.system.domain.SysMenu" resultMap="SysMenuResult">
+        <include refid="selectMenuVo"/>
+        where menu_name=#{menuName} and parent_id = #{parentId} limit 1
+    </select>
+
+    <update id="updateMenu" parameterType="com.usky.system.domain.SysMenu">
+        update sys_menu
+        <set>
+            <if test="menuName != null and menuName != ''">menu_name = #{menuName},</if>
+            <if test="parentId != null">parent_id = #{parentId},</if>
+            <if test="orderNum != null and orderNum != ''">order_num = #{orderNum},</if>
+            <if test="path != null and path != ''">path = #{path},</if>
+            <if test="component != null">component = #{component},</if>
+            <if test="isFrame != null and isFrame != ''">is_frame = #{isFrame},</if>
+            <if test="isCache != null and isCache != ''">is_cache = #{isCache},</if>
+            <if test="menuType != null and menuType != ''">menu_type = #{menuType},</if>
+            <if test="visible != null">visible = #{visible},</if>
+            <if test="status != null">status = #{status},</if>
+            <if test="perms !=null">perms = #{perms},</if>
+            <if test="icon !=null and icon != ''">icon = #{icon},</if>
+            <if test="remark != null and remark != ''">remark = #{remark},</if>
+            <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
+            update_time = sysdate()
+        </set>
+        where menu_id = #{menuId}
+    </update>
+
+    <insert id="insertMenu" parameterType="com.usky.system.domain.SysMenu">
+        insert into sys_menu(
+        <if test="menuId != null and menuId != 0">menu_id,</if>
+        <if test="parentId != null and parentId != 0">parent_id,</if>
+        <if test="menuName != null and menuName != ''">menu_name,</if>
+        <if test="orderNum != null and orderNum != ''">order_num,</if>
+        <if test="path != null and path != ''">path,</if>
+        <if test="component != null and component != ''">component,</if>
+        <if test="isFrame != null and isFrame != ''">is_frame,</if>
+        <if test="isCache != null and isCache != ''">is_cache,</if>
+        <if test="menuType != null and menuType != ''">menu_type,</if>
+        <if test="visible != null">visible,</if>
+        <if test="status != null">status,</if>
+        <if test="perms !=null and perms != ''">perms,</if>
+        <if test="icon != null and icon != ''">icon,</if>
+        <if test="remark != null and remark != ''">remark,</if>
+        <if test="createBy != null and createBy != ''">create_by,</if>
+        create_time
+        )values(
+        <if test="menuId != null and menuId != 0">#{menuId},</if>
+        <if test="parentId != null and parentId != 0">#{parentId},</if>
+        <if test="menuName != null and menuName != ''">#{menuName},</if>
+        <if test="orderNum != null and orderNum != ''">#{orderNum},</if>
+        <if test="path != null and path != ''">#{path},</if>
+        <if test="component != null and component != ''">#{component},</if>
+        <if test="isFrame != null and isFrame != ''">#{isFrame},</if>
+        <if test="isCache != null and isCache != ''">#{isCache},</if>
+        <if test="menuType != null and menuType != ''">#{menuType},</if>
+        <if test="visible != null">#{visible},</if>
+        <if test="status != null">#{status},</if>
+        <if test="perms !=null and perms != ''">#{perms},</if>
+        <if test="icon != null and icon != ''">#{icon},</if>
+        <if test="remark != null and remark != ''">#{remark},</if>
+        <if test="createBy != null and createBy != ''">#{createBy},</if>
+        sysdate()
+        )
+    </insert>
+
+    <delete id="deleteMenuById" parameterType="Long">
+        delete
+        from sys_menu
+        where menu_id = #{menuId}
+    </delete>
+
+    <select id="getSysMenuList"  resultType="com.usky.system.domain.SysMenu" >
+        SELECT
+        *
+        FROM
+        sys_menu
+        WHERE
+        STATUS = 0
+        <if test="menuType != null and menuType != ''">
+            AND menu_type = #{menuType}
+        </if>
+        GROUP BY
+        menu_id
+        ORDER BY
+        parent_id,
+        order_num
+    </select>
 
 </mapper> 

+ 76 - 0
service-system/service-system-biz/src/main/resources/mapper/system/SysPlatformMapper.xml

@@ -0,0 +1,76 @@
+<?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">
+<mapper namespace="com.usky.system.mapper.SysPlatformMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.usky.system.domain.SysPlatform">
+        <id column="id" property="id" />
+        <result column="platform_name" property="platformName" />
+        <result column="status" property="status" />
+        <result column="remark" property="remark" />
+        <result column="create_by" property="createBy" />
+        <result column="create_time" property="createTime" />
+        <result column="update_by" property="updateBy" />
+        <result column="update_time" property="updateTime" />
+        <result column="tenantKey" property="tenantKey" />
+    </resultMap>
+
+    <select id="getPlatformList" resultType="com.usky.system.service.vo.SysPlatformVo">
+        SELECT
+        a.*, COUNT(b.id) AS tenantCount
+        FROM
+        sys_platform AS a
+        LEFT JOIN sys_tenant AS b ON a.id = b.system_name
+        <where>
+            and a.status=1
+            <if test="platformName != null and platformName != ''">
+                and a.platform_name LIKE CONCAT(CONCAT('%', #{platformName}), '%')
+            </if>
+            <if test="id != null and id != 0 and id != ''">
+                and a.id = #{id}
+            </if>
+            <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
+                and a.create_time BETWEEN #{startTime} and #{endTime}
+            </if>
+        </where>
+        GROUP BY
+        a.id
+        <if test="current != null and size != null and size != 0">
+            limit #{current},#{size}
+        </if>
+    </select>
+
+    <select id="getMenuIdListOne" resultType="com.usky.system.domain.SysMenu">
+        SELECT
+        *
+        FROM
+        sys_menu
+        WHERE
+        status = 0
+        AND visible = 0
+        AND menu_type = #{menuType}
+        AND menu_id IN
+        <foreach collection="menuIds" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </select>
+
+    <delete id="deletePlatformMenuBy" parameterType="Long">
+        delete from sys_platform_menu where platform_id=#{platformId}
+    </delete>
+
+
+    <select id="getMenuListOne"  resultType="com.usky.system.domain.SysPlatformMenu" >
+        SELECT
+        b.*
+        FROM
+        sys_menu AS a
+        JOIN sys_platform_menu AS b ON a.menu_id = b.menu_id
+        WHERE
+        b.platform_id = #{platformId}
+        <if test="menuType != null and menuType != ''">
+            AND a.menu_type = #{menuType}
+        </if>
+    </select>
+
+</mapper>

+ 60 - 0
service-system/service-system-biz/src/main/resources/mapper/system/SysPlatformMenuMapper.xml

@@ -0,0 +1,60 @@
+<?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">
+<mapper namespace="com.usky.system.mapper.SysPlatformMenuMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.usky.system.domain.SysPlatformMenu">
+        <id column="platform_id" property="platformId" />
+        <result column="menu_id" property="menuId" />
+    </resultMap>
+
+    <select id="getMenuList"  resultType="com.usky.system.domain.SysMenu" >
+        SELECT
+        a.*
+        FROM
+        sys_menu AS a
+        JOIN sys_platform_menu AS b ON a.menu_id = b.menu_id
+        WHERE
+            b.platform_id = #{platformId}
+        <if test="menuType != null and menuType != ''">
+            AND a.menu_type = #{menuType}
+        </if>
+    </select>
+
+    <select id="getMenuIdList" resultType="com.usky.system.domain.SysMenu">
+        SELECT
+        a.*
+        FROM
+        sys_menu AS a
+        JOIN sys_platform_menu AS b ON a.menu_id = b.menu_id
+        WHERE
+        a.status = 0
+        AND a.visible = 0
+        AND a.menu_type = #{menuType}
+        AND a.menu_id IN
+        <foreach collection="menuIds" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+        group by a.menu_id
+    </select>
+
+    <delete id="deleteTenantMenuBy" parameterType="Long">
+        delete from sys_tenant_menu where tenant_id=#{tenantId}
+    </delete>
+
+
+    <select id="getMenuListOne"  resultType="com.usky.system.domain.SysTenantMenu" >
+        SELECT
+        b.*
+        FROM
+        sys_menu AS a
+        JOIN sys_tenant_menu AS b ON a.menu_id = b.menu_id
+        WHERE
+        b.tenant_id = #{tenantId}
+        <if test="menuType != null and menuType != ''">
+            AND a.menu_type = #{menuType}
+        </if>
+    </select>
+
+
+</mapper>

+ 16 - 2
service-system/service-system-biz/src/main/resources/mapper/system/SysPostMapper.xml

@@ -15,6 +15,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="updateBy"      column="update_by"     />
 		<result property="updateTime"    column="update_time"   />
 		<result property="remark"        column="remark"        />
+		<result property="tenantId"        column="tenant_id"        />
 	</resultMap>
 	
 	<sql id="selectPostVo">
@@ -31,6 +32,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			<if test="status != null and status != ''">
 				AND status = #{status}
 			</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">
+				AND tenant_id = #{tenantId}
+			</if>
 			<if test="postName != null and postName != ''">
 				AND post_name like concat('%', #{postName}, '%')
 			</if>
@@ -64,12 +68,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	
 	<select id="checkPostNameUnique" parameterType="String" resultMap="SysPostResult">
 		<include refid="selectPostVo"/>
-		 where post_name=#{postName} limit 1
+		 where post_name=#{postName}
+		<if test="tenantId != null and tenantId != '' and tenantId !=0">
+			AND tenant_id = #{tenantId}
+		</if>
+		 limit 1
 	</select>
 	
 	<select id="checkPostCodeUnique" parameterType="String" resultMap="SysPostResult">
 		<include refid="selectPostVo"/>
-		 where post_code=#{postCode} limit 1
+		 where post_code=#{postCode}
+		<if test="tenantId != null and tenantId != '' and tenantId !=0">
+			AND tenant_id = #{tenantId}
+		</if>
+		  limit 1
 	</select>
 	
 	<update id="updatePost" parameterType="com.usky.system.domain.SysPost">
@@ -95,6 +107,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null and status != ''">status,</if>
  			<if test="remark != null and remark != ''">remark,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">tenant_id,</if>
  			create_time
  		)values(
  			<if test="postId != null and postId != 0">#{postId},</if>
@@ -104,6 +117,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null and status != ''">#{status},</if>
  			<if test="remark != null and remark != ''">#{remark},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">#{tenantId},</if>
  			sysdate()
  		)
 	</insert>

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

@@ -19,6 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="updateBy"           column="update_by"             />
 		<result property="updateTime"         column="update_time"           />
 		<result property="remark"             column="remark"                />
+		<result property="tenantId"             column="tenant_id"                />
 	</resultMap>
 	
 	<sql id="selectRoleVo">
@@ -42,6 +43,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<if test="status != null and status != ''">
 			AND r.status = #{status}
 		</if>
+		<if test="tenantId != null and tenantId != '' and tenantId !=0">
+			AND r.tenant_id = #{tenantId}
+		</if>
 		<if test="roleKey != null and roleKey != ''">
 			AND r.role_key like concat('%', #{roleKey}, '%')
 		</if>
@@ -85,12 +89,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	
 	<select id="checkRoleNameUnique" parameterType="String" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
-		 where r.role_name=#{roleName} limit 1
+		 where r.role_name=#{roleName}
+		<if test="tenantId != null and tenantId != '' and tenantId !=0">
+			AND r.tenant_id = #{tenantId}
+		</if>
+		 limit 1
 	</select>
 	
 	<select id="checkRoleKeyUnique" parameterType="String" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
-		 where r.role_key=#{roleKey} limit 1
+		 where r.role_key=#{roleKey}
+		<if test="tenantId != null and tenantId != '' and tenantId !=0">
+			AND r.tenant_id = #{tenantId}
+		</if>
+		  limit 1
 	</select>
 	
  	<insert id="insertRole" parameterType="com.usky.system.domain.SysRole" useGeneratedKeys="true" keyProperty="roleId">
@@ -105,6 +117,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null and status != ''">status,</if>
  			<if test="remark != null and remark != ''">remark,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">tenant_id,</if>
  			create_time
  		)values(
  			<if test="roleId != null and roleId != 0">#{roleId},</if>
@@ -117,6 +130,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null and status != ''">#{status},</if>
  			<if test="remark != null and remark != ''">#{remark},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
+			<if test="tenantId != null and tenantId != '' and tenantId !=0">#{tenantId},</if>
  			sysdate()
  		)
 	</insert>

+ 51 - 0
service-system/service-system-biz/src/main/resources/mapper/system/SysTenantConfigMapper.xml

@@ -0,0 +1,51 @@
+<?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">
+<mapper namespace="com.usky.system.mapper.SysTenantConfigMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.usky.system.domain.SysTenantConfig">
+        <id column="id" property="id"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="login_title" property="loginTitle"/>
+        <result column="login_logo" property="loginLogo"/>
+        <result column="login_back_url" property="loginBackUrl"/>
+        <result column="login_footer" property="loginFooter"/>
+        <result column="login_type" property="loginType"/>
+        <result column="middle_logo" property="middleLogo"/>
+        <result column="middle_back_url" property="middleBackUrl"/>
+        <result column="middle_title" property="middleTitle"/>
+        <result column="middle_footer" property="middleFooter"/>
+        <result column="home_logo" property="homeLogo"/>
+        <result column="home_page_url" property="homePageUrl"/>
+        <result column="home_layout" property="homeLayout"/>
+        <result column="home_style" property="homeStyle"/>
+        <result column="create_by" property="createBy"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_by" property="updateBy"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="label_icon" property="labelIcon"/>
+        <result column="middle_status" property="middleStatus"/>
+        <result column="large_screen_url" property="largeScreenUrl"/>
+    </resultMap>
+    <select id="getTenantConfig" resultType="com.usky.system.service.vo.SysTenantConfigVo">
+        SELECT
+        b.*
+        FROM
+        sys_tenant AS a
+        JOIN sys_tenant_config AS b ON a.id = b.tenant_id
+        <where>
+            a. STATUS = 0
+            AND a.domain = #{url}
+        </where>
+    </select>
+
+    <select id="getMenuBoxList" resultType="com.usky.system.domain.SysMenu">
+        SELECT a.*
+        FROM sys_menu AS a
+                 JOIN sys_tenant_menu AS b ON a.menu_id = b.menu_id
+        WHERE a.status = 0
+          AND a.visible = 0
+          AND a.menu_type = #{menuType}
+          and b.tenant_id = #{tenantId}
+    </select>
+</mapper>

+ 89 - 0
service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMapper.xml

@@ -0,0 +1,89 @@
+<?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">
+<mapper namespace="com.usky.system.mapper.SysTenantMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.usky.system.domain.SysTenant">
+        <id column="id" property="id"/>
+        <result column="tenant_code" property="tenantCode"/>
+        <result column="tenant_name" property="tenantName"/>
+        <result column="tenant_manager" property="tenantManager"/>
+        <result column="tenant_type" property="tenantType"/>
+        <result column="domain" property="domain"/>
+        <result column="email" property="email"/>
+        <result column="phone_number" property="phoneNumber"/>
+        <result column="address" property="address"/>
+        <result column="geo_position" property="geoPosition"/>
+        <result column="tenant_term" property="tenantTerm"/>
+        <result column="remark" property="remark"/>
+        <result column="status" property="status"/>
+        <result column="create_by" property="createBy"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_by" property="updateBy"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="system_name" property="systemName"/>
+    </resultMap>
+
+    <select id="getUserData" resultType="com.usky.system.service.vo.SysTenantVo">
+        SELECT
+        a.*,b.id,b.tenant_code,b.tenant_name,b.tenant_manager,b.tenant_type,b.domain,b.tenant_term,b.system_name
+        FROM
+        sys_user AS a
+        LEFT JOIN sys_tenant AS b ON a.tenant_id = b.id
+        <where>
+            a.user_id = #{userId}
+        </where>
+    </select>
+
+    <select id="getTenantData" resultType="com.usky.system.service.vo.SysTenantTwoVo">
+        SELECT
+        a.*,b.platform_name
+        FROM
+        sys_tenant as a left join sys_platform as b on a.system_name=b.id
+        <where>
+            <if test="id != null and id != '' and id!=0">
+                and a.id = #{id}
+            </if>
+            <if test="tenantName != null and tenantName != ''">
+                and a.tenant_name LIKE CONCAT(CONCAT('%', #{tenantName}), '%')
+            </if>
+            <if test="tenantManager != null and tenantManager != ''">
+                and a.tenant_manager LIKE CONCAT(CONCAT('%', #{tenantManager}), '%')
+            </if>
+            <if test="tenantType != null and tenantType != ''">
+                and a.tenant_type = #{tenantType}
+            </if>
+            <if test="status != null and status != ''">
+                and a.status = #{status}
+            </if>
+            <if test="endTime != null and startTime != null and endTime != '' and startTime != ''">
+                and a.tenant_term BETWEEN #{startTime} and #{endTime}
+            </if>
+        </where>
+        order by a.id desc
+        <if test="current != null and size != null and size != 0">
+            limit #{current},#{size}
+        </if>
+    </select>
+
+    <select id="getTenantDataOne" resultType="com.usky.system.service.vo.SysTenantTwoVo">
+        SELECT
+        a.*,b.platform_name
+        FROM
+        sys_tenant as a left join sys_platform as b on a.system_name=b.id
+        <where>
+            a.status=0
+            <if test="tenantName != null and tenantName != ''">
+                and a.tenant_name LIKE CONCAT(CONCAT('%', #{tenantName}), '%')
+            </if>
+            <if test="tenantManager != null and tenantManager != ''">
+                and a.tenant_manager LIKE CONCAT(CONCAT('%', #{tenantManager}), '%')
+            </if>
+        </where>
+        order by a.id desc
+        <if test="current != null and size != null and size != 0">
+            limit #{current},#{size}
+        </if>
+    </select>
+
+</mapper>

+ 12 - 0
service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMenuMapper.xml

@@ -0,0 +1,12 @@
+<?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">
+<mapper namespace="com.usky.system.mapper.SysTenantMenuMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.usky.system.domain.SysTenantMenu">
+        <id column="tenant_id" property="tenantId" />
+        <result column="menu_id" property="menuId" />
+        <result column="menu_alias_name" property="menuAliasName" />
+    </resultMap>
+
+</mapper>

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

@@ -9,9 +9,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="deptId"       column="dept_id"      />
 		<result property="userName"     column="user_name"    />
 		<result property="nickName"     column="nick_name"    />
+		<result property="userType"     column="user_type"    />
 		<result property="email"        column="email"        />
 		<result property="phonenumber"  column="phonenumber"  />
 		<result property="sex"          column="sex"          />
+		<result property="fullName"          column="full_name"          />
 		<result property="avatar"       column="avatar"       />
 		<result property="password"     column="password"     />
 		<result property="status"       column="status"       />
@@ -24,6 +26,8 @@ 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"       />
+		<result property="tenantId"       column="tenant_id"       />
+		<result property="address"       column="address"       />
 		<association property="dept" column="dept_id" javaType="com.usky.system.domain.SysDeptVO" resultMap="deptResult" />
 		<collection  property="roles"   javaType="java.util.List"        resultMap="RoleResult" />
 	</resultMap>
@@ -69,6 +73,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<if test="status != null and status != ''">
 			AND u.status = #{status}
 		</if>
+		<if test="tenantId != null and tenantId != '' and tenantId !=0">
+			AND u.tenant_id = #{tenantId}
+		</if>
+		<if test="userType != null and userType != ''">
+			AND u.user_type = #{userType}
+		</if>
 		<if test="phonenumber != null and phonenumber != ''">
 			AND u.phonenumber like concat('%', #{phonenumber}, '%')
 		</if>
@@ -132,7 +142,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	</select>
 	
 	<select id="checkUserNameUnique" parameterType="String" resultType="int">
-		select count(1) from sys_user where user_name = #{userName} and del_flag = '2' limit 1
+		select count(1) from sys_user where user_name = #{userName} and del_flag != '2'
+		 <if test="tenantId != null and tenantId != 0">
+			 and tenant_id = #{tenantId}
+		 </if>
+		 limit 1
 	</select>
 	
 	<select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">
@@ -149,6 +163,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="deptId != null and deptId != 0">dept_id,</if>
  			<if test="userName != null and userName != ''">user_name,</if>
  			<if test="nickName != null and nickName != ''">nick_name,</if>
+			<if test="userType != null and userType != ''">user_type,</if>
  			<if test="email != null and email != ''">email,</if>
  			<if test="avatar != null and avatar != ''">avatar,</if>
  			<if test="phonenumber != null and phonenumber != ''">phonenumber,</if>
@@ -157,12 +172,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null and status != ''">status,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
  			<if test="remark != null and remark != ''">remark,</if>
+			<if test="tenantId != null and tenantId != ''">tenant_id,</if>
  			create_time
  		)values(
  			<if test="userId != null and userId != ''">#{userId},</if>
  			<if test="deptId != null and deptId != ''">#{deptId},</if>
  			<if test="userName != null and userName != ''">#{userName},</if>
  			<if test="nickName != null and nickName != ''">#{nickName},</if>
+			<if test="userType != null and userType != ''">#{userType},</if>
  			<if test="email != null and email != ''">#{email},</if>
  			<if test="avatar != null and avatar != ''">#{avatar},</if>
  			<if test="phonenumber != null and phonenumber != ''">#{phonenumber},</if>
@@ -171,29 +188,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="status != null and status != ''">#{status},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
  			<if test="remark != null and remark != ''">#{remark},</if>
+			<if test="tenantId != null and tenantId != ''">#{tenantId},</if>
  			sysdate()
  		)
 	</insert>
-	
+
 	<update id="updateUser" parameterType="com.usky.system.domain.SysUser">
- 		update sys_user
- 		<set>
- 			<if test="deptId != null and deptId != 0">dept_id = #{deptId},</if>
- 			<if test="userName != null and userName != ''">user_name = #{userName},</if>
- 			<if test="nickName != null and nickName != ''">nick_name = #{nickName},</if>
- 			<if test="email != null ">email = #{email},</if>
- 			<if test="phonenumber != null ">phonenumber = #{phonenumber},</if>
- 			<if test="sex != null and sex != ''">sex = #{sex},</if>
- 			<if test="avatar != null and avatar != ''">avatar = #{avatar},</if>
- 			<if test="password != null and password != ''">password = #{password},</if>
- 			<if test="status != null and status != ''">status = #{status},</if>
- 			<if test="loginIp != null and loginIp != ''">login_ip = #{loginIp},</if>
- 			<if test="loginDate != null">login_date = #{loginDate},</if>
- 			<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
- 			<if test="remark != null">remark = #{remark},</if>
- 			update_time = sysdate()
- 		</set>
- 		where user_id = #{userId}
+		update sys_user
+		<set>
+			<if test="deptId != null and deptId != 0">dept_id = #{deptId},</if>
+			<if test="userName != null and userName != ''">user_name = #{userName},</if>
+			<if test="nickName != null and nickName != ''">nick_name = #{nickName},</if>
+			<if test="email != null ">email = #{email},</if>
+			<if test="phonenumber != null ">phonenumber = #{phonenumber},</if>
+			<if test="sex != null and sex != ''">sex = #{sex},</if>
+			<if test="avatar != null and avatar != ''">avatar = #{avatar},</if>
+			<if test="password != null and password != ''">password = #{password},</if>
+			<if test="status != null and status != ''">status = #{status},</if>
+			<if test="delFlag != null and delFlag != ''">del_flag = #{delFlag},</if>
+			<if test="loginIp != null and loginIp != ''">login_ip = #{loginIp},</if>
+			<if test="loginDate != null">login_date = #{loginDate},</if>
+			<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
+			<if test="remark != null">remark = #{remark},</if>
+			<if test="address != null and address != ''">address = #{address},</if>
+			update_time = sysdate()
+		</set>
+		where user_id = #{userId}
 	</update>
 
 	
@@ -215,5 +235,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			#{userId}
         </foreach> 
  	</delete>
+
+	<update id="resetUserPwdOne" parameterType="com.usky.system.domain.SysUser">
+		update sys_user set password = #{password} where user_id = #{userId}
+	</update>
+
+	<select id="getUserData" parameterType="com.usky.system.domain.SysUser"
+			resultType="com.usky.system.domain.SysUser">
+		SELECT * FROM sys_user
+		where
+		del_flag=0 and user_type='01'
+		<if test="tenantId != null and tenantId != 0">
+			and 	tenant_id = #{tenantId}
+		</if>
+		<if test="userId != null and userId != 0">
+			and 	user_id = #{userId}
+		</if>
+		order by user_id
+		<if test="current != null and size != null and size != 0">
+			limit #{current},#{size}
+		</if>
+	</select>
 	
 </mapper>