From 1d44c20eabc99e9970fb58d4dbd3a94d77e83e39 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期五, 07 三月 2025 18:35:50 +0800 Subject: [PATCH] 冥想 --- xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWalletRecordController.java | 131 ++++++++++++++++++++++++++++++++++++------- 1 files changed, 108 insertions(+), 23 deletions(-) diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWalletRecordController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWalletRecordController.java index 65268ac..3152ce1 100644 --- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWalletRecordController.java +++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWalletRecordController.java @@ -12,6 +12,8 @@ import com.xinquan.common.security.utils.SecurityUtils; import com.xinquan.course.api.domain.Course; import com.xinquan.course.api.feign.RemoteCourseService; +import com.xinquan.meditation.api.domain.Meditation; +import com.xinquan.meditation.api.feign.RemoteMeditationService; import com.xinquan.order.api.domain.Order; import com.xinquan.order.api.feign.RemoteOrderService; import com.xinquan.system.api.domain.AppUser; @@ -63,10 +65,22 @@ private RemoteOrderService remoteOrderService; @Resource private RemoteCourseService remoteCourseService; + @Resource + private RemoteMeditationService remoteMeditationService; // 用户获得分佣收益 新增一条余额明细记录 @PostMapping("/addBalanceRecord") public R addBalanceRecord(@RequestBody AppUserWalletRecord appUserWalletRecord) { appUserWalletRecordService.save(appUserWalletRecord); + if(appUserWalletRecord.getReason().contains("分佣")){ + AppUser byId = appUserService.getById(appUserWalletRecord.getAppUserId()); + byId.setBalance(byId.getBalance().add(appUserWalletRecord.getAmount())); + appUserService.updateById(byId); + } + if (appUserWalletRecord.getChangeType() == 2){ + AppUser byId = appUserService.getById(appUserWalletRecord.getAppUserId()); + byId.setBalance(byId.getBalance().subtract(appUserWalletRecord.getAmount())); + appUserService.updateById(byId); + } return R.ok(); } @@ -77,8 +91,8 @@ String endTime = null; if (org.springframework.util.StringUtils.hasLength(dto.getTime())){ String[] split = dto.getTime().split(" - "); - startTime = split[0]+"00:00:00"; - endTime = split[1]+"23:59:59"; + startTime = split[0]+" 00:00:00"; + endTime = split[1]+" 23:59:59"; } String userId = dto.getUid(); LambdaQueryWrapper<AppUser> appUserWalletRecordLambdaQueryWrapper = new LambdaQueryWrapper<>(); @@ -86,6 +100,7 @@ appUserWalletRecordLambdaQueryWrapper.eq(AppUser::getInviteUserId, userId); appUserWalletRecordLambdaQueryWrapper.like(StringUtils.hasLength(dto.getCellPhone()),AppUser::getCellPhone,dto.getCellPhone()); appUserWalletRecordLambdaQueryWrapper.like(StringUtils.hasLength(dto.getNickName()),AppUser::getNickname,dto.getNickName()); + appUserWalletRecordLambdaQueryWrapper.eq(StringUtils.hasLength(dto.getUserStatus()),AppUser::getUserStatus,dto.getUserStatus()); appUserWalletRecordLambdaQueryWrapper.orderByDesc(BaseModel::getCreateTime); Page<AppUser> page = appUserService .page(new Page<>(dto.getPageCurr(), dto.getPageSize()),appUserWalletRecordLambdaQueryWrapper); @@ -95,9 +110,11 @@ } for (AppUser record : page.getRecords()) { // 查询该用户带来收益 - List<AppUserWalletRecord> list = appUserWalletRecordService.lambdaQuery().eq(AppUserWalletRecord::getAppUserId, record.getId()) - .eq(AppUserWalletRecord::getChildAppUserId, record.getUserId()).list(); + List<AppUserWalletRecord> list = appUserWalletRecordService.lambdaQuery() + .eq(AppUserWalletRecord::getAppUserId, userId) + .eq(AppUserWalletRecord::getChildAppUserId, record.getId()).list(); BigDecimal bigDecimal = new BigDecimal("0"); + record.setMoney(new BigDecimal("0")); for (AppUserWalletRecord appUserWalletRecord : list) { if (appUserWalletRecord.getAmount()!=null && appUserWalletRecord.getChangeType() == 1){ bigDecimal = bigDecimal.add(appUserWalletRecord.getAmount()); @@ -114,8 +131,8 @@ String endTime = null; if (org.springframework.util.StringUtils.hasLength(dto.getTime())){ String[] split = dto.getTime().split(" - "); - startTime = split[0]+"00:00:00"; - endTime = split[1]+"23:59:59"; + startTime = split[0]+" 00:00:00"; + endTime = split[1]+" 23:59:59"; } String userId = dto.getUid(); LambdaQueryWrapper<AppUserWalletRecord> appUserWalletRecordLambdaQueryWrapper = new LambdaQueryWrapper<>(); @@ -128,6 +145,20 @@ if (CollUtils.isEmpty(page.getRecords())){ PageDTO<OrderListVO> empty = PageDTO.empty(page); return R.ok(empty); + } + for (AppUserWalletRecord record : page.getRecords()) { + if (record.getReason().equals("后台退款")){ + record.setId(record.getOrderId()); + } + if (record.getReason().contains("课程")){ + record.setId(record.getOrderId()); + } + if (record.getReason().contains("疗愈")){ + record.setId(record.getOrderId()); + } + if (record.getReason().contains("会员")){ + record.setId(record.getOrderId()); + } } return R.ok(PageDTO.of(page, OrderListVO.class)); } @@ -158,6 +189,7 @@ appUserWalletRecordLambdaQueryWrapper.eq(AppUserWalletRecord::getChangeType, state-1); } appUserWalletRecordLambdaQueryWrapper.eq(AppUserWalletRecord::getAppUserId, userId); + appUserWalletRecordLambdaQueryWrapper.ne(AppUserWalletRecord::getAmount, 0); appUserWalletRecordLambdaQueryWrapper.orderByDesc(BaseModel::getCreateTime); Page<AppUserWalletRecord> page = walletRecordService .page(new Page<>(pageCurr, pageSize),appUserWalletRecordLambdaQueryWrapper); @@ -182,18 +214,25 @@ if (byId.getReason().equals("提现")){ AppUserWithdraw byId1 = appUserWithdrawService.getById(byId.getOrderId()); orderDetailVO.setType("提现"); + orderDetailVO.setRemark("银行卡提现"); orderDetailVO.setPayOrderNo(byId1.getSerialNo()); orderDetailVO.setWithdrawType(byId1.getWithdrawType()); orderDetailVO.setAmount(byId1.getAmount()); orderDetailVO.setChangeType(byId.getChangeType()); - orderDetailVO.setPaymentTime(byId1.getUpdateTime()); + orderDetailVO.setPaymentTime(byId1.getCreateTime()); }else if (byId.getReason().equals("充值")){ Order one = remoteOrderService.getOrderById(byId.getOrderId()).getData(); - if (byId.getChildAppUserId() == null && one!=null){ + if (one!=null){ orderDetailVO.setType("充值"); orderDetailVO.setPayType(one.getPayType()); orderDetailVO.setPayOrderNo(one.getPayOrderNo()); - orderDetailVO.setRemark(one.getRemark()); + if (one.getPayType()==1){ + orderDetailVO.setRemark("微信支付"); + }else if (one.getPayType()==2){ + orderDetailVO.setRemark("支付宝支付"); + }else if (one.getPayType() == 3){ + orderDetailVO.setRemark("IOS内购"); + } orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setAmount(byId.getAmount()); orderDetailVO.setPaymentTime(one.getPaymentTime()); @@ -207,13 +246,13 @@ orderDetailVO.setPaymentTime(byId.getCreateTime()); orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setAmount(byId.getAmount()); - orderDetailVO.setRemark(one.getRemark()); + orderDetailVO.setRemark("分佣收益"); if (one.getCommissionId()!=null){ AppUser appUserById = appUserService.getById(one.getCommissionId()); orderDetailVO.setUserName(appUserById.getNickname()); orderDetailVO.setAvatar(appUserById.getAvatar()); } - return R.ok(new OrderDetailVO()); + return R.ok(orderDetailVO); } }else if (byId.getReason().equals("提现回退")){ AppUserWithdraw byId1 = appUserWithdrawService.getById(byId.getOrderId()); @@ -223,7 +262,8 @@ orderDetailVO.setAmount(byId1.getAmount()); orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setPaymentTime(byId1.getUpdateTime()); - return R.ok(new OrderDetailVO()); + orderDetailVO.setRemark(byId1.getReason()); + return R.ok(orderDetailVO); } } @@ -244,7 +284,7 @@ OrderDetailVO orderDetailVO = new OrderDetailVO(); AppUserWalletRecord byId = walletRecordService.getById(id); if (byId.getOrderId()!=null){ - if (byId.getReason().equals("提现")){ + if (byId.getReason().contains("提现")){ AppUserWithdraw byId1 = appUserWithdrawService.getById(byId.getOrderId()); orderDetailVO.setType("提现"); orderDetailVO.setPayOrderNo(byId1.getSerialNo()); @@ -252,33 +292,41 @@ orderDetailVO.setAmount(byId1.getAmount()); orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setPaymentTime(byId1.getUpdateTime()); + orderDetailVO.setRemark("银行卡提现"); }else if (byId.getReason().equals("充值")){ Order one = remoteOrderService.getOrderById(byId.getOrderId()).getData(); - if (byId.getChildAppUserId() == null && one!=null){ orderDetailVO.setType("充值"); orderDetailVO.setPayType(one.getPayType()); - orderDetailVO.setPayOrderNo(one.getPayOrderNo()); + orderDetailVO.setPayOrderNo(one.getBizOrderNo()); orderDetailVO.setRemark(one.getRemark()); orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setAmount(byId.getAmount()); orderDetailVO.setPaymentTime(one.getPaymentTime()); - return R.ok(orderDetailVO); - } + if (one.getPayType()==1){ + orderDetailVO.setRemark("微信支付"); + }else if (one.getPayType()==2){ + orderDetailVO.setRemark("支付宝支付"); + }else if (one.getPayType() == 3){ + orderDetailVO.setRemark("IOS内购"); + } + + return R.ok(orderDetailVO); }else if (byId.getReason().equals("分佣收益")){ Order one = remoteOrderService.getOrderById(byId.getOrderId()).getData(); if (byId.getChildAppUserId()!=null && one!=null){ orderDetailVO.setType("分佣"); - orderDetailVO.setPayOrderNo(one.getPayOrderNo()); + orderDetailVO.setPayOrderNo(one.getBizOrderNo()); orderDetailVO.setPaymentTime(byId.getCreateTime()); orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setAmount(byId.getAmount()); orderDetailVO.setRemark(one.getRemark()); + orderDetailVO.setRemark("分佣收益"); if (one.getCommissionId()!=null){ - AppUser appUserById = appUserService.getById(one.getCommissionId()); + AppUser appUserById = appUserService.getById(one.getAppUserId()); orderDetailVO.setUserName(appUserById.getNickname()); orderDetailVO.setAvatar(appUserById.getAvatar()); } - return R.ok(new OrderDetailVO()); + return R.ok(orderDetailVO); } }else if (byId.getReason().equals("提现回退")){ AppUserWithdraw byId1 = appUserWithdrawService.getById(byId.getOrderId()); @@ -288,17 +336,54 @@ orderDetailVO.setAmount(byId1.getAmount()); orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setPaymentTime(byId1.getUpdateTime()); - return R.ok(new OrderDetailVO()); + orderDetailVO.setRemark(byId1.getReason()); + return R.ok(orderDetailVO); }else if (byId.getReason().contains("课程")){ Order data = remoteOrderService.getOrderById(byId.getOrderId()).getData(); if (data!=null){ Course data1 = remoteCourseService.getCourseById(data.getBusinessId()).getData(); orderDetailVO.setType("课程购买"); - orderDetailVO.setPayOrderNo(data.getPayOrderNo()); - orderDetailVO.setAmount(data.getRealPayAmount()); + orderDetailVO.setPayOrderNo(data.getBizOrderNo()); + orderDetailVO.setAmount(data.getBalance()); orderDetailVO.setChangeType(byId.getChangeType()); orderDetailVO.setPaymentTime(data.getPaymentTime()); + if (data1!=null)orderDetailVO.setRemark("课程购买【"+data1.getCourseTitle()+"】"); + } + return R.ok(orderDetailVO); + + } else if (byId.getReason().contains("疗愈")) { + Order data = remoteOrderService.getOrderById(byId.getOrderId()).getData(); + if (data!=null){ + Meditation data1 = remoteMeditationService.getMeditationById(data.getBusinessId()).getData(); + orderDetailVO.setType("疗愈购买"); + orderDetailVO.setPayOrderNo(data.getBizOrderNo()); + orderDetailVO.setAmount(data.getBalance()); + orderDetailVO.setChangeType(2); + orderDetailVO.setPaymentTime(data.getPaymentTime()); + if (data1!=null)orderDetailVO.setRemark("疗愈购买【"+data1.getMeditationTitle()+"】"); + } + return R.ok(orderDetailVO); + }else if (byId.getReason().contains("退款")){ + Order data = remoteOrderService.getOrderById(byId.getOrderId()).getData(); + if (data!=null){ + orderDetailVO.setType("后台退款"); + orderDetailVO.setPayOrderNo(data.getRefundCode()); + orderDetailVO.setAmount(byId.getAmount()); + orderDetailVO.setChangeType(1); + orderDetailVO.setPaymentTime(data.getRefundTime()); + switch (data.getOrderFrom()){ + case 1: + Meditation data1 = remoteMeditationService.getMeditationById(data.getBusinessId()).getData(); + if (data1!=null)orderDetailVO.setRemark("疗愈购买【"+data1.getMeditationTitle()+"】"); + break; + case 2: + Course data2 = remoteCourseService.getCourseById(data.getBusinessId()).getData(); + if (data2!=null)orderDetailVO.setRemark("课程购买【"+data2.getCourseTitle()+"】"); + break; + } + } + } } return R.ok(orderDetailVO); -- Gitblit v1.7.1