From 36a5b3bd0d19171e971393055a69c487e9d49f62 Mon Sep 17 00:00:00 2001 From: ziin Date: Thu, 20 Nov 2025 20:30:52 +0800 Subject: [PATCH] =?UTF-8?q?feat(system):=20=E6=96=B0=E5=A2=9E=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E7=B1=BB=E5=9E=8B=E5=AD=97=E6=AE=B5=E5=B9=B6=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E4=BB=A3=E7=90=86=E9=92=B1=E5=8C=85=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/tenant/vo/tenant/TenantPageReqVO.java | 3 +++ .../admin/tenant/vo/tenant/TenantRespVO.java | 3 +++ .../admin/tenant/vo/tenant/TenantSaveReqVO.java | 4 ++++ .../system/dal/dataobject/tenant/TenantDO.java | 6 ++++++ .../system/dal/mysql/tenant/TenantMapper.java | 1 + .../system/service/tenant/TenantServiceImpl.java | 14 ++++++++++++++ 6 files changed, 31 insertions(+) diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java index 5fcca5b..dbd8875 100755 --- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java +++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java @@ -50,4 +50,7 @@ public class TenantPageReqVO extends PageParam { @Schema(description = "父租户Id") private Long parentId; + + @Schema(description = "租户类型", example = "代理/客户") + private String tenantType; } diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java index 72d28d8..b53cbcc 100755 --- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java +++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java @@ -66,4 +66,7 @@ public class TenantRespVO { @Schema(description = "上级租户 Id", example = "1024") private Long parentId; + + @Schema(description = "租户类型", example = "代理/客户") + private String tenantType; } diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java index 9df617a..a1bce11 100644 --- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java +++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java @@ -86,4 +86,8 @@ public class TenantSaveReqVO { @Schema(description = "备注", example = "备注") private String remark; + @Schema(description = "租户类型", example = "代理/客户") + @NotNull(message = "租户类型不能为空") + private String tenantType; + } diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/tenant/TenantDO.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/tenant/TenantDO.java index d998f96..9f1be24 100644 --- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/tenant/TenantDO.java +++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/dataobject/tenant/TenantDO.java @@ -100,4 +100,10 @@ public class TenantDO extends BaseDO { */ private String remark; + + + /** + * 租户类型 + */ + private String tenantType; } diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/tenant/TenantMapper.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/tenant/TenantMapper.java index 9d54788..dbd10fe 100755 --- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/tenant/TenantMapper.java +++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/tenant/TenantMapper.java @@ -28,6 +28,7 @@ public interface TenantMapper extends BaseMapperX { .likeIfPresent(TenantDO::getContactName, reqVO.getContactName()) .likeIfPresent(TenantDO::getContactMobile, reqVO.getContactMobile()) .eqIfPresent(TenantDO::getStatus, reqVO.getStatus()) + .eqIfPresent(TenantDO::getTenantType, reqVO.getTenantType()) .betweenIfPresent(TenantDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(TenantDO::getAiExpireTime, reqVO.getAiExpireTime()) .betweenIfPresent(TenantDO::getExpireTime, reqVO.getExpireTime()) diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java index 2f1fffa..e196d7f 100755 --- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java +++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/tenant/TenantServiceImpl.java @@ -21,7 +21,9 @@ import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO; import cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO; import cn.iocoder.yudao.module.system.dal.dataobject.tenant.TenantDO; import cn.iocoder.yudao.module.system.dal.dataobject.tenant.TenantPackageDO; +import cn.iocoder.yudao.module.system.dal.dataobject.tenantbalance.TenantBalanceDO; import cn.iocoder.yudao.module.system.dal.mysql.tenant.TenantMapper; +import cn.iocoder.yudao.module.system.dal.mysql.tenantbalance.TenantBalanceMapper; import cn.iocoder.yudao.module.system.enums.permission.RoleCodeEnum; import cn.iocoder.yudao.module.system.enums.permission.RoleTypeEnum; import cn.iocoder.yudao.module.system.service.permission.MenuService; @@ -74,6 +76,8 @@ public class TenantServiceImpl implements TenantService { private MenuService menuService; @Resource private PermissionService permissionService; + @Resource + private TenantBalanceMapper tenantBalanceMapper; @Override public List getTenantIdList() { @@ -127,6 +131,16 @@ public class TenantServiceImpl implements TenantService { // 修改租户的管理员 tenantMapper.updateById(new TenantDO().setId(tenant.getId()).setContactUserId(userId)); }); + // 初始化代理钱包 + if (tenant.getTenantType().equals("代理")) { + // 创建租户的钱包 + TenantBalanceDO tenantBalance = new TenantBalanceDO(); + tenantBalance.setId(tenant.getId()); + tenantBalance.setBalance(0); + tenantBalance.setVersion(0); + tenantBalanceMapper.insert(tenantBalance); + } + return tenant.getId(); }