text:()修改企业入入驻

dev.business^2
袁子龙 2024-10-10 22:21:06 +08:00
parent 6779e2120e
commit a8cdd55797
4 changed files with 36 additions and 2 deletions

View File

@ -1,6 +1,7 @@
package com.muyu.auth.service;
import com.muyu.cloud.common.many.datasource.ManyDataSource;
import com.muyu.common.core.constant.CacheConstants;
import com.muyu.common.core.constant.Constants;
import com.muyu.common.core.constant.SecurityConstants;
@ -41,6 +42,8 @@ public class SysLoginService {
@Autowired
private RedisService redisService;
/**
*
*/
@ -92,6 +95,8 @@ public class SysLoginService {
}
passwordService.validate(user, password);
recordLogService.recordLogininfor(username, Constants.LOGIN_SUCCESS, "登录成功");
return userInfo;
}

View File

@ -43,7 +43,7 @@ public class ManyDataSource implements ApplicationRunner{
private InitDataSource initDataSource;
private List<EntInfo> dataSourceInfoList(){
public List<EntInfo> dataSourceInfoList(){
RemoteSaaSService remoteSaaSService = SpringUtils.getBean(RemoteSaaSService.class);
Result<List<Datasource>> tableDataInfoResult = initDataSource.initDatasource();
if (tableDataInfoResult==null){

View File

@ -78,6 +78,7 @@
<artifactId>cloud-common-xxl</artifactId>
</dependency>
</dependencies>
<build>

View File

@ -1,10 +1,20 @@
package com.muyu.server.service.impl;
import cn.hutool.core.map.MapUtil;
import com.alibaba.druid.pool.DruidDataSource;
import com.muyu.cache.EnterpriseCacheService;
import com.muyu.cloud.common.many.datasource.ManyDataSource;
import com.muyu.cloud.common.many.datasource.constents.DatasourceContent;
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.init.InitDataSource;
import com.muyu.cloud.common.many.datasource.role.DynamicDataSource;
import com.muyu.cloud.common.saas.domain.Datasource;
import com.muyu.cloud.common.saas.domain.model.EntInfo;
import com.muyu.cloud.common.saas.exception.SaaSException;
import com.muyu.common.core.constant.SecurityConstants;
import com.muyu.common.core.domain.Result;
import com.muyu.common.core.utils.SpringUtils;
import com.muyu.common.domain.Enterprise;
import com.muyu.common.system.domain.Business;
import com.muyu.common.system.domain.SysUser;
@ -14,6 +24,7 @@ import com.muyu.server.mapper.EnterpriseMapper;
import com.muyu.server.service.EnterpriseService;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.support.EncodedResource;
import org.springframework.jdbc.datasource.init.ScriptUtils;
@ -42,6 +53,9 @@ public class EnterpriseServiceImpl implements EnterpriseService {
@Autowired
private RemoteUserService remoteUserService;
@Autowired
private ManyDataSource manyDataSource;
/**
*
@ -111,6 +125,7 @@ public class EnterpriseServiceImpl implements EnterpriseService {
ClassPathResource rc = new ClassPathResource("saas.sql");
EncodedResource er = new EncodedResource(rc, "utf-8");
ScriptUtils.executeSqlScript(connection1, er);
} catch (SQLException e) {
throw new RuntimeException("无法执行SQL脚本", e);
}
@ -118,13 +133,26 @@ public class EnterpriseServiceImpl implements EnterpriseService {
throw new RuntimeException("链接不到数据源驱动", e);
}
}
} catch (SQLException e) {
e.printStackTrace();
log.error("连接数据库时发生错误或创建数据库失败", e);
}
DruidDataSourceFactory druidDataSourceFactory = SpringUtils.getBean(DruidDataSourceFactory.class);
DynamicDataSource dynamicDataSource = SpringUtils.getBean(DynamicDataSource.class);
for (EntInfo entInfo : manyDataSource.dataSourceInfoList()) {
DataSourceInfo dataSourceInfo = DataSourceInfo.hostAndPortBuild(
entInfo.getEntCode(), entInfo.getIp(), entInfo.getPort()
);
DruidDataSource druidDataSource = druidDataSourceFactory.create(dataSourceInfo);
dynamicDataSource.put(dataSourceInfo.getKey(), druidDataSource);
log.info("存储数据连接池为key:{}",dataSourceInfo.getKey());
}
log.info("企业信息插入成功");
return rows;
}