From c29fa2fa1f65557bd7b22373db4d53d97ee0612b Mon Sep 17 00:00:00 2001
From: Liu Wu <2780205363@qq.com>
Date: Mon, 23 Sep 2024 19:00:10 +0800
Subject: [PATCH 1/4] =?UTF-8?q?=E8=BD=A6=E8=BE=86=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/muyu/auth/form/LoginBody.java | 1 +
cloud-common/cloud-common-saas/pom.xml | 4 ++++
.../many/datasource/ManyDataSource.java | 19 ++++---------------
cloud-modules/cloud-modules-car/pom.xml | 8 ++++----
.../java/com/muyu/CarSystemApplication.java | 9 ++++++++-
cloud-modules/cloud-modules-fence/pom.xml | 4 ++++
.../java/com/muyu/fence/FenceApplication.java | 9 ++++++++-
cloud-modules/cloud-modules-system/pom.xml | 1 +
.../system/controller/SysRoleController.java | 3 ++-
.../system/controller/SysUserController.java | 2 +-
cloud-modules/cloud-modules-warn/pom.xml | 4 ++++
.../java/com/muyu/WarnCarApplication.java | 1 +
12 files changed, 42 insertions(+), 23 deletions(-)
diff --git a/cloud-auth/src/main/java/com/muyu/auth/form/LoginBody.java b/cloud-auth/src/main/java/com/muyu/auth/form/LoginBody.java
index 999ad44..354122e 100644
--- a/cloud-auth/src/main/java/com/muyu/auth/form/LoginBody.java
+++ b/cloud-auth/src/main/java/com/muyu/auth/form/LoginBody.java
@@ -16,6 +16,7 @@ public class LoginBody {
*/
private String password;
+
public String getUsername () {
return username;
}
diff --git a/cloud-common/cloud-common-saas/pom.xml b/cloud-common/cloud-common-saas/pom.xml
index 60b4041..41b57fd 100644
--- a/cloud-common/cloud-common-saas/pom.xml
+++ b/cloud-common/cloud-common-saas/pom.xml
@@ -29,6 +29,10 @@
com.muyu
cloud-common-security
+
+
+
+
diff --git a/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
index 39f7683..dbbbabb 100644
--- a/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
+++ b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
@@ -1,34 +1,26 @@
package com.muyu.cloud.common.many.datasource;
-import cn.hutool.json.JSONObject;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.autoconfigure.MybatisPlusAutoConfiguration;
import com.muyu.cloud.common.many.datasource.constents.DatasourceContent;
-import com.muyu.cloud.common.saas.domain.model.EntInfo;
-import com.muyu.cloud.common.many.datasource.factory.DruidDataSourceFactory;
import com.muyu.cloud.common.many.datasource.domain.model.DataSourceInfo;
+import com.muyu.cloud.common.many.datasource.factory.DruidDataSourceFactory;
import com.muyu.cloud.common.many.datasource.role.DynamicDataSource;
+import com.muyu.cloud.common.saas.domain.model.EntInfo;
import com.muyu.cloud.common.saas.exception.SaaSException;
import com.muyu.common.core.domain.Result;
import com.muyu.common.core.utils.SpringUtils;
-import com.muyu.common.core.web.page.TableDataInfo;
-import com.muyu.common.system.domain.SysFirmUser;
import com.muyu.common.system.domain.SysUser;
import com.muyu.common.system.remote.RemoteUserService;
import lombok.extern.log4j.Log4j2;
-import org.apache.ibatis.session.SqlSessionFactory;
-import org.mybatis.spring.SqlSessionFactoryBean;
-import org.springframework.beans.factory.InitializingBean;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Component;
-import javax.annotation.PostConstruct;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -42,10 +34,8 @@ import java.util.Map;
*/
@Log4j2
@Component
-@AutoConfiguration(before = MybatisPlusAutoConfiguration.class)
+@AutoConfiguration(before = {MybatisPlusAutoConfiguration.class, MybatisAutoConfiguration.class})
public class ManyDataSource implements ApplicationRunner{
-
-
private List dataSourceInfoList(){
RemoteUserService remoteUserService = SpringUtils.getBean(RemoteUserService.class);
Result> tableDataInfoResult = remoteUserService.companyList();
@@ -114,5 +104,4 @@ public class ManyDataSource implements ApplicationRunner{
log.info("存储数据连接池为:key:{}",dataSourceInfo.getKey());
}
}
-
}
diff --git a/cloud-modules/cloud-modules-car/pom.xml b/cloud-modules/cloud-modules-car/pom.xml
index 2bc7c34..aecbd76 100644
--- a/cloud-modules/cloud-modules-car/pom.xml
+++ b/cloud-modules/cloud-modules-car/pom.xml
@@ -80,11 +80,13 @@
cloud-common-api-doc
-
com.muyu
- cloud-common-rabbit
+ cloud-common-saas
+
+
+
@@ -104,6 +106,4 @@
-
-
diff --git a/cloud-modules/cloud-modules-car/src/main/java/com/muyu/CarSystemApplication.java b/cloud-modules/cloud-modules-car/src/main/java/com/muyu/CarSystemApplication.java
index 2594c43..7f1e7bc 100644
--- a/cloud-modules/cloud-modules-car/src/main/java/com/muyu/CarSystemApplication.java
+++ b/cloud-modules/cloud-modules-car/src/main/java/com/muyu/CarSystemApplication.java
@@ -1,11 +1,18 @@
package com.muyu;
+import com.alibaba.druid.spring.boot3.autoconfigure.DruidDataSourceAutoConfigure;
+import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.cloud.openfeign.EnableFeignClients;
-@SpringBootApplication
+@SpringBootApplication(exclude = {
+ DataSourceAutoConfiguration.class,
+ DruidDataSourceAutoConfigure.class,
+ DynamicDataSourceAutoConfiguration.class
+})
@EnableFeignClients
@MapperScan(value = "com.muyu.mapper")
public class CarSystemApplication {
diff --git a/cloud-modules/cloud-modules-fence/pom.xml b/cloud-modules/cloud-modules-fence/pom.xml
index f79d952..fcfe680 100644
--- a/cloud-modules/cloud-modules-fence/pom.xml
+++ b/cloud-modules/cloud-modules-fence/pom.xml
@@ -17,6 +17,10 @@
+
+ com.muyu
+ cloud-common-saas
+
diff --git a/cloud-modules/cloud-modules-fence/src/main/java/com/muyu/fence/FenceApplication.java b/cloud-modules/cloud-modules-fence/src/main/java/com/muyu/fence/FenceApplication.java
index 1f010ec..c2bba72 100644
--- a/cloud-modules/cloud-modules-fence/src/main/java/com/muyu/fence/FenceApplication.java
+++ b/cloud-modules/cloud-modules-fence/src/main/java/com/muyu/fence/FenceApplication.java
@@ -1,8 +1,11 @@
package com.muyu.fence;
+import com.alibaba.druid.spring.boot3.autoconfigure.DruidDataSourceAutoConfigure;
+import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration;
import com.muyu.common.security.annotation.EnableMyFeignClients;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
/**
* @Author YuPing
@@ -10,7 +13,11 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
* @Version 1.0
* @Data 2024-09-18 11:27:38
*/
-@SpringBootApplication
+@SpringBootApplication(exclude = {
+ DataSourceAutoConfiguration.class,
+ DruidDataSourceAutoConfigure.class,
+ DynamicDataSourceAutoConfiguration.class
+})
@EnableMyFeignClients
public class FenceApplication {
public static void main(String[] args) {
diff --git a/cloud-modules/cloud-modules-system/pom.xml b/cloud-modules/cloud-modules-system/pom.xml
index 8849251..4d83d4d 100644
--- a/cloud-modules/cloud-modules-system/pom.xml
+++ b/cloud-modules/cloud-modules-system/pom.xml
@@ -17,6 +17,7 @@
+
com.alibaba.cloud
diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysRoleController.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysRoleController.java
index f8b05ad..0926c41 100644
--- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysRoleController.java
+++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysRoleController.java
@@ -16,6 +16,7 @@ import com.muyu.system.domain.resp.DeptTreeResp;
import com.muyu.system.service.SysDeptService;
import com.muyu.system.service.SysRoleService;
import com.muyu.system.service.SysUserService;
+import jakarta.websocket.server.PathParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -194,7 +195,7 @@ public class SysRoleController extends BaseController {
@RequiresPermissions("system:role:edit")
@Log(title = "角色管理", businessType = BusinessType.GRANT)
@PutMapping("/authUser/selectAll")
- public Result selectAuthUserAll (Long roleId, Long[] userIds) {
+ public Result selectAuthUserAll (@RequestParam("roleId") Long roleId,@RequestParam("userIds") Long[] userIds) {
roleService.checkRoleDataScope(roleId);
return toAjax(roleService.insertAuthUsers(roleId, userIds));
}
diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java
index c42efa6..d3aa7ca 100644
--- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java
+++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java
@@ -282,7 +282,7 @@ public class SysUserController extends BaseController {
@RequiresPermissions("system:user:edit")
@Log(title = "用户管理", businessType = BusinessType.GRANT)
@PutMapping("/authRole")
- public Result insertAuthRole (Long userId, Long[] roleIds) {
+ public Result insertAuthRole (@RequestParam("userId") Long userId,@RequestParam("roleIds") Long[] roleIds) {
userService.checkUserDataScope(userId);
userService.insertUserAuth(userId, roleIds);
return success();
diff --git a/cloud-modules/cloud-modules-warn/pom.xml b/cloud-modules/cloud-modules-warn/pom.xml
index fbe5d4b..1c989a8 100644
--- a/cloud-modules/cloud-modules-warn/pom.xml
+++ b/cloud-modules/cloud-modules-warn/pom.xml
@@ -86,6 +86,10 @@
com.muyu
cloud-common-rabbit
+
+ org.springframework.boot
+ spring-boot-autoconfigure
+
diff --git a/cloud-modules/cloud-modules-warn/src/main/java/com/muyu/WarnCarApplication.java b/cloud-modules/cloud-modules-warn/src/main/java/com/muyu/WarnCarApplication.java
index f61ce30..9d92bd0 100644
--- a/cloud-modules/cloud-modules-warn/src/main/java/com/muyu/WarnCarApplication.java
+++ b/cloud-modules/cloud-modules-warn/src/main/java/com/muyu/WarnCarApplication.java
@@ -1,5 +1,6 @@
package com.muyu;
+
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
From fce189d87f7a2f571918cc22506188169a7f06ca Mon Sep 17 00:00:00 2001
From: Liu Wu <2780205363@qq.com>
Date: Mon, 23 Sep 2024 23:24:46 +0800
Subject: [PATCH 2/4] =?UTF-8?q?saas=E6=A8=A1=E5=9D=97=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/muyu/cloud/car/CarApplication.java | 25 --------
.../cloud/car/controller/CarController.java | 30 ---------
.../com/muyu/cloud/car/mapper/CarMapper.java | 20 ------
.../muyu/cloud/car/service/CarService.java | 19 ------
.../car/service/impl/CarServiceImpl.java | 28 --------
.../src/main/resources/bootstrap.yml | 58 -----------------
.../{cloud-car => cloud-saas}/pom.xml | 28 ++++----
.../java/com/muyu/saas/SaasApplication.java | 19 ++++++
.../muyu/saas/controller/SaaSController.java | 64 +++++++++++++++++++
.../com/muyu/saas/domain/Datasource.java} | 26 ++++----
.../java/com/muyu/saas/mapper/SaaSMapper.java | 8 +++
.../com/muyu/saas/service/SaasService.java | 8 +++
.../saas/service/impl/SaasServiceImpl.java | 18 ++++++
.../src/main/resources/banner.txt | 0
.../src/main/resources/logback/dev.xml | 2 +-
.../src/main/resources/logback/prod.xml | 2 +-
.../src/main/resources/logback/test.xml | 2 +-
.../src/main/resources/mapper/SaasMapper.xml} | 6 +-
cloud-modules/pom.xml | 2 +-
19 files changed, 152 insertions(+), 213 deletions(-)
delete mode 100644 cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/CarApplication.java
delete mode 100644 cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/controller/CarController.java
delete mode 100644 cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/mapper/CarMapper.java
delete mode 100644 cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/CarService.java
delete mode 100644 cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/impl/CarServiceImpl.java
delete mode 100644 cloud-modules/cloud-car/src/main/resources/bootstrap.yml
rename cloud-modules/{cloud-car => cloud-saas}/pom.xml (85%)
create mode 100644 cloud-modules/cloud-saas/src/main/java/com/muyu/saas/SaasApplication.java
create mode 100644 cloud-modules/cloud-saas/src/main/java/com/muyu/saas/controller/SaaSController.java
rename cloud-modules/{cloud-car/src/main/java/com/muyu/cloud/car/domain/User.java => cloud-saas/src/main/java/com/muyu/saas/domain/Datasource.java} (51%)
create mode 100644 cloud-modules/cloud-saas/src/main/java/com/muyu/saas/mapper/SaaSMapper.java
create mode 100644 cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/SaasService.java
create mode 100644 cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/impl/SaasServiceImpl.java
rename cloud-modules/{cloud-car => cloud-saas}/src/main/resources/banner.txt (100%)
rename cloud-modules/{cloud-car => cloud-saas}/src/main/resources/logback/dev.xml (98%)
rename cloud-modules/{cloud-car => cloud-saas}/src/main/resources/logback/prod.xml (98%)
rename cloud-modules/{cloud-car => cloud-saas}/src/main/resources/logback/test.xml (98%)
rename cloud-modules/{cloud-car/src/main/resources/mapper/car/CarMapper.xml => cloud-saas/src/main/resources/mapper/SaasMapper.xml} (50%)
diff --git a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/CarApplication.java b/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/CarApplication.java
deleted file mode 100644
index 0f333df..0000000
--- a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/CarApplication.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.muyu.cloud.car;
-
-import com.alibaba.druid.spring.boot3.autoconfigure.DruidDataSourceAutoConfigure;
-import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration;
-import com.muyu.common.security.annotation.EnableCustomConfig;
-import com.muyu.common.security.annotation.EnableMyFeignClients;
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
-
-@EnableCustomConfig
-//@EnableCustomSwagger2
-@EnableMyFeignClients
-@SpringBootApplication(
- exclude = {
- DataSourceAutoConfiguration.class,
- DruidDataSourceAutoConfigure.class,
- DynamicDataSourceAutoConfiguration.class
- }
-)
-public class CarApplication {
- public static void main(String[] args) {
- SpringApplication.run(CarApplication.class, args);
- }
-}
diff --git a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/controller/CarController.java b/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/controller/CarController.java
deleted file mode 100644
index 941a794..0000000
--- a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/controller/CarController.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.muyu.cloud.car.controller;
-
-import com.muyu.cloud.car.domain.User;
-import com.muyu.cloud.car.service.CarService;
-import com.muyu.common.core.web.controller.BaseController;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.annotation.Resource;
-import java.util.List;
-
-/**
- * @Author WangXin
- * @Data 2024/9/19
- * @Description 车控制层
- * @Version 1.0.0
- */
-@RestController
-@RequestMapping("/test")
-public class CarController extends BaseController {
-
- @Resource
- private CarService carService;
-
- @GetMapping("/sel")
- public List sel() {
- return carService.list();
- }
-}
diff --git a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/mapper/CarMapper.java b/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/mapper/CarMapper.java
deleted file mode 100644
index 15ff31e..0000000
--- a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/mapper/CarMapper.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package com.muyu.cloud.car.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.muyu.cloud.car.domain.User;
-import org.apache.ibatis.annotations.Mapper;
-
-import java.util.List;
-
-/**
- * @Author WangXin
- * @Data 2024/9/19
- * @Description
- * @Version 1.0.0
- */
-public interface CarMapper extends BaseMapper {
-
- List selectMyList();
-
-
-}
diff --git a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/CarService.java b/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/CarService.java
deleted file mode 100644
index 21f47ce..0000000
--- a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/CarService.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.muyu.cloud.car.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.muyu.cloud.car.domain.User;
-
-import java.util.List;
-
-/**
- * @Author WangXin
- * @Data 2024/9/19
- * @Description
- * @Version 1.0.0
- */
-public interface CarService extends IService {
-
- List selectList();
-
-
-}
diff --git a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/impl/CarServiceImpl.java b/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/impl/CarServiceImpl.java
deleted file mode 100644
index 3d7446e..0000000
--- a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/service/impl/CarServiceImpl.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.muyu.cloud.car.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.muyu.cloud.car.domain.User;
-import com.muyu.cloud.car.mapper.CarMapper;
-import com.muyu.cloud.car.service.CarService;
-import org.springframework.stereotype.Service;
-
-import javax.annotation.Resource;
-import java.util.List;
-
-/**
- * @Author WangXin
- * @Data 2024/9/19
- * @Description
- * @Version 1.0.0
- */
-@Service
-public class CarServiceImpl extends ServiceImpl implements CarService {
-
- @Resource
- private CarMapper carMapper;
-
- @Override
- public List selectList() {
- return carMapper.selectMyList();
- }
-}
diff --git a/cloud-modules/cloud-car/src/main/resources/bootstrap.yml b/cloud-modules/cloud-car/src/main/resources/bootstrap.yml
deleted file mode 100644
index e99b9c3..0000000
--- a/cloud-modules/cloud-car/src/main/resources/bootstrap.yml
+++ /dev/null
@@ -1,58 +0,0 @@
-# Tomcat
-server:
- port: 49701
-
-# nacos线上地址
-nacos:
- addr: 47.101.53.251:8848
- user-name: nacos
- password: nacos
- namespace: four
-# SPRING_AMQP_DESERIALIZATION_TRUST_ALL=true spring.amqp.deserialization.trust.all
-# Spring
-spring:
- amqp:
- deserialization:
- trust:
- all: true
- main:
- allow-bean-definition-overriding: true
- application:
- # 应用名称
- name: cloud-saas
- profiles:
- # 环境配置
- active: dev
- cloud:
- nacos:
- discovery:
- # 服务注册地址
- server-addr: ${nacos.addr}
- # nacos用户名
- username: ${nacos.user-name}
- # nacos密码
- password: ${nacos.password}
- # 命名空间
- namespace: ${nacos.namespace}
- config:
- # 服务注册地址
- server-addr: ${nacos.addr}
- # nacos用户名
- username: ${nacos.user-name}
- # nacos密码
- password: ${nacos.password}
- # 命名空间
- namespace: ${nacos.namespace}
- # 配置文件格式
- file-extension: yml
- # 共享配置
- shared-configs:
- # 系统共享配置
- - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
- # 系统环境Config共享配置
- - application-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
-
-
-logging:
- level:
- com.muyu.cloud.mapper: DEBUG
diff --git a/cloud-modules/cloud-car/pom.xml b/cloud-modules/cloud-saas/pom.xml
similarity index 85%
rename from cloud-modules/cloud-car/pom.xml
rename to cloud-modules/cloud-saas/pom.xml
index 35cb0d7..be2c706 100644
--- a/cloud-modules/cloud-car/pom.xml
+++ b/cloud-modules/cloud-saas/pom.xml
@@ -1,28 +1,31 @@
-
- 4.0.0
com.muyu
cloud-modules
3.6.3
- cloud-car
+ 4.0.0
-
- 17
- 17
- UTF-8
-
+ cloud-saas
+
+
+ cloud-saas
+
+
- com.muyu
- cloud-common-saas
+ org.springframework.cloud
+ spring-cloud-starter-bootstrap
+ 4.1.2
+
+
com.alibaba.cloud
@@ -77,6 +80,9 @@
cloud-common-api-doc
+
+
+
diff --git a/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/SaasApplication.java b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/SaasApplication.java
new file mode 100644
index 0000000..bd05b75
--- /dev/null
+++ b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/SaasApplication.java
@@ -0,0 +1,19 @@
+package com.muyu.saas;
+
+import com.alibaba.druid.spring.boot3.autoconfigure.DruidDataSourceAutoConfigure;
+import com.muyu.common.security.annotation.EnableMyFeignClients;
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
+
+@SpringBootApplication
+@EnableMyFeignClients
+@MapperScan(value = "com.muyu.saas.mapper")
+public class SaasApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(SaasApplication.class,args);
+ }
+
+}
diff --git a/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/controller/SaaSController.java b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/controller/SaaSController.java
new file mode 100644
index 0000000..e7816f3
--- /dev/null
+++ b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/controller/SaaSController.java
@@ -0,0 +1,64 @@
+package com.muyu.saas.controller;
+
+import com.muyu.common.core.domain.Result;
+import com.muyu.saas.domain.Datasource;
+import com.muyu.saas.service.SaasService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("saas")
+public class SaaSController {
+
+ @Autowired
+ private SaasService saasService;
+
+ /**
+ * 数据源查询
+ * @return
+ */
+ @GetMapping("findDatabaseList")
+ public Result> findDatabaseList(){
+ List list=saasService.list();
+ return Result.success(list);
+ };
+
+ /**
+ * 数据源添加
+ * @param datasource
+ * @return
+ */
+ @PostMapping("addDatasource")
+ public Result addDatasource(@RequestBody Datasource datasource){
+ saasService.save(datasource);
+ return Result.success("添加成功");
+ };
+
+
+ @PostMapping("updDatasource")
+ public Result updDatasource(@RequestBody Datasource datasource){
+ saasService.updateById(datasource);
+ return Result.success("修改成功");
+ }
+
+ /**
+ * 删除成功
+ * @param id
+ * @return
+ */
+ @PostMapping("delDatasource/{id}")
+ public Result delDatasource(@PathVariable("id") Integer id){
+ saasService.removeById(id);
+ return Result.success("删除成功");
+ }
+
+
+
+
+
+
+
+}
diff --git a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/domain/User.java b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/domain/Datasource.java
similarity index 51%
rename from cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/domain/User.java
rename to cloud-modules/cloud-saas/src/main/java/com/muyu/saas/domain/Datasource.java
index e8ae3cf..7a5d3cd 100644
--- a/cloud-modules/cloud-car/src/main/java/com/muyu/cloud/car/domain/User.java
+++ b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/domain/Datasource.java
@@ -1,28 +1,26 @@
-package com.muyu.cloud.car.domain;
+package com.muyu.saas.domain;
+
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
-import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
-/**
- * @Author WangXin
- * @Data 2024/9/19
- * @Description
- * @Version 1.0.0
- */
-@TableName("user")
@Data
-@Builder
@AllArgsConstructor
@NoArgsConstructor
-public class User {
+@TableName(value = "datasource", autoResultMap = true)
+public class Datasource {
+
+ @TableId(value = "id",type = IdType.AUTO)
+ private Integer id;
+
+ public String firmName;
+
+ public String databaseName;
+
- @TableId(type = IdType.AUTO)
- private Integer userId;
- private String userName;
}
diff --git a/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/mapper/SaaSMapper.java b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/mapper/SaaSMapper.java
new file mode 100644
index 0000000..d02f958
--- /dev/null
+++ b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/mapper/SaaSMapper.java
@@ -0,0 +1,8 @@
+package com.muyu.saas.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.muyu.saas.domain.Datasource;
+
+public interface SaaSMapper extends BaseMapper {
+
+}
diff --git a/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/SaasService.java b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/SaasService.java
new file mode 100644
index 0000000..237f876
--- /dev/null
+++ b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/SaasService.java
@@ -0,0 +1,8 @@
+package com.muyu.saas.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.muyu.saas.domain.Datasource;
+
+public interface SaasService extends IService {
+
+}
diff --git a/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/impl/SaasServiceImpl.java b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/impl/SaasServiceImpl.java
new file mode 100644
index 0000000..500c492
--- /dev/null
+++ b/cloud-modules/cloud-saas/src/main/java/com/muyu/saas/service/impl/SaasServiceImpl.java
@@ -0,0 +1,18 @@
+package com.muyu.saas.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.muyu.saas.domain.Datasource;
+import com.muyu.saas.mapper.SaaSMapper;
+import com.muyu.saas.service.SaasService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class SaasServiceImpl extends ServiceImpl implements SaasService {
+
+ @Autowired
+ private SaaSMapper saaSMapper;
+
+
+
+}
diff --git a/cloud-modules/cloud-car/src/main/resources/banner.txt b/cloud-modules/cloud-saas/src/main/resources/banner.txt
similarity index 100%
rename from cloud-modules/cloud-car/src/main/resources/banner.txt
rename to cloud-modules/cloud-saas/src/main/resources/banner.txt
diff --git a/cloud-modules/cloud-car/src/main/resources/logback/dev.xml b/cloud-modules/cloud-saas/src/main/resources/logback/dev.xml
similarity index 98%
rename from cloud-modules/cloud-car/src/main/resources/logback/dev.xml
rename to cloud-modules/cloud-saas/src/main/resources/logback/dev.xml
index 621579c..0ea8333 100644
--- a/cloud-modules/cloud-car/src/main/resources/logback/dev.xml
+++ b/cloud-modules/cloud-saas/src/main/resources/logback/dev.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/cloud-modules/cloud-car/src/main/resources/logback/prod.xml b/cloud-modules/cloud-saas/src/main/resources/logback/prod.xml
similarity index 98%
rename from cloud-modules/cloud-car/src/main/resources/logback/prod.xml
rename to cloud-modules/cloud-saas/src/main/resources/logback/prod.xml
index 2419bf9..a8f7c06 100644
--- a/cloud-modules/cloud-car/src/main/resources/logback/prod.xml
+++ b/cloud-modules/cloud-saas/src/main/resources/logback/prod.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/cloud-modules/cloud-car/src/main/resources/logback/test.xml b/cloud-modules/cloud-saas/src/main/resources/logback/test.xml
similarity index 98%
rename from cloud-modules/cloud-car/src/main/resources/logback/test.xml
rename to cloud-modules/cloud-saas/src/main/resources/logback/test.xml
index 2419bf9..a8f7c06 100644
--- a/cloud-modules/cloud-car/src/main/resources/logback/test.xml
+++ b/cloud-modules/cloud-saas/src/main/resources/logback/test.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/cloud-modules/cloud-car/src/main/resources/mapper/car/CarMapper.xml b/cloud-modules/cloud-saas/src/main/resources/mapper/SaasMapper.xml
similarity index 50%
rename from cloud-modules/cloud-car/src/main/resources/mapper/car/CarMapper.xml
rename to cloud-modules/cloud-saas/src/main/resources/mapper/SaasMapper.xml
index 06f84c1..8f575e6 100644
--- a/cloud-modules/cloud-car/src/main/resources/mapper/car/CarMapper.xml
+++ b/cloud-modules/cloud-saas/src/main/resources/mapper/SaasMapper.xml
@@ -2,9 +2,7 @@
-
+
+
-
diff --git a/cloud-modules/pom.xml b/cloud-modules/pom.xml
index 11fa2cc..c917d3a 100644
--- a/cloud-modules/pom.xml
+++ b/cloud-modules/pom.xml
@@ -18,8 +18,8 @@
cloud-modules-car
cloud-modules-wechat
cloud-modules-breakdown
- cloud-car
cloud-modules-warn
+ cloud-saas
cloud-modules
From 895a4efab385cb22b72c57e66312903fc642a4e4 Mon Sep 17 00:00:00 2001
From: Liu Wu <2780205363@qq.com>
Date: Tue, 24 Sep 2024 10:40:34 +0800
Subject: [PATCH 3/4] =?UTF-8?q?saas=E6=A8=A1=E5=9D=97=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../core/constant/ServiceNameConstants.java | 5 +++
.../many/datasource/ManyDataSource.java | 10 +++---
.../cloud/common/saas/domain/Datasource.java | 26 +++++++++++++++
cloud-common/cloud-common-system/pom.xml | 3 ++
.../muyu/common/system/domain/Datasource.java | 26 +++++++++++++++
.../system/remote/RemoteSaaSService.java | 29 ++++++++++++++++
.../factory/RemoteSaaSFallbackFactory.java | 33 +++++++++++++++++++
...ot.autoconfigure.AutoConfiguration.imports | 1 +
cloud-modules/cloud-modules-car/pom.xml | 2 --
cloud-modules/pom.xml | 1 -
10 files changed, 129 insertions(+), 7 deletions(-)
create mode 100644 cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/saas/domain/Datasource.java
create mode 100644 cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/Datasource.java
create mode 100644 cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaaSService.java
create mode 100644 cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteSaaSFallbackFactory.java
diff --git a/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/constant/ServiceNameConstants.java b/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/constant/ServiceNameConstants.java
index c529d7e..304711c 100644
--- a/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/constant/ServiceNameConstants.java
+++ b/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/constant/ServiceNameConstants.java
@@ -25,4 +25,9 @@ public class ServiceNameConstants {
* 智能车联服务
*/
public static final String SMART_SERVICE = "cloud-smart-car";
+
+
+ public static final String SAAS_SERVICE = "cloud-saas";
+
+
}
diff --git a/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
index dbbbabb..cd3f37b 100644
--- a/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
+++ b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
@@ -11,7 +11,9 @@ import com.muyu.cloud.common.saas.domain.model.EntInfo;
import com.muyu.cloud.common.saas.exception.SaaSException;
import com.muyu.common.core.domain.Result;
import com.muyu.common.core.utils.SpringUtils;
+import com.muyu.common.system.domain.Datasource;
import com.muyu.common.system.domain.SysUser;
+import com.muyu.common.system.remote.RemoteSaaSService;
import com.muyu.common.system.remote.RemoteUserService;
import lombok.extern.log4j.Log4j2;
import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration;
@@ -37,15 +39,15 @@ import java.util.Map;
@AutoConfiguration(before = {MybatisPlusAutoConfiguration.class, MybatisAutoConfiguration.class})
public class ManyDataSource implements ApplicationRunner{
private List dataSourceInfoList(){
- RemoteUserService remoteUserService = SpringUtils.getBean(RemoteUserService.class);
- Result> tableDataInfoResult = remoteUserService.companyList();
+ RemoteSaaSService remoteSaaSService = SpringUtils.getBean(RemoteSaaSService.class);
+ Result> tableDataInfoResult = remoteSaaSService.findDatabaseList();
if (tableDataInfoResult==null){
throw new SaaSException("saas远调数据源错误");
}
- List data = tableDataInfoResult.getData();
+ List data = tableDataInfoResult.getData();
if (tableDataInfoResult.getCode() ==Result.SUCCESS && data !=null){
List list = new ArrayList<>();
- for (SysUser row : data) {
+ for (Datasource row : data) {
list.add(
EntInfo.builder()
.entCode(row.getDatabaseName())
diff --git a/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/saas/domain/Datasource.java b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/saas/domain/Datasource.java
new file mode 100644
index 0000000..cfda448
--- /dev/null
+++ b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/saas/domain/Datasource.java
@@ -0,0 +1,26 @@
+package com.muyu.cloud.common.saas.domain;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName(value = "datasource", autoResultMap = true)
+public class Datasource {
+
+ @TableId(value = "id",type = IdType.AUTO)
+ private Integer id;
+
+ public String firmName;
+
+ public String databaseName;
+
+
+
+}
diff --git a/cloud-common/cloud-common-system/pom.xml b/cloud-common/cloud-common-system/pom.xml
index ad4356f..22cd455 100644
--- a/cloud-common/cloud-common-system/pom.xml
+++ b/cloud-common/cloud-common-system/pom.xml
@@ -25,5 +25,8 @@
com.muyu
cloud-common-core
+
+
+
diff --git a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/Datasource.java b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/Datasource.java
new file mode 100644
index 0000000..9b54051
--- /dev/null
+++ b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/Datasource.java
@@ -0,0 +1,26 @@
+package com.muyu.common.system.domain;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName(value = "datasource", autoResultMap = true)
+public class Datasource {
+
+ @TableId(value = "id",type = IdType.AUTO)
+ private Integer id;
+
+ public String firmName;
+
+ public String databaseName;
+
+
+
+}
diff --git a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaaSService.java b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaaSService.java
new file mode 100644
index 0000000..cac2681
--- /dev/null
+++ b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaaSService.java
@@ -0,0 +1,29 @@
+package com.muyu.common.system.remote;
+
+import com.muyu.common.core.constant.SecurityConstants;
+import com.muyu.common.core.constant.ServiceNameConstants;
+import com.muyu.common.core.domain.Result;
+import com.muyu.common.system.domain.Datasource;
+import com.muyu.common.system.domain.LoginUser;
+import com.muyu.common.system.domain.SysUser;
+import com.muyu.common.system.remote.factory.RemoteSaaSFallbackFactory;
+import com.muyu.common.system.remote.factory.RemoteUserFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 用户服务
+ *
+ * @author muyu
+ */
+@FeignClient(contextId = "SaasService", value = ServiceNameConstants.SAAS_SERVICE, fallbackFactory = RemoteSaaSFallbackFactory.class)
+public interface RemoteSaaSService {
+
+ @GetMapping("/saas/findDatabaseList")
+ public Result> findDatabaseList();
+
+
+
+}
diff --git a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteSaaSFallbackFactory.java b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteSaaSFallbackFactory.java
new file mode 100644
index 0000000..886a151
--- /dev/null
+++ b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteSaaSFallbackFactory.java
@@ -0,0 +1,33 @@
+package com.muyu.common.system.remote.factory;
+
+import com.muyu.common.core.domain.Result;
+import com.muyu.common.system.domain.Datasource;
+import com.muyu.common.system.domain.LoginUser;
+import com.muyu.common.system.domain.SysUser;
+import com.muyu.common.system.remote.RemoteSaaSService;
+import com.muyu.common.system.remote.RemoteUserService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * 用户服务降级处理
+ *
+ * @author muyu
+ */
+@Component
+public class RemoteSaaSFallbackFactory implements FallbackFactory {
+
+ @Override
+ public RemoteSaaSService create(Throwable cause) {
+ return new RemoteSaaSService() {
+ @Override
+ public Result> findDatabaseList() {
+ return Result.error("查询数据库失败:" + cause.getMessage());
+ }
+ };
+ }
+}
diff --git a/cloud-common/cloud-common-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/cloud-common/cloud-common-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index b9a11b8..6539412 100644
--- a/cloud-common/cloud-common-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/cloud-common/cloud-common-system/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,3 +1,4 @@
com.muyu.common.system.remote.factory.RemoteUserFallbackFactory
com.muyu.common.system.remote.factory.RemoteLogFallbackFactory
com.muyu.common.system.remote.factory.RemoteFileFallbackFactory
+com.muyu.common.system.remote.factory.RemoteSaaSFallbackFactory
diff --git a/cloud-modules/cloud-modules-car/pom.xml b/cloud-modules/cloud-modules-car/pom.xml
index aecbd76..ea345a1 100644
--- a/cloud-modules/cloud-modules-car/pom.xml
+++ b/cloud-modules/cloud-modules-car/pom.xml
@@ -85,8 +85,6 @@
cloud-common-saas
-
-
diff --git a/cloud-modules/pom.xml b/cloud-modules/pom.xml
index c917d3a..607edae 100644
--- a/cloud-modules/pom.xml
+++ b/cloud-modules/pom.xml
@@ -15,7 +15,6 @@
cloud-modules-file
cloud-modules-template
cloud-modules-fence
- cloud-modules-car
cloud-modules-wechat
cloud-modules-breakdown
cloud-modules-warn
From 9b0f24bff3419cfd5d2e2668ad2d8ffc91409ff8 Mon Sep 17 00:00:00 2001
From: Liu Wu <2780205363@qq.com>
Date: Wed, 25 Sep 2024 09:35:16 +0800
Subject: [PATCH 4/4] =?UTF-8?q?saas=E6=A8=A1=E5=9D=97=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/muyu/cloud/common/many/datasource/ManyDataSource.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
index cd3f37b..432dc59 100644
--- a/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
+++ b/cloud-common/cloud-common-saas/src/main/java/com/muyu/cloud/common/many/datasource/ManyDataSource.java
@@ -40,7 +40,7 @@ import java.util.Map;
public class ManyDataSource implements ApplicationRunner{
private List dataSourceInfoList(){
RemoteSaaSService remoteSaaSService = SpringUtils.getBean(RemoteSaaSService.class);
- Result> tableDataInfoResult = remoteSaaSService.findDatabaseList();
+Result> tableDataInfoResult = remoteSaaSService.findDatabaseList();
if (tableDataInfoResult==null){
throw new SaaSException("saas远调数据源错误");
}