From 3beb27e4919f6bb5e98191695b7a05383d5de441 Mon Sep 17 00:00:00 2001 From: xupei Date: Tue, 6 Jan 2026 09:56:21 +0800 Subject: [PATCH] =?UTF-8?q?TASK=EF=BC=9A=E8=8E=B7=E5=8F=96=E7=94=A8?= =?UTF-8?q?=E6=88=B7id=E4=BF=A1=E6=81=AF=E5=81=9A=E5=88=86=E9=A1=B5?= =?UTF-8?q?=EF=BC=9B=E8=AE=A2=E9=98=85=E8=AE=A1=E5=88=92=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=9B=BD=E5=AE=B6=E6=88=96=E5=9C=B0=E5=8C=BA=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConvenientInquiryController.java | 5 +- .../primary/entity/SubscriptionPlan.java | 5 ++ .../ai/da/model/dto/SubscriptionPlanDTO.java | 3 ++ .../model/dto/SubscriptionPlanPageQuery.java | 5 +- .../da/service/ConvenientInquiryService.java | 2 +- .../impl/ConvenientInquiryServiceImpl.java | 49 ++++++++++++------- .../impl/SubscriptionPlanServiceImpl.java | 11 ++++- 7 files changed, 58 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/ai/da/controller/ConvenientInquiryController.java b/src/main/java/com/ai/da/controller/ConvenientInquiryController.java index e4257c8f..8fa5942d 100644 --- a/src/main/java/com/ai/da/controller/ConvenientInquiryController.java +++ b/src/main/java/com/ai/da/controller/ConvenientInquiryController.java @@ -179,8 +179,9 @@ public class ConvenientInquiryController { @Operation(summary = "获取所有用户id") @GetMapping("/getAllUserId") - public Response>> getAllUsrIdList() { - return Response.success(convenientInquiryService.getAllUserIdList()); + public Response>> getAllUserIdList(@Parameter(description = "page") @RequestParam Integer page, + @Parameter(description = "size") @RequestParam Integer size) { + return Response.success(convenientInquiryService.getAllUserIdList(page, size)); } @Operation(summary = "获取所有交易信息") diff --git a/src/main/java/com/ai/da/mapper/primary/entity/SubscriptionPlan.java b/src/main/java/com/ai/da/mapper/primary/entity/SubscriptionPlan.java index bb632a98..c7fdb86b 100644 --- a/src/main/java/com/ai/da/mapper/primary/entity/SubscriptionPlan.java +++ b/src/main/java/com/ai/da/mapper/primary/entity/SubscriptionPlan.java @@ -67,6 +67,11 @@ public class SubscriptionPlan extends BaseEntity{ */ private String status; + /** + * 国家或地区 + */ + private String CountryOrRegion; + // 在类内部定义的枚举 @Getter public enum SubscriptionStatus { diff --git a/src/main/java/com/ai/da/model/dto/SubscriptionPlanDTO.java b/src/main/java/com/ai/da/model/dto/SubscriptionPlanDTO.java index 3dc1e5cd..0ad89d2d 100644 --- a/src/main/java/com/ai/da/model/dto/SubscriptionPlanDTO.java +++ b/src/main/java/com/ai/da/model/dto/SubscriptionPlanDTO.java @@ -48,4 +48,7 @@ public class SubscriptionPlanDTO { @Schema(description = "订阅计划状态") private String status; + @Schema(description = "国家或地区") + private String CountryOrRegion; + } diff --git a/src/main/java/com/ai/da/model/dto/SubscriptionPlanPageQuery.java b/src/main/java/com/ai/da/model/dto/SubscriptionPlanPageQuery.java index 122ad835..ec38afce 100644 --- a/src/main/java/com/ai/da/model/dto/SubscriptionPlanPageQuery.java +++ b/src/main/java/com/ai/da/model/dto/SubscriptionPlanPageQuery.java @@ -12,9 +12,12 @@ public class SubscriptionPlanPageQuery extends QueryPageByTimeDTO { @Schema(description = "组织id") private Long organizationId; - @Schema(description = "管理id") + @Schema(description = "管理员id") private Long adminAccId; @Schema(description = "状态 PENDING||ACTIVE||EXPIRED") private List status; + + @Schema(description = "国家或地区") + private String countryOrRegion; } diff --git a/src/main/java/com/ai/da/service/ConvenientInquiryService.java b/src/main/java/com/ai/da/service/ConvenientInquiryService.java index c09a0025..ed829648 100644 --- a/src/main/java/com/ai/da/service/ConvenientInquiryService.java +++ b/src/main/java/com/ai/da/service/ConvenientInquiryService.java @@ -51,7 +51,7 @@ public interface ConvenientInquiryService extends IService { IPage getUserInfo(QueryUserConditionsVO queryUserConditionsVO); - List> getAllUserIdList(); + IPage> getAllUserIdList(Integer pageNum, Integer pageSize); PageBaseResponse queryTransactionRecords(QueryPaymentInfoDTO queryPaymentInfoDTO); diff --git a/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java b/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java index 80b28aa9..6b6243cc 100644 --- a/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/ConvenientInquiryServiceImpl.java @@ -798,27 +798,42 @@ public class ConvenientInquiryServiceImpl extends ServiceImpl(queryUserConditionsVO.getPage(), queryUserConditionsVO.getSize()), queryWrapper); } - public List> getAllUserIdList() { + public IPage> getAllUserIdList(Integer pageNum, Integer pageSize) { Long accountId = UserContext.getUserHolder().getId(); Account account = accountMapper.selectById(accountId); - // 允许查看数据的用户id - if (Objects.nonNull(account.getSystemUser()) - && (account.getSystemUser().equals(5) - || account.getSystemUser().equals(7) - || ADMIN_IDS.contains(account.getId()) - || ADMIN_IDS_READ_ONLY.contains(account.getId()) - )) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("id as value, user_name as label"); - if ((account.getSystemUser().equals(7) || account.getSystemUser().equals(5)) - && !StringUtil.isNullOrEmpty(account.getOrganizationName())) { - queryWrapper.lambda().eq(Account::getOrganizationName, account.getOrganizationName()); - } - return accountMapper.selectMaps(queryWrapper); - } else { + + // 权限校验 + if (Objects.isNull(account.getSystemUser()) + || (!account.getSystemUser().equals(5) + && !account.getSystemUser().equals(7) + && !ADMIN_IDS.contains(account.getId()) + && !ADMIN_IDS_READ_ONLY.contains(account.getId()))) { throw new BusinessException("have.no.permission", ResultEnum.PROMPT.getCode()); } -// return maps.stream().map(map -> (Long)map.get("id")).collect(Collectors.toList()); + + // 创建分页对象 + Page page = new Page<>(pageNum, pageSize); + + // 构建查询条件 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.select("id", "user_name", "user_email"); + + if ((account.getSystemUser().equals(7) || account.getSystemUser().equals(5)) + && !StringUtil.isNullOrEmpty(account.getOrganizationName())) { + queryWrapper.lambda().eq(Account::getOrganizationName, account.getOrganizationName()); + } + + // 执行分页查询 + IPage accountPage = accountMapper.selectPage(page, queryWrapper); + + // 转换为 IPage 并重命名字段 + return accountPage.convert(acc -> { + Map map = new HashMap<>(); + map.put("value", acc.getId()); + map.put("label", acc.getUserName()); + map.put("email", acc.getUserEmail()); + return map; + }); } /** diff --git a/src/main/java/com/ai/da/service/impl/SubscriptionPlanServiceImpl.java b/src/main/java/com/ai/da/service/impl/SubscriptionPlanServiceImpl.java index 8b00a551..507d35d1 100644 --- a/src/main/java/com/ai/da/service/impl/SubscriptionPlanServiceImpl.java +++ b/src/main/java/com/ai/da/service/impl/SubscriptionPlanServiceImpl.java @@ -78,7 +78,7 @@ public class SubscriptionPlanServiceImpl extends ServiceImpl