cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/SiteBooking.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java
New file @@ -0,0 +1,22 @@ package com.dsh.account.feignclient.other; import com.dsh.account.feignclient.other.model.SiteBooking; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @FeignClient("mb-cloud-other") public interface SiteClient { @PostMapping("/base/site/queryPaymentSiteDetail") List<SiteBooking> getAllSiteBookingList(@RequestBody Integer appUserId); @PostMapping("/base/site/queryPlaypaiGoldSiteDetail") List<SiteBooking> wanpaiGoldSiteBookingList(@RequestBody Integer appUserId); } cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/SiteBooking.java
New file @@ -0,0 +1,125 @@ package com.dsh.account.feignclient.other.model; import lombok.Data; import java.util.Date; /** * @author zhibing.pu * @date 2023/7/13 16:11 */ @Data public class SiteBooking { /** * 主键 */ private Integer id; /** * 业务流水号 */ private String orderNo; /** * 省 */ private String province; /** * 省编号 */ private String provinceCode; /** * 市名称 */ private String city; /** * 市编号 */ private String cityCode; /** * 门店id */ private Integer storeId; /** * 场地id */ private Integer siteId; /** * 用户id */ private Integer appUserId; /** * 预约时段 */ private String times; /** * 预约开始时间 */ private Date startTime; /** * 预约结束 */ private Date endTime; /** * 预约人 */ private String booker; /** * 联系方式 */ private String phone; /** * 支付方式(1=微信,2=支付宝,3=玩湃比,4=手动支付) */ private Integer payType; /** * 支付时间 */ private Date payTime; /** * 支付金额 */ private Double payMoney; /** * 优惠券id */ private Long userCouponId; /** * 状态(0=待支付,1=待核销,2=已到店,3=已完成,4=已过期,5=已取消) */ private Integer status; /** * 第三方支付流水号 */ private String payOrderNo; /** * 手动支付操作用户id */ private Integer payUserId; /** * 取消用户id */ private Integer cancelUserId; /** * 取消凭证 */ private String voucher; /** * 取消备注 */ private String remark; /** * 取消时间 */ private Date cancelTime; /** * 第三方取消退款流水号 */ private String refundOrderNo; /** * 状态(1=正常,2=冻结,3=删除) */ private Integer state; /** * 添加时间 */ private Date insertTime; } cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java
@@ -10,6 +10,8 @@ import com.dsh.account.feignclient.course.CoursePaymentClient; import com.dsh.account.feignclient.course.model.TCoursePackagePayment; import com.dsh.account.feignclient.other.RechargeConfigClient; import com.dsh.account.feignclient.other.SiteClient; import com.dsh.account.feignclient.other.model.SiteBooking; import com.dsh.account.mapper.RechargeRecordsMapper; import com.dsh.account.mapper.TAppUserMapper; import com.dsh.account.model.vo.userBenefitDetail.RechargeDetailsVo; @@ -25,11 +27,9 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.*; /** * <p> @@ -57,6 +57,9 @@ @Autowired private PayMoneyUtil payMoneyUtil; @Resource private SiteClient stClient; @Resource @@ -108,8 +111,16 @@ } } // 3.场地预约 // TODO: 2023/7/14 充值明细的场地预约查询 List<SiteBooking> siteBookings = stClient.wanpaiGoldSiteBookingList(appUserId); if (siteBookings.size() > 0 ){ for (SiteBooking booking : siteBookings) { RechargeDetailsVo.RechargesDetail consumeDetail = new RechargeDetailsVo.RechargesDetail(); consumeDetail.setConsumeName(RechargeRecordEnum.VENUE_RESERVATION.name()); consumeDetail.setConsumeTime(simpleDateFormat.format(booking.getInsertTime())); consumeDetail.setConsumeAmount("-" + booking.getPayMoney()); details.add(consumeDetail); } } // 4.智慧球场 // 5.充值 @@ -126,6 +137,21 @@ details.add(consumeDetail); } } if (details.size() > 0 ){ Collections.sort(details, new Comparator<RechargeDetailsVo.RechargesDetail>() { @Override public int compare(RechargeDetailsVo.RechargesDetail o1, RechargeDetailsVo.RechargesDetail o2) { try { Date date1 = simpleDateFormat.parse(o1.getConsumeTime()); Date date2 = simpleDateFormat.parse(o2.getConsumeTime()); return date2.compareTo(date1); // 降序排序 } catch (ParseException e) { e.printStackTrace(); } return 0; } }); } vo.setDetailList(details); return vo; } cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
@@ -17,7 +17,9 @@ 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.SiteClient; import com.dsh.account.feignclient.other.StoreClient; import com.dsh.account.feignclient.other.model.SiteBooking; import com.dsh.account.feignclient.other.model.Store; import com.dsh.account.feignclient.other.model.StoreDetailOfCourse; import com.dsh.account.feignclient.other.model.TImgConfig; @@ -119,8 +121,11 @@ @Resource private CoursePackageConfigClient cpconClient; @Autowired @Resource private PayMoneyUtil payMoneyUtil; @Resource private SiteClient stClient; @Override public ClassInfoVo queryUserOfStus(Integer id,String latitude,String longitude) { @@ -545,7 +550,22 @@ } } // 4.场地预约 // TODO: 2023/7/14 账单的场地预约查询 List<SiteBooking> allSiteBookingList = stClient.getAllSiteBookingList(appUserId); if (allSiteBookingList.size() > 0){ for (SiteBooking booking : allSiteBookingList) { BillingDetailsVo.ConsumeDetail consumeDetail = new BillingDetailsVo.ConsumeDetail(); if (booking.getStatus() != 5){ consumeDetail.setConsumeName(RechargeRecordEnum.VENUE_RESERVATION.getMsg()); consumeDetail.setConsumeAmount("-" + booking.getPayMoney()); consumeDetail.setConsumeTime(simpleDateFormat.format(booking.getPayTime())); }else { consumeDetail.setConsumeName(RechargeRecordEnum.CANCEL_VENUE_RESERVATION.getMsg()); consumeDetail.setConsumeAmount("+" + booking.getPayMoney()); consumeDetail.setConsumeTime(simpleDateFormat.format(booking.getCancelTime())); } details.add(consumeDetail); } } // 5.智慧球场 // 6.年度会员 cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
@@ -22,6 +22,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.PrintWriter; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; @@ -353,5 +354,43 @@ } } /** * 查询所有现金支付的预约记录 * @param appUserId * @return */ @PostMapping("/base/site/queryPaymentSiteDetail") public List<SiteBooking> getAllSiteBookingList(@RequestBody Integer appUserId){ ArrayList<Integer> integers = new ArrayList<>(); integers.add(1); integers.add(2); integers.add(3); integers.add(4); integers.add(5); return siteBookingService.list(new QueryWrapper<SiteBooking>() .in("status",integers) .ne("payType",3) .eq("appUserId",appUserId)); } /** * 查询所有玩湃币支付的预约记录 * @param appUserId * @return */ @PostMapping("/base/site/queryPlaypaiGoldSiteDetail") public List<SiteBooking> wanpaiGoldSiteBookingList(@RequestBody Integer appUserId){ ArrayList<Integer> integers = new ArrayList<>(); integers.add(1); integers.add(2); integers.add(3); integers.add(4); integers.add(5); return siteBookingService.list(new QueryWrapper<SiteBooking>() .in("status",integers) .eq("payType",3) .eq("appUserId",appUserId)); } } cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java
New file @@ -0,0 +1,20 @@ package com.dsh.other.feignclient; import com.dsh.other.entity.SiteBooking; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @FeignClient("mb-cloud-other") public interface SiteClient { @PostMapping("/base/site/queryPaymentSiteDetail") List<SiteBooking> getAllSiteBookingList(@RequestBody Integer appUserId); @PostMapping("/base/site/queryPlaypaiGoldSiteDetail") List<SiteBooking> wanpaiGoldSiteBookingList(@RequestBody Integer appUserId); }