Browse Source

Merge branch 'system-165' of uskycloud/usky-cloud into master

James 1 year ago
parent
commit
32851c09b2
37 changed files with 700 additions and 73 deletions
  1. 1 1
      base-common/ruoyi-common-datascope/src/main/java/com/ruoyi/common/datascope/aspect/DataScopeAspect.java
  2. 30 0
      base-modules/service-system/service-system-api/src/main/java/com/usky/system/domain/SysLogininforVO.java
  3. 24 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysMenuController.java
  4. 24 3
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysMobileMenuController.java
  5. 1 1
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TokenController.java
  6. 47 1
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysLogininfor.java
  7. 16 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMenu.java
  8. 16 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMobileMenu.java
  9. 3 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMobileRoleMenu.java
  10. 11 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMobileTenantMenu.java
  11. 47 1
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysOperLog.java
  12. 13 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysRoleMenu.java
  13. 10 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenantMenu.java
  14. 2 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMobileMenuMapper.java
  15. 2 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMobileRoleMenuMapper.java
  16. 6 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMobileTenantMenuMapper.java
  17. 7 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMenuMapper.java
  18. 6 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/ISysMenuService.java
  19. 33 20
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysLoginService.java
  20. 7 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysMobileMenuService.java
  21. 10 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysRoleMenuService.java
  22. 3 3
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/HceArticleServiceImpl.java
  23. 12 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysLogininforServiceImpl.java
  24. 86 11
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java
  25. 74 8
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMobileMenuServiceImpl.java
  26. 15 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysOperLogServiceImpl.java
  27. 20 4
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysRoleServiceImpl.java
  28. 23 4
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/MetaVo.java
  29. 3 3
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysDeptMapper.xml
  30. 36 4
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysLogininforMapper.xml
  31. 3 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysMenuMapper.xml
  32. 3 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysMobileMenuMapper.xml
  33. 22 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysMobileTenantMenuMapper.xml
  34. 58 5
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysOperLogMapper.xml
  35. 2 2
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysRoleMapper.xml
  36. 2 2
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysRoleMenuMapper.xml
  37. 22 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMenuMapper.xml

+ 1 - 1
base-common/ruoyi-common-datascope/src/main/java/com/ruoyi/common/datascope/aspect/DataScopeAspect.java

@@ -116,7 +116,7 @@ public class DataScopeAspect
             {
                 if (StringUtils.isNotBlank(userAlias))
                 {
-                    sqlString.append(StringUtils.format(" OR {}.user_id = {} ", userAlias, user.getUserId()));
+                    sqlString.append(StringUtils.format(" OR {}.create_by = {} ", userAlias, user.getUserName()));
                 }
                 else
                 {

+ 30 - 0
base-modules/service-system/service-system-api/src/main/java/com/usky/system/domain/SysLogininforVO.java

@@ -33,6 +33,16 @@ public class SysLogininforVO extends BaseEntity
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date accessTime;
 
+    /**
+     * 组织机构ID
+     */
+    private Integer deptId;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
     public Long getInfoId()
     {
         return infoId;
@@ -92,4 +102,24 @@ public class SysLogininforVO extends BaseEntity
     {
         this.accessTime = accessTime;
     }
+
+    public Integer getDeptId()
+    {
+        return deptId;
+    }
+
+    public void setDeptId(Integer deptId)
+    {
+        this.deptId = deptId;
+    }
+
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
 }

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

@@ -9,6 +9,7 @@ import com.usky.common.core.constants.CommonConst;
 import com.usky.common.core.exception.BusinessErrorCode;
 import com.usky.common.core.util.StringUtils;
 import com.usky.system.domain.SysMenu;
+import com.usky.system.domain.SysTenantMenu;
 import com.usky.system.domain.SysUser;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.model.LoginUser;
@@ -174,4 +175,27 @@ public class SysMenuController extends BaseController
         }
         return ApiResult.success(menuService.buildMenus(menus));
     }
+
+    /**
+     * 获取租户菜单关联信息列表
+     */
+    @GetMapping("/getTenantMenuList")
+    public ApiResult getTenantMenuList()
+    {
+        List<SysTenantMenu> menus = menuService.selectTenantMenuList(SecurityUtils.getTenantId());
+
+        return ApiResult.success(menus);
+    }
+
+    /**
+     * 修改菜单昵称
+     * @param tenantMenu
+     * @return
+     */
+    @PutMapping("/updateTenantMenu")
+    public ApiResult<Void> updateTenantMenu(@RequestBody SysTenantMenu tenantMenu)
+    {
+        menuService.updateTenantMenu(tenantMenu);
+        return ApiResult.success();
+    }
 }

+ 24 - 3
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysMobileMenuController.java

@@ -8,9 +8,7 @@ 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.SysMobileMenu;
-import com.usky.system.domain.SysUser;
+import com.usky.system.domain.*;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.model.LoginUser;
 import com.usky.system.service.ISysUserService;
@@ -69,6 +67,29 @@ public class SysMobileMenuController  extends BaseController {
         return ApiResult.success(sysMobileMenuService.buildMenus(menus));
     }
 
+    /**
+     * 获取移动端租户菜单关联信息列表
+     */
+    @GetMapping("/getMobileTenantMenuList")
+    public ApiResult getMobileTenantMenuList()
+    {
+        List<SysMobileTenantMenu> menus = sysMobileMenuService.getMobileTenantMenuList(SecurityUtils.getTenantId());
+
+        return ApiResult.success(menus);
+    }
+
+    /**
+     * 修改移动端菜单昵称
+     * @param mobileTenantMenu
+     * @return
+     */
+    @PutMapping("/updateMobileTenantMenu")
+    public ApiResult<Void> updateMobileTenantMenu(@RequestBody SysMobileTenantMenu mobileTenantMenu)
+    {
+        sysMobileMenuService.updateMobileTenantMenu(mobileTenantMenu);
+        return ApiResult.success();
+    }
+
     /**
      * 移动端系统管理-菜单管理-列表展示
      */

+ 1 - 1
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/controller/web/TokenController.java

@@ -99,7 +99,7 @@ public class TokenController {
             // 删除用户缓存记录
             AuthUtil.logoutByToken(token);
             // 记录用户退出日志
-            sysLoginService.logout(username);
+            sysLoginService.logout(SecurityUtils.getTenantId(),username);
         }
         return ApiResult.success();
     }

+ 47 - 1
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysLogininfor.java

@@ -2,6 +2,7 @@ package com.usky.system.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.usky.common.core.bean.BaseEntity;
 
 import java.util.Date;
 import java.util.HashMap;
@@ -12,7 +13,7 @@ import java.util.Map;
  *
  * @author ruoyi
  */
-public class SysLogininfor
+public class SysLogininfor extends BaseEntity
 {
     private static final long serialVersionUID = 1L;
 
@@ -35,6 +36,21 @@ public class SysLogininfor
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date accessTime;
 
+    /**
+     * 组织机构ID
+     */
+    private Integer deptId;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 创建人
+     */
+    private String createBy;
+
     public String getSearchValue() {
         return searchValue;
     }
@@ -122,4 +138,34 @@ public class SysLogininfor
     {
         this.accessTime = accessTime;
     }
+
+    public Integer getDeptId()
+    {
+        return deptId;
+    }
+
+    public void setDeptId(Integer deptId)
+    {
+        this.deptId = deptId;
+    }
+
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
+
+    public String getCreateBy()
+    {
+        return createBy;
+    }
+
+    public void setCreateBy(String createBy)
+    {
+        this.createBy = createBy;
+    }
 }

