Sfoglia il codice sorgente

Merge branch 'system-165' into fu-dev

fuyuchuan 5 giorni fa
parent
commit
4b35df00a3
17 ha cambiato i file con 227 aggiunte e 58 eliminazioni
  1. 5 4
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/HceArticle.java
  2. 5 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPlatform.java
  3. 4 5
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/HceCategoryMapper.java
  4. 5 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantMapper.java
  5. 2 4
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/HceArticleServiceImpl.java
  6. 80 30
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/HceCategoryServiceImpl.java
  7. 11 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysMenuServiceImpl.java
  8. 1 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPlatformServiceImpl.java
  9. 35 4
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantServiceImpl.java
  10. 10 2
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/HceCategoryListVO.java
  11. 5 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/PlatformMenuVo.java
  12. 5 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/PlatformRouterVo.java
  13. 7 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/RouterVo.java
  14. 5 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysPlatformVo.java
  15. 25 9
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/HceCategoryMapper.xml
  16. 1 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysPlatformMapper.xml
  17. 21 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMapper.xml

+ 5 - 4
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/HceArticle.java

@@ -4,11 +4,12 @@ import com.baomidou.mybatisplus.annotation.FieldStrategy;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
-import java.time.LocalDateTime;
-import java.io.Serializable;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
 /**
  * <p>
  * 帮助中心_内容管理
@@ -93,8 +94,8 @@ public class HceArticle implements Serializable {
     private Integer sortindex;
 
     /**
-     * 菜单名称
+     * 栏目名称
      */
     @TableField(exist = false)
-    private String menuName;
+    private String categoryName;
 }

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

