Browse Source

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

hanzhengyi 8 months ago
parent
commit
404b49961c
14 changed files with 346 additions and 0 deletions
  1. 51 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/controller/web/SysTenantPlatformController.java
  2. 5 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysPlatform.java
  3. 37 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/domain/SysTenantPlatform.java
  4. 18 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/mapper/SysTenantPlatformMapper.java
  5. 2 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysPlatformService.java
  6. 23 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantPlatformService.java
  7. 6 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysPlatformServiceImpl.java
  8. 100 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysTenantPlatformServiceImpl.java
  9. 2 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/impl/SysUserServiceImpl.java
  10. 5 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/SysPlatformVo.java
  11. 47 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/TenantPlatformListVo.java
  12. 38 0
      base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/vo/TenantPlatformVo.java
  13. 1 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysPlatformMapper.xml
  14. 11 0
      base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysTenantPlatformMapper.xml

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

@@ -0,0 +1,51 @@
+package com.usky.system.controller.web;
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.system.domain.SysTenantConfig;
+import com.usky.system.domain.SysTenantPlatform;
+import com.usky.system.service.SysPlatformService;
+import com.usky.system.service.SysTenantPlatformService;
+import com.usky.system.service.vo.TenantPlatformListVo;
+import com.usky.system.service.vo.TenantPlatformVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 租户和应用关联表
+ *
+ * @author han
+ * @since 2024-08-14
+ */
+@RestController
+@RequestMapping("/sysTenantPlatform")
+public class SysTenantPlatformController {
+
+    @Autowired
+    private SysTenantPlatformService sysTenantPlatformService;
+
+    /**
+     * PC租户管理-应用编辑
+     *
+     * @param tenantPlatformVo
+     * @return
+     */
+//    @Log(title = "平台挂管理", businessType = BusinessType.INSERT)
+    @PostMapping("updateTenantPlatform")
+    public ApiResult<Void> updateTenantPlatform(@RequestBody TenantPlatformVo tenantPlatformVo) {
+        sysTenantPlatformService.updateTenantPlatform(tenantPlatformVo);
+        return ApiResult.success();
+    }
+
+    /**
+     * 租户应用关联查询
+     *
+     * @param tenantId 租户ID
+     * @return
+     */
+    @GetMapping("/getTenantPlatformList")
+    public ApiResult<List<TenantPlatformListVo>> getTenantPlatformList(@RequestParam Integer tenantId) {
+        return ApiResult.success(sysTenantPlatformService.getTenantPlatformList(tenantId));
+    }
+}

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

@@ -46,6 +46,11 @@ public class SysPlatform implements Serializable {
      */
     private String remark;
 
+    /**
+     * 应用图标
+     */
+    private String icon;
+
     /**
      * 创建者
      */

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

@@ -0,0 +1,37 @@
+package com.usky.system.domain;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户和应用关联表
+ * </p>
+ *
+ * @author han
+ * @since 2024-08-14
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysTenantPlatform  implements Serializable {
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 应用ID
+     */
+    private Integer platformId;
+
+    /**
+     * 是否为默认应用(默认0; 0:否,1:是)
+     */
+    private Integer isDefault;
+}

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

@@ -0,0 +1,18 @@
+package com.usky.system.mapper;
+
+import com.usky.common.mybatis.core.CrudMapper;
+import com.usky.system.domain.SysTenantMenu;
+import com.usky.system.domain.SysTenantPlatform;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ * 租户和应用关联表 Mapper 接口
+ * </p>
+ *
+ * @author han
+ * @since 2024-8-14
+ */
+@Repository
+public interface SysTenantPlatformMapper extends CrudMapper<SysTenantPlatform> {
+}

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

@@ -30,4 +30,6 @@ public interface SysPlatformService extends CrudService<SysPlatform> {
     void updatePlatformMenu(PlatformMenuVo platformMenuVo);
 
     void updateMobilePlatformMenu(MobilePlatformMenuVO mobilePlatformMenuV0);
+
+    List<SysPlatformVo> getPlatformAllList();
 }

+ 23 - 0
base-modules/service-system/service-system-biz/src/main/java/com/usky/system/service/SysTenantPlatformService.java

@@ -0,0 +1,23 @@
+package com.usky.system.service;
+
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.system.domain.SysTenantPlatform;
+import com.usky.system.service.vo.TenantPlatformListVo;
+import com.usky.system.service.vo.TenantPlatformVo;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 租户和应用关联表 服务类
+ * </p>
+ *
+ * @author han
+ * @since 2024-08-14
+ */
+public interface SysTenantPlatformService extends CrudService<SysTenantPlatform> {
+
+    void updateTenantPlatform(TenantPlatformVo tenantPlatformVo);
+
+    List<TenantPlatformListVo> getTenantPlatformList(Integer tenantId);
+}

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

@@ -254,4 +254,10 @@ public class SysPlatformServiceImpl extends AbstractCrudService<SysPlatformMappe
         }
         return arr3;
     }
