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