diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/card/CardMapper.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/card/CardMapper.java index 2593ecee..ac920563 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/card/CardMapper.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/card/CardMapper.java @@ -81,11 +81,12 @@ public interface CardMapper extends BaseMapperX { } return lastCardDO.getMoney(); } - default List getMoneyByUserIds(Collection userIds , String flag, String type,Integer var,Integer var2){ + default List getMoneyByUserIds(Collection userIds , String flag, String type,Integer var,Integer var2,Long groupId){ List cardDOS = selectList(new LambdaQueryWrapperX() .eq(CardDO::getFlag, flag) .eq(CardDO::getType, type) .eq(CardDO::getBillingExist, var) + .eqIfPresent(CardDO::getGroupId,groupId) .in(CardDO::getUserId, userIds)); DateTime date = DateUtil.date(); int year = date.year(); @@ -97,10 +98,11 @@ public interface CardMapper extends BaseMapperX { return cardDOS.stream().filter(f-> f.getCreateTime().getMonth().getValue()!=i).collect(Collectors.toList()); } } - default BigDecimal getTotalMoneyByuserIds(Collection userIds, String flag, String type,Integer var) { - List cardDOS = selectList(new LambdaQueryWrapper() + default BigDecimal getTotalMoneyByuserIds(Collection userIds, String flag, String type,Integer var,Long groupId) { + List cardDOS = selectList(new LambdaQueryWrapperX() .eq(CardDO::getFlag, flag) .eq(CardDO::getType, type) + .eqIfPresent(CardDO::getGroupId,groupId) .eq(CardDO::getBillingExist, BillingStatusEnum.BILLING_INVOICING_REJECTION.getCode()) .in(CardDO::getUserId, userIds)); DateTime date = DateUtil.date(); diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/billing/BillingServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/billing/BillingServiceImpl.java index 47507854..f12a89b1 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/billing/BillingServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/billing/BillingServiceImpl.java @@ -254,7 +254,7 @@ public class BillingServiceImpl implements BillingService { billing.setCarteenId(memberGroupService.getGroup(createReqVO.getUserId()).getCarteenId()); billing.setUserId(billing.getUserId()); //查询单位充值的金额 - List moneyByUserIds = cardMapper.getMoneyByUserIds(createReqVO.getOrderId(), CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(),BillingStatusEnum.BILLING_INVOICING_REJECTION.getCode(),getMonth()); + List moneyByUserIds = cardMapper.getMoneyByUserIds(createReqVO.getOrderId(), CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(),BillingStatusEnum.BILLING_INVOICING_REJECTION.getCode(),getMonth(),createReqVO.getUserId()); if(CollUtil.isEmpty(moneyByUserIds))throw exception(BILLING_NOT_ORDER_EXISTS); BigDecimal totalMoney = moneyByUserIds.stream() .map(CardDO::getChangeMoney) @@ -456,9 +456,9 @@ public class BillingServiceImpl implements BillingService { response.setMothMoney(new BigDecimal(0)); return response; } - BigDecimal moneyByUserIds = cardMapper.getTotalMoneyByuserIds(memberList, CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(),getMonth()); + BigDecimal moneyByUserIds = cardMapper.getTotalMoneyByuserIds(memberList, CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(),getMonth(),userId); int i = DateUtil.date().monthBaseOne(); - BigDecimal month = cardMapper.getTotalMoneyByuserIds(memberList, CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(),i); + BigDecimal month = cardMapper.getTotalMoneyByuserIds(memberList, CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(),i,userId); response.setWithoutMoney(moneyByUserIds); response.setMothMoney(month); return response; @@ -594,7 +594,7 @@ public class BillingServiceImpl implements BillingService { if(CollUtil.isEmpty(ids)){ return new BigDecimal(0); } - List moneyByUserIds = cardMapper.getMoneyByUserIds(ids, CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(), BillingStatusEnum.BILLING_INVOICING_REJECTION.getCode(),getMonth()); + List moneyByUserIds = cardMapper.getMoneyByUserIds(ids, CardDO.ADD, CostTypeEnum.ADMIN_PAY.getCode(), BillingStatusEnum.BILLING_INVOICING_REJECTION.getCode(),getMonth(),vo.getUserId()); return moneyByUserIds.stream() .map(CardDO::getChangeMoney) .filter(Objects::nonNull)