+
+    @Override
+    public List<SysPlatformVo> getPlatformAllList() {
+        List<SysPlatformVo> list1 = baseMapper.getPlatformList(null, null, null, null, null, null);
+        return list1;
+    }
 }

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

@@ -0,0 +1,100 @@
+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.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.system.domain.SysTenantConfig;
+import com.usky.system.domain.SysTenantPlatform;
+import com.usky.system.mapper.SysTenantPlatformMapper;
+import com.usky.system.service.SysPlatformService;
+import com.usky.system.service.SysTenantPlatformService;
+import com.usky.system.service.vo.SysPlatformVo;
+import com.usky.system.service.vo.TenantPlatformListVo;
+import com.usky.system.service.vo.TenantPlatformVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ * 租户和应用关联表 服务实现类
+ * </p>
+ *
+ * @author han
+ * @since 2024-08-14
+ */
+@Service
+public class SysTenantPlatformServiceImpl extends AbstractCrudService<SysTenantPlatformMapper, SysTenantPlatform> implements SysTenantPlatformService {
+
+    @Autowired
+    private SysPlatformService sysPlatformService;
+
+    @Override
+    @Transactional
+    public void updateTenantPlatform(TenantPlatformVo tenantPlatformVo) {
+        Integer[] arr = tenantPlatformVo.getPlatformIds();
+        if (tenantPlatformVo.getRequestId().equals(0)){
+            SysTenantPlatform sysTenantPlatform = new SysTenantPlatform();
+            sysTenantPlatform.setTenantId(tenantPlatformVo.getTenantId());
+            sysTenantPlatform.setPlatformId(arr[0]);
+            sysTenantPlatform.setIsDefault(1);
+            this.save(sysTenantPlatform);
+        }else {
+            LambdaQueryWrapper<SysTenantPlatform> queryWrapper = Wrappers.lambdaQuery();
+            queryWrapper.eq(SysTenantPlatform::getTenantId,tenantPlatformVo.getTenantId())
+                    .ne(SysTenantPlatform::getIsDefault,1);
+            this.remove(queryWrapper);
+            LambdaQueryWrapper<SysTenantPlatform> queryWrapper1 = Wrappers.lambdaQuery();
+            queryWrapper1.eq(SysTenantPlatform::getTenantId,tenantPlatformVo.getTenantId())
+                    .eq(SysTenantPlatform::getIsDefault,1);
+            List<SysTenantPlatform> list = this.list(queryWrapper1);
+            if (list.size()<=0){
+                throw new BusinessException("不允许操作超级管理员用户");
+            }
+            for (int i = 0; i < arr.length; i++){
+                if (!arr[i].equals(list.get(0).getPlatformId())){
+                    SysTenantPlatform sysTenantPlatform1 = new SysTenantPlatform();
+                    sysTenantPlatform1.setPlatformId(arr[i]);
+                    sysTenantPlatform1.setTenantId(tenantPlatformVo.getTenantId());
+                    sysTenantPlatform1.setIsDefault(0);
+                    this.save(sysTenantPlatform1);
+                }
+            }
+        }
+    }
+
+    @Override
+    public List<TenantPlatformListVo> getTenantPlatformList(Integer tenantId) {
+        List<TenantPlatformListVo> list2 = new ArrayList<>();;
+        LambdaQueryWrapper<SysTenantPlatform> queryWrapper1 = Wrappers.lambdaQuery();
+        queryWrapper1.eq(SysTenantPlatform::getTenantId,tenantId);
+        List<SysTenantPlatform> list = this.list(queryWrapper1);
+        List<SysPlatformVo> list1 = sysPlatformService.getPlatformAllList();
+        if(CollectionUtils.isNotEmpty(list1)){
+            for(int i=0;i<list1.size();i++){
+                TenantPlatformListVo tenantPlatformListVo = new TenantPlatformListVo();
+                tenantPlatformListVo.setPlatformName(list1.get(i).getPlatformName());
+                tenantPlatformListVo.setPlatformId(list1.get(i).getId());
+                tenantPlatformListVo.setIcon(list1.get(i).getIcon());
+                tenantPlatformListVo.setIsDefault(0);
+                tenantPlatformListVo.setIsSelected(0);
+                if(CollectionUtils.isNotEmpty(list)){
+                    for(int j=0;j<list.size();j++){
+                        if (list1.get(i).getId().equals(list.get(j).getPlatformId())){
+                            tenantPlatformListVo.setIsDefault(list.get(j).getIsDefault());
+                            tenantPlatformListVo.setIsSelected(1);
+                        }
+                    }
+                }
+                list2.add(tenantPlatformListVo);
+            }
+        }
+        return list2;
+    }
+}

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

