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()); 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(); } } } 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()); 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场地 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; } 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; 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", 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(); 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()); 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"; }