From c0abf1b8be71aef5089151ca8601a3b69b21a09d Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 01 四月 2025 18:10:10 +0800
Subject: [PATCH] 惠民卡代码

---
 cloud-server-activity/src/main/resources/mapper/HuiminCardMapper.xml                     |    3 
 cloud-server-activity/src/main/java/com/dsh/activity/service/PayHuiminService.java       |    1 
 cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminAgreementSetting.java |    2 
 cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminCallBack.java      |  145 ++++++++++++++++++------------------
 cloud-server-activity/src/main/java/com/dsh/activity/controller/HuiminController.java    |   15 +++
 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             |   20 ++---
 7 files changed, 103 insertions(+), 86 deletions(-)

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 ec8d2a3..5aea013 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
@@ -12,7 +12,7 @@
 import com.dsh.activity.model.response.HuiminAgreementVO;
 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;
@@ -64,8 +64,8 @@
     private SiteClient siteClient;
     @Resource
     private StoreClient storeClient;
-    @Resource
-    private PayMoneyUtil payMoneyUtil;
+//    @Resource
+//    private PayMoneyUtil payMoneyUtil;
 
 
     @Autowired
@@ -78,59 +78,60 @@
      */
     @PostMapping("/aliPayHuiminCallback")
     public void aliPayHuiminCallback(HttpServletRequest request, HttpServletResponse response) {
-        try {
-            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();
+//        }
     }
     /**
      * 惠民卡微信退款回调
@@ -140,27 +141,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 2c4eab8..663def8 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
@@ -254,6 +254,21 @@
             }else{
                 huiminAgreementVO.setShowType(2);
             }
+            List<Store> stores = storeClient.queryStoreByIds(Collections.singletonList(storeId));
+            Store store = stores.get(0);
+            if (store.getOperatorId()==null || store.getOperatorId()==0){
+                // 平台
+                THuiminAgreement one = huiminAgreementService.getOne(new LambdaQueryWrapper<THuiminAgreement>()
+                        .isNull(THuiminAgreement::getOperatorId).last("limit 1"));
+                huiminAgreementVO.setIntroduce(one.getStoreNoHuiminCardIntro());
+
+            }else{
+                THuiminAgreement one = huiminAgreementService.getOne(new LambdaQueryWrapper<THuiminAgreement>()
+                        .eq(THuiminAgreement::getOperatorId,store.getOperatorId()).last("limit 1"));
+                huiminAgreementVO.setIntroduce(one.getStoreNoHuiminCardIntro());
+
+            }
+
             List<TPayHuimin> payHuimins = payHuiminService.list(new LambdaQueryWrapper<TPayHuimin>()
                     .eq(TPayHuimin::getAppUserId, uid)
                     .ge(TPayHuimin::getEndTime,new Date())
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminAgreementSetting.java b/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminAgreementSetting.java
index 4800e9c..4f14fb0 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminAgreementSetting.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/entity/THuiminAgreementSetting.java
@@ -33,6 +33,8 @@
      */
     @TableId(value = "id", type = IdType.AUTO)
     private Integer id;
+    @TableField("agreementId")
+    private Integer agreementId;
     /**
      * 协议名称
      */
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 10896e4..c4b5485 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
@@ -108,12 +108,7 @@
     @TableField("endTime")
     @ApiModelProperty(value = "有效期开始时间 不填表示永久")
     private Date endTime;
-    /**
-     *有效期结束时间 不填表示永久
-     */
-    @TableField("startTime")
-    @ApiModelProperty(value = "有效期结束时间 不填表示永久")
-    private Date startTime;
+
     /**
      *可使用时间段,周,多个逗号分隔
      */
@@ -157,12 +152,7 @@
     @ApiModelProperty(value = "排序")
     @TableField("sort")
     private String sort;
-    /**
-     *门店id 当使用范围为场地的时候存储门店id
-     */
-    @ApiModelProperty(value = "门店id ")
-    @TableField("storeId")
-    private Integer storeId;
+
     /**
      *运营商id
      */
@@ -175,6 +165,12 @@
     @ApiModelProperty(value = "状态 1已上架 2已下架 3已删除 ")
     @TableField("status")
     private Integer status;
+    /**
+     *门店ids
+     */
+    @ApiModelProperty(value = "门店ids")
+    @TableField("storeIds")
+    private String storeIds;
 
     @ApiModelProperty("是否购买 0否1是")
     @TableField(exist = false)
diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/service/PayHuiminService.java b/cloud-server-activity/src/main/java/com/dsh/activity/service/PayHuiminService.java
index 116f264..bb6d2bb 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/service/PayHuiminService.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/service/PayHuiminService.java
@@ -1,5 +1,6 @@
 package com.dsh.activity.service;
 
+//import com.alipay.api.AlipayApiException;
 import com.alipay.api.AlipayApiException;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
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 f660675..65fc4d2 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
@@ -61,7 +61,8 @@
 
     private String key = "6f5e0c2dcabfa9c27b5da5836a362fef";//微信商户号
 
-    private String callbackPath = "https://online.daowepark.com:443/course";//支付回调网关地址
+//    private String callbackPath = "https://online.daowepark.com:443/activity";//支付回调网关地址
+    private String callbackPath = "http://vbef9arg13uu.guyubao.com/activity";//支付回调网关地址
 
     private String app_cert_path = "C:/cert/alipay/user/app_cert_path.crt";//应用公钥证书路径
 
diff --git a/cloud-server-activity/src/main/resources/mapper/HuiminCardMapper.xml b/cloud-server-activity/src/main/resources/mapper/HuiminCardMapper.xml
index 3096cd6..a97e1d2 100644
--- a/cloud-server-activity/src/main/resources/mapper/HuiminCardMapper.xml
+++ b/cloud-server-activity/src/main/resources/mapper/HuiminCardMapper.xml
@@ -5,7 +5,8 @@
 
     <select id="getHuiminAgreementAndList" resultType="com.dsh.activity.entity.THuiminCard">
         select t1.* from t_huimin_card t1
-        where t1.storeId = #{storeId}
+        where
+            find_in_set(#{storeId},t1.storeIds)
 
           and t1.endTime >= now()
         and t1.status = 1

--
Gitblit v1.7.1