fix(tenant): 修复租户初始化和关联查询问题

- tenantService.initialization()返回新增Company对象并使用其tenantId赋值
- userParam及userParam1新增tenantId字段,使用新创建租户ID
- Tenant实体新增username字段,支持用户名信息存储
- TenantMapper查询语句增加c.username字段关联查询
- TenantServiceImpl中超级管理员username设为随机UUID字符串,避免固定用户名冲突
This commit is contained in:
2026-04-27 07:04:54 +08:00
parent 5579f7494e
commit c3bd90f234
4 changed files with 9 additions and 3 deletions

View File

@@ -789,11 +789,12 @@ public class MainController extends BaseController {
company.setShortName(tenantName); company.setShortName(tenantName);
company.setTenantId(tenant.getTenantId()); company.setTenantId(tenant.getTenantId());
company.setTemplateId(user.getTemplateId()); company.setTemplateId(user.getTemplateId());
tenantService.initialization(company); final Company addCompany = tenantService.initialization(company);
final UserParam userParam = new UserParam(); final UserParam userParam = new UserParam();
userParam.setIsAdmin(true); userParam.setIsAdmin(true);
userParam.setPhone(phone); userParam.setPhone(phone);
userParam.setTemplateId(user.getTemplateId()); userParam.setTemplateId(user.getTemplateId());
userParam.setTenantId(addCompany.getTenantId()); // 使用新创建的租户ID
final User adminByPhone = userService.getAdminByPhone(userParam); final User adminByPhone = userService.getAdminByPhone(userParam);
// 设置过期时间 // 设置过期时间
@@ -973,6 +974,7 @@ public class MainController extends BaseController {
userParam1.setIsAdmin(true); userParam1.setIsAdmin(true);
userParam1.setPhone(phone); userParam1.setPhone(phone);
userParam1.setTemplateId(user.getTemplateId()); userParam1.setTemplateId(user.getTemplateId());
userParam1.setTenantId(addCompany.getTenantId()); // 使用新创建的租户ID
final User adminByPhone = userService.getAdminByPhone(userParam1); final User adminByPhone = userService.getAdminByPhone(userParam1);
// 设置过期时间 // 设置过期时间

View File

@@ -96,6 +96,10 @@ public class Tenant implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private Object date; private Object date;
@Schema(description = "用户名")
@TableField(exist = false)
private String username;
@Schema(description = "手机号码") @Schema(description = "手机号码")
@TableField(exist = false) @TableField(exist = false)
private String phone; private String phone;

View File

@@ -4,7 +4,7 @@
<!-- 关联查询sql --> <!-- 关联查询sql -->
<sql id="selectSql"> <sql id="selectSql">
SELECT a.*,b.company_name,b.company_logo as logo,b.admin_url,b.domain,b.free_domain,c.phone SELECT a.*,b.company_name,b.company_logo as logo,b.admin_url,b.domain,b.free_domain,c.phone,c.username
FROM sys_tenant a FROM sys_tenant a
LEFT JOIN sys_company b ON a.tenant_id = b.tenant_id LEFT JOIN sys_company b ON a.tenant_id = b.tenant_id
LEFT JOIN sys_user c ON a.user_id = c.user_id LEFT JOIN sys_user c ON a.user_id = c.user_id

View File

@@ -105,7 +105,7 @@ public class TenantServiceImpl extends ServiceImpl<TenantMapper, Tenant> impleme
// 添加超级管理员 // 添加超级管理员
User superAdmin = new User(); User superAdmin = new User();
superAdmin.setUsername("superAdmin"); superAdmin.setUsername(CommonUtil.randomUUID16()); // 使用随机用户名
superAdmin.setNickname(company.getShortName()); superAdmin.setNickname(company.getShortName());
superAdmin.setPhone(company.getPhone()); superAdmin.setPhone(company.getPhone());
superAdmin.setEmail(company.getEmail()); superAdmin.setEmail(company.getEmail());