From b67cb476a3de3eb720bc4c295e8fcd9c29825df7 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Tue, 23 Jan 2024 02:07:21 +0800
Subject: [PATCH] fix

---
 src/test/java/cc/mrbird/febs/ProfitTest.java |  106 +++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 94 insertions(+), 12 deletions(-)

diff --git a/src/test/java/cc/mrbird/febs/ProfitTest.java b/src/test/java/cc/mrbird/febs/ProfitTest.java
index fa3a8ef..9ee9405 100644
--- a/src/test/java/cc/mrbird/febs/ProfitTest.java
+++ b/src/test/java/cc/mrbird/febs/ProfitTest.java
@@ -1,37 +1,40 @@
 package cc.mrbird.febs;
 
-import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
 import cc.mrbird.febs.common.enumerates.FlowTypeEnum;
 import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
-import cc.mrbird.febs.common.enumerates.OrderStatusEnum;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.HttpCurlUtil;
 import cc.mrbird.febs.common.utils.MallUtils;
 import cc.mrbird.febs.common.utils.RedisUtils;
-import cc.mrbird.febs.mall.dto.AdminLeaderAddFenceDto;
-import cc.mrbird.febs.mall.dto.ApiLeaderRefundOrderDto;
-import cc.mrbird.febs.mall.dto.ApiRechargeWalletDto;
+import cc.mrbird.febs.mall.dto.MallMemberCouponDto;
 import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.*;
 import cc.mrbird.febs.mall.service.*;
+import cc.mrbird.febs.mall.vo.MallMemberCouponVo;
 import cc.mrbird.febs.pay.model.BrandWCPayRequestData;
-import cc.mrbird.febs.pay.model.WxGenerateQrCodeDto;
+import cc.mrbird.febs.pay.model.HeaderDto;
 import cc.mrbird.febs.pay.service.IXcxPayService;
+import cc.mrbird.febs.pay.service.WxFaPiaoService;
 import cc.mrbird.febs.pay.util.WechatConfigure;
 import cc.mrbird.febs.rabbit.consumer.AgentConsumer;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.json.JSONUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import okhttp3.HttpUrl;
 import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.httpclient.HttpClient;
 import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.apache.commons.httpclient.methods.PostMethod;
+import org.apache.commons.httpclient.methods.RequestEntity;
+import org.apache.commons.httpclient.methods.StringRequestEntity;
 import org.apache.http.HttpEntity;
 import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.CloseableHttpResponse;
 import org.apache.http.client.methods.HttpPost;
 import org.apache.http.entity.StringEntity;
 import org.apache.http.impl.client.CloseableHttpClient;
@@ -39,6 +42,8 @@
 import org.junit.jupiter.api.Test;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.core.io.ResourceLoader;
 import org.springframework.web.client.RestTemplate;
 
 import javax.annotation.Resource;
@@ -46,6 +51,7 @@
 import java.math.BigDecimal;
 import java.net.URLConnection;
 import java.nio.charset.Charset;
+import java.security.KeyPair;
 import java.util.*;
 import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
@@ -89,11 +95,89 @@
     public void thankfulProfit() {
         memberProfitService.thankfulProfit(new Date());
     }
+    @Autowired
+    private MallMemberCouponMapper mallMemberCouponMapper;
+    @Autowired
+    private MallGoodsMapper mallGoodsMapper;
+    @Autowired
+    private CouponGoodsMapper couponGoodsMapper;
+    @Autowired
+    private WxFaPiaoService wxFaPiaoService;
+    @Autowired
+    ResourceLoader resourceLoader;
+    @Test
+    public void rankProfit() throws IOException {
+//        System.out.println(new ClassPathResource("wxP12/apiclient_cert.p12").getFile().exists());
+//        System.out.println(new File("src/main/resources/wxP12/apiclient_cert.p12").exists());
+//
+//        InputStream inputStream = new FileInputStream(file);
+//        System.out.println(resourceLoader.getResource("classpath:/wxP12/apiclient_cert.p12").exists());
+        KeyPair privateKey = wxFaPiaoService.getPrivateKey();
+        HeaderDto headerDto = new HeaderDto();
+        headerDto.setCallback_url("https://api.blnka.cn/api/xcxPay/fapiaoCallBack");
+        headerDto.setShow_fapiao_cell(true);
+        String parseObj = JSONUtil.parseObj(headerDto).toString();
+        String baseUrl = "https://api.mch.weixin.qq.com";
+        String canonicalUrl = "/v3/new-tax-control-fapiao/merchant/development-config";
+        String postStr = wxFaPiaoService.createAuthorization(
+                "POST",
+                canonicalUrl,
+                parseObj,
+                privateKey
+
+        );
+        // 创建httppost
+        try {
+            HttpClient httpClient = new HttpClient();
+            PostMethod post = new PostMethod("https://api.mch.weixin.qq.com/v3/new-tax-control-fapiao/merchant/development-config");
+            post.setRequestHeader("Accept", "application/json");
+            post.setRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36");
+            post.setRequestHeader("Content-Type", "application/json; charset=UTF-8");
+            post.setRequestHeader("Connection", "keep-alive");
+            post.setRequestHeader("Authorization",  "WECHATPAY2-SHA256-RSA2048 "+postStr);
+            RequestEntity entity = new StringRequestEntity(parseObj, "text/html", "utf-8");
+            post.setRequestEntity(entity);
+            httpClient.executeMethod(post);
+            String responseBodyAsString = post.getResponseBodyAsString();
+            cn.hutool.json.JSONObject maps = JSONUtil.parseObj(responseBodyAsString);
+            System.out.println(maps);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+
+    }
 
     @Test
-    public void rankProfit() {
-        memberProfitService.rankProfit();
+    public void rankProfit2() throws IOException {
+        KeyPair privateKey = wxFaPiaoService.getPrivateKey();
+        String baseUrl = "https://api.mch.weixin.qq.com";
+        String canonicalUrl = "/v3/new-tax-control-fapiao/merchant/development-config";
+        String postStr = wxFaPiaoService.createAuthorization(
+                "GET",
+                canonicalUrl,
+                "",
+                privateKey
+
+        );
+        try {
+            HttpClient httpClient = new HttpClient();
+            GetMethod method = new GetMethod(baseUrl+canonicalUrl);
+            method.setRequestHeader("Accept", "application/json");
+            method.setRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36");
+            method.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
+            method.setRequestHeader("Connection", "keep-alive");
+            method.setRequestHeader("Authorization", "WECHATPAY2-SHA256-RSA2048 "+postStr);
+            httpClient.executeMethod(method);
+            System.out.println(method);
+            String responseBodyAsString = method.getResponseBodyAsString();
+            cn.hutool.json.JSONObject maps = JSONUtil.parseObj(responseBodyAsString);
+            System.out.println(maps);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+
     }
+
 
     @Autowired
     private MallOrderInfoMapper mallOrderInfoMapper;
@@ -203,8 +287,6 @@
     }
     @Autowired
     private IXcxPayService iXcxPayService;
-    @Autowired
-    private MallGoodsMapper mallGoodsMapper;
     @Autowired
     private IAdminMallTeamLeaderService iAdminMallTeamLeaderService;
 

--
Gitblit v1.9.1