cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/DeductionCompetitionsClient.java
@@ -2,6 +2,7 @@ import com.dsh.account.feignclient.competition.model.GetStuSourseList; import com.dsh.account.feignclient.competition.model.PaymentCompetition; import com.dsh.account.feignclient.competition.model.PurchaseRecordVo; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; @@ -14,4 +15,9 @@ @PostMapping("/base/competition/getCompetitionsDetails") List<PurchaseRecordVo> getStuSourseList(@RequestBody GetStuSourseList getStuSourseList); @PostMapping("/base/competition/getPayedCompetitions") List<PaymentCompetition> getAllCompetitionPayRecord(@RequestBody Integer appUserId); @PostMapping("/base/competition/getCancelOrderOfUserPay") public List<PaymentCompetition> getCancelOrderOfUserPayRecord(@RequestBody Integer appUserId); } cloud-server-account/src/main/java/com/dsh/account/feignclient/competition/model/PaymentCompetition.java
New file @@ -0,0 +1,65 @@ package com.dsh.account.feignclient.competition.model; import lombok.Data; import java.util.Date; /** * @author zhibing.pu * @date 2023/7/6 16:30 */ @Data public class PaymentCompetition { /** * 主键 */ private Long id; /** * 业务流水号 */ private String code; /** * 赛事id */ private Integer competitionId; /** * 用户id */ private Integer appUserId; /** * 支付方式(1=微信,2=支付宝,3=玩湃币,4=课时) */ private Integer payType; /** * 支付金额 */ private Double amount; /** * 支付状态(1=待支付,2=已支付,3=已退款) */ private Integer payStatus; /** * 支付时间 */ private Date payTime; /** * 第三方支付流水号 */ private String payOrderNo; /** * 退款时间 */ private Date refundTime; /** * 第三方退款流水 */ private String refundOrderNo; /** * 状态(1=正常,2=冻结,3=删除) */ private Integer state; /** * 添加时间 */ private Date insertTime; } cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
@@ -49,4 +49,7 @@ @PostMapping("/base/coursePack/savePaymentCoursePackage") public boolean savePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment); @PostMapping("/base/coursePack/allAmountPayRecordOfUser") public List<TCoursePackagePayment> getAmountPayRecord(@RequestBody Integer appUserId); } cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
@@ -107,7 +107,7 @@ /** * 获取用户账单列表 * @param yearMonth 年月 * @param recordId 记录id * @param recordId 记录 * @return */ BillingDetailsVo queryUserBillingDetails(String yearMonth, Integer recordId,Integer appUserId); cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
@@ -12,12 +12,11 @@ import com.dsh.account.feignclient.activity.UserConponClient; import com.dsh.account.feignclient.activity.model.CommodityRequest; import com.dsh.account.feignclient.activity.model.PointsMerchandise; import com.dsh.account.feignclient.competition.DeductionCompetitionsClient; import com.dsh.account.feignclient.competition.model.PaymentCompetition; import com.dsh.account.feignclient.course.CoursePackageClient; import com.dsh.account.feignclient.course.CoursePaymentClient; import com.dsh.account.feignclient.course.model.CourseOfStoreVo; import com.dsh.account.feignclient.course.model.CoursePackage; import com.dsh.account.feignclient.course.model.QueryStoreList; import com.dsh.account.feignclient.course.model.StuCourseResp; import com.dsh.account.feignclient.course.model.*; import com.dsh.account.feignclient.other.ImgConfigClient; import com.dsh.account.feignclient.other.RechargeConfigClient; import com.dsh.account.feignclient.other.StoreClient; @@ -110,6 +109,9 @@ @Resource private CoursePackageClient cpageClient; @Resource private DeductionCompetitionsClient deducClient; @Override public ClassInfoVo queryUserOfStus(Integer id,String latitude,String longitude) { @@ -489,7 +491,6 @@ BillingDetailsVo vo = new BillingDetailsVo(); List<BillingDetailsVo.ConsumeDetail> details = new ArrayList<>(); // TODO: 2023/7/11 账单记录查询 SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM-dd HH:mm"); Date monthStart = null; Date monthEnd = null; @@ -501,11 +502,41 @@ monthEnd = DateTimeHelper.getCurrentMouthEnd(); } // 1.赛事报名 // 2.课包购买 // 3.场地预约 // 4.智慧球场 // 5.年度会员 List<PaymentCompetition> allCompetitionPayRecord = deducClient.getAllCompetitionPayRecord(appUserId); if (allCompetitionPayRecord.size() > 0 ){ for (PaymentCompetition paymentCompetition : allCompetitionPayRecord) { BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); consumeDetail.setConsumeName(RechargeRecordEnum.EVENT_REGISTRATION.getMsg()); consumeDetail.setConsumeTime(simpleDateFormat.format(paymentCompetition.getInsertTime())); consumeDetail.setConsumeAmount("-" + paymentCompetition.getAmount()); details.add(consumeDetail); } } // 2.取消赛事报名 List<PaymentCompetition> cancelOrderOfUserPayRecord = deducClient.getCancelOrderOfUserPayRecord(appUserId); if (cancelOrderOfUserPayRecord.size() > 0 ){ for (PaymentCompetition paymentCompetition : cancelOrderOfUserPayRecord) { BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); consumeDetail.setConsumeName(RechargeRecordEnum.CANCEL_EVENT_REGISTRATION.getMsg()); consumeDetail.setConsumeTime(simpleDateFormat.format(paymentCompetition.getInsertTime())); consumeDetail.setConsumeAmount("+" + paymentCompetition.getAmount()); details.add(consumeDetail); } } // 3.课包购买 List<TCoursePackagePayment> amountPayRecord = paymentClient.getAmountPayRecord(appUserId); if (amountPayRecord.size() > 0 ){ for (TCoursePackagePayment coursePackagePayment : amountPayRecord) { BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); consumeDetail.setConsumeName(RechargeRecordEnum.COURSE_PACKAGE_PURCHASE.getMsg()); consumeDetail.setConsumeTime(simpleDateFormat.format(coursePackagePayment.getInsertTime())); consumeDetail.setConsumeAmount("-" + coursePackagePayment.getCashPayment()); details.add(consumeDetail); } } // 4.场地预约 // 5.智慧球场 // 6.年度会员 List<VipPayment> vipPayments = vipPaymentMapper.selectList(new QueryWrapper<VipPayment>() .eq("payStatus", 2) .eq("appUserId", appUserId) @@ -515,11 +546,10 @@ BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); consumeDetail.setConsumeName(RechargeRecordEnum.ANNUAL_MEMBERSHIP.getMsg()); consumeDetail.setConsumeTime(simpleDateFormat.format(vipPayment.getInsertTime())); consumeDetail.setConsumeAmount("+" + vipPayment.getAmount()); consumeDetail.setConsumeAmount("-" + vipPayment.getAmount()); details.add(consumeDetail); } } // 6.续课 // 7.充值 List<RechargeRecords> rechargeRecords = rrMapper.selectList(new QueryWrapper<RechargeRecords>() .eq("payStatus", 2) @@ -530,7 +560,7 @@ BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); consumeDetail.setConsumeName(RechargeRecordEnum.RECHARGE.getMsg() + ":" + rechargeRecord.getPlayPaiCoins()); consumeDetail.setConsumeTime(simpleDateFormat.format(rechargeRecord.getInsertTime())); consumeDetail.setConsumeAmount("+" + rechargeRecord.getAmount()); consumeDetail.setConsumeAmount("-" + rechargeRecord.getAmount()); details.add(consumeDetail); } } cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
@@ -63,8 +63,29 @@ private IPaymentCompetitionService paymentCompetitionService; @PostMapping("/base/competition/getPayedCompetitions") public List<PaymentCompetition> getAllCompetitionPayRecord(@RequestBody Integer appUserId){ List<Integer> integers = new ArrayList<>(); integers.add(1); integers.add(2); return paymentCompetitionService.list(new QueryWrapper<PaymentCompetition>() .in("payType",integers) .eq("appUserId",appUserId) .eq("payStatus",2)); } @PostMapping("/base/competition/getCancelOrderOfUserPay") public List<PaymentCompetition> getCancelOrderOfUserPayRecord(@RequestBody Integer appUserId){ List<Integer> integers = new ArrayList<>(); integers.add(1); integers.add(2); return paymentCompetitionService.list(new QueryWrapper<PaymentCompetition>() .in("payType",integers) .eq("appUserId",appUserId) .eq("payStatus",3)); } @PostMapping("/base/competition/getCompetitionsDetails") cloud-server-competition/src/main/java/com/dsh/competition/feignclient/DeductionCompetitionsClient.java
@@ -1,6 +1,7 @@ package com.dsh.competition.feignclient; import com.dsh.competition.entity.PaymentCompetition; import com.dsh.competition.feignclient.model.GetStuSourseList; import com.dsh.competition.feignclient.model.PurchaseRecordVo; import org.springframework.cloud.openfeign.FeignClient; @@ -15,4 +16,10 @@ @PostMapping("/base/competition/getCompetitionsDetails") public List<PurchaseRecordVo> getStuSourseList(@RequestBody GetStuSourseList sourseList); @PostMapping("/base/competition/getPayedCompetitions") List<PaymentCompetition> getAllCompetitionPayRecord(@RequestBody Integer appUserId); @PostMapping("/base/competition/getCancelOrderOfUserPay") public List<PaymentCompetition> getCancelOrderOfUserPayRecord(@RequestBody Integer appUserId); } cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
@@ -338,6 +338,15 @@ .eq("state",1)); } @PostMapping("/base/coursePack/allAmountPayRecordOfUser") public List<TCoursePackagePayment> getAmountPayRecord(@RequestBody Integer appUserId){ return packagePaymentService.list(new QueryWrapper<TCoursePackagePayment>() .eq("appUserId",appUserId) .notIn("payType",3) .eq("payStatus",2) .eq("state",1)); } @ResponseBody @PostMapping("/api/course/queryArrangeCourseList") cloud-server-course/src/main/java/com/dsh/course/feignclient/CoursePaymentClient.java
@@ -55,4 +55,7 @@ @PostMapping("/base/coursePack/savePaymentCoursePackage") public boolean savePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment); @PostMapping("/base/coursePack/allAmountPayRecordOfUser") public List<TCoursePackagePayment> getAmountPayRecord(@RequestBody Integer appUserId); }