diff --git a/agileboot-api/src/main/java/com/agileboot/api/controller/PaymentController.java b/agileboot-api/src/main/java/com/agileboot/api/controller/PaymentController.java index 509b39a..d18cf77 100644 --- a/agileboot-api/src/main/java/com/agileboot/api/controller/PaymentController.java +++ b/agileboot-api/src/main/java/com/agileboot/api/controller/PaymentController.java @@ -334,6 +334,11 @@ public class PaymentController { public ResponseDTO getBalanceByQyUserid(@RequestParam String corpid, @RequestParam String userid) { QyUserEntity qyUser = qyUserApplicationService.getUserByUserIdAndCorpid(userid, corpid); + Ab98UserEntity ab98User = null; + if (qyUser.getAb98UserId()!= null) { + ab98User = ab98UserApplicationService.getByAb98UserId(qyUser.getAb98UserId()); + } + // 创建响应对象(假设GetBalanceResponse包含balance字段) GetBalanceResponse response = new GetBalanceResponse( qyUser.getUserid(), @@ -341,7 +346,7 @@ public class PaymentController { qyUser.getBalance(), qyUser.getUseBalance(), qyUser.getBalanceLimit(), - null); + ab98User); return ResponseDTO.ok(response); } diff --git a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java index ad074a8..171a49d 100644 --- a/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java +++ b/agileboot-domain/src/main/java/com/agileboot/domain/shop/order/OrderApplicationService.java @@ -417,29 +417,29 @@ public class OrderApplicationService { // 构建订单查询条件 QueryWrapper orderQueryWrapper = new QueryWrapper<>(); // 添加 openid 作为查询条件 - orderQueryWrapper.eq("openid", openid); - // 如果 Ab98 用户信息存在 - if (ab98User != null) { - // 添加 or 条件,根据 Ab98 用户的 userid 查询订单 - orderQueryWrapper.or() - .eq("userid", ab98User.getUserid()); + orderQueryWrapper.and(wrapper -> { + wrapper.eq("openid", openid); + // 如果 Ab98 用户信息存在 + if (ab98User != null) { + // 添加 or 条件,根据 Ab98 用户的 userid 查询订单 + wrapper.or() + .eq("userid", ab98User.getUserid()); - // 如果 corpid 不为空 - if (StringUtils.isNotBlank(corpid)) { - // 根据 Ab98 用户的 ab98UserId 和 corpid 获取企业微信用户信息 - QyUserEntity qyUser = qyUserService.getUserByAb98UserId(ab98User.getAb98UserId(), corpid); - // 如果企业微信用户信息存在 - if (qyUser!= null) { - // 添加 or 条件,根据企业微信用户的 userid 查询订单 - orderQueryWrapper.or() - .eq("userid", qyUser.getUserid()); + // 如果 corpid 不为空 + if (StringUtils.isNotBlank(corpid)) { + // 根据 Ab98 用户的 ab98UserId 和 corpid 获取企业微信用户信息 + QyUserEntity qyUser = qyUserService.getUserByAb98UserId(ab98User.getAb98UserId(), corpid); + // 如果企业微信用户信息存在 + if (qyUser!= null) { + // 添加 or 条件,根据企业微信用户的 userid 查询订单 + wrapper.or() + .eq("userid", qyUser.getUserid()); + } } } - } + }); // 根据查询条件获取订单列表 - if (Integer.valueOf(1).equals(hasReturn)) { - orderQueryWrapper.eq("pay_status", 2); - } + orderQueryWrapper.eq("pay_status", 2); List orderList = orderService.list(orderQueryWrapper); // 构建订单商品查询条件 @@ -487,29 +487,29 @@ public class OrderApplicationService { // 构建订单查询条件 QueryWrapper orderQueryWrapper = new QueryWrapper<>(); // 添加企业微信用户的 userid 作为查询条件 - orderQueryWrapper.eq("userid", qyUser.getUserid()); - // 如果企业微信用户的 ab98UserId 不为空 - if (qyUser.getAb98UserId() != null) { - // 根据 ab98UserId 获取 Ab98 用户信息 - Ab98UserEntity ab98User = ab98UserService.getById(qyUser.getAb98UserId()); - // 如果 Ab98 用户信息存在 - if (ab98User!= null) { - // 添加 or 条件,根据 Ab98 用户的 userid 查询订单 - orderQueryWrapper.or() - .eq("userid", ab98User.getUserid()); + orderQueryWrapper.and(wrapper -> { + wrapper.eq("userid", qyUser.getUserid()); + // 如果企业微信用户的 ab98UserId 不为空 + if (qyUser.getAb98UserId() != null) { + // 根据 ab98UserId 获取 Ab98 用户信息 + Ab98UserEntity ab98User = ab98UserService.getById(qyUser.getAb98UserId()); + // 如果 Ab98 用户信息存在 + if (ab98User!= null) { + // 添加 or 条件,根据 Ab98 用户的 userid 查询订单 + wrapper.or() + .eq("userid", ab98User.getUserid()); - // 如果 Ab98 用户的 openid 不为空 - if (StringUtils.isNotBlank(ab98User.getOpenid())) { - // 添加 or 条件,根据 Ab98 用户的 openid 查询订单 - orderQueryWrapper.or() - .eq("openid", ab98User.getOpenid()); + // 如果 Ab98 用户的 openid 不为空 + if (StringUtils.isNotBlank(ab98User.getOpenid())) { + // 添加 or 条件,根据 Ab98 用户的 openid 查询订单 + wrapper.or() + .eq("openid", ab98User.getOpenid()); + } } } - } + }); // 根据查询条件获取订单列表 - if (Integer.valueOf(1).equals(hasReturn)) { - orderQueryWrapper.eq("pay_status", 2); - } + orderQueryWrapper.eq("pay_status", 2); List orderList = orderService.list(orderQueryWrapper); // 构建订单商品查询条件 diff --git a/sql/20250703.sql b/sql/20250703.sql index 99ac130..88a18fb 100644 --- a/sql/20250703.sql +++ b/sql/20250703.sql @@ -17,5 +17,8 @@ CREATE TABLE `user_balance_record` ( KEY `idx_ab98_user_id` (`ab98_user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户余额交易记录表'; +ALTER TABLE `ab98_user` +ADD COLUMN `ab98_balance` INT NOT NULL DEFAULT 0 COMMENT '用户余额(单位:分)'; + ALTER TABLE `ab98_user` ADD COLUMN `ab98_balance` INT NOT NULL DEFAULT 0 COMMENT '用户余额(单位:分)'; \ No newline at end of file