From 7b65fb8c1001850e468a51c2d9af474621ce7115 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期二, 19 三月 2024 18:11:45 +0800
Subject: [PATCH] Merge branch '2.0' of http://120.76.84.145:10101/gitblit/r/java/PlayPai into 2.0
---
cloud-server-account/src/main/java/com/dsh/account/model/BillingRequest.java | 2
cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/PayMoneyUtil.java | 2
cloud-server-other/src/main/java/com/dsh/other/util/PayMoneyUtil.java | 4
cloud-server-activity/src/main/java/com/dsh/activity/service/impl/UserPointsMerchandiseServiceImpl.java | 9
cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 41 +
cloud-server-course/src/main/java/com/dsh/course/util/PayMoneyUtil.java | 4
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java | 108 ++--
cloud-server-activity/src/main/java/com/dsh/activity/model/UserCouponPayment.java | 3
cloud-server-other/src/main/java/com/dsh/other/model/BillingRequestOfType.java | 2
cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java | 2
cloud-server-activity/src/main/java/com/dsh/activity/entity/ConsumeDetail.java | 2
cloud-server-course/src/main/java/com/dsh/course/model/GetCoursePackagePaymentConfig.java | 15
cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java | 6
cloud-server-account/src/main/java/com/dsh/account/model/vo/userBenefitDetail/ConsumeDetail.java | 4
cloud-server-activity/src/main/java/com/dsh/activity/mapper/UserPointsMerchandiseMapper.java | 2
cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java | 19
cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java | 6
cloud-server-course/src/main/java/com/dsh/course/entity/AddCoursePackageOrderStudent.java | 19
cloud-server-account/src/main/java/com/dsh/account/controller/PaymentCallbackController.java | 4
cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java | 4
cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java | 41 +
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java | 10
cloud-server-other/src/main/java/com/dsh/other/model/SiteBookingVo.java | 149 ++++++
cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml | 12
cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/AddCoursePackageOrderStudent.java | 19
cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/GetCoursePackagePaymentConfig.java | 15
cloud-server-account/src/main/java/com/dsh/account/model/BillingRequestOfType.java | 2
cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java | 39 +
cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java | 3
cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java | 20
cloud-server-other/src/main/java/com/dsh/other/controller/GameController.java | 4
cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CoursePackageOrder.java | 105 ++++
cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java | 2
cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java | 20
cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponPaymentController.java | 1
cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/BillingRequest.java | 2
cloud-server-other/src/main/resources/mapper/SiteBookingMapper.xml | 7
cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java | 463 ++++++++++----------
cloud-server-activity/src/main/resources/mapper/UserPointsMerchandiseMapper.xml | 36 +
cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java | 24
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java | 7
cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java | 52 ++
cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java | 9
cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageOrder.java | 5
cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java | 2
cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java | 18
46 files changed, 931 insertions(+), 394 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
index 65c40ba..7ca773e 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java
@@ -518,15 +518,18 @@
@PostMapping("/base/appUser/updateAppUser")
public void updateAppUser(@RequestBody TAppUser appUser) {
try {
+ TAppUser appUser1 = appUserService.getById(appUser.getId());
appUserService.updateById(appUser);
- UserIntegralChanges userIntegralChanges = new UserIntegralChanges();
- userIntegralChanges.setAppUserId(appUser.getId());
- userIntegralChanges.setOldIntegral(appUser.getIntegral() + appUser.getPoints());
- userIntegralChanges.setType(5);
- userIntegralChanges.setNewIntegral(appUser.getIntegral());
- userIntegralChanges.setInsertTime(new Date());
- userIntegralChanges.setCategory(2);
- userIntegralChangesService.save(userIntegralChanges);
+ if(appUser.getIntegral().compareTo(appUser1.getIntegral()) != 0){
+ UserIntegralChanges userIntegralChanges = new UserIntegralChanges();
+ userIntegralChanges.setAppUserId(appUser.getId());
+ userIntegralChanges.setOldIntegral(appUser1.getIntegral());
+ userIntegralChanges.setType(5);
+ userIntegralChanges.setNewIntegral(appUser.getIntegral());
+ userIntegralChanges.setInsertTime(new Date());
+ userIntegralChanges.setCategory(2);
+ userIntegralChangesService.save(userIntegralChanges);
+ }
} catch (Exception e) {
e.printStackTrace();
diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/PaymentCallbackController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/PaymentCallbackController.java
index 24963ef..513f351 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/PaymentCallbackController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/PaymentCallbackController.java
@@ -152,7 +152,7 @@
String out_trade_no = map.get("out_trade_no");
String transaction_id = map.get("transaction_id");
String result = map.get("result");
- ResultUtil resultUtil = tappService.exchangeAddPaymentCallback(out_trade_no, transaction_id, 1);
+ ResultUtil resultUtil = tappService.exchangeAddPaymentCallback(out_trade_no, transaction_id);
if (resultUtil.getCode() == 200) {
PrintWriter out = response.getWriter();
out.write(result);
@@ -180,7 +180,7 @@
if (null != map) {
String out_trade_no = map.get("out_trade_no");
String trade_no = map.get("trade_no");
- ResultUtil resultUtil = tappService.exchangeAddPaymentCallback(out_trade_no, trade_no, 2);
+ ResultUtil resultUtil = tappService.exchangeAddPaymentCallback(out_trade_no, trade_no);
if (resultUtil.getCode() == 200) {
PrintWriter out = response.getWriter();
out.write("success");
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java
index c86181f..f0022ae 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/activity/model/UserPointsMerchandise.java
@@ -7,6 +7,7 @@
import lombok.Data;
import java.io.Serializable;
+import java.math.BigDecimal;
import java.util.Date;
/**
@@ -63,22 +64,23 @@
* 领取时间
*/
@TableField("insertTime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date insertTime;
/**
- * 现金支付方式(1=微信2支付宝)
+ * 现金支付方式(1=积分兑换,2=积分+现金)
*/
@TableField("payType")
private Integer payType;
+ /**
+ * 商品数量
+ */
+ @TableField("goodsNumber")
+ private Integer goodsNumber;
/**
* code
*/
@TableField("code")
private String code;
- /**
- * orderNumber
- */
- @TableField("orderNumber")
- private String orderNumber;
/**
* 现金的支付状态
*/
@@ -94,6 +96,31 @@
*/
@TableField("state")
private Integer state;
-
+ /**
+ * 积分支付数量
+ */
+ @TableField("integral")
+ private Integer integral;
+ /**
+ * 现金支付金额
+ */
+ @TableField("cash")
+ private BigDecimal cash;
+ /**
+ * 现金支付方式(1=微信,2=支付宝)
+ */
+ @TableField("cashPayType")
+ private Integer cashPayType;
+ /**
+ * 第三方支付流水号
+ */
+ @TableField("orderNumber")
+ private String orderNumber;
+ /**
+ * 支付时间
+ */
+ @TableField("paymentTime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date paymentTime;
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
index c08af8a..936321b 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java
@@ -63,7 +63,7 @@
void updatePaymentCoursePackage(@RequestBody TCoursePackagePayment coursePackagePayment);
@PostMapping("/base/coursePack/savePaymentCoursePackage")
- public boolean savePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment);
+ Long savePaymentCoursePackage(@RequestBody CoursePackageOrder coursePackageOrder);
@PostMapping("/base/coursePack/orderClass")
@@ -96,4 +96,22 @@
// Integer getClassHour(Integer courseConfigId);
+ @PostMapping("/course/addCoursePackageOrderStudent")
+ void addCoursePackageOrderStudent(@RequestBody AddCoursePackageOrderStudent addCoursePackageOrderStudent);
+
+
+ @PostMapping("/course/getCoursePackageOrderByCode")
+ CoursePackageOrder getCoursePackageOrderByCode(@RequestBody String code);
+
+
+ @PostMapping("/course/updateCoursePackageOrder")
+ void updateCoursePackageOrder(@RequestBody CoursePackageOrder coursePackageOrder);
+
+
+ @PostMapping("/course/getCoursePackagePaymentConfig")
+ CoursePackagePaymentConfig getCoursePackagePaymentConfig(@RequestBody GetCoursePackagePaymentConfig getCoursePackagePaymentConfig);
+
+
+ @PostMapping("/base/coursePack/getCoursePackageOrder")
+ List<CoursePackageOrder> getCoursePackageOrder(@RequestBody BillingDataRequestVo requestVo);
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/AddCoursePackageOrderStudent.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/AddCoursePackageOrderStudent.java
new file mode 100644
index 0000000..e611cdb
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/AddCoursePackageOrderStudent.java
@@ -0,0 +1,19 @@
+package com.dsh.account.feignclient.course.model;
+
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @date 2024/3/19 14:32
+ */
+@Data
+public class AddCoursePackageOrderStudent {
+ /**
+ * 购买记录id
+ */
+ private Long coursePackageOrderId;
+ /**
+ * 课包配置
+ */
+ private CoursePackagePaymentConfig coursePackagePaymentConfig;
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CoursePackageOrder.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CoursePackageOrder.java
new file mode 100644
index 0000000..9a272e1
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/CoursePackageOrder.java
@@ -0,0 +1,105 @@
+package com.dsh.account.feignclient.course.model;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author zhibing.pu
+ * @Date 2023/11/25 11:45
+ */
+@Data
+public class CoursePackageOrder {
+ /**
+ * 主键
+ */
+ private Long id;
+ /**
+ * 业务编号
+ */
+ private String code;
+ /**
+ * 用户id
+ */
+ private Integer appUserId;
+ /**
+ * 学员ids
+ */
+ private String studentIds;
+ /**
+ * 课包id
+ */
+ private Integer coursePackageId;
+ /**
+ * 支付方式(1=微信,2=支付宝,3=玩湃币,4=积分,5=积分+微信,6=积分+支付宝)
+ */
+ private Integer payType;
+ /**
+ * 课时数
+ */
+ private Integer classHours;
+ /**
+ * 原价
+ */
+ private Double originalPrice;
+ /**
+ * 优惠券id
+ */
+ private Long userCouponId;
+ /**
+ * 现金支付价格
+ */
+ private BigDecimal cashPayment;
+ /**
+ * 玩湃币价格/积分
+ */
+ private Integer playPaiCoin;
+ /**
+ * 支付用户类型(1=用户,2=管理员)
+ */
+ private Integer payUserType;
+ /**
+ * 支付状态(1=待支付,2=已支付)
+ */
+ private Integer payStatus;
+ /**
+ * 第三方支付流水号
+ */
+ private String orderNumber;
+ /**
+ * 支付用户id
+ */
+ private Integer payUserId;
+ /**
+ * 课程状态(1=正常,2=已退课)
+ */
+ private Integer status;
+ /**
+ * 状态(1=正常,2=冻结,3=删除)
+ */
+ private Integer state;
+ /**
+ * 添加时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date insertTime;
+ /**
+ * 平台手动支付时使用
+ */
+ private String payUserName;
+ /**
+ * 销售人员(线下购课添加购课订单时使用)
+ */
+ private String salesName;
+ /**
+ * 订单类型(1=购买订单,2=积分商品兑换订单)
+ */
+ @TableField("orderType")
+ private Integer orderType;
+
+ @TableField(exist = false)
+ private Integer type;
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/GetCoursePackagePaymentConfig.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/GetCoursePackagePaymentConfig.java
new file mode 100644
index 0000000..b767520
--- /dev/null
+++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/model/GetCoursePackagePaymentConfig.java
@@ -0,0 +1,15 @@
+package com.dsh.account.feignclient.course.model;
+
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @date 2024/3/19 15:32
+ */
+@Data
+public class GetCoursePackagePaymentConfig {
+
+ private Integer coursePackageId;
+
+ private Integer classHours;
+}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequest.java b/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequest.java
index 53edee7..5bb5fa1 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequest.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequest.java
@@ -18,4 +18,6 @@
* 金额
*/
private double amount;
+
+ private Long dateTime;
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequestOfType.java b/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequestOfType.java
index 6572ea5..4082713 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequestOfType.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/BillingRequestOfType.java
@@ -24,4 +24,6 @@
private String time1;
+ private Long dateTime;
+
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/model/vo/userBenefitDetail/ConsumeDetail.java b/cloud-server-account/src/main/java/com/dsh/account/model/vo/userBenefitDetail/ConsumeDetail.java
index bfd3eb9..1b04407 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/model/vo/userBenefitDetail/ConsumeDetail.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/model/vo/userBenefitDetail/ConsumeDetail.java
@@ -19,4 +19,8 @@
@ApiModelProperty(value = "1充值 2扣除")
private Integer type;
+ private Long time;
+
+ private Long dateTime;
+
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java b/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
index 99e1e4c..339e7b0 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java
@@ -161,7 +161,7 @@
- ResultUtil exchangeAddPaymentCallback(String code, String orderNumber, Integer payType);
+ ResultUtil exchangeAddPaymentCallback(String code, String orderNumber);
List<StoreResponse> queryStoresOfExchange(Integer goodsType, Integer pointsMerId);
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java b/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java
index dbb6be6..a1d1753 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/UserIntegralChangesService.java
@@ -31,7 +31,7 @@
* @param vo
* @throws Exception
*/
- void saveUserIntegralChanges(SaveUserIntegralChangesVo vo) throws Exception;
+ void saveUserIntegralChanges(SaveUserIntegralChangesVo vo);
List<ExchangeDetailsResponse> queryExchangeGoodsdetails(Integer userIdFormRedis, Integer useType, Integer goodType);
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 00b51ee..1214233 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
@@ -50,6 +50,7 @@
import com.dsh.account.service.IRefereeService;
import com.dsh.account.service.TAppGiftService;
import com.dsh.account.service.TAppUserService;
+import com.dsh.account.service.UserIntegralChangesService;
import com.dsh.account.util.*;
import com.dsh.account.util.akeylogin.Md5Util;
import com.dsh.account.vo.GroupCityInfoVO;
@@ -151,13 +152,14 @@
@Resource
private SiteClient stClient;
- @Autowired
+
+ @Resource
private TAppUserMapper appUserMapper;
@Autowired
private TAppGiftService appGiftService;
- @Autowired
+ @Resource
private IntroduceRewardsClient introduceRewardsClient;
private String aliAppid = "2021004105665036";//支付宝appid
@@ -185,6 +187,9 @@
@Resource
private WorldCupPaymentClinet worldCupPaymentClinet;
+
+ @Autowired
+ private UserIntegralChangesService userIntegralChangesService;
@@ -813,6 +818,7 @@
consumeDetail.setConsumeTime(paymentCompetition.getTime());
consumeDetail.setConsumeAmount("-" + paymentCompetition.getAmount());
consumeDetail.setType(2);
+ consumeDetail.setDateTime(paymentCompetition.getDateTime());
details.add(consumeDetail);
}
}
@@ -825,37 +831,21 @@
consumeDetail.setConsumeTime(paymentCompetition.getTime());
consumeDetail.setConsumeAmount("+" + paymentCompetition.getAmount());
consumeDetail.setType(1);
+ consumeDetail.setDateTime(paymentCompetition.getDateTime());
details.add(consumeDetail);
}
}
-// 3.课包购买
-// BillingRequestVo amountPayRecord = paymentClient.getAmountPayRecord(requestVo);
-// if (ToolUtil.isNotEmpty(amountPayRecord.getRequests())){
-// for (BillingRequest coursePackagePayment : amountPayRecord.getRequests()) {
-// ConsumeDetail consumeDetail = new ConsumeDetail();
-// consumeDetail.setConsumeName(RechargeRecordEnum.COURSE_PACKAGE_PURCHASE.getMsg());
-// consumeDetail.setConsumeTime(coursePackagePayment.getTime());
-// consumeDetail.setConsumeAmount("-" + coursePackagePayment.getAmount());
-// consumeDetail.setType(2);
-// details.add(consumeDetail);
-// }
-// }
- //2.0
- List<CourseCounsum> courseCounsums = paymentClient.getConsumes(requestVo);
+ //3.课包购买
+ List<CoursePackageOrder> coursePackageOrder = paymentClient.getCoursePackageOrder(requestVo);
- for (CourseCounsum courseCounsum : courseCounsums) {
+ for (CoursePackageOrder order : coursePackageOrder) {
ConsumeDetail consumeDetail = new ConsumeDetail();
- String[] split = courseCounsum.getReason().split(";");
- consumeDetail.setConsumeName(split[0]);
- consumeDetail.setConsumeTime(simpleDateFormat.format(courseCounsum.getInsertTime()));
-// if (courseCounsum.getChangeType()==3){
- consumeDetail.setConsumeAmount("-" + split[1]);
+ consumeDetail.setConsumeName("课程报名");
+ consumeDetail.setConsumeTime(simpleDateFormat.format(order.getInsertTime()));
+ consumeDetail.setConsumeAmount("-" + order.getCashPayment());
consumeDetail.setType(2);
-// }
-//
-// consumeDetail.setConsumeAmount("-" + coursePackagePayment.getAmount());
-// consumeDetail.setType(2);
+ consumeDetail.setDateTime(order.getInsertTime().getTime());
details.add(consumeDetail);
}
@@ -870,23 +860,25 @@
consumeDetail.setConsumeAmount("-" + booking.getAmount());
consumeDetail.setConsumeTime(booking.getTime());
consumeDetail.setType(2);
+ consumeDetail.setDateTime(booking.getDateTime());
details.add(consumeDetail);
} else {
ConsumeDetail consumeDetail1 = new ConsumeDetail();
consumeDetail1.setConsumeName(RechargeRecordEnum.CANCEL_VENUE_RESERVATION.getMsg());
consumeDetail1.setConsumeAmount("+" + booking.getAmount());
consumeDetail1.setConsumeTime(booking.getTime());
+ consumeDetail1.setDateTime(booking.getDateTime());
consumeDetail1.setType(1);
details.add(consumeDetail1);
+
ConsumeDetail consumeDetail2 = new ConsumeDetail();
consumeDetail2.setConsumeName(RechargeRecordEnum.VENUE_RESERVATION.getMsg());
consumeDetail2.setConsumeAmount("-" + booking.getAmount());
consumeDetail2.setConsumeTime(booking.getTime1());
consumeDetail2.setType(2);
+ consumeDetail2.setDateTime(booking.getDateTime());
details.add(consumeDetail2);
-
}
-// details.add(consumeDetail);
}
}
@@ -903,6 +895,7 @@
consumeDetail.setConsumeTime(simpleDateFormat.format(vipPayment.getInsertTime()));
consumeDetail.setConsumeAmount("-" + vipPayment.getAmount());
consumeDetail.setType(2);
+ consumeDetail.setDateTime(vipPayment.getPayTime().getTime());
details.add(consumeDetail);
}
}
@@ -918,6 +911,7 @@
consumeDetail.setConsumeTime(simpleDateFormat.format(rechargeRecord.getInsertTime()));
consumeDetail.setConsumeAmount("-" + rechargeRecord.getAmount());
consumeDetail.setType(2);
+ consumeDetail.setDateTime(rechargeRecord.getPayTime().getTime());
details.add(consumeDetail);
}
}
@@ -927,31 +921,6 @@
List<ConsumeDetail> consumeDetails = mcClient.getConsumeDetails(requestVo);
details.addAll(consumeDetails);
-
- if (details.size() > 0) {
- Collections.sort(details, new Comparator<ConsumeDetail>() {
- @Override
- public int compare(ConsumeDetail record1, ConsumeDetail record2) {
- SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd HH:mm");
- Date date1 = null;
- Date date2 = null;
- try {
- date1 = dateFormat.parse(record1.getConsumeTime());
- date2 = dateFormat.parse(record2.getConsumeTime());
- } catch (ParseException e) {
- e.printStackTrace();
- }
- // 倒序排序
- return date2.compareTo(date1);
- }
- });
-
- if (ToolUtil.isNotEmpty(recordId)) {
- details = details.stream()
- .filter(response -> Objects.equals(response.getType(), recordId))
- .collect(Collectors.toList());
- }
- }
//世界杯
GetWorldCupPayment getWorldCupPayment = new GetWorldCupPayment();
@@ -967,6 +936,7 @@
consumeDetail.setConsumeTime(simpleDateFormat.format(cupPayment.getCreateTime()));
consumeDetail.setConsumeAmount("-" + cupPayment.getAmount());
consumeDetail.setType(2);
+ consumeDetail.setDateTime(cupPayment.getPayTime().getTime());
details.add(consumeDetail);
}else{
consumeDetail = new ConsumeDetail();
@@ -974,6 +944,7 @@
consumeDetail.setConsumeTime(simpleDateFormat.format(cupPayment.getCreateTime()));
consumeDetail.setConsumeAmount("-" + cupPayment.getAmount());
consumeDetail.setType(2);
+ consumeDetail.setDateTime(cupPayment.getPayTime().getTime());
details.add(consumeDetail);
consumeDetail = new ConsumeDetail();
@@ -981,7 +952,23 @@
consumeDetail.setConsumeTime(simpleDateFormat.format(cupPayment.getCreateTime()));
consumeDetail.setConsumeAmount("+" + cupPayment.getRefundAmount());
consumeDetail.setType(1);
+ consumeDetail.setDateTime(cupPayment.getRefundTime().getTime());
details.add(consumeDetail);
+ }
+ }
+
+ if (details.size() > 0) {
+ Collections.sort(details, new Comparator<ConsumeDetail>() {
+ @Override
+ public int compare(ConsumeDetail record1, ConsumeDetail record2) {
+ return record1.getDateTime().compareTo(record2.getDateTime()) * -1;
+ }
+ });
+
+ if (ToolUtil.isNotEmpty(recordId)) {
+ details = details.stream()
+ .filter(response -> Objects.equals(response.getType(), recordId))
+ .collect(Collectors.toList());
}
}
@@ -1487,118 +1474,136 @@
return ResultUtil.error("超过发放数量");
}
-
- for (int i = 0; i < goodsNums; i++) {
-// 新增积分商品兑换记录
- UserPointsMerchandise pointsMerchandise = new UserPointsMerchandise();
- pointsMerchandise.setPointsMerchandiseId(exchangeType.getGoodId());
- pointsMerchandise.setUserId(userIdFormRedis);
- if (exchangeType.getGoodsType() == 2) {
- pointsMerchandise.setStatus(2);
- pointsMerchandise.setVerificationTime(new Date());
- } else {
- pointsMerchandise.setStatus(1);
- }
- pointsMerchandise.setState(1);
- if (exchangeType.getExchangeType() == 1) {
- pointsMerchandise.setPayStatus(2);
- } else {
- pointsMerchandise.setPayStatus(1);
- }
- if (merchandise.getUseScope() == 3) {
- if (exchangeType.getGoodsType() == 2) {
- CoursePackage coursePackage = cpageClient.queryCoursePackageById(merchandise.getCoursePackageId());
- pointsMerchandise.setStoreId(coursePackage.getStoreId());
- } else {
- pointsMerchandise.setStoreId(exchangeType.getStoreId());
- }
- }
- pointsMerchandise.setCode(code);
- pointsMerchandise.setInsertTime(new Date());
- returnId = mcClient.saveDetailsUserPointMercase(pointsMerchandise);
+ //新增积分商品兑换记录
+ UserPointsMerchandise pointsMerchandise = new UserPointsMerchandise();
+ pointsMerchandise.setPointsMerchandiseId(exchangeType.getGoodId());
+ pointsMerchandise.setUserId(userIdFormRedis);
+ pointsMerchandise.setGoodsNumber(goodsNums);
+ if (exchangeType.getGoodsType() == 2) {
+ pointsMerchandise.setStatus(2);
+ pointsMerchandise.setVerificationTime(new Date());
+ } else {
+ pointsMerchandise.setStatus(1);
}
+ pointsMerchandise.setState(1);
+ if (exchangeType.getExchangeType() == 1) {
+ pointsMerchandise.setPayStatus(2);
+ pointsMerchandise.setPaymentTime(new Date());
+ } else {
+ pointsMerchandise.setPayStatus(1);
+ }
+ if (merchandise.getUseScope() == 3) {
+ if (exchangeType.getGoodsType() == 2) {
+ CoursePackage coursePackage = cpageClient.queryCoursePackageById(merchandise.getCoursePackageId());
+ pointsMerchandise.setStoreId(coursePackage.getStoreId());
+ } else {
+ pointsMerchandise.setStoreId(exchangeType.getStoreId());
+ }
+ }
+ pointsMerchandise.setCode(code);
+ pointsMerchandise.setInsertTime(new Date());
+ pointsMerchandise.setPayType(exchangeType.getExchangeType());
+ pointsMerchandise.setIntegral(merchandise.getIntegral() * goodsNums);
+ if(exchangeType.getExchangeType() == 2){
+ pointsMerchandise.setCash(merchandise.getCash());
+ pointsMerchandise.setCashPayType(exchangeType.getPayType());
+ }
+ returnId = mcClient.saveDetailsUserPointMercase(pointsMerchandise);
+
switch (exchangeType.getExchangeType()) {
// 积分
case 1:
- boolean b = true;
- for (int i = 0; i < goodsNums; i++) {
- b = dealAppUserIntegral(userIdFormRedis, tAppUser, merchandise.getIntegral());
+ boolean b = dealAppUserIntegral(userIdFormRedis, tAppUser, merchandise.getIntegral() * goodsNums);
+ if (b) switch (exchangeType.getGoodsType()) {
+ case 2:
+ code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
+ List<CoursePackagePaymentConfig> courseConfigList = cpconClient.getCourseConfigList(merchandise.getCoursePackageId());
+ CoursePackageOrder coursePackageOrder = new CoursePackageOrder();
+ coursePackageOrder.setCode(code);
+ coursePackageOrder.setAppUserId(userIdFormRedis);
+ String ids = exchangeType.getStuIds().stream().map(s -> {
+ return String.valueOf(s);
+ }).collect(Collectors.joining(";"));
+ coursePackageOrder.setStudentIds(ids);
+ coursePackageOrder.setCoursePackageId(merchandise.getCoursePackageId());
+ coursePackageOrder.setPayType(4);
+ CoursePackagePaymentConfig config = null;
+ for (CoursePackagePaymentConfig coursePackagePaymentConfig : courseConfigList) {
+ if (coursePackagePaymentConfig.getId().compareTo(merchandise.getCoursePackageConfigId()) == 0) {
+ coursePackageOrder.setClassHours(coursePackagePaymentConfig.getClassHours());
+ coursePackageOrder.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
+
+ config = coursePackagePaymentConfig;
+ break;
+ }
+ }
+ coursePackageOrder.setPlayPaiCoin(merchandise.getIntegral());
+ coursePackageOrder.setPayUserType(1);
+ coursePackageOrder.setPayStatus(2);
+ coursePackageOrder.setPayUserId(userIdFormRedis);
+ coursePackageOrder.setStatus(1);
+ coursePackageOrder.setState(1);
+ coursePackageOrder.setInsertTime(new Date());
+ coursePackageOrder.setOrderType(2);
+ Long coursePackageOrderId = paymentClient.savePaymentCoursePackage(coursePackageOrder);
+
+ AddCoursePackageOrderStudent addCoursePackageOrderStudent = new AddCoursePackageOrderStudent();
+ addCoursePackageOrderStudent.setCoursePackageOrderId(coursePackageOrderId);
+ addCoursePackageOrderStudent.setCoursePackagePaymentConfig(config);
+ paymentClient.addCoursePackageOrderStudent(addCoursePackageOrderStudent);
+ break;
+ case 4:
+ for (int i = 0; i < goodsNums; i++) {
+ UserCoupon coupon = new UserCoupon();
+ coupon.setCouponId(exchangeType.getGoodId());
+ coupon.setUserId(userIdFormRedis);
+ coupon.setStatus(1);
+ coupon.setInsertTime(new Date());
+ ucponClient.insertToAppuserCoupon(coupon);
+ }
+ break;
+ default:
+ break;
}
- if (b) {
- switch (exchangeType.getGoodsType()) {
- case 2:
- Integer stuNums = 0;
- if (ToolUtil.isNotEmpty(exchangeType.getStuIds())) {
- stuNums = exchangeType.getStuIds().size();
- } else {
- stuNums = 1;
- }
- for (int i = 0; i < stuNums; i++) {
- List<CoursePackagePaymentConfig> courseConfigList = cpconClient.getCourseConfigList(merchandise.getCoursePackageId());
- TCoursePackagePayment packagePayment = new TCoursePackagePayment();
- packagePayment.setAppUserId(userIdFormRedis);
- packagePayment.setStudentId(exchangeType.getStuIds().get(i));
- packagePayment.setCoursePackageId(merchandise.getCoursePackageId());
- for (CoursePackagePaymentConfig coursePackagePaymentConfig : courseConfigList) {
- if (Objects.equals(coursePackagePaymentConfig.getId(), merchandise.getCoursePackageConfigId())) {
- packagePayment.setClassHours(coursePackagePaymentConfig.getClassHours());
- packagePayment.setTotalClassHours(coursePackagePaymentConfig.getClassHours());
- packagePayment.setLaveClassHours(coursePackagePaymentConfig.getClassHours());
- packagePayment.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
- break;
- }
- }
- packagePayment.setPlayPaiCoin(merchandise.getIntegral());
- packagePayment.setAbsencesNumber(0);
- packagePayment.setPayUserType(1);
- packagePayment.setPayStatus(2);
- packagePayment.setPayUserId(userIdFormRedis);
- packagePayment.setStatus(1);
- packagePayment.setState(1);
- packagePayment.setCode(code);
- packagePayment.setInsertTime(new Date());
-// paymentClient.savePaymentCoursePackage(packagePayment);
-
- OrderDto orderDto = new OrderDto();
- orderDto.setAppUserId(userIdFormRedis);
- String joinedString = String.join(",", exchangeType.getStuIds().stream().map(Object::toString).collect(Collectors.toList()));
- orderDto.setStuIds(joinedString);
- orderDto.setClassId(merchandise.getCoursePackageId());
- orderDto.setClassHours(packagePayment.getClassHours());
- paymentClient.orderClass(orderDto);
-
-
- }
- break;
- case 4:
- for (int i = 0; i < goodsNums; i++) {
- UserCoupon coupon = new UserCoupon();
- coupon.setCouponId(exchangeType.getGoodId());
- coupon.setUserId(userIdFormRedis);
- coupon.setStatus(1);
- coupon.setInsertTime(new Date());
- ucponClient.insertToAppuserCoupon(coupon);
- }
- break;
- default:
- break;
- }
- } else {
+ else {
return ResultUtil.error("用户积分不足!");
}
break;
case 2:
// 积分+现金
- boolean dealt = true;
- for (int i = 0; i < goodsNums; i++) {
- dealt = dealAppUserIntegral(userIdFormRedis, tAppUser, merchandise.getIntegral());
- }
-
switch (exchangeType.getPayType()) {
case 1:
try {
if (merchandise.getType() == 2) {
+ List<CoursePackagePaymentConfig> courseConfigList = cpconClient.getCourseConfigList(merchandise.getCoursePackageId());
+ CoursePackageOrder coursePackageOrder = new CoursePackageOrder();
+ coursePackageOrder.setCode(code);
+ coursePackageOrder.setAppUserId(userIdFormRedis);
+ String ids = exchangeType.getStuIds().stream().map(s -> {
+ return String.valueOf(s);
+ }).collect(Collectors.joining(";"));
+ coursePackageOrder.setStudentIds(ids);
+ coursePackageOrder.setCoursePackageId(merchandise.getCoursePackageId());
+ coursePackageOrder.setPayType(5);
+ CoursePackagePaymentConfig config = null;
+ for (CoursePackagePaymentConfig coursePackagePaymentConfig : courseConfigList) {
+ if (coursePackagePaymentConfig.getId().compareTo(merchandise.getCoursePackageConfigId()) == 0) {
+ coursePackageOrder.setClassHours(coursePackagePaymentConfig.getClassHours());
+ coursePackageOrder.setOriginalPrice(coursePackagePaymentConfig.getCashPayment());
+ break;
+ }
+ }
+ coursePackageOrder.setCashPayment(merchandise.getCash().multiply(new BigDecimal(exchangeType.getStuIds().size())));
+ coursePackageOrder.setPlayPaiCoin(merchandise.getIntegral() * exchangeType.getStuIds().size());
+ coursePackageOrder.setPayUserType(1);
+ coursePackageOrder.setPayStatus(1);
+ coursePackageOrder.setPayUserId(userIdFormRedis);
+ coursePackageOrder.setStatus(1);
+ coursePackageOrder.setState(1);
+ coursePackageOrder.setInsertTime(new Date());
+ coursePackageOrder.setOrderType(2);
+ paymentClient.savePaymentCoursePackage(coursePackageOrder);
return WechatPayment(merchandise.getType(), merchandise.getCash().multiply(new BigDecimal(exchangeType.getStuIds().size())), code);
} else {
return WechatPayment(merchandise.getType(), merchandise.getCash().multiply(new BigDecimal(goodsNums)), code);
@@ -1662,7 +1667,8 @@
public ResultUtil weChatPaymentCoupon(String body, UserCouponPayment userCouponPayment) throws Exception {
String code = userCouponPayment.getCode();
Double cash = userCouponPayment.getCash();
- ResultUtil weixinpay = payMoneyUtil.weixinpay(body, "", code, cash.toString(), "/base/coupon/weChatPaymentCouponCallback", "APP", "");
+ ResultUtil weixinpay = payMoneyUtil.weixinpay(body, "", code, cash.toString(),
+ "/base/coupon/weChatPaymentCouponCallback", "APP", "");
if (weixinpay.getCode() == 200) {
new Thread(new Runnable() {
@Override
@@ -1692,7 +1698,7 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
//有待支付的订单,这里不处理
userCouponPayment1.setStatus(-1);
userCouponPaymentClient.updateUserCouponPayment(userCouponPayment1);
@@ -1719,7 +1725,7 @@
}
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
@@ -1745,7 +1751,8 @@
String code = userCouponPayment.getCode();
Double cash = userCouponPayment.getCash();
- ResultUtil alipay = payMoneyUtil.alipay(smid, body, "",String.valueOf(userCouponPayment.getId()), code, cash.toString(), "/base/coupon/aliPaymentCouponCallback");
+ ResultUtil alipay = payMoneyUtil.alipay(smid, body, "",String.valueOf(userCouponPayment.getId()), code, cash.toString(),
+ "/base/coupon/aliPaymentCouponCallback");
if (alipay.getCode() == 200) {
new Thread(new Runnable() {
@Override
@@ -1846,9 +1853,13 @@
if(null != userCouponPayment1.getIntegral() && 0 != userCouponPayment1.getIntegral()){
//扣积分
- TAppUser user = appUserService.getById(userCouponPayment1.getUserId());
- user.setIntegral(user.getIntegral() - userCouponPayment1.getIntegral().intValue());
- appUserService.updateById(user);
+ SaveUserIntegralChangesVo vo = new SaveUserIntegralChangesVo();
+ vo.setAppUserId(userCouponPayment1.getUserId());
+ vo.setIntegral(userCouponPayment1.getIntegral().intValue() * -1);
+ vo.setRemark("兑换优惠券");
+ vo.setType(2);
+ userIntegralChangesService.saveUserIntegralChanges(vo);
+
}
return ResultUtil.success();
}
@@ -2058,12 +2069,12 @@
int min = 5000;
wait += (min * num);
Thread.sleep(wait);
- List<UserPointsMerchandise> userPointsMerchandises = mcClient.queryUserPointMerchaseByCode(code);
- if (userPointsMerchandises.get(0).getPayStatus() == 2) {
+ UserPointsMerchandise userPointsMerchandise = mcClient.queryUserPointMerchaseByCode(code).get(0);
+ if (userPointsMerchandise.getPayStatus() == 2) {
break;
}
ResultUtil<Map<String, String>> resultUtil = payMoneyUtil.queryWXOrder(code, "");
- if (resultUtil.getCode() == 200 && userPointsMerchandises.get(0).getPayStatus() == 1) {
+ if (resultUtil.getCode() == 200 && userPointsMerchandise.getPayStatus() == 1) {
/**
* SUCCESS—支付成功,
* REFUND—转入退款,
@@ -2076,20 +2087,42 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
mcClient.deletePaymentRecord(code);
break;
}
if ("SUCCESS".equals(s)) {
- for (UserPointsMerchandise userPointsMerchandise : userPointsMerchandises) {
- userPointsMerchandise.setPayStatus(2);
- userPointsMerchandise.setOrderNumber(transaction_id);
- userPointsMerchandise.setPayType(1);
- mcClient.updateDetailsUserPointMercase(userPointsMerchandise);
+ userPointsMerchandise.setPayStatus(2);
+ userPointsMerchandise.setOrderNumber(transaction_id);
+ userPointsMerchandise.setPayType(1);
+ mcClient.updateDetailsUserPointMercase(userPointsMerchandise);
+
+ TAppUser tAppUser = baseMapper.selectById(userPointsMerchandise.getUserId());
+ dealAppUserIntegral(userPointsMerchandise.getUserId(), tAppUser, userPointsMerchandise.getIntegral());
+
+ //课程
+ if(type == 2){
+ CoursePackageOrder coursePackageOrder1 = paymentClient.getCoursePackageOrderByCode(code);
+ if(null != coursePackageOrder1){
+ coursePackageOrder1.setPayStatus(2);
+ coursePackageOrder1.setOrderNumber(transaction_id);
+ coursePackageOrder1.setAppUserId(null);
+ paymentClient.updateCoursePackageOrder(coursePackageOrder1);
+
+ GetCoursePackagePaymentConfig getCoursePackagePaymentConfig = new GetCoursePackagePaymentConfig();
+ getCoursePackagePaymentConfig.setCoursePackageId(coursePackageOrder1.getCoursePackageId());
+ getCoursePackagePaymentConfig.setClassHours(coursePackageOrder1.getClassHours());
+ CoursePackagePaymentConfig coursePackagePaymentConfig = paymentClient.getCoursePackagePaymentConfig(getCoursePackagePaymentConfig);
+
+ AddCoursePackageOrderStudent addCoursePackageOrderStudent = new AddCoursePackageOrderStudent();
+ addCoursePackageOrderStudent.setCoursePackageOrderId(coursePackageOrder1.getId());
+ addCoursePackageOrderStudent.setCoursePackagePaymentConfig(coursePackagePaymentConfig);
+ paymentClient.addCoursePackageOrderStudent(addCoursePackageOrderStudent);
+ }
}
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
@@ -2104,75 +2137,43 @@
}
@Override
- public ResultUtil exchangeAddPaymentCallback(String code, String orderNumber, Integer payType) {
- List<UserPointsMerchandise> userPointsMerchandises = mcClient.queryUserPointMerchaseByCode(code);
- if (userPointsMerchandises.get(0).getPayStatus() == 2) {
+ public ResultUtil exchangeAddPaymentCallback(String code, String orderNumber) {
+ UserPointsMerchandise userPointsMerchandise = mcClient.queryUserPointMerchaseByCode(code).get(0);
+ if (userPointsMerchandise.getPayStatus() == 2) {
return ResultUtil.success();
}
- if (userPointsMerchandises.size() > 1) {
- for (int i = 0; i < userPointsMerchandises.size(); i++) {
- userPointsMerchandises.get(i).setOrderNumber(orderNumber + "-" + (i + 1));
- userPointsMerchandises.get(i).setPayType(payType);
- userPointsMerchandises.get(i).setPayStatus(2);
- mcClient.updateDetailsUserPointMercase(userPointsMerchandises.get(i));
- Integer pointsMerchandiseId = userPointsMerchandises.get(i).getPointsMerchandiseId();
- PointsMerchandise pointsMerchandise = mcClient.selectPointsMerchandiseById(pointsMerchandiseId);
- switch (pointsMerchandise.getType()) {
- case 2:
- List<TCoursePackagePayment> coursePackagePaymentOfCode = paymentClient.getCoursePackagePaymentOfCode(code);
- for (TCoursePackagePayment coursePackagePayment : coursePackagePaymentOfCode) {
- coursePackagePayment.setPayStatus(2);
- coursePackagePayment.setPayType(payType);
- coursePackagePayment.setOrderNumber(orderNumber);
- coursePackagePayment.setCashPayment(pointsMerchandise.getCash());
- paymentClient.updatePaymentCoursePackage(coursePackagePayment);
- }
- break;
- case 4:
- UserCoupon coupon = new UserCoupon();
- coupon.setCouponId(userPointsMerchandises.get(0).getPointsMerchandiseId());
- coupon.setUserId(userPointsMerchandises.get(0).getUserId());
- coupon.setStatus(1);
- coupon.setInsertTime(new Date());
- ucponClient.insertToAppuserCoupon(coupon);
- break;
- default:
- break;
- }
+ userPointsMerchandise.setOrderNumber(orderNumber);
+ userPointsMerchandise.setPayStatus(2);
+ userPointsMerchandise.setPaymentTime(new Date());
+ mcClient.updateDetailsUserPointMercase(userPointsMerchandise);
+
+ TAppUser tAppUser = baseMapper.selectById(userPointsMerchandise.getUserId());
+ dealAppUserIntegral(userPointsMerchandise.getUserId(), tAppUser, userPointsMerchandise.getIntegral());
+
+ Integer pointsMerchandiseId = userPointsMerchandise.getPointsMerchandiseId();
+ PointsMerchandise pointsMerchandise = mcClient.selectPointsMerchandiseById(pointsMerchandiseId);
+ if(pointsMerchandise.getType() == 2){
+ //课程
+ CoursePackageOrder coursePackageOrder1 = paymentClient.getCoursePackageOrderByCode(code);
+ if(null != coursePackageOrder1){
+ coursePackageOrder1.setPayStatus(2);
+ coursePackageOrder1.setOrderNumber(orderNumber);
+ coursePackageOrder1.setAppUserId(null);
+ paymentClient.updateCoursePackageOrder(coursePackageOrder1);
+
+ GetCoursePackagePaymentConfig getCoursePackagePaymentConfig = new GetCoursePackagePaymentConfig();
+ getCoursePackagePaymentConfig.setCoursePackageId(coursePackageOrder1.getCoursePackageId());
+ getCoursePackagePaymentConfig.setClassHours(coursePackageOrder1.getClassHours());
+ CoursePackagePaymentConfig coursePackagePaymentConfig = paymentClient.getCoursePackagePaymentConfig(getCoursePackagePaymentConfig);
+
+ AddCoursePackageOrderStudent addCoursePackageOrderStudent = new AddCoursePackageOrderStudent();
+ addCoursePackageOrderStudent.setCoursePackageOrderId(coursePackageOrder1.getId());
+ addCoursePackageOrderStudent.setCoursePackagePaymentConfig(coursePackagePaymentConfig);
+ paymentClient.addCoursePackageOrderStudent(addCoursePackageOrderStudent);
}
- } else {
- userPointsMerchandises.get(0).setOrderNumber(orderNumber);
- userPointsMerchandises.get(0).setPayType(payType);
- userPointsMerchandises.get(0).setPayStatus(2);
- mcClient.updateDetailsUserPointMercase(userPointsMerchandises.get(0));
-
- Integer pointsMerchandiseId = userPointsMerchandises.get(0).getPointsMerchandiseId();
- PointsMerchandise pointsMerchandise = mcClient.selectPointsMerchandiseById(pointsMerchandiseId);
- switch (pointsMerchandise.getType()) {
- case 2:
- List<TCoursePackagePayment> coursePackagePaymentOfCode = paymentClient.getCoursePackagePaymentOfCode(code);
-
- TCoursePackagePayment packagePayment = coursePackagePaymentOfCode.get(0);
- packagePayment.setPayStatus(2);
- packagePayment.setPayType(payType);
- packagePayment.setOrderNumber(orderNumber);
- packagePayment.setCashPayment(pointsMerchandise.getCash());
- paymentClient.updatePaymentCoursePackage(packagePayment);
- break;
- case 4:
- UserCoupon coupon = new UserCoupon();
- coupon.setCouponId(userPointsMerchandises.get(0).getPointsMerchandiseId());
- coupon.setUserId(userPointsMerchandises.get(0).getUserId());
- coupon.setStatus(1);
- coupon.setInsertTime(new Date());
- ucponClient.insertToAppuserCoupon(coupon);
- break;
- default:
- break;
- }
-
}
+
return ResultUtil.success();
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
index 20e67ad..9219575 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java
@@ -387,7 +387,7 @@
packagePayment.setStatus(1);
packagePayment.setState(1);
packagePayment.setInsertTime(new Date());
- couPayClient.savePaymentCoursePackage(packagePayment);
+// couPayClient.savePaymentCoursePackage(packagePayment);
Integer hour = couPayClient.getClassHour(request.getCourseConfigId());
@@ -451,7 +451,7 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
coursePackagePayment.setState(3);
couPayClient.delPaymentCoursePackage(coursePackagePayment.getId());
break;
@@ -464,7 +464,7 @@
couPayClient.updatePaymentCoursePackage(coursePackagePayment);
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
index a01d251..3e1b4cd 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/UserIntegralChangesServiceImpl.java
@@ -95,12 +95,12 @@
detail.setDetailsType(1);
break;
case 6:
- detail.setConsumeAmount("" + (userIntegralChange.getNewIntegral() - userIntegralChange.getOldIntegral()));
+ detail.setConsumeAmount("+" + (userIntegralChange.getNewIntegral() - userIntegralChange.getOldIntegral()));
detail.setConsumeName("参与社区世界杯");
detail.setDetailsType(2);
break;
case 7:
- detail.setConsumeAmount("" + (userIntegralChange.getNewIntegral() - userIntegralChange.getOldIntegral()));
+ detail.setConsumeAmount("+" + (userIntegralChange.getNewIntegral() - userIntegralChange.getOldIntegral()));
detail.setConsumeName("社区世界杯获胜");
detail.setDetailsType(2);
break;
@@ -133,7 +133,7 @@
* @throws Exception
*/
@Override
- public void saveUserIntegralChanges(SaveUserIntegralChangesVo vo) throws Exception {
+ public void saveUserIntegralChanges(SaveUserIntegralChangesVo vo) {
TAppUser appUser = tauMapper.selectById(vo.getAppUserId());
UserIntegralChanges userIntegralChanges = new UserIntegralChanges();
userIntegralChanges.setAppUserId(vo.getAppUserId());
diff --git a/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java b/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
index 9af98bc..d38da4b 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
@@ -86,7 +86,7 @@
private String alipay_root_cert_path = "C:/cert/alipay/user/alipay_root_cert_path.crt";//支付宝CA根证书文件路径
- private String certPath = "C:\\cert\\1523106371_20211206_cert\\apiclient_cert.p12";//微信证书
+ private String certPath = "C:\\Users\\Admin\\Desktop\\weixin_cert\\apiclient_cert.p12";//微信证书
/**
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
index 896d87c..b3ea633 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/PointMercharsController.java
@@ -1363,7 +1363,6 @@
@PostMapping("/base/pointMerchars/updateDetailsUserPointMercase")
public void updateDetailsUserPointMercase(@RequestBody UserPointsMerchandise merchandise) {
merchandise.setUserId(null);
- merchandise.setPointsMerchandiseId(null);
upmseService.updateById(merchandise);
}
@@ -1442,8 +1441,6 @@
@PostMapping("/base/pointMerchars/getConsumeDetails")
public List<ConsumeDetail> getConsumeDetails(@RequestBody BillingDataRequestVo requestVo) {
return upmseService.getConsumeDetails(requestVo);
-
-
}
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponPaymentController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponPaymentController.java
index 01209fb..59f176a 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponPaymentController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/UserCouponPaymentController.java
@@ -51,6 +51,7 @@
@ResponseBody
@PostMapping("/userCouponPayment/updateUserCouponPayment")
public void updateUserCouponPayment(@RequestBody UserCouponPayment userCouponPayment){
+ userCouponPayment.setUserId(null);
userCouponPaymentService.updateById(userCouponPayment);
}
}
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/entity/ConsumeDetail.java b/cloud-server-activity/src/main/java/com/dsh/activity/entity/ConsumeDetail.java
index 96bc0bd..829cfcb 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/entity/ConsumeDetail.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/entity/ConsumeDetail.java
@@ -19,4 +19,6 @@
@ApiModelProperty(value = "1充值 2扣除")
private Integer type;
+ private Long dateTime;
+
}
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java b/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java
index a9096e4..9c229b0 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/entity/UserPointsMerchandise.java
@@ -11,6 +11,7 @@
import lombok.experimental.Accessors;
import java.io.Serializable;
+import java.math.BigDecimal;
import java.util.Date;
/**
@@ -72,20 +73,20 @@
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date insertTime;
/**
- * 现金支付方式(1=微信2支付宝)
+ * 现金支付方式(1=积分兑换,2=积分+现金)
*/
@TableField("payType")
private Integer payType;
+ /**
+ * 商品数量
+ */
+ @TableField("goodsNumber")
+ private Integer goodsNumber;
/**
* code
*/
@TableField("code")
private String code;
- /**
- * orderNumber
- */
- @TableField("orderNumber")
- private String orderNumber;
/**
* 现金的支付状态
*/
@@ -101,6 +102,32 @@
*/
@TableField("state")
private Integer state;
+ /**
+ * 积分支付数量
+ */
+ @TableField("integral")
+ private Integer integral;
+ /**
+ * 现金支付金额
+ */
+ @TableField("cash")
+ private BigDecimal cash;
+ /**
+ * 现金支付方式(1=微信,2=支付宝)
+ */
+ @TableField("cashPayType")
+ private Integer cashPayType;
+ /**
+ * 第三方支付流水号
+ */
+ @TableField("orderNumber")
+ private String orderNumber;
+ /**
+ * 支付时间
+ */
+ @TableField("paymentTime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date paymentTime;
@Override
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/mapper/UserPointsMerchandiseMapper.java b/cloud-server-activity/src/main/java/com/dsh/activity/mapper/UserPointsMerchandiseMapper.java
index 45cc535..db8de27 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/mapper/UserPointsMerchandiseMapper.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/mapper/UserPointsMerchandiseMapper.java
@@ -28,4 +28,6 @@
Object changeState(List<Integer> ids, Integer state);
List<ConsumeDetail> getConsumeDetails(BillingDataRequestVo requestVo);
+
+ List<ConsumeDetail> getConsumeDetails1(BillingDataRequestVo requestVo);
}
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/model/UserCouponPayment.java b/cloud-server-activity/src/main/java/com/dsh/activity/model/UserCouponPayment.java
index ee18da6..e2eb729 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/model/UserCouponPayment.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/model/UserCouponPayment.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.util.Date;
@@ -69,10 +70,12 @@
* 支付时间
*/
@TableField("paymentTime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date paymentTime;
/**
* 添加时间
*/
@TableField("insertTime")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date insertTime;
}
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/UserPointsMerchandiseServiceImpl.java b/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/UserPointsMerchandiseServiceImpl.java
index 53b18ea..03c44e2 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/UserPointsMerchandiseServiceImpl.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/UserPointsMerchandiseServiceImpl.java
@@ -25,8 +25,12 @@
*/
@Service
public class UserPointsMerchandiseServiceImpl extends ServiceImpl<UserPointsMerchandiseMapper, UserPointsMerchandise> implements UserPointsMerchandiseService {
+
@Autowired
private UserPointsMerchandiseMapper userPointsMerchandiseMapper;
+
+
+
@Override
public List<PointMerchandiseIncomeVo> getAmount() {
@@ -42,6 +46,9 @@
@Override
public List<ConsumeDetail> getConsumeDetails(BillingDataRequestVo requestVo) {
- return this.baseMapper.getConsumeDetails(requestVo);
+ List<ConsumeDetail> consumeDetails = this.baseMapper.getConsumeDetails(requestVo);
+ List<ConsumeDetail> consumeDetails1 = this.baseMapper.getConsumeDetails1(requestVo);
+ consumeDetails.addAll(consumeDetails1);
+ return consumeDetails;
}
}
diff --git a/cloud-server-activity/src/main/resources/mapper/UserPointsMerchandiseMapper.xml b/cloud-server-activity/src/main/resources/mapper/UserPointsMerchandiseMapper.xml
index 2cba3eb..6e93a78 100644
--- a/cloud-server-activity/src/main/resources/mapper/UserPointsMerchandiseMapper.xml
+++ b/cloud-server-activity/src/main/resources/mapper/UserPointsMerchandiseMapper.xml
@@ -26,18 +26,18 @@
SELECT
CASE tm.type
- WHEN 1 THEN '实体购买'
- WHEN 2 THEN '课包购买'
- WHEN 3 THEN '门票购买'
- WHEN 4 THEN '优惠券购买'
+ WHEN 1 THEN '兑换实体商品'
+ WHEN 2 THEN '兑换运动营商品'
+ WHEN 3 THEN '兑换门票'
+ WHEN 4 THEN '兑换优惠券'
END AS consumeName ,DATE_FORMAT(pm.insertTime, '%m-%d %H:%i')as `consumeTime`,2 as type,CONCAT('-',tm.cash) as
- consumeAmount
+ consumeAmount,
+ UNIX_TIMESTAMP(pm.insertTime) * 1000 as dateTime
FROM t_user_points_merchandise pm
LEFT JOIN t_points_merchandise tm ON tm.id = pm.pointsMerchandiseId
WHERE pm.payStatus = 2 and pm.state = 1 and pm.pointsMerchandiseId IN(
- SELECT id
- FROM t_points_merchandise WHERE redemptionMethod IN (2,3)
-
+ SELECT id
+ FROM t_points_merchandise WHERE redemptionMethod IN (2,3)
)
<if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
and DATE_FORMAT(pm.insertTime, '%Y-%m-%d %H:%i:%s') between #{monthStart} and #{monthEnd}
@@ -45,7 +45,23 @@
<if test="null != appUserId and '' != appUserId ">
and pm.userId = #{appUserId}
</if>
-
-
</select>
+
+ <select id="getConsumeDetails1" resultType="com.dsh.activity.entity.ConsumeDetail">
+ SELECT
+ '兑换优惠券' AS consumeName ,
+ DATE_FORMAT(paymentTime, '%m-%d %H:%i') as `consumeTime`,
+ 2 as type,
+ CONCAT('-',cash) as consumeAmount,
+ UNIX_TIMESTAMP(paymentTime) * 1000 as dateTime
+ FROM t_user_coupon_payment
+ where status = 2 and payType = 2
+ <if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
+ and DATE_FORMAT(paymentTime, '%Y-%m-%d %H:%i:%s') between #{monthStart} and #{monthEnd}
+ </if>
+ <if test="null != appUserId and '' != appUserId ">
+ and userId = #{appUserId}
+ </if>
+ </select>
+
</mapper>
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java b/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
index 01fbc2a..8b004c1 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/controller/CompetitionController.java
@@ -570,8 +570,9 @@
String code = map.get("out_refund_no");
String refund_id = map.get("refund_id");
String result = map.get("result");
- PaymentCompetition paymentCompetition = paymentCompetitionService.getOne(new QueryWrapper<PaymentCompetition>().eq("code", code).eq("payType", 1));
- if (paymentCompetition.getPayStatus() == 1) {
+ PaymentCompetition paymentCompetition = paymentCompetitionService.getOne(new QueryWrapper<PaymentCompetition>()
+ .eq("code", code).eq("payType", 1));
+ if (paymentCompetition.getPayStatus() == 2) {
paymentCompetition.setPayStatus(3);
paymentCompetition.setRefundTime(new Date());
paymentCompetition.setRefundOrderNo(refund_id);
@@ -581,11 +582,12 @@
Competition competition = cttService.getById(paymentCompetition.getCompetitionId());
competition.setApplicantsNumber(competition.getApplicantsNumber() - 1);
cttService.updateById(competition);
+
+ PrintWriter out = response.getWriter();
+ out.write(result);
+ out.flush();
+ out.close();
}
- PrintWriter out = response.getWriter();
- out.write(result);
- out.flush();
- out.close();
}
} catch (Exception e) {
e.printStackTrace();
@@ -787,7 +789,8 @@
String payOrderNo = paymentCompetition.getPayOrderNo();
if (paymentCompetition.getPayType() == 1) {//微信支付
- Map<String, String> map = payMoneyUtil.wxRefund(payOrderNo, code, amount.toString(), amount.toString(), "/base/competition/weChatCancelPaymentCompetitionCallback");
+ Map<String, String> map = payMoneyUtil.wxRefund(payOrderNo, code, amount.toString(), amount.toString(),
+ "/base/competition/weChatCancelPaymentCompetitionCallback");
String return_code = map.get("return_code");
if (!"SUCCESS".equals(return_code)) {
// return ResultUtil.error(map.get("return_msg"));
@@ -795,6 +798,7 @@
}
String refund_id = map.get("refund_id");
paymentCompetition.setRefundOrderNo(refund_id);
+ paymentCompetition.setAppUserId(null);
paymentCompetitionService.updateById(paymentCompetition);
storeClient.addBackRecord(paymentCompetition.getAmount() + "_" + paymentCompetition.getAppUserId());
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/BillingRequest.java b/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/BillingRequest.java
index fa729ec..13619e8 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/BillingRequest.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/feignclient/model/BillingRequest.java
@@ -17,4 +17,6 @@
* 金额
*/
private double amount;
+
+ private Long dateTime;
}
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java
index 10ed3c8..9159174 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/CompetitionServiceImpl.java
@@ -80,6 +80,10 @@
private PayMoneyUtil payMoneyUtil;
+ @Autowired
+ private CompetitionService cttService;
+
+
private String aliAppid = "2021004105665036";//支付宝appid
private String appPrivateKey = "MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCi5i9nW/hGLJ3A06cZxTQdviFC7THpdSihoTYGLr9q006hu0V26ecBMY/o4w5bvIX0Ok/yofmZsVcCJpAPvbXL/uqVrIjnRRxXiaeBFThlxoBUTdunvbUSDYfzlEhJr5NvUKI6H6lz2niXlQGx4qy8Hau4ccWit9kM8jwUvsBVQoFgJA+xrjMvooA7YLopQtpOD+UJr5thApTSf1xrnr1W12yolTLEH15JmNV372cqXrYUuqnY0QsaPtxeqJUGAOcGdVLllQ7easEznP8DFBvDdHATcmp2SHNQDUEWN6MCVPbMgY06NQVqAXxqjTAYSVh+6TRu6bofPmpYC3TZB003AgMBAAECggEBAJAcR2+PA3NBYUYHeFrqBRMS8uX8ZR19kjZ7IgoSLTFaQsP9opRylPSPXhrPVBKAE5leRQAHn4MCSlESwHvMfxo7KFjFTFAc6dffZZpipYQUOc9bGampwJh58/3e/pyBgVMG6J23CPf/HJQtNFSkjd/V9+ayb/9l2dUEL3bC0fAZ/dbx8HsxdLw8wn3fLlWLj68hOMqa2deCZe3JdSVsPbeWqkh56FFsMLug0Nd+Ar4TgRl9/jnhXF0JWiD0LmPUYLhboY7EfUBzN4w1iYbDi1P+3zvoOYsiVKAXox9GMhQ2VzOO2UcSTuizSza2e98mGpabl/GpKmCz+RDFjtkX6eECgYEA2MyCij65eO3aGIm3FUe93DULRBYTfX8qJQSJq2WOWA3mmQlEW6L3O2B5/lG2h+8WmN6iLEs9eHpgycGYp7vAqgrANEn16ACVcuyx0scFtrZfZ+kmHMzFfiUWxJjVYk/6YngsGVBLdw6ueM42C8TTP67X9tU5TdVGoGWuqEj4W98CgYEAwFqwprXOch5Pqk/RPbb49r0Ou03K/UbciWnWWKzUhFFNS8MdlQPoDvQZbMwHLeWsa2VhaKITK3x5biLQb3U+0GLOn6lTvEyrEUH+ucREyLgVYTRAvwBPtnvlrzpyxPk2HnslQjju8WrvvLLBMKWUjlTrTOzhaHT21gz3pHMiOakCgYEAhLmfaXdBITGshb054sNLDtdCkGpbgEcrzAHdLps769iGxkYQHXHFngpQZUwtTUcoNGqIKknd1jZFrv7gsD+XkgKG7PwimehRlkwmCX5ilxtLiVgJRzRt6+5U5AMVD90a0tHzXYP0z2yjj73fBJF5KtGl0a10KZxaYrQdm1UhB00CgYBZZgzx/k9rtHC8LAqIj1CYhHejT92G53c6Gkl3vyOqN4sgKhfGmSEySfrDGPRBPZxr8ZtbIPCd5mUdberH0osWGMYFaJI1UsCy7aQwvGpniz7MhZeN7dweaOjwDs8mgtjHQ96mL4XGCDhR0BZ/wIURvZ/6iaGdhbbu9unlsWj3uQKBgQCmZYdsbbZkd3ev6f8rwyvMz+DrCQyYpY44cegBYuJgrZiQnL2fJioeN7ixX0UM48SfwsZEIrzshP/LGAwnc2MdjxKUl4jLN8SEe0NAjXOnz9Zaw740+aOmLpXcLWdP4uM2gIhWsvW1tEkQZCXmm7c9s/RsU8Pmzv+YL3+fSijOzA==";//支付宝开发者应用私钥
@@ -362,7 +366,8 @@
* @throws Exception
*/
public ResultUtil weChatPaymentCompetition(String code, BigDecimal money) throws Exception {
- ResultUtil weixinpay = payMoneyUtil.weixinpay("报名赛事", "", code, money.toString(), "/base/competition/weChatPaymentCompetitionCallback", "APP", "");
+ ResultUtil weixinpay = payMoneyUtil.weixinpay("报名赛事", "", code, money.toString(),
+ "/base/competition/weChatPaymentCompetitionCallback", "APP", "");
if (weixinpay.getCode() == 200) {
new Thread(new Runnable() {
@Override
@@ -393,7 +398,7 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
paymentCompetition.setAppUserId(null);
paymentCompetition.setState(3);
userCompetitionService.remove(new QueryWrapper<UserCompetition>().eq("paymentCompetitionId", paymentCompetition.getId()));
@@ -405,9 +410,13 @@
paymentCompetition.setPayTime(new Date());
paymentCompetition.setPayOrderNo(transaction_id);
paymentCompetitionService.updateById(paymentCompetition);
+
+ Competition competition = cttService.getById(paymentCompetition.getCompetitionId());
+ competition.setApplicantsNumber(competition.getApplicantsNumber() + 1);
+ cttService.updateById(competition);
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
@@ -475,6 +484,11 @@
paymentCompetition.setPayTime(new Date());
paymentCompetition.setPayOrderNo(tradeNo);
paymentCompetitionService.updateById(paymentCompetition);
+
+ Competition competition = cttService.getById(paymentCompetition.getCompetitionId());
+ competition.setApplicantsNumber(competition.getApplicantsNumber() + 1);
+ cttService.updateById(competition);
+
// 结算资金到商户账号
payMoneyUtil.confirm(smid,code,tradeNo,money.toString());
//分账
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java
index 45d3a29..60b0405 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/PaymentCompetitionServiceImpl.java
@@ -65,7 +65,8 @@
@Resource
private StudentClient studentClient;
- @Autowired
+
+ @Resource
private PaymentCompetitionMapper paymentCompetitionMapper;
@@ -247,18 +248,18 @@
String payOrderNo = paymentCompetition.getPayOrderNo();
if (paymentCompetition.getPayType() == 1) {//微信支付
- Map<String, String> map = payMoneyUtil.wxRefund(payOrderNo, code, amount.toString(), amount.toString(), "/base/competition/weChatCancelPaymentCompetitionCallback");
+ Map<String, String> map = payMoneyUtil.wxRefund(payOrderNo, code, amount.toString(), amount.toString(),
+ "/base/competition/weChatCancelPaymentCompetitionCallback");
String return_code = map.get("return_code");
if (!"SUCCESS".equals(return_code)) {
return ResultUtil.error(map.get("return_msg"));
}
String refund_id = map.get("refund_id");
paymentCompetition.setRefundOrderNo(refund_id);
+ paymentCompetition.setAppUserId(null);
this.updateById(paymentCompetition);
storeClient.addBackRecord(paymentCompetition.getAmount() + "_" + paymentCompetition.getAppUserId());
-
-
}
if (paymentCompetition.getPayType() == 2) {//支付宝支付
Map<String, String> map = payMoneyUtil.aliRefund(payOrderNo, amount.toString());
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java b/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java
index f82dbde..fc97d88 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/util/PayMoneyUtil.java
@@ -57,7 +57,7 @@
private String key = "6f5e0c2dcabfa9c27b5da5836a362fef";//微信商户号
- private String callbackPath = "http://8.137.22.229:56666/competition";//支付回调网关地址
+ private String callbackPath = "http://221.182.45.100:56666/competition";//支付回调网关地址
private String app_cert_path = "C:/cert/alipay/user/app_cert_path.crt";//应用公钥证书路径
@@ -65,7 +65,7 @@
private String alipay_root_cert_path = "C:/cert/alipay/user/alipay_root_cert_path.crt";//支付宝CA根证书文件路径
- private String certPath = "C:\\cert\\1523106371_20211206_cert\\apiclient_cert.p12";//微信证书
+ private String certPath = "C:\\Users\\Admin\\Desktop\\weixin_cert\\apiclient_cert.p12";//微信证书
/**
diff --git a/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml b/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml
index 78cf329..1b11f9a 100644
--- a/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml
+++ b/cloud-server-competition/src/main/resources/mapper/PaymentCompetitionMapper.xml
@@ -35,8 +35,10 @@
order by a.insertTime desc limit #{pageNo}, #{pageSize}
</select>
<select id="queryDatas" resultType="com.dsh.competition.feignclient.model.BillingRequest">
- SELECT DATE_FORMAT(insertTime, '%m-%d %H:%i')as `time`,
- amount
+ SELECT
+ DATE_FORMAT(insertTime, '%m-%d %H:%i')as `time`,
+ amount,
+ UNIX_TIMESTAMP(payTime) * 1000 as dateTime
from t_payment_competition
where payStatus in (2,3) and payType in (1,2)
<if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
@@ -47,8 +49,10 @@
</if>
</select>
<select id="queryCancelDatas" resultType="com.dsh.competition.feignclient.model.BillingRequest">
- SELECT DATE_FORMAT(refundTime, '%m-%d %H:%i')as `time`,
- amount
+ SELECT
+ DATE_FORMAT(refundTime, '%m-%d %H:%i')as `time`,
+ amount,
+ UNIX_TIMESTAMP(refundTime) * 1000 as dateTime
from t_payment_competition
where payStatus = 3 and payType in (1,2)
<if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java
index 4a29199..437749b 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseController.java
@@ -59,11 +59,14 @@
@Autowired
private TCoursePackageDiscountService discountService;
+
@Autowired
private ICoursePackagePaymentConfigService coursePackagePaymentConfigService;
@Autowired
private ICoursePackageOrderService coursePackageOrderService;
+
+
/**
* 上/下架 1为上架 2为下架 3为删除
@@ -595,4 +598,53 @@
return map1;
}
+
+
+ /**
+ * 课包支付成功后排课操作
+ * @param addCoursePackageOrderStudent
+ */
+ @PostMapping("/course/addCoursePackageOrderStudent")
+ public void addCoursePackageOrderStudent(@RequestBody AddCoursePackageOrderStudent addCoursePackageOrderStudent){
+ coursePackageService.addCoursePackageOrderStudent(addCoursePackageOrderStudent.getCoursePackageOrderId(), addCoursePackageOrderStudent.getCoursePackagePaymentConfig());
+ }
+
+
+ /**
+ * 根据code获取待支付数据
+ * @param code
+ * @return
+ */
+ @PostMapping("/course/getCoursePackageOrderByCode")
+ public CoursePackageOrder getCoursePackageOrderByCode(@RequestBody String code){
+ CoursePackageOrder coursePackageOrder = coursePackageOrderService.getOne(new QueryWrapper<CoursePackageOrder>()
+ .eq("code", code).eq("state", 1));
+ return coursePackageOrder;
+ }
+
+
+ /**
+ * 修改数据
+ * @param coursePackageOrder
+ */
+ @PostMapping("/course/updateCoursePackageOrder")
+ public void updateCoursePackageOrder(@RequestBody CoursePackageOrder coursePackageOrder){
+ coursePackageOrder.setAppUserId(null);
+ coursePackageOrderService.updateById(coursePackageOrder);
+ }
+
+
+ /**
+ * 获取课包配置
+ * @param getCoursePackagePaymentConfig
+ * @return
+ */
+ @PostMapping("/course/getCoursePackagePaymentConfig")
+ public CoursePackagePaymentConfig getCoursePackagePaymentConfig(@RequestBody GetCoursePackagePaymentConfig getCoursePackagePaymentConfig){
+ CoursePackagePaymentConfig coursePackagePaymentConfig = coursePackagePaymentConfigService.getOne(new QueryWrapper<CoursePackagePaymentConfig>()
+ .eq("coursePackageId", getCoursePackagePaymentConfig.getCoursePackageId())
+ .eq("classHours", getCoursePackagePaymentConfig.getClassHours())
+ );
+ return coursePackagePaymentConfig;
+ }
}
diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
index 4c8939c..effc10e 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
@@ -133,8 +133,6 @@
private final SimpleDateFormat format = new SimpleDateFormat("MM-dd HH:mm");
-
-
@Autowired
private ICoursePackageOrderStudentService coursePackageOrderStudentService;
@@ -143,6 +141,16 @@
@Resource
private AppUserClient appuClient;
+
+ @Autowired
+ private CourseCounsumService courseCounsumService;
+
+ @Autowired
+ private TCoursePackagePaymentService coursePackagePaymentService;
+
+
+
+
/**
@@ -194,6 +202,7 @@
coursePackageOrder.setStatus(1);
coursePackageOrder.setState(1);
coursePackageOrder.setInsertTime(new Date());
+ coursePackageOrder.setOrderType(1);
coursePackageOrder.setSalesName(packagePayment.getSalesName());
coursePackageOrderService.save(coursePackageOrder);
// 生成排课数据
@@ -689,11 +698,7 @@
}
- @Autowired
- private CourseCounsumService courseCounsumService;
- @Autowired
- private TCoursePackagePaymentService coursePackagePaymentService;
@PostMapping("/base/coursePack/getRecord")
public List<PurchaseRecordVo> getRecord(@RequestBody RecordTimeRequest recordTimeRequest) {
@@ -1572,9 +1577,9 @@
}
@PostMapping("/base/coursePack/savePaymentCoursePackage")
- public boolean savePaymentCoursePackage(@RequestBody TCoursePackagePayment packagePayment) {
-
- return packagePaymentService.save(packagePayment);
+ public Long savePaymentCoursePackage(@RequestBody CoursePackageOrder coursePackageOrder) {
+ coursePackageOrderService.save(coursePackageOrder);
+ return coursePackageOrder.getId();
}
@@ -2374,17 +2379,31 @@
@PostMapping("/base/coursePack/getConsumes")
List<CourseCounsum> getConsumes(@RequestBody BillingDataRequestVo requestVo) {
Integer[] integers = {2, 3};
- QueryWrapper<CourseCounsum> courseCounsumQueryWrapper = new QueryWrapper<CourseCounsum>().in("changeType", integers).eq("appUserId", requestVo.getAppUserId());
+ QueryWrapper<CourseCounsum> courseCounsumQueryWrapper = new QueryWrapper<CourseCounsum>()
+ .in("changeType", integers).eq("appUserId", requestVo.getAppUserId());
if (requestVo.getMonthEnd() != null) {
courseCounsumQueryWrapper.ge("insertTime", requestVo.getMonthStart());
courseCounsumQueryWrapper.le("insertTime", requestVo.getMonthEnd());
}
return courseCounsumService.list(courseCounsumQueryWrapper);
-
}
@ResponseBody
+ @PostMapping("/base/coursePack/getCoursePackageOrder")
+ public List<CoursePackageOrder> getCoursePackageOrder(@RequestBody BillingDataRequestVo requestVo){
+ QueryWrapper<CoursePackageOrder> wrapper = new QueryWrapper<CoursePackageOrder>().eq("appUserId", requestVo.getAppUserId())
+ .in("payType", Arrays.asList(1, 2, 5, 6)).eq("payStatus", 2).eq("state", 1).eq("orderType", 1);
+ return coursePackageOrderService.list(wrapper);
+ }
+
+
+
+
+
+
+
+ @ResponseBody
@PostMapping("/base/coursePack/weeksOfCourseDetailsList")
public HashMap<String, Object> weeksOfCourseDetailsList(@RequestBody CourseDetailReq courseDetailReq) {
HashMap<String, Object> map = new HashMap<>();
diff --git a/cloud-server-course/src/main/java/com/dsh/course/entity/AddCoursePackageOrderStudent.java b/cloud-server-course/src/main/java/com/dsh/course/entity/AddCoursePackageOrderStudent.java
new file mode 100644
index 0000000..e71a036
--- /dev/null
+++ b/cloud-server-course/src/main/java/com/dsh/course/entity/AddCoursePackageOrderStudent.java
@@ -0,0 +1,19 @@
+package com.dsh.course.entity;
+
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @date 2024/3/19 14:32
+ */
+@Data
+public class AddCoursePackageOrderStudent {
+ /**
+ * 购买记录id
+ */
+ private Long coursePackageOrderId;
+ /**
+ * 课包配置
+ */
+ private CoursePackagePaymentConfig coursePackagePaymentConfig;
+}
diff --git a/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageOrder.java b/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageOrder.java
index 5682f84..15072c0 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageOrder.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageOrder.java
@@ -115,6 +115,11 @@
*/
@TableField("salesName")
private String salesName;
+ /**
+ * 订单类型(1=购买订单,2=积分商品兑换订单)
+ */
+ @TableField("orderType")
+ private Integer orderType;
@TableField(exist = false)
private Integer type;
diff --git a/cloud-server-course/src/main/java/com/dsh/course/model/GetCoursePackagePaymentConfig.java b/cloud-server-course/src/main/java/com/dsh/course/model/GetCoursePackagePaymentConfig.java
new file mode 100644
index 0000000..ff81c61
--- /dev/null
+++ b/cloud-server-course/src/main/java/com/dsh/course/model/GetCoursePackagePaymentConfig.java
@@ -0,0 +1,15 @@
+package com.dsh.course.model;
+
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @date 2024/3/19 15:32
+ */
+@Data
+public class GetCoursePackagePaymentConfig {
+
+ private Integer coursePackageId;
+
+ private Integer classHours;
+}
diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
index 80a884e..67c3418 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
@@ -843,6 +843,7 @@
newPayment.setPayType(request.getPayType());
newPayment.setState(1);
newPayment.setInsertTime(new Date());
+ newPayment.setOrderType(1);
coursePackageOrderService.save(newPayment);
code = newPayment.getCode();
}
@@ -931,7 +932,7 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
//有待支付的订单,这里不处理
// coursePackageOrder1.setState(3);
// coursePackageOrderService.updateById(coursePackageOrder1);
@@ -951,7 +952,7 @@
coursePackageService.addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig);
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
@@ -1225,7 +1226,7 @@
coursePackageOrderService.updateById(coursePackageOrder1);
CoursePackagePaymentConfig coursePackagePaymentConfig = coursePackagePaymentConfigService.getOne(new QueryWrapper<CoursePackagePaymentConfig>()
- .eq("coursePackageId", coursePackageOrder1.getId())
+ .eq("coursePackageId", coursePackageOrder1.getCoursePackageId())
.eq("classHours", coursePackageOrder1.getClassHours())
);
coursePackageService.addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig);
diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
index f45f843..c4e2001 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -930,6 +930,7 @@
coursePackageOrder.setStatus(1);
coursePackageOrder.setState(1);
coursePackageOrder.setInsertTime(new Date());
+ coursePackageOrder.setOrderType(1);
coursePackageOrderService.save(coursePackageOrder);
orderId = coursePackageOrder.getId();
}else{
@@ -942,7 +943,8 @@
coursePackageOrderService.updateById(coursePackageOrder);
}
- ResultUtil weixinpay = payMoneyUtil.weixinpay("报名运动营", coursePackagePaymentConfig.getId().toString(), code, paymentPrice.toString(), "/base/course/weChatPaymentCourseCallback", "APP", "");
+ ResultUtil weixinpay = payMoneyUtil.weixinpay("报名运动营", coursePackagePaymentConfig.getId().toString(), code, paymentPrice.toString(),
+ "/base/course/weChatPaymentCourseCallback", "APP", "");
if (weixinpay.getCode() == 200) {
String finalCode = code;
new Thread(new Runnable() {
@@ -974,7 +976,7 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
//有待支付的订单,这里不处理
// coursePackageOrder1.setState(3);
// coursePackageOrderService.updateById(coursePackageOrder1);
@@ -989,7 +991,7 @@
addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig);
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
@@ -1036,6 +1038,7 @@
coursePackageOrder.setStatus(1);
coursePackageOrder.setState(1);
coursePackageOrder.setInsertTime(new Date());
+ coursePackageOrder.setOrderType(1);
coursePackageOrderService.save(coursePackageOrder);
}else {
CoursePackageOrder coursePackageOrder = coursePackageOrderService.getById(paymentCourseVo.getOrderId());
@@ -1249,6 +1252,7 @@
coursePackageOrder.setStatus(1);
coursePackageOrder.setState(1);
coursePackageOrder.setInsertTime(new Date());
+ coursePackageOrder.setOrderType(1);
coursePackageOrderService.save(coursePackageOrder);
orderId = coursePackageOrder.getId();
}else{
diff --git a/cloud-server-course/src/main/java/com/dsh/course/util/PayMoneyUtil.java b/cloud-server-course/src/main/java/com/dsh/course/util/PayMoneyUtil.java
index a86bf68..d521003 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/util/PayMoneyUtil.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/util/PayMoneyUtil.java
@@ -61,7 +61,7 @@
private String key = "6f5e0c2dcabfa9c27b5da5836a362fef";//微信商户号
- private String callbackPath = "http://8.137.22.229:56666/course";//支付回调网关地址
+ private String callbackPath = "http://221.182.45.100:56666/course";//支付回调网关地址
private String app_cert_path = "C:/cert/alipay/user/app_cert_path.crt";//应用公钥证书路径
@@ -69,7 +69,7 @@
private String alipay_root_cert_path = "C:/cert/alipay/user/alipay_root_cert_path.crt";//支付宝CA根证书文件路径
- private String certPath = "C:\\cert\\1523106371_20211206_cert\\apiclient_cert.p12";//微信证书
+ private String certPath = "C:\\Users\\Admin\\Desktop\\weixin_cert\\apiclient_cert.p12";//微信证书
public ResultUtil confirm(String smid,String code, String outTradeNo, String amount) {
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do",
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/PayMoneyUtil.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/PayMoneyUtil.java
index d122afc..7624579 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/PayMoneyUtil.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/PayMoneyUtil.java
@@ -56,7 +56,7 @@
private String alipay_root_cert_path = "C:/cert/alipay/user/alipay_root_cert_path.crt";//支付宝CA根证书文件路径
- private String certPath = "C:\\cert\\1523106371_20211206_cert\\apiclient_cert.p12";//微信证书
+ private String certPath = "C:\\Users\\Admin\\Desktop\\weixin_cert\\apiclient_cert.p12";//微信证书
String signType = "RSA2" ;
String serverHost = "openchannel.alipay.com" ;
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/GameController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/GameController.java
index fa5e993..c2abaf0 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/GameController.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/controller/GameController.java
@@ -230,7 +230,7 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
break;
}
if ("SUCCESS".equals(s)) {
@@ -244,7 +244,7 @@
Integer integer = startGame(uid, gameId, spaceId, sutuId);
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
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 d4259cd..8c26b25 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
@@ -24,6 +24,7 @@
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*;
@@ -62,8 +63,31 @@
@Resource
private UserCouponClient userCouponClient;
- @Autowired
+
+ @Resource
private CityManagerClient cityManagerClient;
+
+ @Autowired
+ private TGameConfigService gameConfigService;
+
+ @Autowired
+ private TGameRecordService gameRecordService;
+
+ @Resource
+ private CourseRecordClient courseRecordClient;
+
+ @Autowired
+ private RedisUtil redisUtil;
+
+
+
+
+
+
+
+
+
+
/**
* 通过运营商id查询运营商对应的支付宝商户号
@@ -226,9 +250,6 @@
}
}
- @Autowired
- private RedisUtil redisUtil;
-
@ResponseBody
@PostMapping("/base/site/querySiteTimes")
@ApiOperation(value = "获取场地详情时间段数据", tags = {"用户—预约场地"})
@@ -289,20 +310,6 @@
}
}
-// public ResultUtil<List<QuerySiteTimes>> querySiteTimes(Integer id, String day, String halfName, String siteName) throws Exception {
-//
-// if (redisUtil.acquireLock(day,day)) {
-// try {
-// List<QuerySiteTimes> list = siteService.querySiteTimes(id, day,halfName,siteName);
-// return ResultUtil.success(list);
-// } finally {
-// redisUtil.releaseLock(day);
-// }
-// } else {
-// return ResultUtil.error("系统繁忙,请稍后再试!");
-// }
-//
-// }
/**
@@ -326,11 +333,12 @@
siteBooking.setStatus(1);
siteBooking.setPayOrderNo(transaction_id);
siteBookingService.updateById(siteBooking);
+
+ PrintWriter out = response.getWriter();
+ out.write(result);
+ out.flush();
+ out.close();
}
- PrintWriter out = response.getWriter();
- out.write(result);
- out.flush();
- out.close();
}
} catch (Exception e) {
e.printStackTrace();
@@ -347,7 +355,6 @@
@PostMapping("/base/site/aliPaymentSiteCallback")
public void aliPaymentSiteCallback(HttpServletRequest request, HttpServletResponse response) {
try {
- System.out.println("回调回调回调");
Map<String, String> map = payMoneyUtil.alipayCallback(request);
if (null != map) {
String code = map.get("out_trade_no");
@@ -359,24 +366,21 @@
siteBooking.setStatus(1);
siteBooking.setPayOrderNo(trade_no);
siteBookingService.updateById(siteBooking);
+ PrintWriter out = response.getWriter();
+ out.write("success");
+ out.flush();
+ out.close();
}
- PrintWriter out = response.getWriter();
- out.write("success");
- out.flush();
- out.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
- @Autowired
- private TGameConfigService gameConfigService;
- @Autowired
- private TGameRecordService gameRecordService;
- @Resource
- private CourseRecordClient courseRecordClient;
+
+
+
/**
* 启动游戏支付宝回调
*
@@ -387,10 +391,8 @@
@PostMapping("/base/site/gameCallback")
public void gameCallback(HttpServletRequest request, HttpServletResponse response) {
try {
- System.out.println("回调回调回调");
Map<String, String> map = payMoneyUtil.alipayCallback(request);
if (null != map) {
-
String code = map.get("passback_params");
String trade_no = map.get("trade_no");
String[] s = code.split("_");
@@ -412,7 +414,6 @@
}
gameRecordService.updateBatchById(list);
- System.err.println("===========游戏回调游戏回调=========" + i);
PrintWriter out = response.getWriter();
out.write("success");
out.flush();
@@ -477,10 +478,10 @@
public ResultUtil<Map<String, Object>> queryMySiteById(Integer id) {
try {
HashMap<String, Object> map = new HashMap<>();
- SiteBooking byId = siteBookingService.getById(id);
- Integer storeId = byId.getStoreId();
+ SiteBooking siteBooking = siteBookingService.getById(id);
+ Integer storeId = siteBooking.getStoreId();
Store byId1 = service.getById(storeId);
- Site site = siteService.getById(byId.getSiteId());
+ Site site = siteService.getById(siteBooking.getSiteId());
map.put("siteName", byId1.getName());
SiteType siteType = siteTypeService.getById(site.getSiteTypeId());
map.put("siteType", siteType.getName());
@@ -490,29 +491,30 @@
map.put("name", site.getName());
- List<Integer> ids = getIds(byId.getSiteId());
- byId.setStorePhone(byId1.getPhone());
+ List<Integer> ids = getIds(siteBooking.getSiteId());
+ siteBooking.setStorePhone(byId1.getPhone());
//拼接开始结束时间
- Date startTime = byId.getStartTime();
- Date endTime = byId.getEndTime();
+ Date startTime = siteBooking.getStartTime();
+ Date endTime = siteBooking.getEndTime();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
String startTimeString = sdf.format(startTime);
String endTimeString = sdf.format(endTime);
String result = startTimeString + "-" + endTimeString.substring(11);
- byId.setTimes(result);
+ siteBooking.setTimes(result);
- byId.setSid(Arrays.asList(storeId));
-// List<Site> list = siteService.list(new LambdaQueryWrapper<Site>()
-// .eq(Site::getStoreId, storeId)
-// .eq(Site::getSign, 1));
-// List<Integer> collect = list.stream().map(Site::getId).collect(Collectors.toList());
- Integer siteId = byId.getSiteId();
+ siteBooking.setSid(Arrays.asList(storeId));
+ Integer siteId = siteBooking.getSiteId();
ArrayList<Integer> list1 = new ArrayList<>();
list1.add(siteId);
- byId.setRid(list1);
- map.put("data", byId);
+ siteBooking.setRid(list1);
+ SiteBookingVo siteBookingVo = new SiteBookingVo();
+ BeanUtils.copyProperties(siteBooking, siteBookingVo);
+ siteBookingVo.setStartTime(siteBooking.getStartTime().getTime());
+ siteBookingVo.setEndTime(siteBooking.getEndTime().getTime());
+ siteBookingVo.setPayTime(siteBooking.getPayTime().getTime());
+ map.put("data", siteBookingVo);
map.put("ids", ids);
return ResultUtil.success(map);
} catch (Exception e) {
@@ -553,8 +555,6 @@
if (null == uid) {
return ResultUtil.tokenErr();
}
-
-
return siteService.cancelMySite(uid, id);
} catch (Exception e) {
e.printStackTrace();
diff --git a/cloud-server-other/src/main/java/com/dsh/other/model/BillingRequestOfType.java b/cloud-server-other/src/main/java/com/dsh/other/model/BillingRequestOfType.java
index e1fdff2..571387e 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/model/BillingRequestOfType.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/model/BillingRequestOfType.java
@@ -23,4 +23,6 @@
* 金额
*/
private double amount;
+
+ private Long dateTime;
}
diff --git a/cloud-server-other/src/main/java/com/dsh/other/model/SiteBookingVo.java b/cloud-server-other/src/main/java/com/dsh/other/model/SiteBookingVo.java
new file mode 100644
index 0000000..145155d
--- /dev/null
+++ b/cloud-server-other/src/main/java/com/dsh/other/model/SiteBookingVo.java
@@ -0,0 +1,149 @@
+package com.dsh.other.model;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author zhibing.pu
+ * @date 2024/3/19 10:15
+ */
+@Data
+public class SiteBookingVo {
+ /**
+ * 主键
+ */
+ 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;
+ /**
+ * 预约开始时间
+ */
+ @ApiModelProperty("预约开始时间")
+ private Long startTime;
+ /**
+ * 预约结束
+ */
+ @ApiModelProperty("预约结束时间")
+ private Long endTime;
+ /**
+ * 预约人
+ */
+ @ApiModelProperty("预约人")
+ private String booker;
+ /**
+ * 联系方式
+ */
+ @ApiModelProperty("联系方式")
+ private String phone;
+ /**
+ * 支付方式(1=微信,2=支付宝,3=玩湃比,4=手动支付)
+ */
+ private Integer payType;
+ /**
+ * 支付时间
+ */
+ @ApiModelProperty("支付时间")
+ private Long payTime;
+ /**
+ * 支付金额
+ */
+ @ApiModelProperty("支付金额")
+ private Double payMoney;
+ /**
+ * 优惠券id
+ */
+ private Long userCouponId;
+ /**
+ * 状态(0=待支付,1=待核销,2=已到店,3=已完成,4=已过期,5=已取消)
+ */
+ @ApiModelProperty("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;
+ /**
+ * 取消时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date cancelTime;
+ /**
+ * 第三方取消退款流水号
+ */
+ private String refundOrderNo;
+ /**
+ * 状态(1=正常,2=冻结,3=删除)
+ */
+ private Integer state;
+ /**
+ * 添加时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ private Date insertTime;
+ @ApiModelProperty("场地名称")
+ private String nextName;
+ @ApiModelProperty("半场 是否半场 1是 2否")
+ private Integer isHalf;
+ @ApiModelProperty("半场名称 ")
+ private String halfName;
+ private Integer goType;
+ private String money;
+ private String storePhone;
+ private List<Integer> sid;
+ private List<Integer> rid;
+ private Integer addType;
+}
diff --git a/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java b/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
index 898316d..767ab40 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
@@ -360,7 +360,6 @@
payMoney = new BigDecimal(site.getPlayPaiCoinOne()).multiply(new BigDecimal(split.length)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
}
if (appUser.getPlayPaiCoins().compareTo(payMoney.intValue()) < 0) {
-
return new ResultUtil(3, "玩湃币不足");
}
} else {
@@ -368,18 +367,14 @@
payMoney = new BigDecimal(site.getCashPrice()).multiply(new BigDecimal(split.length)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
} else {
payMoney = new BigDecimal(site.getCashPriceOne()).multiply(new BigDecimal(split.length)).setScale(2, RoundingMode.HALF_EVEN).doubleValue();
-
}
}
//校验优惠券
Long couponId = reservationSite.getCouponId();
if (couponId != null && couponId != 0) {
-
if (null != couponId && reservationSite.getPayType() != 3) {
UserCoupon userCoupon = userCouponClient.queryUserCouponById(new QueryUserCouponByIdAndUserId(reservationSite.getCouponId(), uid));
-
-
if (userCoupon != null && userCoupon.getStatus() == 2) {
return ResultUtil.error("优惠券已被核销");
}
@@ -441,7 +436,6 @@
if (reservationSite.getPayType() == 1) {//微信支付
ResultUtil resultUtil = weChatPaymentSite(payMoney, siteBooking);
-
return resultUtil;
}
if (reservationSite.getPayType() == 2) {//支付宝支付
@@ -449,9 +443,6 @@
}
if (reservationSite.getPayType() == 3) {//玩湃币支付
if (reservationSite.getIsHalf() == 2) {
-
-
-
return playPaiCoinPaymentSite(appUser, Double.valueOf(site.getPlayPaiCoin()), siteBooking);
} else {
return playPaiCoinPaymentSite(appUser, site.getPlayPaiCoinOne(), siteBooking);
@@ -471,7 +462,8 @@
public ResultUtil weChatPaymentSite(Double paymentPrice, SiteBooking siteBooking) throws Exception {
String code = siteBooking.getOrderNo();
Integer id = siteBooking.getId();
- ResultUtil weixinpay = payMoneyUtil.weixinpay("预约场地", id.toString(), code, paymentPrice.toString(), "/base/site/weChatPaymentSiteCallback", "APP", "");
+ ResultUtil weixinpay = payMoneyUtil.weixinpay("预约场地", id.toString(), code, paymentPrice.toString(),
+ "/base/site/weChatPaymentSiteCallback", "APP", "");
if (weixinpay.getCode() == 200) {
new Thread(new Runnable() {
@Override
@@ -501,7 +493,7 @@
Map<String, String> data1 = resultUtil.getData();
String s = data1.get("trade_state");
String transaction_id = data1.get("transaction_id");
- if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
+ if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
break;
}
if ("SUCCESS".equals(s)) {
@@ -511,7 +503,7 @@
siteBookingService.updateById(siteBooking);
break;
}
- if ("USERPAYING".equals(s)) {
+ if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
num++;
}
}
@@ -691,7 +683,6 @@
}
if (siteBooking.getStatus() == 0) {
-// return ResultUtil.error("请先进行支付");
siteBooking.setStatus(5);
siteBookingService.updateById(siteBooking);
AppUser appUser = appUserClient.queryAppUser(siteBooking.getAppUserId());
@@ -708,12 +699,13 @@
return ResultUtil.error("不能进行取消操作");
}
if (siteBooking.getPayType() == 1) {//微信支付
- Map<String, String> map = payMoneyUtil.wxRefund(siteBooking.getPayOrderNo(), siteBooking.getOrderNo(), siteBooking.getPayMoney().toString(), siteBooking.getPayMoney().toString(), "/base/site/cancelMySiteCallback");
+ Map<String, String> map = payMoneyUtil.wxRefund(siteBooking.getPayOrderNo(), siteBooking.getOrderNo(), siteBooking.getPayMoney().toString(),
+ siteBooking.getPayMoney().toString(), "/base/site/cancelMySiteCallback");
if (null == map) {
return ResultUtil.error("取消退款异常");
}
- String result_code = map.get("result_code");
- if (!"SUCCESS".equals(result_code)) {
+ String return_code = map.get("return_code");
+ if (!"SUCCESS".equals(return_code)) {
return ResultUtil.error(map.get("return_msg"));
}
siteBooking.setCancelUserId(uid);
diff --git a/cloud-server-other/src/main/java/com/dsh/other/util/PayMoneyUtil.java b/cloud-server-other/src/main/java/com/dsh/other/util/PayMoneyUtil.java
index c2aa6dd..9692051 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/util/PayMoneyUtil.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/util/PayMoneyUtil.java
@@ -60,7 +60,7 @@
private String key = "6f5e0c2dcabfa9c27b5da5836a362fef";//微信商户号
- private String callbackPath = "http://8.137.22.229:56666/other";//支付回调网关地址
+ private String callbackPath = "http://221.182.45.100:56666/other";//支付回调网关地址
private String app_cert_path = "C:/cert/alipay/user/app_cert_path.crt";//应用公钥证书路径
@@ -68,7 +68,7 @@
private String alipay_root_cert_path = "C:/cert/alipay/user/alipay_root_cert_path.crt";//支付宝CA根证书文件路径
- private String certPath = "C:\\cert\\1523106371_20211206_cert\\apiclient_cert.p12";//微信证书
+ private String certPath = "C:\\Users\\Admin\\Desktop\\weixin_cert\\apiclient_cert.p12";//微信证书
diff --git a/cloud-server-other/src/main/resources/mapper/SiteBookingMapper.xml b/cloud-server-other/src/main/resources/mapper/SiteBookingMapper.xml
index 36b048b..dcc63cd 100644
--- a/cloud-server-other/src/main/resources/mapper/SiteBookingMapper.xml
+++ b/cloud-server-other/src/main/resources/mapper/SiteBookingMapper.xml
@@ -4,9 +4,12 @@
<select id="queryDatas" resultType="com.dsh.other.model.BillingRequestOfType">
- SELECT DATE_FORMAT(insertTime, '%m-%d %H:%i')as `time`,DATE_FORMAT(payTime, '%m-%d %H:%i')as `time1`,
+ SELECT
+ DATE_FORMAT(insertTime, '%m-%d %H:%i')as `time`,
+ DATE_FORMAT(payTime, '%m-%d %H:%i')as `time1`,
payMoney as amount,
- `status`
+ `status`,
+ UNIX_TIMESTAMP(payTime) * 1000 as dateTime
from t_site_booking
where payType != 3 and status != 0
<if test="null != monthStart and '' != monthStart and null != monthEnd and '' != monthEnd">
--
Gitblit v1.7.1