+ 16 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMenu.java

@@ -26,6 +26,12 @@ public class SysMenu extends BaseEntity
     /** 菜单名称 */
     private String menuName;
 
+    /**
+     * 菜单昵称
+     */
+    @TableField(exist = false)
+    private String menuAliasName;
+
     /** 父菜单名称 */
     @TableField(exist = false)
     private String parentName;
@@ -89,6 +95,16 @@ public class SysMenu extends BaseEntity
         this.menuName = menuName;
     }
 
+    public String getMenuAliasName()
+    {
+        return menuAliasName;
+    }
+
+    public void setMenuAliasName(String menuAliasName)
+    {
+        this.menuAliasName = menuAliasName;
+    }
+
     public String getParentName()
     {
         return parentName;

+ 16 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMobileMenu.java

@@ -32,6 +32,12 @@ public class SysMobileMenu extends BaseEntity {
      */
     private String menuName;
 
+    /**
+     * 菜单昵称
+     */
+    @TableField(exist = false)
+    private String menuAliasName;
+
     /** 父菜单名称 */
     @TableField(exist = false)
     private String parentName;
@@ -124,6 +130,16 @@ public class SysMobileMenu extends BaseEntity {
         this.menuName = menuName;
     }
 
+    public String getMenuAliasName()
+    {
+        return menuAliasName;
+    }
+
+    public void setMenuAliasName(String menuAliasName)
+    {
+        this.menuAliasName = menuAliasName;
+    }
+
     public String getParentName()
     {
         return parentName;

+ 3 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMobileRoleMenu.java

@@ -29,4 +29,7 @@ public class SysMobileRoleMenu implements Serializable {
     private Long menuId;
 
 
+    private String menuAliasName;
+
+
 }

+ 11 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysMobileTenantMenu.java

@@ -1,6 +1,8 @@
 package com.usky.system.domain;
 
 import java.io.Serializable;
+
+import com.baomidou.mybatisplus.annotation.TableField;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -30,6 +32,15 @@ public class SysMobileTenantMenu implements Serializable {
      */
     private Long menuId;
 
+    /**
+     * 父菜单ID
+     */
+    @TableField(exist = false)
+    private Long parentId;
+
+    @TableField(exist = false)
+    private String menuName;
+
     private String menuAliasName;
 
 

+ 47 - 1
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysOperLog.java

@@ -2,6 +2,7 @@ package com.usky.system.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.usky.common.core.bean.BaseEntity;
 
 import java.util.Date;
 import java.util.HashMap;
@@ -13,7 +14,7 @@ import java.util.Map;
  * 
  * @author yq
  */
-public class SysOperLog
+public class SysOperLog extends BaseEntity
 {
     private static final long serialVersionUID = 1L;
 
@@ -70,6 +71,21 @@ public class SysOperLog
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date operTime;
 
+    /**
+     * 组织机构ID
+     */
+    private Integer deptId;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 创建人
+     */
+    private String createBy;
+
     public String getSearchValue() {
         return searchValue;
     }
@@ -268,4 +284,34 @@ public class SysOperLog
     {
         this.operTime = operTime;
     }
+
+    public Integer getDeptId()
+    {
+        return deptId;
+    }
+
+    public void setDeptId(Integer deptId)
+    {
+        this.deptId = deptId;
+    }
+
+    public Integer getTenantId()
+    {
+        return tenantId;
+    }
+
+    public void setTenantId(Integer tenantId)
+    {
+        this.tenantId = tenantId;
+    }
+
+    public String getCreateBy()
+    {
+        return createBy;
+    }
+
+    public void setCreateBy(String createBy)
+    {
+        this.createBy = createBy;
+    }
 }

+ 13 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysRoleMenu.java

@@ -16,6 +16,8 @@ public class SysRoleMenu
     /** 菜单ID */
     private Long menuId;
 
+    private String menuAliasName;
+
     public Long getRoleId()
     {
         return roleId;
@@ -36,11 +38,22 @@ public class SysRoleMenu
         this.menuId = menuId;
     }
 
+    public String getMenuAliasName()
+    {
+        return menuAliasName;
+    }
+
+    public void setMenuAliasName(String menuAliasName)
+    {
+        this.menuAliasName = menuAliasName;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
             .append("roleId", getRoleId())
             .append("menuId", getMenuId())
+            .append("menuAliasName", getMenuAliasName())
             .toString();
     }
 }

+ 10 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenantMenu.java

@@ -1,5 +1,6 @@
 package com.usky.system.domain;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -31,6 +32,15 @@ public class SysTenantMenu implements Serializable {
      */
     private Long menuId;
 
+    /**
+     * 父菜单ID
+     */
+    @TableField(exist = false)
+    private Long parentId;
+
+    @TableField(exist = false)
+    private String menuName;
+
     private String menuAliasName;
 
 

+ 2 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMobileMenuMapper.java

@@ -3,6 +3,7 @@ package com.usky.system.mapper;
 import com.usky.system.domain.SysMenu;
 import com.usky.system.domain.SysMobileMenu;
 import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.SysMobileTenantMenu;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
@@ -50,6 +51,7 @@ public interface SysMobileMenuMapper extends CrudMapper<SysMobileMenu> {
      */
     public List<SysMobileMenu> selectMenuTreeByUserIdOne(@Param("tenantId") Integer tenantId);
 
+
     /**
      * 根据角色ID查询菜单树信息
      *

+ 2 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMobileRoleMenuMapper.java

@@ -4,6 +4,7 @@ import com.usky.system.domain.SysMobileRoleMenu;
 import com.usky.common.mybatis.core.CrudMapper;
 import com.usky.system.domain.SysRoleMenu;
 import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
 
 import java.util.List;
 
@@ -15,6 +16,7 @@ import java.util.List;
  * @author JCB
  * @since 2023-03-02
  */
+@Repository
 public interface SysMobileRoleMenuMapper extends CrudMapper<SysMobileRoleMenu> {
 
     /**

+ 6 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysMobileTenantMenuMapper.java

@@ -2,6 +2,10 @@ package com.usky.system.mapper;
 
 import com.usky.system.domain.SysMobileTenantMenu;
 import com.usky.common.mybatis.core.CrudMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
 
 /**
  * <p>
@@ -11,6 +15,8 @@ import com.usky.common.mybatis.core.CrudMapper;
  * @author JCB
  * @since 2022-08-11
  */
+@Repository
 public interface SysMobileTenantMenuMapper extends CrudMapper<SysMobileTenantMenu> {
 
+    public List<SysMobileTenantMenu> getMobileTenantMenuList(@Param("tenantId") Integer tenantId);
 }

+ 7 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMenuMapper.java

@@ -2,6 +2,10 @@ package com.usky.system.mapper;
 
 import com.usky.common.mybatis.core.CrudMapper;
 import com.usky.system.domain.SysTenantMenu;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
 
 /**
  * <p>
@@ -11,6 +15,9 @@ import com.usky.system.domain.SysTenantMenu;
  * @author ya
  * @since 2022-05-18
  */
+@Repository
 public interface SysTenantMenuMapper extends CrudMapper<SysTenantMenu> {
 
+
+    public List<SysTenantMenu> selectTenantMenuList(@Param("tenantId") Integer tenantId);
 }

+ 6 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/ISysMenuService.java

@@ -4,9 +4,11 @@ package com.usky.system.service;
 import com.usky.common.mybatis.core.CrudService;
 import com.usky.system.domain.SysMenu;
 import com.usky.system.domain.SysMobileMenu;
+import com.usky.system.domain.SysTenantMenu;
 import com.usky.system.service.vo.RouterVo;
 import com.usky.system.service.vo.TreeMobileSelect;
 import com.usky.system.service.vo.TreeSelect;
+import org.springframework.web.bind.annotation.RequestBody;
 
 import java.util.List;
 import java.util.Set;
@@ -66,6 +68,10 @@ public interface ISysMenuService extends CrudService<SysMenu>
 
     List<SysMenu> selectMenuTreeByUserIdOne(Integer tenantId);
 
+    List<SysTenantMenu> selectTenantMenuList(Integer tenantId);
+
+    void updateTenantMenu(SysTenantMenu tenantMenu);
+
     /**
      * 根据角色ID查询菜单树信息
      * 

+ 33 - 20
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysLoginService.java

@@ -58,19 +58,19 @@ public class SysLoginService {
     public LoginUser login(String username, String password, Integer tenantId) {
         // 用户名或密码为空 错误
         if (StringUtils.isAnyBlank(username, password)) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "用户/密码必须填写");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户/密码必须填写");
             throw new BusinessException("用户/密码必须填写");
         }
         // 密码如果不在指定范围内 错误
         if (password.length() < UserConstants.PASSWORD_MIN_LENGTH
                 || password.length() > UserConstants.PASSWORD_MAX_LENGTH) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "用户密码不在指定范围");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户密码不在指定范围");
             throw new BusinessException("用户密码不在指定范围");
         }
         // 用户名不在指定范围内 错误
         if (username.length() < UserConstants.USERNAME_MIN_LENGTH
                 || username.length() > UserConstants.USERNAME_MAX_LENGTH) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "用户名不在指定范围");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户名不在指定范围");
             throw new BusinessException("用户名不在指定范围");
         }
 
@@ -84,15 +84,15 @@ public class SysLoginService {
 
         SysUserVO user = loginUser.getSysUser();
         if (UserStatus.DELETED.getCode().equals(user.getDelFlag())) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "对不起,您的账号已被删除");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "对不起,您的账号已被删除");
             throw new BusinessException("对不起,您的账号:" + username + " 已被删除");
         }
         if (UserStatus.DISABLE.getCode().equals(user.getStatus())) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "用户已停用,请联系管理员");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户已停用,请联系管理员");
             throw new BusinessException("对不起,您的账号:" + username + " 已停用");
         }
         if (!SecurityUtils.matchesPassword(password, user.getPassword())) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "用户密码错误");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户密码错误");
             throw new BusinessException("用户不存在/密码错误");
         }
         //判断租户状态是否停用
@@ -104,14 +104,14 @@ public class SysLoginService {
             String status = list.get(0).getStatus();
             String domain = list.get(0).getDomain();
             if(status.equals("1")){
-                recordLogininfor(username, Constants.LOGIN_FAIL, "系统已停用,请联系管理员");
+                recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "系统已停用,请联系管理员");
                 throw new BusinessException("对不起,系统已停用,请联系管理员");
             }
         }
 
         SysPerson sysPerson = sysPersonService.getsysPerson(user.getUserId());
         loginUser.setSysPerson(sysPerson);
-        recordLogininfor(username, Constants.LOGIN_SUCCESS, "登录成功");
+        recordLogininfor(tenantId,username, Constants.LOGIN_SUCCESS, "登录成功");
         return loginUser;
     }
 
@@ -121,21 +121,21 @@ public class SysLoginService {
         if (!StringUtils.isBlank(username) && !StringUtils.isBlank(password)) {
             // 用户名或密码为空 错误
             if (StringUtils.isAnyBlank(username, password)) {
-                recordLogininfor(username, Constants.LOGIN_FAIL, "用户/密码必须填写");
+                recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户/密码必须填写");
                 throw new BusinessException("用户/密码必须填写");
             }
 
             // 密码如果不在指定范围内 错误
             if (password.length() < UserConstants.PASSWORD_MIN_LENGTH
                     || password.length() > UserConstants.PASSWORD_MAX_LENGTH) {
-                recordLogininfor(username, Constants.LOGIN_FAIL, "用户密码不在指定范围");
+                recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户密码不在指定范围");
                 throw new BusinessException("用户密码不在指定范围");
             }
 
             // 用户名不在指定范围内 错误
             if (username.length() < UserConstants.USERNAME_MIN_LENGTH
                     || username.length() > UserConstants.USERNAME_MAX_LENGTH) {
-                recordLogininfor(username, Constants.LOGIN_FAIL, "用户名不在指定范围");
+                recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户名不在指定范围");
                 throw new BusinessException("用户名不在指定范围");
             }
 
@@ -143,12 +143,12 @@ public class SysLoginService {
             loginUser = sysUserService.getAppUserInfo(username, tenantId, null);
 
             if (Objects.isNull(loginUser)) {
-                recordLogininfor(username, Constants.LOGIN_FAIL, "用户不存在");
+                recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户不存在");
                 throw new BusinessException("用户不存在");
             }
 
             if (!SecurityUtils.matchesPassword(password, loginUser.getPassword())) {
-                recordLogininfor(username, Constants.LOGIN_FAIL, "用户密码错误");
+                recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户密码错误");
                 throw new BusinessException("用户不存在/密码错误");
             }
         } else if(!StringUtils.isBlank(phone) && !StringUtils.isBlank(verify)) {
@@ -176,21 +176,21 @@ public class SysLoginService {
         }
 
         if (UserStatus.DELETED.getCode().equals(loginUser.getDelFlag())) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "对不起,您的账号已被删除");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "对不起,您的账号已被删除");
             throw new BusinessException("对不起,您的账号:" + username + " 已被删除");
         }
         if (UserStatus.DISABLE.getCode().equals(loginUser.getStatus())) {
-            recordLogininfor(username, Constants.LOGIN_FAIL, "用户已停用,请联系管理员");
+            recordLogininfor(tenantId,username, Constants.LOGIN_FAIL, "用户已停用,请联系管理员");
             throw new BusinessException("对不起,您的账号:" + username + " 已停用");
         }
 
-        recordLogininfor(username, Constants.LOGIN_SUCCESS, "登录成功");
+        recordLogininfor(tenantId,username, Constants.LOGIN_SUCCESS, "登录成功");
         return loginUser;
     }
 
 
-    public void logout(String loginName) {
-        recordLogininfor(loginName, Constants.LOGOUT, "退出成功");
+    public void logout(Integer tenantId,String loginName) {
+        recordLogininfor(tenantId,loginName, Constants.LOGOUT, "退出成功");
     }
 
     /**
@@ -216,7 +216,7 @@ public class SysLoginService {
         sysUser.setNickName(username);
         sysUser.setPassword(SecurityUtils.encryptPassword(password));
         sysUserService.register(BeanMapperUtils.map(sysUser, SysUser.class));
-        recordLogininfor(username, Constants.REGISTER, "注册成功");
+        recordLogininfor(SecurityUtils.getTenantId(),username, Constants.REGISTER, "注册成功");
     }
 
     /**
@@ -227,11 +227,24 @@ public class SysLoginService {
      * @param message  消息内容
      * @return
      */
-    public void recordLogininfor(String username, String status, String message) {
+    public void recordLogininfor(Integer tenantId,String username, String status, String message) {
         SysLogininforVO logininfor = new SysLogininforVO();
         logininfor.setUserName(username);
         logininfor.setIpaddr(IpUtils.getIpAddr(ServletUtils.getRequest()));
         logininfor.setMsg(message);
+        logininfor.setCreateBy(username);
+
+        LambdaQueryWrapper<SysUser> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.select(SysUser::getDeptId)
+                .eq(SysUser::getDelFlag,0)
+                .eq(SysUser::getUserName,username)
+                .eq(SysUser::getTenantId,tenantId);
+        SysUser one = sysUserService.getOne(queryWrapper);
+        if(one != null){
+            logininfor.setDeptId(one.getDeptId().intValue());
+        }
+        logininfor.setTenantId(tenantId);
+
         // 日志状态
         if (StringUtils.equalsAny(status, Constants.LOGIN_SUCCESS, Constants.LOGOUT, Constants.REGISTER)) {
             logininfor.setStatus(Constants.LOGIN_SUCCESS_STATUS);

+ 7 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysMobileMenuService.java

@@ -3,6 +3,8 @@ package com.usky.system.service;
 import com.usky.system.domain.SysMenu;
 import com.usky.system.domain.SysMobileMenu;
 import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysMobileTenantMenu;
+import com.usky.system.domain.SysTenantMenu;
 import com.usky.system.service.vo.RouterVo;
 import com.usky.system.service.vo.TreeMobileSelect;
 
@@ -40,6 +42,11 @@ public interface SysMobileMenuService extends CrudService<SysMobileMenu> {
      */
     List<SysMobileMenu> selectMenuTreeByUserIdOne(Integer tenantId);
 
+
+    List<SysMobileTenantMenu> getMobileTenantMenuList(Integer tenantId);
+
+    void updateMobileTenantMenu(SysMobileTenantMenu mobileTenantMenu);
+
     /**
      * 根据角色ID查询菜单树信息
      *

+ 10 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysRoleMenuService.java

@@ -0,0 +1,10 @@
+package com.usky.system.service;
+
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysRoleMenu;
+import org.springframework.stereotype.Service;
+
+@Service
+public interface SysRoleMenuService extends CrudService<SysRoleMenu> {
+
+}

+ 3 - 3
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/HceArticleServiceImpl.java

@@ -53,7 +53,7 @@ public class HceArticleServiceImpl extends AbstractCrudService<HceArticleMapper,
             List<HceCategory> list = hceCategoryMapper.selectList(queryWrapper1);
             if(CollectionUtils.isNotEmpty(list)){
                 for(int i=0;i<page.getRecords().size();i++){
-                    page.getRecords().get(i).setContent(HtmlUtils.htmlUnescape(page.getRecords().get(i).getContent()));
+//                    page.getRecords().get(i).setContent(HtmlUtils.htmlUnescape(page.getRecords().get(i).getContent()));
                     for(int j=0;j<list.size();j++){
                         Integer categoryId1 = page.getRecords().get(i).getCategoryid();
                         Integer categoryId2 = list.get(j).getId();
@@ -79,7 +79,7 @@ public class HceArticleServiceImpl extends AbstractCrudService<HceArticleMapper,
             throw new BusinessException("同一个栏目下面内容标题重复,请重新填写内容标题");
         }
 
-        hceArticle.setContent(HtmlUtils.htmlEscapeHex(hceArticle.getContent()));
+//        hceArticle.setContent(HtmlUtils.htmlEscapeHex(hceArticle.getContent()));
         hceArticle.setCreatedate(LocalDateTime.now());
 
         this.save(hceArticle);
@@ -95,7 +95,7 @@ public class HceArticleServiceImpl extends AbstractCrudService<HceArticleMapper,
             throw new BusinessException("同一个栏目下面内容标题重复,请重新填写内容标题");
         }
 
-        hceArticle.setContent(HtmlUtils.htmlEscapeHex(hceArticle.getContent()));
+//        hceArticle.setContent(HtmlUtils.htmlEscapeHex(hceArticle.getContent()));
         hceArticle.setModifydate(LocalDateTime.now());
         this.updateById(hceArticle);
     }

+ 12 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysLogininforServiceImpl.java

@@ -1,7 +1,10 @@
 package com.usky.system.service.impl;
 
 
+import com.ruoyi.common.datascope.annotation.DataScope;
+import com.usky.common.core.util.StringUtils;
 import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.domain.SysLogininfor;
 import com.usky.system.mapper.SysLogininforMapper;
 import com.usky.system.service.ISysLogininforService;
@@ -9,7 +12,10 @@ import com.usky.system.service.vo.SysLoginExportVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
+import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 
 /**
@@ -32,6 +38,8 @@ public class SysLogininforServiceImpl extends AbstractCrudService<SysLogininforM
     @Override
     public void insertLogininfor(SysLogininfor logininfor)
     {
+        Date now = new Date();
+        logininfor.setAccessTime(now);
         logininforMapper.insertLogininfor(logininfor);
     }
 
@@ -41,9 +49,11 @@ public class SysLogininforServiceImpl extends AbstractCrudService<SysLogininforM
      * @param logininfor 访问日志对象
      * @return 登录记录集合
      */
+    @DataScope(deptAlias = "d",userAlias = "d")
     @Override
     public List<SysLogininfor> selectLogininforList(SysLogininfor logininfor)
     {
+        logininfor.setTenantId(SecurityUtils.getTenantId());
         return logininforMapper.selectLogininforList(logininfor);
     }
 
@@ -54,8 +64,10 @@ public class SysLogininforServiceImpl extends AbstractCrudService<SysLogininforM
      * @return 登录记录导出集合
      */
     @Override
+    @DataScope(deptAlias = "d",userAlias = "d")
     public List<SysLoginExportVO> selectLogininforListExport(SysLogininfor logininfor)
     {
+        logininfor.setTenantId(SecurityUtils.getTenantId());
         return logininforMapper.selectLogininforListExport(logininfor);
     }
 

+ 86 - 11
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java

@@ -1,18 +1,19 @@
 package com.usky.system.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.usky.common.core.constants.Constants;
 import com.usky.common.core.util.StringUtils;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.common.security.utils.SecurityUtils;
-import com.usky.system.domain.SysMenu;
-import com.usky.system.domain.SysMobileMenu;
-import com.usky.system.domain.SysRole;
-import com.usky.system.domain.SysUserVO;
+import com.usky.system.domain.*;
 import com.usky.system.domain.constants.UserConstants;
-import com.usky.system.mapper.SysMenuMapper;
-import com.usky.system.mapper.SysRoleMapper;
-import com.usky.system.mapper.SysRoleMenuMapper;
+import com.usky.system.mapper.*;
 import com.usky.system.service.ISysMenuService;
+import com.usky.system.service.SysRoleMenuService;
+import com.usky.system.service.SysTenantMenuService;
 import com.usky.system.service.vo.MetaVo;
 import com.usky.system.service.vo.RouterVo;
 import com.usky.system.service.vo.TreeSelect;
@@ -37,12 +38,30 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
     @Autowired
     private SysMenuMapper menuMapper;
 
+    @Autowired
+    private SysTenantMenuMapper tenantMenuMapper;
+
+    @Autowired
+    private SysTenantMenuService tenantMenuService;
+
     @Autowired
     private SysRoleMapper roleMapper;
 
     @Autowired
     private SysRoleMenuMapper roleMenuMapper;
 
+    @Autowired(required = false)
+    private SysRoleMenuService sysRoleMenuService;
+
+    @Autowired
+    private SysRoleMenuMapper sysRoleMenuMapper;
+
+    @Autowired
+    private SysUserRoleMapper sysUserRoleMapper;
+
+    @Autowired
+    private SysUserMapper sysUserMapper;
+
     /**
      * 根据用户查询系统菜单列表
      *
@@ -171,6 +190,12 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
         return getChildPerms(menus, 0);
     }
 
+    @Override
+    public List<SysTenantMenu> selectTenantMenuList(Integer tenantId){
+        List<SysTenantMenu> menus = tenantMenuMapper.selectTenantMenuList(tenantId);
+        return menus;
+    }
+
     /**
      * 根据角色ID查询菜单树信息
      *
@@ -201,7 +226,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
             router.setName(getRouteName(menu));
             router.setPath(getRouterPath(menu));
             router.setComponent(getComponent(menu));
-            router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
+            router.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
             List<SysMenu> cMenus = menu.getChildren();
             if (!cMenus.isEmpty() && cMenus.size() > 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType()))
             {
@@ -217,13 +242,13 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                 children.setPath(menu.getPath());
                 children.setComponent(menu.getComponent());
                 children.setName(StringUtils.capitalize(menu.getPath()));
-                children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
+                children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
                 childrenList.add(children);
                 router.setChildren(childrenList);
             }
             else if (menu.getParentId().intValue() == 0 && isInnerLink(menu))
             {
-                router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon()));
+                router.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon()));
                 router.setPath("/inner");
                 List<RouterVo> childrenList = new ArrayList<RouterVo>();
                 RouterVo children = new RouterVo();
@@ -231,7 +256,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                 children.setPath(routerPath);
                 children.setComponent(UserConstants.INNER_LINK);
                 children.setName(StringUtils.capitalize(routerPath));
-                children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), menu.getPath()));
+                children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), menu.getPath()));
                 childrenList.add(children);
                 router.setChildren(childrenList);
             }
@@ -392,6 +417,56 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
         return menuMapper.updateMenu(menu);
     }
 
+    @Override
+    public void updateTenantMenu(SysTenantMenu tenantMenu){
+        UpdateWrapper<SysTenantMenu> updateWrapper = Wrappers.update();
+        updateWrapper.set("menu_alias_name",tenantMenu.getMenuAliasName())
+                .eq("tenant_id",tenantMenu.getTenantId())
+                .eq("menu_id",tenantMenu.getMenuId());
+        tenantMenuService.update(updateWrapper);
+
+
+
+        LambdaQueryWrapper<SysUser> queryWrapper1 = Wrappers.lambdaQuery();
+        queryWrapper1.select(SysUser::getUserId)
+                .eq(SysUser::getStatus,0)
+                .eq(SysUser::getDelFlag,0)
+                .eq(SysUser::getTenantId,SecurityUtils.getTenantId());
+        List<SysUser> list = sysUserMapper.selectList(queryWrapper1);
+        List<Long> userIdList = new ArrayList<>();
+        if(CollectionUtils.isNotEmpty(list)){
+            for (int i = 0; i < list.size(); i++) {
+                userIdList.add(list.get(i).getUserId());
+            }
+        }
+
+        if(userIdList.size() > 0){
+            LambdaQueryWrapper<SysUserRole> queryWrapper = Wrappers.lambdaQuery();
+            queryWrapper.in(SysUserRole::getUserId,userIdList);
+            List<SysUserRole> userRoleList = sysUserRoleMapper.selectList(queryWrapper);
+            List<Long> roleIdList = new ArrayList<>();
+            if(userRoleList.size() > 0){
+                for (int i = 0; i < userRoleList.size(); i++) {
+                    if(roleIdList.contains(userRoleList.get(i).getRoleId())){
+
+                    }else{
+                        roleIdList.add(userRoleList.get(i).getRoleId());
+                    }
+                }
+            }
+
+            if(roleIdList.size() > 0){
+                UpdateWrapper<SysRoleMenu> updateWrapper1 = Wrappers.update();
+                updateWrapper1.set("menu_alias_name",tenantMenu.getMenuAliasName())
+                        .in("role_id",roleIdList)
+                        .eq("menu_id",tenantMenu.getMenuId());
+                sysRoleMenuMapper.update(null,updateWrapper1);
+            }
+
+        }
+
+    }
+
     /**
      * 删除菜单管理信息
      *

+ 74 - 8
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMobileMenuServiceImpl.java

@@ -1,6 +1,7 @@
 package com.usky.system.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.usky.common.core.constants.Constants;
@@ -9,9 +10,7 @@ import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.controller.web.SysMenuController;
 import com.usky.system.domain.*;
 import com.usky.system.domain.constants.UserConstants;
-import com.usky.system.mapper.SysMobileMenuMapper;
-import com.usky.system.mapper.SysRoleMapper;
-import com.usky.system.mapper.SysRoleMenuMapper;
+import com.usky.system.mapper.*;
 import com.usky.system.service.SysMobileMenuService;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.system.service.SysMobileTenantMenuService;
@@ -39,6 +38,12 @@ public class SysMobileMenuServiceImpl extends AbstractCrudService<SysMobileMenuM
     @Autowired
     private SysMobileMenuMapper sysMobileMenuMapper;
 
+    @Autowired
+    private  SysMobileTenantMenuMapper sysMobileTenantMenuMapper;
+
+    @Autowired
+    private SysMobileTenantMenuService sysMobileTenantMenuService;
+
     @Autowired
     private SysRoleMenuMapper sysRoleMenuMapper;
 
@@ -46,7 +51,13 @@ public class SysMobileMenuServiceImpl extends AbstractCrudService<SysMobileMenuM
     private SysRoleMapper roleMapper;
 
     @Autowired
-    private SysMobileTenantMenuService sysMobileTenantMenuService;
+    private SysUserRoleMapper sysUserRoleMapper;
+
+    @Autowired
+    private SysUserMapper sysUserMapper;
+
+    @Autowired
+    private SysMobileRoleMenuMapper sysMobileRoleMenuMapper;
 
     /**
      * 查询系统菜单列表
@@ -239,6 +250,61 @@ public class SysMobileMenuServiceImpl extends AbstractCrudService<SysMobileMenuM
         return getChildPerms(menus, 0);
     }
 
+    @Override
+    public List<SysMobileTenantMenu> getMobileTenantMenuList(Integer tenantId){
+        List<SysMobileTenantMenu> menus = sysMobileTenantMenuMapper.getMobileTenantMenuList(tenantId);
+        return menus;
+    }
+
+    @Override
+    public void updateMobileTenantMenu(SysMobileTenantMenu mobileTenantMenu){
+        UpdateWrapper<SysMobileTenantMenu> updateWrapper = Wrappers.update();
+        updateWrapper.set("menu_alias_name",mobileTenantMenu.getMenuAliasName())
+                .eq("tenant_id",mobileTenantMenu.getTenantId())
+                .eq("menu_id",mobileTenantMenu.getMenuId());
+        sysMobileTenantMenuService.update(updateWrapper);
+
+
+
+        LambdaQueryWrapper<SysUser> queryWrapper1 = Wrappers.lambdaQuery();
+        queryWrapper1.select(SysUser::getUserId)
+                .eq(SysUser::getStatus,0)
+                .eq(SysUser::getDelFlag,0)
+                .eq(SysUser::getTenantId,SecurityUtils.getTenantId());
+        List<SysUser> list = sysUserMapper.selectList(queryWrapper1);
+        List<Long> userIdList = new ArrayList<>();
+        if(CollectionUtils.isNotEmpty(list)){
+            for (int i = 0; i < list.size(); i++) {
+                userIdList.add(list.get(i).getUserId());
+            }
+        }
+
+        if(userIdList.size() > 0){
+            LambdaQueryWrapper<SysUserRole> queryWrapper = Wrappers.lambdaQuery();
+            queryWrapper.in(SysUserRole::getUserId,userIdList);
+            List<SysUserRole> userRoleList = sysUserRoleMapper.selectList(queryWrapper);
+            List<Long> roleIdList = new ArrayList<>();
+            if(userRoleList.size() > 0){
+                for (int i = 0; i < userRoleList.size(); i++) {
+                    if(roleIdList.contains(userRoleList.get(i).getRoleId())){
+
+                    }else{
+                        roleIdList.add(userRoleList.get(i).getRoleId());
+                    }
+                }
+            }
+
+            if(roleIdList.size() > 0){
+                UpdateWrapper<SysMobileRoleMenu> updateWrapper1 = Wrappers.update();
+                updateWrapper1.set("menu_alias_name",mobileTenantMenu.getMenuAliasName())
+                        .in("role_id",roleIdList)
+                        .eq("menu_id",mobileTenantMenu.getMenuId());
+                sysMobileRoleMenuMapper.update(null,updateWrapper1);
+            }
+
+        }
+    }
+
     /**
      * 根据角色ID查询菜单树信息
      *
@@ -269,7 +335,7 @@ public class SysMobileMenuServiceImpl extends AbstractCrudService<SysMobileMenuM
             router.setName(getRouteName(menu));
             router.setPath(getRouterPath(menu));
             router.setComponent(getComponent(menu));
-            router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
+            router.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
             List<SysMobileMenu> cMenus = menu.getChildren();
             if (!cMenus.isEmpty() && cMenus.size() > 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType()))
             {
@@ -285,13 +351,13 @@ public class SysMobileMenuServiceImpl extends AbstractCrudService<SysMobileMenuM
                 children.setPath(menu.getPath());
                 children.setComponent(menu.getComponent());
                 children.setName(StringUtils.capitalize(menu.getPath()));
-                children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
+                children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath()));
                 childrenList.add(children);
                 router.setChildren(childrenList);
             }
             else if (menu.getParentId().intValue() == 0 && isInnerLink(menu))
             {
-                router.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon()));
+                router.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon()));
                 router.setPath("/inner");
                 List<RouterVo> childrenList = new ArrayList<RouterVo>();
                 RouterVo children = new RouterVo();
@@ -299,7 +365,7 @@ public class SysMobileMenuServiceImpl extends AbstractCrudService<SysMobileMenuM
                 children.setPath(routerPath);
                 children.setComponent(UserConstants.INNER_LINK);
                 children.setName(StringUtils.capitalize(routerPath));
-                children.setMeta(new MetaVo(menu.getMenuName(), menu.getIcon(), menu.getPath()));
+                children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), menu.getPath()));
                 childrenList.add(children);
                 router.setChildren(childrenList);
             }

+ 15 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysOperLogServiceImpl.java

@@ -1,15 +1,20 @@
 package com.usky.system.service.impl;
 
 
+import com.ruoyi.common.datascope.annotation.DataScope;
 import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.domain.SysOperLog;
 import com.usky.system.mapper.SysOperLogMapper;
 import com.usky.system.service.ISysOperLogService;
 import com.usky.system.service.vo.SysOperLogExportVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import sun.util.calendar.BaseCalendar;
 
+import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 操作日志 服务层处理
@@ -30,6 +35,12 @@ public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper,
     @Override
     public void insertOperlog(SysOperLog operLog)
     {
+        operLog.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId().intValue());
+        operLog.setCreateBy(operLog.getOperName());
+
+        operLog.setTenantId(SecurityUtils.getTenantId());
+        Date now = new Date();
+        operLog.setOperTime(now);
         operLogMapper.insertOperlog(operLog);
     }
 
@@ -40,8 +51,10 @@ public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper,
      * @return 操作日志集合
      */
     @Override
+    @DataScope(deptAlias = "d",userAlias = "d")
     public List<SysOperLog> selectOperLogList(SysOperLog operLog)
     {
+        operLog.setTenantId(SecurityUtils.getTenantId());
         return operLogMapper.selectOperLogList(operLog);
     }
 
@@ -52,8 +65,10 @@ public class SysOperLogServiceImpl extends AbstractCrudService<SysOperLogMapper,
      * @return 操作日志集合
      */
     @Override
+    @DataScope(deptAlias = "d",userAlias = "d")
     public List<SysOperLogExportVO> selectOperLogListExport(SysOperLog operLog)
     {
+        operLog.setTenantId(SecurityUtils.getTenantId());
         return operLogMapper.selectOperLogListExport(operLog);
     }
 

+ 20 - 4
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysRoleServiceImpl.java

@@ -1,13 +1,13 @@
 package com.usky.system.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 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;
-import com.usky.system.domain.SysUserRole;
+import com.usky.system.domain.*;
 import com.usky.system.domain.constants.UserConstants;
 import com.usky.system.mapper.SysRoleDeptMapper;
 import com.usky.system.mapper.SysRoleMapper;
@@ -15,6 +15,7 @@ import com.usky.system.mapper.SysRoleMenuMapper;
 import com.usky.system.mapper.SysMobileRoleMenuMapper;
 import com.usky.system.mapper.SysUserRoleMapper;
 import com.usky.system.service.ISysRoleService;
+import com.usky.system.service.SysTenantMenuService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -44,6 +45,9 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
     @Autowired
     private SysRoleDeptMapper roleDeptMapper;
 
+    @Autowired
+    SysTenantMenuService SysTenantMenuService;
+
     /**
      * 根据条件分页查询角色数据
      * 
@@ -273,11 +277,23 @@ public class SysRoleServiceImpl extends AbstractCrudService<SysRoleMapper, SysRo
         // 新增用户与角色管理
         List<SysRoleMenu> list = new ArrayList<SysRoleMenu>();
         if (null != role.getMenuIds() && role.getMenuIds().length > 0){
+            LambdaQueryWrapper<SysTenantMenu> queryWrapper = Wrappers.lambdaQuery();
+            queryWrapper.eq(SysTenantMenu::getTenantId,role.getTenantId())
+                    .in(SysTenantMenu::getMenuId,role.getMenuIds());
+            List<SysTenantMenu> list1 = SysTenantMenuService.list(queryWrapper);
+
             for (Long menuId : role.getMenuIds())
             {
                 SysRoleMenu rm = new SysRoleMenu();
                 rm.setRoleId(role.getRoleId());
                 rm.setMenuId(menuId);
+                if(CollectionUtils.isNotEmpty(list1)){
+                    for (int i = 0; i < list1.size(); i++) {
+                        if(menuId.equals(list1.get(i).getMenuId())){
+                            rm.setMenuAliasName(list1.get(i).getMenuAliasName());
+                        }
+                    }
+                }
                 list.add(rm);
             }
         }

+ 23 - 4
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/MetaVo.java

@@ -17,6 +17,11 @@ public class MetaVo
      */
     private String title;
 
+    /**
+     * 菜单昵称
+     */
+    private String aliasTitle;
+
     /**
      * 设置该路由的图标,对应路径src/assets/icons/svg
      */
@@ -31,27 +36,31 @@ public class MetaVo
     {
     }
 
-    public MetaVo(String title, String icon)
+    public MetaVo(String title, String aliasTitle, String icon)
     {
         this.title = title;
+        this.aliasTitle = aliasTitle;
         this.icon = icon;
     }
 
-    public MetaVo(String title, String icon, boolean noCache)
+    public MetaVo(String title, String aliasTitle, String icon, boolean noCache)
     {
         this.title = title;
+        this.aliasTitle = aliasTitle;
         this.icon = icon;
     }
 
-    public MetaVo(String title, String icon, String link)
+    public MetaVo(String title, String aliasTitle, String icon, String link)
     {
         this.title = title;
+        this.aliasTitle = aliasTitle;
         this.icon = icon;
     }
 
-    public MetaVo(String title, String icon, boolean noCache, String link)
+    public MetaVo(String title, String aliasTitle, String icon, boolean noCache, String link)
     {
         this.title = title;
+        this.aliasTitle = aliasTitle;
         this.icon = icon;
         if (StringUtils.startsWithAny(link, Constants.HTTP, Constants.HTTPS))
         {
@@ -70,6 +79,16 @@ public class MetaVo
         this.title = title;
     }
 
+    public String getAliasTitle()
+    {
+        return aliasTitle;
+    }
+
+    public void setAliasTitle(String aliasTitle)
+    {
+        this.aliasTitle = aliasTitle;
+    }
+
     public String getIcon()
     {
         return icon;

+ 3 - 3
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysDeptMapper.xml

@@ -156,10 +156,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	    </foreach>
 	</update>
 	 
-	<update id="updateDeptStatusNormal" parameterType="Long">
+	<update id="updateDeptStatusNormal" parameterType="java.util.List">
  	    update sys_dept set status = '0' where dept_id in 
- 	    <foreach collection="array" item="deptId" open="(" separator="," close=")">
-        	#{deptId}
+ 	    <foreach collection="deptIds" item="item" index="index" open="(" separator="," close=")">
+        	#{item}
         </foreach>
 	</update>
 	

+ 36 - 4
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysLogininforMapper.xml

@@ -11,15 +11,38 @@
 		<result property="ipaddr"        column="ipaddr"            />
 		<result property="msg"           column="msg"               />
 		<result property="accessTime"    column="access_time"       />
+		<result property="deptId"        column="dept_id"           />
+		<result property="tenantId"      column="tenant_id"         />
+		<result property="createBy"      column="create_by"         />
 	</resultMap>
 
 	<insert id="insertLogininfor" parameterType="com.usky.system.domain.SysLogininfor">
-		insert into sys_logininfor (user_name, status, ipaddr, msg, access_time)
-		values (#{userName}, #{status}, #{ipaddr}, #{msg}, sysdate())
+		insert into sys_logininfor
+		<trim prefix="(" suffix=")" suffixOverrides=",">
+			<if test="userName != null"> user_name, </if>
+			<if test="status != null"> status, </if>
+			<if test="ipaddr != null"> ipaddr, </if>
+			<if test="msg != null"> msg, </if>
+			<if test="accessTime != null"> access_time, </if>
+			<if test="deptId != null"> dept_id, </if>
+			<if test="tenantId != null"> tenant_id, </if>
+			<if test="createBy != null"> create_by, </if>
+		</trim>
+		values
+		<trim prefix="(" suffix=")" suffixOverrides=",">
+			<if test="userName != null"> #{userName},</if>
+			<if test="status != null"> #{status},</if>
+			<if test="ipaddr != null"> #{ipaddr},</if>
+			<if test="msg != null"> #{msg},</if>
+			<if test="accessTime != null"> #{accessTime},</if>
+			<if test="deptId != null"> #{deptId},</if>
+			<if test="tenantId != null"> #{tenantId},</if>
+			<if test="createBy != null"> #{createBy},</if>
+		</trim>
 	</insert>
 
 	<select id="selectLogininforList" parameterType="com.usky.system.domain.SysLogininfor" resultMap="SysLogininforResult">
-		select info_id, user_name, ipaddr, status, msg, access_time from sys_logininfor
+		select info_id, user_name, ipaddr, status, msg, access_time from sys_logininfor d
 		<where>
 			<if test="ipaddr != null and ipaddr != ''">
 				AND ipaddr like concat('%', #{ipaddr}, '%')
@@ -36,12 +59,17 @@
 			<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
 				and date_format(access_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
 			</if>
+			<if test="1 == 1">
+				and tenant_id = #{tenantId}
+			</if>
+			<!-- 数据范围过滤 -->
+			${params.dataScope}
 		</where>
 		order by info_id desc
 	</select>
 
 	<select id="selectLogininforListExport" parameterType="com.usky.system.domain.SysLogininfor" resultType="com.usky.system.service.vo.SysLoginExportVO">
-		select info_id, ipaddr, user_name, (case status when '0' then '成功' else '失败' end) as status, msg, access_time from sys_logininfor
+		select info_id, ipaddr, user_name, (case status when '0' then '成功' else '失败' end) as status, msg, access_time from sys_logininfor d
 		<where>
 			<if test="ipaddr != null and ipaddr != ''">
 				AND ipaddr like concat('%', #{ipaddr}, '%')
@@ -58,6 +86,10 @@
 			<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
 				and date_format(access_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
 			</if>
+			<if test="1 == 1">
+				and tenant_id = #{tenantId}
+			</if>
+			${params.dataScope}
 		</where>
 		order by info_id desc
 	</select>

+ 3 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysMenuMapper.xml

@@ -7,6 +7,7 @@
     <resultMap type="com.usky.system.domain.SysMenu" id="SysMenuResult">
         <id property="menuId" column="menu_id"/>
         <result property="menuName" column="menu_name"/>
+        <result property="menuAliasName" column="menu_alias_name"/>
         <result property="parentName" column="parent_name"/>
         <result property="parentId" column="parent_id"/>
         <result property="orderNum" column="order_num"/>
@@ -172,6 +173,7 @@
         select distinct m.menu_id,
                         m.parent_id,
                         m.menu_name,
+                        rm.menu_alias_name,
                         m.path,
                         m.component,
                         m.visible,
@@ -200,6 +202,7 @@
             m.menu_id,
             m.parent_id,
             m.menu_name,
+            t.menu_alias_name,
             m.path,
             m.component,
             m.visible,

+ 3 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysMobileMenuMapper.xml

@@ -6,6 +6,7 @@
     <resultMap id="BaseResultMap" type="com.usky.system.domain.SysMobileMenu">
         <id column="menu_id" property="menuId" />
         <result column="menu_name" property="menuName" />
+        <result property="menuAliasName" column="menu_alias_name"/>
         <result column="parent_id" property="parentId" />
         <result column="order_num" property="orderNum" />
         <result column="path" property="path" />
@@ -114,6 +115,7 @@
         select distinct m.menu_id,
                         m.parent_id,
                         m.menu_name,
+                        rm.menu_alias_name,
                         m.path,
                         m.component,
                         m.visible,
@@ -142,6 +144,7 @@
             m.menu_id,
             m.parent_id,
             m.menu_name,
+            t.menu_alias_name,
             m.path,
             m.component,
             m.visible,

+ 22 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysMobileTenantMenuMapper.xml

@@ -6,7 +6,29 @@
     <resultMap id="BaseResultMap" type="com.usky.system.domain.SysMobileTenantMenu">
         <id column="tenant_id" property="tenantId" />
         <result column="menu_id" property="menuId" />
+        <result column="parent_id" property="parentId" />
+        <result property="menuName" column="menu_name"/>
         <result column="menu_alias_name" property="menuAliasName" />
     </resultMap>
 
+    <select id="getMobileTenantMenuList" resultMap="BaseResultMap">
+        SELECT
+            t.tenant_id,
+            t.menu_id,
+            m.parent_id,
+            m.menu_name,
+	        t.menu_alias_name
+        FROM
+            sys_mobile_menu m
+                JOIN sys_mobile_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
+            t.tenant_id,
+            t.menu_id
+    </select>
+
 </mapper>

+ 58 - 5
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysOperLogMapper.xml

@@ -21,16 +21,59 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="status"         column="status"         />
 		<result property="errorMsg"       column="error_msg"      />
 		<result property="operTime"       column="oper_time"      />
+		<result property="deptId"         column="dept_id"        />
+		<result property="tenantId"       column="tenant_id"      />
+		<result property="createBy"       column="create_by"      />
 	</resultMap>
 
 	<sql id="selectOperLogVo">
         select oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time
-        from sys_oper_log
+        from sys_oper_log d
     </sql>
     
 	<insert id="insertOperlog" parameterType="com.usky.system.domain.SysOperLog">
-		insert into sys_oper_log(title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time)
-        values (#{title}, #{businessType}, #{method}, #{requestMethod}, #{operatorType}, #{operName}, #{deptName}, #{operUrl}, #{operIp}, #{operLocation}, #{operParam}, #{jsonResult}, #{status}, #{errorMsg}, sysdate())
+		insert into sys_oper_log
+		<trim prefix="(" suffix=")" suffixOverrides=",">
+			<if test="title != null"> title, </if>
+			<if test="businessType != null"> business_type, </if>
+			<if test="method != null"> method, </if>
+			<if test="requestMethod != null"> request_method, </if>
+			<if test="operatorType != null"> operator_type, </if>
+			<if test="operName != null"> oper_name, </if>
+			<if test="deptName != null"> dept_name, </if>
+			<if test="operUrl != null"> oper_url, </if>
+			<if test="operIp != null"> oper_ip, </if>
+			<if test="operLocation != null"> oper_location, </if>
+			<if test="operParam != null"> oper_param, </if>
+			<if test="jsonResult != null"> json_result, </if>
+			<if test="status != null"> status, </if>
+			<if test="errorMsg != null"> error_msg, </if>
+			<if test="operTime != null"> oper_time, </if>
+			<if test="deptId != null"> dept_id, </if>
+			<if test="tenantId != null"> tenant_id, </if>
+			<if test="createBy != null"> create_by, </if>
+		</trim>
+		values
+		<trim prefix="(" suffix=")" suffixOverrides=",">
+			<if test="title != null"> #{title},</if>
+			<if test="businessType != null"> #{businessType},</if>
+			<if test="method != null"> #{method},</if>
+			<if test="requestMethod != null"> #{requestMethod},</if>
+			<if test="operatorType != null"> #{operatorType},</if>
+			<if test="operName != null"> #{operName},</if>
+			<if test="deptName != null"> #{deptName},</if>
+			<if test="operUrl != null"> #{operUrl},</if>
+			<if test="operIp != null"> #{operIp},</if>
+			<if test="operLocation != null"> #{operLocation},</if>
+			<if test="operParam != null"> #{operParam},</if>
+			<if test="jsonResult != null"> #{jsonResult},</if>
+			<if test="status != null"> #{status},</if>
+			<if test="errorMsg != null"> #{errorMsg},</if>
+			<if test="operTime != null"> #{operTime},</if>
+			<if test="deptId != null"> #{deptId},</if>
+			<if test="tenantId != null"> #{tenantId},</if>
+			<if test="createBy != null"> #{createBy},</if>
+		</trim>
 	</insert>
 	
 	<select id="selectOperLogList" parameterType="com.usky.system.domain.SysOperLog" resultMap="SysOperLogResult">
@@ -60,13 +103,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
 				and date_format(oper_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
 			</if>
+			<if test="1 == 1">
+				and tenant_id = #{tenantId}
+			</if>
+			<!-- 数据范围过滤 -->
+			${params.dataScope}
 		</where>
 		order by oper_id desc
 	</select>
 
 	<select id="selectOperLogListExport" parameterType="com.usky.system.domain.SysOperLog" resultType="com.usky.system.service.vo.SysOperLogExportVO">
 		SELECT oper_id, oper_ip, oper_name, title, (CASE business_type WHEN '0' THEN '其它' WHEN '1' THEN '新增' WHEN '2' THEN '修改' ELSE '删除' END) AS businessType, request_method, (CASE STATUS WHEN '0' THEN '成功' ELSE '失败' END) AS STATUS, oper_time
-		FROM sys_oper_log
+		FROM sys_oper_log d
 		<where>
 			<if test="title != null and title != ''">
 				AND title like concat('%', #{title}, '%')
@@ -92,6 +140,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
 				and date_format(oper_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
 			</if>
+			<if test="1 == 1">
+				and tenant_id = #{tenantId}
+			</if>
+			<!-- 数据范围过滤 -->
+			${params.dataScope}
 		</where>
 		order by oper_id desc
 	</select>
@@ -105,7 +158,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  	
  	<select id="selectOperLogById" parameterType="Long" resultMap="SysOperLogResult">
 		<include refid="selectOperLogVo"/>
-		where oper_id = #{operId}
+		where d.oper_id = #{operId}
 	</select>
 	
 	<update id="cleanOperLog">

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

@@ -89,7 +89,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	
 	<select id="checkRoleNameUnique" parameterType="String" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
-		 where r.role_name=#{roleName}
+		 where r.role_name=#{roleName} AND r.del_flag = 0 and r.status = 0
 		<if test="tenantId != null and tenantId != '' and tenantId !=0">
 			AND r.tenant_id = #{tenantId}
 		</if>
@@ -98,7 +98,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	
 	<select id="checkRoleKeyUnique" parameterType="String" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
-		 where r.role_key=#{roleKey}
+		 where r.role_key=#{roleKey} AND r.del_flag = 0 and r.status = 0
 		<if test="tenantId != null and tenantId != '' and tenantId !=0">
 			AND r.tenant_id = #{tenantId}
 		</if>

+ 2 - 2
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysRoleMenuMapper.xml

@@ -25,9 +25,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  	</delete>
 	
 	<insert id="batchRoleMenu">
-		insert into sys_role_menu(role_id, menu_id) values
+		insert into sys_role_menu(role_id, menu_id, menu_alias_name) values
 		<foreach item="item" index="index" collection="list" separator=",">
-			(#{item.roleId},#{item.menuId})
+			(#{item.roleId},#{item.menuId},#{item.menuAliasName})
 		</foreach>
 	</insert>
 	

+ 22 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMenuMapper.xml

@@ -6,7 +6,29 @@
     <resultMap id="BaseResultMap" type="com.usky.system.domain.SysTenantMenu">
         <id column="tenant_id" property="tenantId" />
         <result column="menu_id" property="menuId" />
+        <result column="parent_id" property="parentId" />
+        <result property="menuName" column="menu_name"/>
         <result column="menu_alias_name" property="menuAliasName" />
     </resultMap>
 
+    <select id="selectTenantMenuList" resultMap="BaseResultMap">
+        SELECT
+            t.tenant_id,
+            t.menu_id,
+            m.parent_id,
+            m.menu_name,
+	        t.menu_alias_name
+        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
+            t.tenant_id,
+            t.menu_id
+    </select>
+
 </mapper>