saas模块更新
parent
fce189d87f
commit
895a4efab3
|
@ -25,4 +25,9 @@ public class ServiceNameConstants {
|
||||||
* 智能车联服务
|
* 智能车联服务
|
||||||
*/
|
*/
|
||||||
public static final String SMART_SERVICE = "cloud-smart-car";
|
public static final String SMART_SERVICE = "cloud-smart-car";
|
||||||
|
|
||||||
|
|
||||||
|
public static final String SAAS_SERVICE = "cloud-saas";
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,9 @@ import com.muyu.cloud.common.saas.domain.model.EntInfo;
|
||||||
import com.muyu.cloud.common.saas.exception.SaaSException;
|
import com.muyu.cloud.common.saas.exception.SaaSException;
|
||||||
import com.muyu.common.core.domain.Result;
|
import com.muyu.common.core.domain.Result;
|
||||||
import com.muyu.common.core.utils.SpringUtils;
|
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.domain.SysUser;
|
||||||
|
import com.muyu.common.system.remote.RemoteSaaSService;
|
||||||
import com.muyu.common.system.remote.RemoteUserService;
|
import com.muyu.common.system.remote.RemoteUserService;
|
||||||
import lombok.extern.log4j.Log4j2;
|
import lombok.extern.log4j.Log4j2;
|
||||||
import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration;
|
import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration;
|
||||||
|
@ -37,15 +39,15 @@ import java.util.Map;
|
||||||
@AutoConfiguration(before = {MybatisPlusAutoConfiguration.class, MybatisAutoConfiguration.class})
|
@AutoConfiguration(before = {MybatisPlusAutoConfiguration.class, MybatisAutoConfiguration.class})
|
||||||
public class ManyDataSource implements ApplicationRunner{
|
public class ManyDataSource implements ApplicationRunner{
|
||||||
private List<EntInfo> dataSourceInfoList(){
|
private List<EntInfo> dataSourceInfoList(){
|
||||||
RemoteUserService remoteUserService = SpringUtils.getBean(RemoteUserService.class);
|
RemoteSaaSService remoteSaaSService = SpringUtils.getBean(RemoteSaaSService.class);
|
||||||
Result<List<SysUser>> tableDataInfoResult = remoteUserService.companyList();
|
Result<List<Datasource>> tableDataInfoResult = remoteSaaSService.findDatabaseList();
|
||||||
if (tableDataInfoResult==null){
|
if (tableDataInfoResult==null){
|
||||||
throw new SaaSException("saas远调数据源错误");
|
throw new SaaSException("saas远调数据源错误");
|
||||||
}
|
}
|
||||||
List<SysUser> data = tableDataInfoResult.getData();
|
List<Datasource> data = tableDataInfoResult.getData();
|
||||||
if (tableDataInfoResult.getCode() ==Result.SUCCESS && data !=null){
|
if (tableDataInfoResult.getCode() ==Result.SUCCESS && data !=null){
|
||||||
List<EntInfo> list = new ArrayList<>();
|
List<EntInfo> list = new ArrayList<>();
|
||||||
for (SysUser row : data) {
|
for (Datasource row : data) {
|
||||||
list.add(
|
list.add(
|
||||||
EntInfo.builder()
|
EntInfo.builder()
|
||||||
.entCode(row.getDatabaseName())
|
.entCode(row.getDatabaseName())
|
||||||
|
|
|
@ -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;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -25,5 +25,8 @@
|
||||||
<groupId>com.muyu</groupId>
|
<groupId>com.muyu</groupId>
|
||||||
<artifactId>cloud-common-core</artifactId>
|
<artifactId>cloud-common-core</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
||||||
|
|
|
@ -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;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -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<List<Datasource>> findDatabaseList();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -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<RemoteSaaSService> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public RemoteSaaSService create(Throwable cause) {
|
||||||
|
return new RemoteSaaSService() {
|
||||||
|
@Override
|
||||||
|
public Result<List<Datasource>> findDatabaseList() {
|
||||||
|
return Result.error("查询数据库失败:" + cause.getMessage());
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,3 +1,4 @@
|
||||||
com.muyu.common.system.remote.factory.RemoteUserFallbackFactory
|
com.muyu.common.system.remote.factory.RemoteUserFallbackFactory
|
||||||
com.muyu.common.system.remote.factory.RemoteLogFallbackFactory
|
com.muyu.common.system.remote.factory.RemoteLogFallbackFactory
|
||||||
com.muyu.common.system.remote.factory.RemoteFileFallbackFactory
|
com.muyu.common.system.remote.factory.RemoteFileFallbackFactory
|
||||||
|
com.muyu.common.system.remote.factory.RemoteSaaSFallbackFactory
|
||||||
|
|
|
@ -85,8 +85,6 @@
|
||||||
<artifactId>cloud-common-saas</artifactId>
|
<artifactId>cloud-common-saas</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
<module>cloud-modules-file</module>
|
<module>cloud-modules-file</module>
|
||||||
<module>cloud-modules-template</module>
|
<module>cloud-modules-template</module>
|
||||||
<module>cloud-modules-fence</module>
|
<module>cloud-modules-fence</module>
|
||||||
<module>cloud-modules-car</module>
|
|
||||||
<module>cloud-modules-wechat</module>
|
<module>cloud-modules-wechat</module>
|
||||||
<module>cloud-modules-breakdown</module>
|
<module>cloud-modules-breakdown</module>
|
||||||
<module>cloud-modules-warn</module>
|
<module>cloud-modules-warn</module>
|
||||||
|
|
Loading…
Reference in New Issue