diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/amount/WxRechargeServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/amount/WxRechargeServiceImpl.java index 65dd9b5e..0bca36d8 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/amount/WxRechargeServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/amount/WxRechargeServiceImpl.java @@ -69,9 +69,11 @@ public class WxRechargeServiceImpl implements WxRechargeService { //获取最新余额 MemberUserDO memberUserDO = userMapper.selectById(userId); List allDebt = moneyService.getAllDebt(userId); + List debtId = new ArrayList<>(); BigDecimal debtAmount = BigDecimal.ZERO; if(CollectionUtil.isNotEmpty(allDebt)){ debtAmount = allDebt.stream().map(MoneyDO::getDebtAmount).reduce(BigDecimal.ZERO, BigDecimal::add); + debtId= allDebt.stream().map(MoneyDO::getId).collect(Collectors.toList()); } BigDecimal wxOldMoney = memberUserDO.getWxAmount(); BigDecimal giftOldMoney = memberUserDO.getGiftAmount(); @@ -115,7 +117,7 @@ public class WxRechargeServiceImpl implements WxRechargeService { } moneyService.updateList(allDebt); }else { - moneyService.cleanDebt(userId); + moneyService.cleanDebt(debtId); //处理未完全支付订单 handleOrderWx(userId, money, wxAmount, giftAmount,null); if(wxAmount.add(debtAmount).compareTo(BigDecimal.ZERO) >= 0){ diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyService.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyService.java index abdd527e..79a24a77 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyService.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyService.java @@ -68,5 +68,5 @@ public interface MoneyService { void updateList(List moneyDOs); - void cleanDebt(Long userId); + void cleanDebt(List debtId ); } \ No newline at end of file diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyServiceImpl.java index 04bed751..91b9f649 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/money/MoneyServiceImpl.java @@ -103,8 +103,11 @@ public class MoneyServiceImpl implements MoneyService { } @Override - public void cleanDebt(Long userId) { - moneyMapper.update(new LambdaUpdateWrapper().eq(MoneyDO::getUserId, userId) - .set(MoneyDO::getDebtAmount, BigDecimal.ZERO)); + public void cleanDebt(List debtId) { + if(CollectionUtil.isNotEmpty(debtId)){ + moneyMapper.update(new LambdaUpdateWrapper().in(MoneyDO::getId, debtId) + .set(MoneyDO::getDebtAmount, BigDecimal.ZERO)); + } + } } \ No newline at end of file diff --git a/yudao-module-member/yudao-module-member-biz/src/main/resources/mapper/customizeExcel/CustomizeExcelMapper.xml b/yudao-module-member/yudao-module-member-biz/src/main/resources/mapper/customizeExcel/CustomizeExcelMapper.xml index 1bce20ce..45a900f5 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/resources/mapper/customizeExcel/CustomizeExcelMapper.xml +++ b/yudao-module-member/yudao-module-member-biz/src/main/resources/mapper/customizeExcel/CustomizeExcelMapper.xml @@ -142,7 +142,7 @@ left join member_tag mt on mu.tag_ids = mt.id where subsidy_amount > 0 and mdo.deleted = false and mdo.store_id = #{carteenId} - and DATE_FORMAT(mdo.create_time, '%Y-%m-%d') BETWEEN #{startTime} AND #{endTime} + and DATE_FORMAT(mdo.create_time, '%Y-%m-%d %H:%i:%s') BETWEEN #{startTime} AND #{endTime}