From 457c4cd19b4ae4404c9dd1f5f0b80025c722abd2 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 03 四月 2025 11:15:17 +0800
Subject: [PATCH] 惠民卡代码
---
cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardDetailVO.java | 6 +
cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardVO.java | 3
cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java | 7 +
cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java | 9 +-
cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminCallBack.java | 147 ++++++++++++++++++------------------
cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminController.java | 30 +++----
cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java | 9 +
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java | 1
cloud-server-activity/src/main/java/com/dsh/activity/util/PayMoneyUtil.java | 3
cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminCard.java | 4
10 files changed, 115 insertions(+), 104 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java
index c3b57d9..8aca9b6 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/ClassDetailsController.java
@@ -262,7 +262,12 @@
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
vo.setBirthday(simpleDateFormat.format(sts.getBirthday()));
vo.setStuName(sts.getName());
- vo.setStuAge(DateUtil.age(sts.getBirthday()));
+ if (sts.getBirthday()!=null){
+ vo.setStuAge(DateUtil.age(sts.getBirthday()));
+
+ }else{
+ vo.setStuAge(18);
+ }
vo.setStuHeight(sts.getHeight());
vo.setStuWeight(sts.getWeight());
vo.setIsNot(sts.getIsDefault());
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminCallBack.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminCallBack.java
index 5aea013..9d7f5f4 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminCallBack.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminCallBack.java
@@ -13,6 +13,7 @@
import com.dsh.activity.model.response.HuiminCardVO;
import com.dsh.activity.service.*;
+import com.dsh.activity.util.PayMoneyUtil;
import com.dsh.activity.util.ResultUtil;
import com.dsh.activity.util.TokenUtil;
import com.dsh.activity.util.UUIDUtil;
@@ -43,7 +44,7 @@
* @date 2023/6/24 11:27
*/
@RestController
-@RequestMapping("/huimin/callBack")
+@RequestMapping("/base/huimin/callBack")
public class HuiminCallBack {
@Autowired
@@ -64,8 +65,8 @@
private SiteClient siteClient;
@Resource
private StoreClient storeClient;
-// @Resource
-// private PayMoneyUtil payMoneyUtil;
+ @Resource
+ private PayMoneyUtil payMoneyUtil;
@Autowired
@@ -78,60 +79,60 @@
*/
@PostMapping("/aliPayHuiminCallback")
public void aliPayHuiminCallback(HttpServletRequest request, HttpServletResponse response) {
-// try {
-// System.err.println("==========回调");
-// Map<String, String> map = payMoneyUtil.alipayCallback(request);
-// if (null != map) {
-// String out_trade_no = map.get("out_trade_no");
-// String transaction_id = map.get("transaction_id");
-// TPayHuimin one = payHuiminService.getOne(new LambdaQueryWrapper<TPayHuimin>().eq(TPayHuimin::getCode, out_trade_no));
-// if (one!=null){
-// if (one.getStatus()==2){
-// PrintWriter out = response.getWriter();
-// out.write("success");
-// out.flush();
-// out.close();
-// }else{
-// one.setOrderNumber(transaction_id);
-// one.setStatus(2);
-// one.setPaymentTime(new Date());
-// payHuiminService.updateById(one);
-// }
-// }
-// }
-// } catch (Exception e) {
-// e.printStackTrace();
-// }
+ try {
+ System.err.println("==========回调");
+ Map<String, String> map = payMoneyUtil.alipayCallback(request);
+ if (null != map) {
+ String out_trade_no = map.get("out_trade_no");
+ String transaction_id = map.get("transaction_id");
+ TPayHuimin one = payHuiminService.getOne(new LambdaQueryWrapper<TPayHuimin>().eq(TPayHuimin::getCode, out_trade_no));
+ if (one!=null){
+ if (one.getStatus()==2){
+ PrintWriter out = response.getWriter();
+ out.write("success");
+ out.flush();
+ out.close();
+ }else{
+ one.setOrderNumber(transaction_id);
+ one.setStatus(2);
+ one.setPaymentTime(new Date());
+ payHuiminService.updateById(one);
+ }
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
/**
* 惠民卡微信支付回调接口
*/
@PostMapping("/weixinPayHuiminCallback")
public void weixinPayHuiminCallback(HttpServletRequest request, HttpServletResponse response) {
-// try {
-// Map<String, String> map = payMoneyUtil.weixinpayCallback(request);
-// if (null != map) {
-// String out_trade_no = map.get("out_trade_no");
-// String transaction_id = map.get("transaction_id");
-// String result = map.get("result");
-// TPayHuimin one = payHuiminService.getOne(new LambdaQueryWrapper<TPayHuimin>().eq(TPayHuimin::getCode, out_trade_no));
-// if (one!=null){
-// if (one.getStatus()==2){
-// PrintWriter out = response.getWriter();
-// out.write(result);
-// out.flush();
-// out.close();
-// }else{
-// one.setOrderNumber(transaction_id);
-// one.setStatus(2);
-// one.setPaymentTime(new Date());
-// payHuiminService.updateById(one);
-// }
-// }
-// }
-// } catch (Exception e) {
-// e.printStackTrace();
-// }
+ try {
+ Map<String, String> map = payMoneyUtil.weixinpayCallback(request);
+ if (null != map) {
+ String out_trade_no = map.get("out_trade_no");
+ String transaction_id = map.get("transaction_id");
+ String result = map.get("result");
+ TPayHuimin one = payHuiminService.getOne(new LambdaQueryWrapper<TPayHuimin>().eq(TPayHuimin::getCode, out_trade_no));
+ if (one!=null){
+ if (one.getStatus()==2){
+ PrintWriter out = response.getWriter();
+ out.write(result);
+ out.flush();
+ out.close();
+ }else{
+ one.setOrderNumber(transaction_id);
+ one.setStatus(2);
+ one.setPaymentTime(new Date());
+ payHuiminService.updateById(one);
+ }
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
/**
* 惠民卡微信退款回调
@@ -141,27 +142,27 @@
@ResponseBody
@PostMapping("/wxRefundHuiminCallback")
public void wxRefundHuiminCallback(HttpServletRequest request, HttpServletResponse response){
-// Map<String, String> map = payMoneyUtil.wxRefundCallback(request);
-// if(null != map){
-// String refund_id = map.get("refund_id");
-// String out_refund_no = map.get("out_refund_no");
-// String result = map.get("result");
-// TPayHuimin one = payHuiminService.getOne(new LambdaQueryWrapper<TPayHuimin>()
-// .eq(TPayHuimin::getCode, out_refund_no));
-// one.setRefundStatus(2);
-// one.setRefundTime(new Date());
-// one.setStatus(3);
-// one.setRefundNumber(refund_id);
-// payHuiminService.updateById(one);
-// PrintWriter out = null;
-// try {
-// out = response.getWriter();
-// } catch (IOException e) {
-// throw new RuntimeException(e);
-// }
-// out.println(result);
-// out.flush();
-// out.close();
-// }
+ Map<String, String> map = payMoneyUtil.wxRefundCallback(request);
+ if(null != map){
+ String refund_id = map.get("refund_id");
+ String out_refund_no = map.get("out_refund_no");
+ String result = map.get("result");
+ TPayHuimin one = payHuiminService.getOne(new LambdaQueryWrapper<TPayHuimin>()
+ .eq(TPayHuimin::getCode, out_refund_no));
+ one.setRefundStatus(2);
+ one.setRefundTime(new Date());
+ one.setStatus(3);
+ one.setRefundNumber(refund_id);
+ payHuiminService.updateById(one);
+ PrintWriter out = null;
+ try {
+ out = response.getWriter();
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ out.println(result);
+ out.flush();
+ out.close();
+ }
}
}
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminController.java b/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminController.java
index 663def8..13f5e8c 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminController.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminController.java
@@ -83,18 +83,7 @@
private TokenUtil tokenUtil;
private String smid = "2088330203191220";//平台支付宝商户号
- public static void main(String[] args) {
- Date date = new Date();
- date.setMonth(11);
- date.setDate(31);
- date.setHours(23);
- date.setMinutes(59);
- date.setSeconds(59);
- System.err.println(date);
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- System.err.println(simpleDateFormat.format(date));
- }
/**
* 查看惠民卡详情
*/
@@ -145,13 +134,15 @@
tPayHuimin.setCardId(huiminCard.getId());
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
tPayHuimin.setCode(sdf.format(new Date()) + UUIDUtil.getNumberRandom(5));
+ System.err.println("支付数据"+tPayHuimin);
+ payHuiminService.save(tPayHuimin);
switch (payType){
case 1:
return payMoneyUtil.weixinpay("购买惠民卡"+"-"+0, "", tPayHuimin.getCode(), tPayHuimin.getSalesMoney().toString(),
- "/huimin/callBack/weixinPayHuiminCallback", "APP", "");
+ "/base/huimin/callBack/weixinPayHuiminCallback", "APP", "");
case 2:
return payMoneyUtil.alipay(smid,"购买惠民卡", "购买惠民卡", "", tPayHuimin.getCode(), tPayHuimin.getSalesMoney().toString(),
- "/huimin/callBack/aliPayHuiminCallback");
+ "/base/huimin/callBack/aliPayHuiminCallback");
}
} catch (Exception e) {
@@ -315,6 +306,8 @@
List<MyHuiminCardVO> cardList = huiminCardService.getMyHuiminCardList(pageNo,pageSize,uid);
List<THuiminCard> list = huiminCardService.list();
for (MyHuiminCardVO myHuiminCardVO : cardList) {
+ TPayHuimin byId = payHuiminService.getById(myHuiminCardVO.getId());
+ myHuiminCardVO.setSalesMoney(byId.getSalesMoney());
if (myHuiminCardVO.getEndTime().before(new Date())){
// 已过期
myHuiminCardVO.setIsExpire(1);
@@ -372,7 +365,7 @@
}
if (tPayHuimin.getPaymentType()==1){
Map<String, String> map = payMoneyUtil.wxRefund(tPayHuimin.getOrderNumber(), tPayHuimin.getCode(),
- tPayHuimin.getSalesMoney().toString(), tPayHuimin.getSalesMoney().toString(), "/base/worldCup/wxRefundWorldCupCallback");
+ tPayHuimin.getSalesMoney().toString(), tPayHuimin.getSalesMoney().toString(), "/base/huimin/callBack/wxRefundHuiminCallback");
if(!"SUCCESS".equals(map.get("return_code"))){
System.err.println("-------------微信退款失败---------");
System.err.println(map.get("return_msg"));
@@ -420,11 +413,12 @@
}
THuiminCard byId = huiminCardService.getById(tPayHuimin.getCardId());
MyHuiminCardDetailVO myHuiminCardDetailVO = new MyHuiminCardDetailVO();
-// myHuiminCardDetailVO.setQrCode();
+ String storeIds = byId.getStoreIds();
+ String temp ="{\"storeIds\":\"" +storeIds+"\","+"\"useWeeks:\"\""+byId.getUseWeeks()+"\","+"\"useTimes:\""+byId.getUseTimes()+"\","+"\"unUseTimes:\""+byId.getUnUseTimes()+"\"}";
+ myHuiminCardDetailVO.setQrCode(temp);
myHuiminCardDetailVO.setCardId(tPayHuimin.getCardId());
- if (byId!=null){
- myHuiminCardDetailVO.setIntroduce(byId.getIntroduce());
- }
+ myHuiminCardDetailVO.setHuiminCard(byId);
+ myHuiminCardDetailVO.setIntroduce(byId.getIntroduce());
myHuiminCardDetailVO.setEndTime(tPayHuimin.getEndTime());
// 查询绑定人员列表
List<TStudent> studentByIds = studentClient.getStudentByIds(tPayHuimin.getStudentId());
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminCard.java b/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminCard.java
index c4b5485..64ac795 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminCard.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminCard.java
@@ -118,14 +118,14 @@
/**
*可使用时间段,时分秒,多个逗号分隔
*/
- @ApiModelProperty(value = "可使用时间段,时分秒,多个逗号分隔")
+ @ApiModelProperty(value = "可使用时间段,时分秒,多个逗号分隔,跨周分号分隔")
@TableField("useTimes")
private String useTimes;
/**
*不可用时间段,yyyy-MM-dd HH:mm:ss,多个逗号分隔
*/
@TableField("unUseTimes")
- @ApiModelProperty(value = "可用时间段,yyyy-MM-dd HH:mm:ss,多个逗号分隔")
+ @ApiModelProperty(value = "不可用时间段,yyyy-MM-dd HH:mm:ss,多个逗号分隔")
private String unUseTimes;
/**
*使用范围1门店2场地
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardDetailVO.java b/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardDetailVO.java
index a0332bd..dfcebb9 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardDetailVO.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardDetailVO.java
@@ -1,5 +1,6 @@
package com.dsh.activity.model.response;
+import com.dsh.activity.entity.THuiminCard;
import com.dsh.activity.entity.TStudent;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
@@ -16,7 +17,7 @@
@NoArgsConstructor
@ApiModel(value = "我的惠民卡详情VO")
public class MyHuiminCardDetailVO {
- @ApiModelProperty("二维码")
+ @ApiModelProperty("二维码生成规则")
private String qrCode;
@ApiModelProperty("惠民卡id")
private Integer cardId;
@@ -27,7 +28,8 @@
private Date endTime;
@ApiModelProperty("绑定人员列表")
private List<TStudent> studentList;
-
+ @ApiModelProperty("惠民卡")
+ private THuiminCard huiminCard;
}
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardVO.java b/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardVO.java
index 7849a18..ab297a5 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardVO.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/model/response/MyHuiminCardVO.java
@@ -8,6 +8,7 @@
import lombok.Data;
import lombok.NoArgsConstructor;
+import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@@ -36,6 +37,8 @@
private Date paymentTime;
@ApiModelProperty("绑定人员列表")
private List<TStudent> studentList;
+ @ApiModelProperty("金额")
+ private BigDecimal salesMoney;
@ApiModelProperty("绑定学员ids 前端忽略")
private String studentId;
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/util/PayMoneyUtil.java b/cloud-server-activity/src/main/java/com/dsh/activity/util/PayMoneyUtil.java
index 65fc4d2..abc7fb4 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/util/PayMoneyUtil.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/util/PayMoneyUtil.java
@@ -70,7 +70,8 @@
private String alipay_root_cert_path = "C:/cert/alipay/user/alipay_root_cert_path.crt";//支付宝CA根证书文件路径
- private String certPath = "/usr/playpai/cert/weixin/apiclient_cert.p12";//微信证书
+// private String certPath = "/usr/playpai/cert/weixin/apiclient_cert.p12";//微信证书
+ private String certPath = "D:/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-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java b/cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java
index a01a29e..bda3eb5 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/controller/ParticipantController.java
@@ -78,16 +78,15 @@
@ApiOperation(value = "获取参赛人员列表", tags = {"APP-赛事活动列表", "我的二维码", "人员管理", "APP-社区世界杯"})
@ApiImplicitParams({
@ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
- @ApiImplicitParam(value = "isPre(1过滤)", name = "是否过滤未实名", required = true, dataType = "int")
})
- public ResultUtil<List<ParticipantVo>> queryParticipantList(Integer isPre) {
+ public ResultUtil<List<ParticipantVo>> queryParticipantList() {
try {
Integer uid = tokenUtil.getUserIdFormRedis();
if (null == uid) {
return ResultUtil.tokenErr();
}
List<ParticipantVo> participantVos = participantService.queryParticipantList(uid);
- if (isPre != null) {
+// if (isPre != null) {
List<ParticipantVo> filteredParticipants = new ArrayList<>();
for (ParticipantVo participant : participantVos) {
@@ -96,9 +95,9 @@
}
}
return ResultUtil.success(filteredParticipants);
- }
+// }
- return ResultUtil.success(participantVos);
+// return ResultUtil.success(participantVos);
} catch (Exception e) {
e.printStackTrace();
return ResultUtil.runErr();
diff --git a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
index d56c271..888ccea 100644
--- a/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
+++ b/cloud-server-competition/src/main/java/com/dsh/competition/service/impl/ParticipantServiceImpl.java
@@ -119,8 +119,13 @@
participantVo.setId(participant.getId());
participantVo.setName(participant.getName());
participantVo.setIdcard(participant.getIdcard());
- Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(participant.getBirthday()));
- participantVo.setAge(age);
+ if (null != participant.getBirthday()){
+ Integer age = Integer.valueOf(sdf_year.format(new Date())) - Integer.valueOf(sdf_year.format(participant.getBirthday()));
+ participantVo.setAge(age);
+ }else{
+ participantVo.setAge(18);
+
+ }
Student student = null;
if(ToolUtil.isNotEmpty(participant.getPhone())){
student = studentClient.queryStudentByPhone(participant.getPhone());
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java
index 6cd50e0..a76a0ca 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/THuiminCardController.java
@@ -34,6 +34,7 @@
*/
@RequestMapping("/tHuiminCard_add")
public String tHuiminCardAdd() {
+
return PREFIX + "tHuiminCard_add.html";
}
--
Gitblit v1.7.1