@@ -51,6 +51,11 @@ public class SysPlatform implements Serializable {
      */
     private String icon;
 
+    /**
+     * 显示顺序
+     */
+    private Integer orderNum;
+
     /**
      * 创建者
      */

+ 4 - 5
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/HceCategoryMapper.java

@@ -1,9 +1,8 @@
 package com.usky.system.mapper;
 
-import com.usky.system.domain.HceCategory;
 import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.HceCategory;
 import com.usky.system.service.vo.HceCategoryListVO;
-import io.swagger.models.auth.In;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -17,11 +16,11 @@ import java.util.List;
  * @since 2023-08-29
  */
 public interface HceCategoryMapper extends CrudMapper<HceCategory> {
-    List<HceCategoryListVO> selectMenuTreeAll(@Param("categoryName") String categoryName, @Param("startTime") String startTime, @Param("endTime") String endTime);
+    List<HceCategoryListVO> selectMenuTreeAll(@Param("categoryIdList") List<Integer> categoryIdList, @Param("startTime") String startTime, @Param("endTime") String endTime);
 
-    List<HceCategoryListVO> selectMenuTreeByUserId(@Param("categoryName") String categoryName, @Param("startTime") String startTime, @Param("endTime") String endTime,@Param("userId") Long userId);
+    List<HceCategoryListVO> selectMenuTreeByUserId(@Param("categoryIdList") List<Integer> categoryIdList, @Param("startTime") String startTime, @Param("endTime") String endTime,@Param("userId") Long userId);
 
-    List<HceCategoryListVO> selectMenuTreeByUserIdOne(@Param("categoryName") String categoryName, @Param("startTime") String startTime, @Param("endTime") String endTime,@Param("tenantId") Integer tenantId);
+    List<HceCategoryListVO> selectMenuTreeByUserIdOne(@Param("categoryIdList") List<Integer> categoryIdList, @Param("startTime") String startTime, @Param("endTime") String endTime,@Param("tenantId") Integer tenantId);
 
     List<HceCategory> getMenuNameList(@Param("categoryIdList") List<Integer> categoryIdList);
 

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

@@ -46,6 +46,8 @@ public interface SysTenantMapper extends CrudMapper<SysTenant> {
     void cloneSysMobileBanner(@Param("originalTenantId") Integer originalTenantId,@Param("tenantId") Integer tenantId,@Param("createBy") String createBy);
     void cloneSysTenantPlatform(@Param("originalTenantId") Integer originalTenantId,@Param("tenantId") Integer tenantId);
     void cloneSysMobileTenantMenu(@Param("originalTenantId") Integer originalTenantId,@Param("tenantId") Integer tenantId);
+    void cloneSysRoleMenu(@Param("originalRoleId") long originalRoleId,@Param("roleId") long roleId);
+    void insertSysUserRole(@Param("UserId") long UserId,@Param("roleId") long roleId,@Param("tenantId") long tenantId);
 
     void delSysTenant(@Param("tenantId") Integer tenantId);
     void delSysDept(@Param("tenantId") Integer tenantId);
@@ -57,4 +59,7 @@ public interface SysTenantMapper extends CrudMapper<SysTenant> {
     void delSysMobileBanner(@Param("tenantId") Integer tenantId);
     void delSysMobileTenantConfig(@Param("tenantId") Integer tenantId);
     void delSysMobileTenantMenu(@Param("tenantId") Integer tenantId);
+    void delSysRoleMenu(@Param("roleId") long roleId);
+    void delSysRole(@Param("tenantId") Integer tenantId);
+    void delSysUserRole(@Param("tenantId") Integer tenantId);
 }

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

@@ -6,18 +6,16 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.usky.common.core.bean.ApiResult;
 import com.usky.common.core.bean.CommonPage;
 import com.usky.common.core.exception.BusinessException;
+import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.system.domain.HceArticle;
 import com.usky.system.domain.HceCategory;
 import com.usky.system.mapper.HceArticleMapper;
 import com.usky.system.mapper.HceCategoryMapper;
 import com.usky.system.service.HceArticleService;
-import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.system.service.vo.HceArticleVO;
 import org.springframework.stereotype.Service;
-import org.springframework.web.util.HtmlUtils;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
@@ -70,7 +68,7 @@ public class HceArticleServiceImpl extends AbstractCrudService<HceArticleMapper,
                         Integer categoryId1 = page.getRecords().get(i).getCategoryid();
                         Integer categoryId2 = list.get(j).getId();
                         if(categoryId1.equals(categoryId2)){
-                            page.getRecords().get(i).setMenuName(list.get(j).getMenuName());
+                            page.getRecords().get(i).setCategoryName(list.get(j).getCategoryName());
                         }
                     }
                 }

+ 80 - 30
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/HceCategoryServiceImpl.java

@@ -1,23 +1,20 @@
 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.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.usky.common.core.exception.BusinessException;
+import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.domain.HceArticle;
 import com.usky.system.domain.HceCategory;
 import com.usky.system.domain.SysUser;
 import com.usky.system.mapper.HceArticleMapper;
 import com.usky.system.mapper.HceCategoryMapper;
-import com.usky.system.service.HceArticleService;
 import com.usky.system.service.HceCategoryService;
-import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.system.service.ISysUserService;
 import com.usky.system.service.vo.HceCategoryListVO;
 import com.usky.system.service.vo.HceCategoryVO;
-import org.apache.tomcat.jni.Local;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -47,17 +44,56 @@ public class HceCategoryServiceImpl extends AbstractCrudService<HceCategoryMappe
         long userId = SecurityUtils.getUserId();
         SysUser sysUser = userService.selectUserByIdOne(userId);
         List<HceCategoryListVO> list = new ArrayList<>();
-        if(("00").equals(sysUser.getUserType())){
-            if (1L == userId)
-            {
-                list = baseMapper.selectMenuTreeAll(hceCategoryVO.getCategoryName(),hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
-            }
-            else
-            {
-                list = baseMapper.selectMenuTreeByUserId(hceCategoryVO.getCategoryName(),hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime(),userId);
+        List<Integer> categoryIdList = new ArrayList<>();
+        if(StringUtils.isNotBlank(hceCategoryVO.getCategoryName())){
+            LambdaQueryWrapper<HceCategory> queryWrapper = Wrappers.lambdaQuery();
+            queryWrapper.like(HceCategory::getCategoryName, hceCategoryVO.getCategoryName());
+            List<HceCategory> list1 = this.list(queryWrapper);
+            if(list1.size() > 0){
+                for (int i = 0; i < list1.size(); i++) {
+                    categoryIdList.add(list1.get(i).getId());
+                }
+                if(("00").equals(sysUser.getUserType())){
+                    if (1L == userId)
+                    {
+                        list = baseMapper.selectMenuTreeAll(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
+                    }
+                    else
+                    {
+                        list = baseMapper.selectMenuTreeByUserId(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime(),userId);
+                    }
+                }else{
+                    if (1L == userId)
+                    {
+                        list = baseMapper.selectMenuTreeAll(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
+                    }
+                    else
+                    {
+                        list = baseMapper.selectMenuTreeByUserIdOne(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime(),SecurityUtils.getTenantId());
+                    }
+
+                }
             }
         }else{
-            list = baseMapper.selectMenuTreeByUserIdOne(hceCategoryVO.getCategoryName(),hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime(),SecurityUtils.getTenantId());
+            if(("00").equals(sysUser.getUserType())){
+                if (1L == userId)
+                {
+                    list = baseMapper.selectMenuTreeAll(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
+                }
+                else
+                {
+                    list = baseMapper.selectMenuTreeByUserId(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime(),userId);
+                }
+            }else{
+                if (1L == userId)
+                {
+                    list = baseMapper.selectMenuTreeAll(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
+                }
+                else
+                {
+                    list = baseMapper.selectMenuTreeByUserIdOne(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime(),SecurityUtils.getTenantId());
+                }
+            }
         }
 
         List<HceCategoryListVO> finalList = list;
@@ -72,7 +108,21 @@ public class HceCategoryServiceImpl extends AbstractCrudService<HceCategoryMappe
 
     @Override
     public List<HceCategoryListVO> pageWhite(HceCategoryVO hceCategoryVO){
-        List<HceCategoryListVO> list = baseMapper.selectMenuTreeAll(hceCategoryVO.getCategoryName(),hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
+        List<HceCategoryListVO> list = new ArrayList<>();
+        List<Integer> categoryIdList = new ArrayList<>();
+        if(StringUtils.isNotBlank(hceCategoryVO.getCategoryName())){
+            LambdaQueryWrapper<HceCategory> queryWrapper = Wrappers.lambdaQuery();
+            queryWrapper.like(HceCategory::getCategoryName, hceCategoryVO.getCategoryName());
+            List<HceCategory> list2 = this.list(queryWrapper);
+            if(list2.size() > 0){
+                for (int i = 0; i < list2.size(); i++) {
+                    categoryIdList.add(list2.get(i).getId());
+                }
+                list = baseMapper.selectMenuTreeAll(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
+            }
+        }else{
+            list = baseMapper.selectMenuTreeAll(categoryIdList,hceCategoryVO.getStartTime(),hceCategoryVO.getEndTime());
+        }
 
         List<HceCategoryListVO> finalList = list;
         List<HceCategoryListVO> list1 = list.stream().filter(s ->s.getParentId() == 0).map(
@@ -109,15 +159,15 @@ public class HceCategoryServiceImpl extends AbstractCrudService<HceCategoryMappe
         }
 
         //新增栏目时校验对应上级栏目是否存在,不存在要先新增上级栏目后再新增本栏目
-        Integer pid = baseMapper.selectPidByMenuid(hceCategory.getMenuId());
-        if(pid != null && pid != 0){
-            LambdaQueryWrapper<HceCategory> queryWrapper2 = Wrappers.lambdaQuery();
-            queryWrapper2.eq(HceCategory::getMenuId,pid);
-            List<HceCategory> list2 = this.list(queryWrapper2);
-            if(list2.size() <= 0){
-                throw new BusinessException("上级栏目不存在,请先添加上级栏目");
-            }
-        }
+//        Integer pid = baseMapper.selectPidByMenuid(hceCategory.getMenuId());
+//        if(pid != null && pid != 0){
+//            LambdaQueryWrapper<HceCategory> queryWrapper2 = Wrappers.lambdaQuery();
+//            queryWrapper2.eq(HceCategory::getMenuId,pid);
+//            List<HceCategory> list2 = this.list(queryWrapper2);
+//            if(list2.size() <= 0){
+//                throw new BusinessException("上级栏目不存在,请先添加上级栏目");
+//            }
+//        }
 
         hceCategory.setCreatedate(LocalDateTime.now());
         this.save(hceCategory);
@@ -152,13 +202,13 @@ public class HceCategoryServiceImpl extends AbstractCrudService<HceCategoryMappe
         if(list.size() > 0){
             throw new BusinessException("该栏目存在栏目内容不可删除");
         }
-        LambdaQueryWrapper<HceCategory> queryWrapper1 = Wrappers.lambdaQuery();
-        queryWrapper1.eq(HceCategory::getPid,id)
-                .eq(HceCategory::getStatus,1);
-        List<HceCategory> list1 = this.list(queryWrapper1);
-        if(list1.size()>0){
-            throw new BusinessException("该栏目存在子栏目不可删除");
-        }
+//        LambdaQueryWrapper<HceCategory> queryWrapper1 = Wrappers.lambdaQuery();
+//        queryWrapper1.eq(HceCategory::getPid,id)
+//                .eq(HceCategory::getStatus,1);
+//        List<HceCategory> list1 = this.list(queryWrapper1);
+//        if(list1.size()>0){
+//            throw new BusinessException("该栏目存在子栏目不可删除");
+//        }
         this.removeById(id);
 
     }

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

@@ -226,6 +226,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
             router.setName(getRouteName(menu));
             router.setPath(getRouterPath(menu));
             router.setComponent(getComponent(menu));
+            router.setOrderNum(menu.getOrderNum());
             router.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
             List<SysMenu> cMenus = menu.getChildren();
             if (!cMenus.isEmpty() && cMenus.size() > 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType())) {
@@ -239,6 +240,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                 children.setPath(menu.getPath());
                 children.setComponent(menu.getComponent());
                 children.setName(StringUtils.capitalize(menu.getPath()));
+                children.setOrderNum(menu.getOrderNum());
                 children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                 childrenList.add(children);
                 router.setChildren(childrenList);
@@ -251,6 +253,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                 children.setPath(routerPath);
                 children.setComponent(UserConstants.INNER_LINK);
                 children.setName(StringUtils.capitalize(routerPath));
+                children.setOrderNum(menu.getOrderNum());
                 children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                 childrenList.add(children);
                 router.setChildren(childrenList);
@@ -278,6 +281,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                     platformRouterVo.setPlatformId(platformVo.getId());
                     platformRouterVo.setPlatformName(platformVo.getPlatformName());
                     platformRouterVo.setIcon(platformVo.getIcon());
+                    platformRouterVo.setOrderNum(platformVo.getOrderNum());
                     List<SysMenu> menus1 = this.selectMenuTreeByUserIdOne1(tenantId,
                             platformVo.getId());
                     List<RouterVo> routers = new LinkedList<RouterVo>();
@@ -287,6 +291,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                         router.setName(getRouteName(menu));
                         router.setPath(getRouterPath(menu));
                         router.setComponent(getComponent(menu));
+                        router.setOrderNum(menu.getOrderNum());
                         router.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                         List<SysMenu> cMenus = menu.getChildren();
                         if (!cMenus.isEmpty() && UserConstants.TYPE_DIR.equals(menu.getMenuType())) {
@@ -300,6 +305,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                             children.setPath(menu.getPath());
                             children.setComponent(menu.getComponent());
                             children.setName(StringUtils.capitalize(menu.getPath()));
+                            children.setOrderNum(menu.getOrderNum());
                             children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                             childrenList.add(children);
                             router.setChildren(childrenList);
@@ -312,6 +318,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                             children.setPath(routerPath);
                             children.setComponent(UserConstants.INNER_LINK);
                             children.setName(StringUtils.capitalize(routerPath));
+                            children.setOrderNum(menu.getOrderNum());
                             children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                             childrenList.add(children);
                             router.setChildren(childrenList);
@@ -339,6 +346,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                         platformRouterVo.setPlatformId(platformVo.getId());
                         platformRouterVo.setPlatformName(platformVo.getPlatformName());
                         platformRouterVo.setIcon(platformVo.getIcon());
+                        platformRouterVo.setOrderNum(platformVo.getOrderNum());
                         List<SysMenu> menus1 = this.selectMenuTreeByUserId1(userId,
                                 platformVo.getId().longValue(), tenantId);
                         List<RouterVo> routers = new LinkedList<RouterVo>();
@@ -348,6 +356,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                             router.setName(getRouteName(menu));
                             router.setPath(getRouterPath(menu));
                             router.setComponent(getComponent(menu));
+                            router.setOrderNum(menu.getOrderNum());
                             router.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                             List<SysMenu> cMenus = menu.getChildren();
                             if (!cMenus.isEmpty() && cMenus.size() > 0 && UserConstants.TYPE_DIR.equals(menu.getMenuType())) {
@@ -361,6 +370,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                                 children.setPath(menu.getPath());
                                 children.setComponent(menu.getComponent());
                                 children.setName(StringUtils.capitalize(menu.getPath()));
+                                children.setOrderNum(menu.getOrderNum());
                                 children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), StringUtils.equals("1", menu.getIsCache()), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                                 childrenList.add(children);
                                 router.setChildren(childrenList);
@@ -373,6 +383,7 @@ public class SysMenuServiceImpl extends AbstractCrudService<SysMenuMapper, SysMe
                                 children.setPath(routerPath);
                                 children.setComponent(UserConstants.INNER_LINK);
                                 children.setName(StringUtils.capitalize(routerPath));
+                                children.setOrderNum(menu.getOrderNum());
                                 children.setMeta(new MetaVo(menu.getMenuName(), menu.getMenuAliasName(), menu.getIcon(), menu.getPath(), menu.getIsFrame(), menu.getIsNew(), menu.getRemark()));
                                 childrenList.add(children);
                                 router.setChildren(childrenList);

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

@@ -98,6 +98,7 @@ public class SysPlatformServiceImpl extends AbstractCrudService<SysPlatformMappe
         SysPlatform sysPlatform = new SysPlatform();
         sysPlatform.setPlatformName(platformMenuVo.getPlatformName());
         sysPlatform.setIcon(platformMenuVo.getIcon());
+        sysPlatform.setOrderNum(platformMenuVo.getOrderNum());
         if (platformMenuVo.getPlatformId().intValue() == 0) {
             sysPlatform.setCreateBy(SecurityUtils.getUsername());
             sysPlatform.setCreateTime(LocalDateTime.now());

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

@@ -1,29 +1,29 @@
 package com.usky.system.service.impl;
 
+import cn.hutool.core.date.DateTime;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.usky.common.core.bean.CommonPage;
 import com.usky.common.core.exception.BusinessException;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.common.security.utils.SecurityUtils;
 import com.usky.system.domain.SysDept;
+import com.usky.system.domain.SysRole;
 import com.usky.system.domain.SysTenant;
-import com.usky.system.domain.SysUser;
 import com.usky.system.domain.SysUserTenant;
 import com.usky.system.mapper.SysTenantMapper;
 import com.usky.system.mapper.SysUserTenantMapper;
 import com.usky.system.service.ISysDeptService;
+import com.usky.system.service.ISysRoleService;
 import com.usky.system.service.SysTenantPlatformService;
 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 com.usky.system.service.vo.TenantPlatformVo;
-import io.swagger.models.auth.In;
-import org.apache.ibatis.annotations.Select;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.time.LocalDateTime;
-import java.util.Arrays;
 import java.util.List;
 import java.util.UUID;
 
@@ -46,6 +46,8 @@ public class SysTenantServiceImpl extends AbstractCrudService<SysTenantMapper, S
     private SysTenantMapper sysTenantMapper;
     @Autowired
     private SysTenantPlatformService sysTenantPlatformService;
+    @Autowired
+    private ISysRoleService roleService;
 
     @Override
     public List<SysTenantVo> getUserData() {
@@ -165,6 +167,27 @@ public class SysTenantServiceImpl extends AbstractCrudService<SysTenantMapper, S
         //克隆应用授权和权限配置
         sysTenantMapper.cloneSysTenantPlatform(originalTenantId,tenantId);
         sysTenantMapper.cloneSysMobileTenantMenu(originalTenantId,tenantId);
+        //克隆用户角色和租户用户角色
+        //sys_role
+        SysRole role = new SysRole();
+        long originalRoleId = SecurityUtils.getLoginUser().getSysUser().getRoles().get(0).getRoleId();
+        LambdaQueryWrapper<SysRole> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.select(SysRole::getRoleName,SysRole::getRoleKey,SysRole::getRoleSort,SysRole::getDataScope,SysRole::getStatus).eq(SysRole::getRoleId, originalRoleId);
+        SysRole one = roleService.getOne(queryWrapper);
+        role.setRoleName(one.getRoleName());
+        role.setRoleKey(one.getRoleKey());
+        role.setRoleSort(one.getRoleSort());
+        role.setDataScope(one.getDataScope());
+        role.setStatus(one.getStatus());
+        role.setCreateBy(SecurityUtils.getUsername());
+        role.setCreateTime(DateTime.now());
+        role.setTenantId(tenantId);
+        roleService.insertRole(role);
+        long roleId = role.getRoleId();
+        //sys_role_menu
+        sysTenantMapper.cloneSysRoleMenu(originalRoleId,roleId);
+        //sys_user_role
+        sysTenantMapper.insertSysUserRole(SecurityUtils.getUserId(),roleId,tenantId);
 
         //更新默认应用
         TenantPlatformVo tenantPlatformVo = new TenantPlatformVo();
@@ -186,6 +209,14 @@ public class SysTenantServiceImpl extends AbstractCrudService<SysTenantMapper, S
         sysTenantMapper.delSysMobileBanner(tenantId);
         sysTenantMapper.delSysMobileTenantConfig(tenantId);
         sysTenantMapper.delSysMobileTenantMenu(tenantId);
+
+        LambdaQueryWrapper<SysRole> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.select(SysRole::getRoleId).eq(SysRole::getTenantId, tenantId);
+        SysRole one = roleService.getOne(queryWrapper);
+        long roleId = one.getRoleId();
+        sysTenantMapper.delSysRoleMenu(roleId);
+        sysTenantMapper.delSysRole(tenantId);
+        sysTenantMapper.delSysUserRole(tenantId);
     }
 
     @Override

+ 10 - 2
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/HceCategoryListVO.java

@@ -1,7 +1,5 @@
 package com.usky.system.service.vo;
 
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.usky.system.domain.HceCategory;
 import lombok.Data;
 
 import java.time.LocalDateTime;
@@ -51,6 +49,16 @@ public class HceCategoryListVO {
      */
     private Integer categoryId;
 
+    /**
+     * 栏目名称
+     */
+    private String categoryName;
+
+    /**
+     * 栏目排序
+     */
+    private Integer sortindex;
+
     /**
      * 栏目图片;
      */

+ 5 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/PlatformMenuVo.java

@@ -36,6 +36,11 @@ public class PlatformMenuVo implements Serializable {
      */
     private String icon;
 
+    /**
+     * 显示顺序
+     */
+    private Integer orderNum;
+
     /**
      * 菜单ID
      */

+ 5 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/PlatformRouterVo.java

@@ -34,6 +34,11 @@ public class PlatformRouterVo {
      */
     private String icon;
 
+    /**
+     * 显示顺序
+     */
+    private Integer orderNum;
+
     /**
      * 路由集合
      */

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

@@ -42,6 +42,9 @@ public class RouterVo
      */
     private Boolean alwaysShow;
 
+    /** 显示顺序 */
+    private String orderNum;
+
     /**
      * 其他元素
      */
@@ -112,6 +115,10 @@ public class RouterVo
         this.alwaysShow = alwaysShow;
     }
 
+    public String getOrderNum() { return orderNum; }
+
+    public void setOrderNum(String orderNum) { this.orderNum = orderNum; }
+
     public MetaVo getMeta()
     {
         return meta;

+ 5 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysPlatformVo.java

@@ -51,6 +51,11 @@ public class SysPlatformVo implements Serializable {
      */
     private String icon;
 
+    /**
+     * 显示顺序
+     */
+    private Integer orderNum;
+
     /**
      * 创建者
      */

+ 25 - 9
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/HceCategoryMapper.xml

@@ -28,6 +28,8 @@
                         m.is_frame as isFrame,
                         m.is_cache as isCache,
                         h.id as categoryId,
+                        h.category_name as categoryName,
+                        h.sortindex as sortindex,
                         h.imagePath as imagePath,
                         h.createdate as createdate,
                         h.modifydate as modifydate,
@@ -39,13 +41,16 @@
         where m.menu_type in ('M', 'C')
           and m.visible = 0
           and m.status = 0
-          <if test="categoryName != null">
-              and m.menu_name = #{categoryName}
+          <if test="categoryIdList != null and categoryIdList.size() > 0 ">
+              and h.id in
+              <foreach collection="categoryIdList" item="categoryId" index="index" open="(" close=")" separator=",">
+                  #{categoryId}
+              </foreach>
           </if>
           <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
               and h.createdate between #{startTime} and #{endTime}
           </if>
-        order by m.parent_id, m.order_num
+        order by m.parent_id, h.sortindex
     </select>
     <select id="selectMenuTreeByUserId" resultType="com.usky.system.service.vo.HceCategoryListVO">
         select distinct m.menu_id as menuId,
@@ -56,6 +61,8 @@
                         m.is_frame as isFrame,
                         m.is_cache as isCache,
                         h.id as categoryId,
+                        h.category_name as categoryName,
+                        h.sortindex as sortindex,
                         h.imagePath as imagePath,
                         h.createdate as createdate,
                         h.modifydate as modifydate,
@@ -72,13 +79,16 @@
           and m.visible = 0
           and m.status = 0
           AND ro.status = 0
-        <if test="categoryName != null">
-            and m.menu_name = #{categoryName}
+        <if test="categoryIdList != null and categoryIdList.size() > 0 ">
+            and h.id in
+            <foreach collection="categoryIdList" item="categoryId" index="index" open="(" close=")" separator=",">
+                #{categoryId}
+            </foreach>
         </if>
         <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
             and h.createdate between #{startTime} and #{endTime}
         </if>
-        order by m.parent_id, m.order_num
+        order by m.parent_id, h.sortindex
     </select>
     <select id="selectMenuTreeByUserIdOne" resultType="com.usky.system.service.vo.HceCategoryListVO">
         SELECT
@@ -90,6 +100,8 @@
                     m.is_frame as isFrame,
                     m.is_cache as isCache,
                     h.id as categoryId,
+                    h.category_name as categoryName,
+                    h.sortindex as sortindex,
                     h.imagePath as imagePath,
                     h.createdate as createdate,
                     h.modifydate as modifydate,
@@ -103,13 +115,16 @@
           and m.visible = 0
           and m.status = 0
           AND t.tenant_id=#{tenantId}
-        <if test="categoryName != null">
-            and m.menu_name = #{categoryName}
+        <if test="categoryIdList != null and categoryIdList.size() > 0 ">
+            and h.id in
+            <foreach collection="categoryIdList" item="categoryId" index="index" open="(" close=")" separator=",">
+                #{categoryId}
+            </foreach>
         </if>
         <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
             and h.createdate between #{startTime} and #{endTime}
         </if>
-        ORDER BY m.parent_id, m.order_num
+        ORDER BY m.parent_id, h.sortindex
     </select>
     <select id="getMenuNameList" resultType="com.usky.system.domain.HceCategory">
         SELECT
@@ -120,6 +135,7 @@
                     m.is_frame as isFrame,
                     m.is_cache as isCache,
                     h.id as id,
+                    h.category_name as categoryName,
                     h.imagePath as imagePath,
                     h.createdate as createdate,
                     h.modifydate as modifydate,

+ 1 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysPlatformMapper.xml

@@ -9,6 +9,7 @@
         <result column="status" property="status" />
         <result column="remark" property="remark" />
         <result column="icon" property="icon" />
+        <result column="order_num" property="orderNum" />
         <result column="create_by" property="createBy" />
         <result column="create_time" property="createTime" />
         <result column="update_by" property="updateBy" />

+ 21 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysTenantMapper.xml

@@ -147,6 +147,18 @@
             tenant_id = #{originalTenantId}
         </where>
     </insert>
+    <insert id="cloneSysRoleMenu">
+        insert into sys_role_menu (role_id,menu_id,menu_alias_name)
+        select  #{roleId},menu_id,menu_alias_name
+        from sys_role_menu
+        <where>
+            role_id = #{originalRoleId}
+        </where>
+    </insert>
+    <insert id="insertSysUserRole">
+        insert into sys_user_role (user_id,role_id,tenant_id)
+        values(#{UserId},#{roleId},#{tenantId})
+    </insert>
 
     <delete id="delSysTenant">
         delete from sys_tenant WHERE id = #{tenantId}
@@ -178,5 +190,14 @@
     <delete id="delSysMobileTenantMenu">
         delete from sys_mobile_tenant_menu where tenant_id = #{tenantId}
     </delete>
+    <delete id="delSysRoleMenu">
+        delete from sys_role_menu where role_id = #{roleId}
+    </delete>
+    <delete id="delSysRole">
+        delete from sys_role where tenant_id = #{tenantId}
+    </delete>
+    <delete id="delSysUserRole">
+        delete from sys_user_role where tenant_id = #{tenantId}
+    </delete>
 
 </mapper>