diff --git a/src/main/java/com/yolo/keyborad/config/AppConfig.java b/src/main/java/com/yolo/keyborad/config/AppConfig.java index f6c2d2c..2d5dbc7 100644 --- a/src/main/java/com/yolo/keyborad/config/AppConfig.java +++ b/src/main/java/com/yolo/keyborad/config/AppConfig.java @@ -17,6 +17,8 @@ public class AppConfig { private LLmConfig llmConfig = new LLmConfig(); + private inviteConfig inviteConfig = new inviteConfig(); + @Data public static class UserRegisterProperties { @@ -48,4 +50,8 @@ public class AppConfig { private Integer maxMessageLength = 1000; } + @Data + public static class inviteConfig { + private String h5Link = ""; + } } diff --git a/src/main/java/com/yolo/keyborad/controller/UserController.java b/src/main/java/com/yolo/keyborad/controller/UserController.java index ef2d7c1..10a97ad 100644 --- a/src/main/java/com/yolo/keyborad/controller/UserController.java +++ b/src/main/java/com/yolo/keyborad/controller/UserController.java @@ -143,11 +143,6 @@ public class UserController { @Operation(summary = "查询邀请码", description = "查询用户自己的邀请码") public BaseResponse getInviteCode() { long userId = StpUtil.getLoginIdAsLong(); - KeyboardUserInviteCodes inviteCode = inviteCodesService.getUserInviteCode(userId); - if (inviteCode == null) { - inviteCode = inviteCodesService.createInviteCode(userId); - } - InviteCodeRespVO respVO = BeanUtil.copyProperties(inviteCode, InviteCodeRespVO.class); - return ResultUtils.success(respVO); + return ResultUtils.success( inviteCodesService.getUserInviteCode(userId)); } } \ No newline at end of file diff --git a/src/main/java/com/yolo/keyborad/model/vo/user/InviteCodeRespVO.java b/src/main/java/com/yolo/keyborad/model/vo/user/InviteCodeRespVO.java index f9c155f..9d59955 100644 --- a/src/main/java/com/yolo/keyborad/model/vo/user/InviteCodeRespVO.java +++ b/src/main/java/com/yolo/keyborad/model/vo/user/InviteCodeRespVO.java @@ -26,4 +26,7 @@ public class InviteCodeRespVO { @Schema(description = "过期时间") private Date expiresAt; + + @Schema(description = "H5链接") + private String h5Link; } diff --git a/src/main/java/com/yolo/keyborad/service/KeyboardUserInviteCodesService.java b/src/main/java/com/yolo/keyborad/service/KeyboardUserInviteCodesService.java index 7741b42..df9387f 100644 --- a/src/main/java/com/yolo/keyborad/service/KeyboardUserInviteCodesService.java +++ b/src/main/java/com/yolo/keyborad/service/KeyboardUserInviteCodesService.java @@ -2,7 +2,8 @@ package com.yolo.keyborad.service; import com.yolo.keyborad.model.entity.KeyboardUserInviteCodes; import com.baomidou.mybatisplus.extension.service.IService; - /* +import com.yolo.keyborad.model.vo.user.InviteCodeRespVO; +/* * @author: ziin * @date: 2025/12/18 16:26 */ @@ -21,7 +22,7 @@ public interface KeyboardUserInviteCodesService extends IService implements KeyboardUserInviteCodesService{ + private final NacosAppConfigCenter.DynamicAppConfig cfgHolder; + + public KeyboardUserInviteCodesServiceImpl(NacosAppConfigCenter.DynamicAppConfig cfgHolder) { + this.cfgHolder = cfgHolder; + } + + @Override - public KeyboardUserInviteCodes getUserInviteCode(Long userId) { + public InviteCodeRespVO getUserInviteCode(Long userId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("owner_user_id", userId); - return this.getOne(queryWrapper); + KeyboardUserInviteCodes one = this.getOne(queryWrapper); + if (one == null) { + one = createInviteCode(userId); + } + InviteCodeRespVO inviteCodeRespVO = BeanUtil.copyProperties(one, InviteCodeRespVO.class); + AppConfig appConfig = cfgHolder.getRef().get(); + inviteCodeRespVO.setH5Link(appConfig.getInviteConfig().getH5Link()); + return inviteCodeRespVO; } @Override @@ -62,6 +80,7 @@ public class KeyboardUserInviteCodesServiceImpl extends ServiceImpl