@@ -1,6 +1,7 @@
 package com.usky.system.service.impl;
 
 
+import com.ruoyi.common.datascope.annotation.DataScope;
 import com.usky.common.core.constants.Constants;
 import com.usky.common.security.utils.SecurityUtils;
 import com.usky.common.core.bean.CommonPage;
@@ -66,6 +67,7 @@ public class SysUserServiceImpl extends AbstractCrudService<SysUserMapper, SysUs
      * @return 用户信息集合信息
      */
     @Override
+    @DataScope(deptAlias = "u")
     public List<SysUser> selectUserList(SysUser user) {
         user.setTenantId(SecurityUtils.getTenantId());
         user.setUserType("00");

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

@@ -46,6 +46,11 @@ public class SysPlatformVo implements Serializable {
      */
     private String remark;
 
+    /**
+     * 应用图标
+     */
+    private String icon;
+
     /**
      * 创建者
      */

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

@@ -0,0 +1,47 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户和应用关联表
+ * </p>
+ *
+ * @author han
+ * @since 2024-08-14
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class TenantPlatformListVo implements Serializable {
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 应用ID
+     */
+    private Integer platformId;
+
+    /**
+     * 应用名称
+     */
+    private String platformName;
+
+    /**
+     * 是否为选中状态
+     */
+    private Integer isSelected;
+
+    /**
+     * 应用图标
+     */
+    private String icon;
+
+    /**
+     * 是否为默认应用
+     */
+    private Integer isDefault;
+}

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

@@ -0,0 +1,38 @@
+package com.usky.system.service.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 租户和应用关联表
+ * </p>
+ *
+ * @author han
+ * @since 2024-08-14
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class TenantPlatformVo implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+    /**
+     * 请求标识
+     */
+    private Integer requestId;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 应用ID
+     */
+    private Integer[] platformIds;
+}

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

@@ -8,6 +8,7 @@
         <result column="platform_name" property="platformName" />
         <result column="status" property="status" />
         <result column="remark" property="remark" />
+        <result column="icon" property="icon" />
         <result column="create_by" property="createBy" />
         <result column="create_time" property="createTime" />
         <result column="update_by" property="updateBy" />

+ 11 - 0
base-modules/service-system/service-system-biz/src/main/resources/mapper/system/SysTenantPlatformMapper.xml

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.usky.system.mapper.SysTenantPlatformMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.usky.system.domain.SysTenantPlatform">
+        <id column="tenant_id" property="tenantId" />
+        <result column="platform_id" property="platformId" />
+        <result column="is_default" property="isDefault" />
+    </resultMap>
+</mapper>