This commit is contained in:
2023-07-14 09:38:19 +08:00
parent 6ed1224410
commit 649f9ca6ed
2 changed files with 15 additions and 12 deletions

View File

@ -6,12 +6,13 @@ import com.qiaoba.common.base.entity.BaseEntity;
import com.qiaoba.common.base.validate.AddGroup; import com.qiaoba.common.base.validate.AddGroup;
import com.qiaoba.common.base.validate.EditGroup; import com.qiaoba.common.base.validate.EditGroup;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Date; import java.util.Date;
/** /**
@ -30,32 +31,39 @@ public class SysTenant extends BaseEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@TableId @TableId
@NotNull(message = "id不能为空", groups = {EditGroup.class}) @NotNull(message = "ID不能为空", groups = {EditGroup.class})
private String tenantId; private String tenantId;
@NotBlank(message = "企业名称不能为空", groups = {AddGroup.class, EditGroup.class})
@Schema(description = "企业名称") @Schema(description = "企业名称")
@NotBlank(message = "企业名称不能为空", groups = {AddGroup.class, EditGroup.class})
@Size(max = 30, message = "企业名称不能超过{max}个字符", groups = {AddGroup.class, EditGroup.class})
private String companyName; private String companyName;
@Schema(description = "联系人") @Schema(description = "联系人")
@Size(max = 30, message = "联系人不能超过{max}个字符", groups = {AddGroup.class, EditGroup.class})
private String contactName; private String contactName;
@Schema(description = "联系电话") @Schema(description = "联系电话")
@Size(max = 30, message = "联系电话不能超过{max}个字符", groups = {AddGroup.class, EditGroup.class})
private String contactPhone; private String contactPhone;
@Schema(description = "地址") @Schema(description = "地址")
@Size(max = 30, message = "地址不能超过{max}个字符", groups = {AddGroup.class, EditGroup.class})
private String address; private String address;
@Schema(description = "企业简介") @Schema(description = "企业简介")
@Size(max = 30, message = "企业简介不能超过{max}个字符", groups = {AddGroup.class, EditGroup.class})
private String profile; private String profile;
@Schema(description = "统一社会信用代码") @Schema(description = "统一社会信用代码")
@Size(max = 20, message = "企业简介不能超过{max}个字符", groups = {AddGroup.class, EditGroup.class})
private String licenseNumber; private String licenseNumber;
@Schema(description = "域名") @Schema(description = "域名")
private String domain; private String domain;
@Schema(description = "备注") @Schema(description = "备注")
@Size(max = 20, message = "备注不能超过{max}个字符", groups = {AddGroup.class, EditGroup.class})
private String remark; private String remark;
@NotNull(message = "过期时间不能为空", groups = {AddGroup.class, EditGroup.class}) @NotNull(message = "过期时间不能为空", groups = {AddGroup.class, EditGroup.class})
@ -66,8 +74,9 @@ public class SysTenant extends BaseEntity {
@Schema(description = "用户数量") @Schema(description = "用户数量")
private Long accountCount; private Long accountCount;
@NotNull(message = "状态不能为空", groups = {AddGroup.class, EditGroup.class})
@Schema(description = "状态") @Schema(description = "状态")
@NotNull(message = "状态不能为空", groups = {EditGroup.class})
@Size(max = 1, message = "状态不能超过{max}个字符", groups = {EditGroup.class})
private String status; private String status;
private String mode; private String mode;

View File

@ -12,7 +12,6 @@ import com.qiaoba.common.base.constant.BaseConstant;
import com.qiaoba.common.base.enums.BaseEnum; import com.qiaoba.common.base.enums.BaseEnum;
import com.qiaoba.common.base.enums.DataBaseEnum; import com.qiaoba.common.base.enums.DataBaseEnum;
import com.qiaoba.common.base.exception.ServiceException; import com.qiaoba.common.base.exception.ServiceException;
import com.qiaoba.common.database.config.DynamicDataSourceConfig;
import com.qiaoba.common.database.context.BackupDatasourceContext; import com.qiaoba.common.database.context.BackupDatasourceContext;
import com.qiaoba.common.database.context.PrimaryDatasourceContext; import com.qiaoba.common.database.context.PrimaryDatasourceContext;
import com.qiaoba.common.database.entity.DynamicDataSource; import com.qiaoba.common.database.entity.DynamicDataSource;
@ -136,10 +135,10 @@ public class SysTenantDatasourceServiceImpl implements SysTenantDatasourceServic
int result = updateById(datasource); int result = updateById(datasource);
// 刷新PrimaryDatasourceMap // 刷新PrimaryDatasourceMap
if (result > BaseConstant.HANDLE_ERROR) { if (result > BaseConstant.HANDLE_ERROR) {
Object oldDataSource = PrimaryDatasourceContext.get(tenantId);
// 更新新得数据源为租户主要数据源 // 更新新得数据源为租户主要数据源
DatasourceUtil.changePrimaryDatasource(tenantId, dataSource); DatasourceUtil.changePrimaryDatasource(tenantId, dataSource);
// 将老的租户数据源设置为备用 // 将老的租户数据源设置为备用
Object oldDataSource = PrimaryDatasourceContext.get(tenantId);
if (Objects.nonNull(oldDataSource)) { if (Objects.nonNull(oldDataSource)) {
DruidDataSource druidDataSource = ((DruidDataSource) oldDataSource); DruidDataSource druidDataSource = ((DruidDataSource) oldDataSource);
String ip = DataBaseEnum.getIp(druidDataSource.getUrl(), druidDataSource.getDriverClassName()); String ip = DataBaseEnum.getIp(druidDataSource.getUrl(), druidDataSource.getDriverClassName());
@ -153,11 +152,6 @@ public class SysTenantDatasourceServiceImpl implements SysTenantDatasourceServic
return result; return result;
} }
public int test(String tenantId, String datasourceId) {
List<DynamicDataSource> dataSources = BackupDatasourceContext.get(tenantId);
return 0;
}
@Override @Override
public DynamicDataSource transform(SysTenantDatasource datasource) { public DynamicDataSource transform(SysTenantDatasource datasource) {
DynamicDataSource dynamicDataSource = BeanUtil.copyProperties(datasource, DynamicDataSource.class); DynamicDataSource dynamicDataSource = BeanUtil.copyProperties(datasource, DynamicDataSource.class);