From 9eb13929c8574e2b994db1e06f600d44f14af4a1 Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期三, 19 七月 2023 17:38:23 +0800
Subject: [PATCH] 使用明细:充值明细的场地预约记录查询
---
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java | 22 ++++
cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java | 20 ++++
cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java | 24 ++++
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java | 39 +++++++
cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java | 38 ++++++-
cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/SiteBooking.java | 125 +++++++++++++++++++++++++
6 files changed, 260 insertions(+), 8 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java
new file mode 100644
index 0000000..4a5661e
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java
@@ -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);
+
+
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/SiteBooking.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/SiteBooking.java
new file mode 100644
index 0000000..586b9dd
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/model/SiteBooking.java
@@ -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;
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java
index db3d035..daf66de 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/RechargeRecordsServiceImpl.java
+++ b/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;
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
index 96b94e1..97acc47 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java
+++ b/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.年度会员
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
index 2b42da9..5111d86 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
+++ b/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));
+ }
+
}
diff --git a/cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java b/cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java
new file mode 100644
index 0000000..8f03d45
--- /dev/null
+++ b/cloud-server-other/src/main/java/com/dsh/other/feignclient/SiteClient.java
@@ -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);
+
+}
--
Gitblit v1.7.1