From 6707b8df16cf531d6654d8a3b429de45f5fe9db3 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 25 十二月 2023 15:18:00 +0800
Subject: [PATCH] 修改小程序码

---
 server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java |  100 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 95 insertions(+), 5 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java b/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java
index f57abb7..68b4972 100644
--- a/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java
+++ b/server/services/src/main/java/com/doumee/core/wx/WxMiniUtilService.java
@@ -6,7 +6,9 @@
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.utils.DateUtil;
+import com.doumee.core.utils.HttpsUtil;
 import com.doumee.core.utils.ID;
+import com.doumee.core.utils.ImageDesignerUtil;
 import com.doumee.dao.business.RefundMapper;
 import com.doumee.dao.business.TransactionsMapper;
 import com.doumee.dao.business.model.Locks;
@@ -22,13 +24,12 @@
 import okhttp3.Request;
 import okhttp3.Response;
 import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.InputStream;
+import java.io.*;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.HashMap;
@@ -201,6 +202,52 @@
 
     }
 
+    public static void main(String[] args) throws IOException {
+      /* InputStream inputStream = HttpsUtil.postJson("https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=75_W8lx5-bp9WEo69pQ6hvN70fJJJCNSRby6Wi6z_R9G7Sd5GMdY7ZT8Zq3PrKWrFBq92utfgqu3P8iw1NOvJNfyZssEYCy6k94Wch-GQNXcarSV65gowLk-SA9bncWTJbAGAHEU", "{\"check_path\":false,\"is_hyaline\":false,\"page\":\"pages/index/index\",\"scene\":\"1993/90\",\"env_version\":\"trial\"}");
+        File file = new File("D://test.png");
+
+        //瀹氫箟涓�涓敤浜庤鍙朓nputStream鏁版嵁鐨刡yte鏁扮粍
+        byte[] buffer = new byte[1024];
+
+//杈撳嚭娴侊紝鐢ㄤ簬鍐欏叆鏂囦欢
+        FileOutputStream outputStream = new FileOutputStream(file);
+
+//寰幆璇诲彇鏁版嵁骞跺皢鍏跺啓鍏ユ枃浠朵腑
+        int length;
+        while ((length = inputStream.read(buffer)) > 0) {
+            outputStream.write(buffer, 0, length);
+        }
+
+//鍏抽棴InputStream鍜孫utputStream
+        inputStream.close();
+        outputStream.close();*/
+        Map<String,Object> body = new HashMap<>();
+        // 鍦烘櫙鐮侊紝涓庡墠绔害瀹氾紝鏈�缁堟槸闇�瑕佸墠绔В鏋�
+        body.put("scene",   "1992/41" );
+        // 姝e紡鐗堜负 "release"锛屼綋楠岀増涓� "trial"锛屽紑鍙戠増涓� "develop"銆傞粯璁ゆ槸姝e紡鐗堛��
+//        body.put("env_version", "release");
+        body.put("env_version", "trial");
+        // 閫忔槑锛屾牴鎹綘鐨勫満鏅嚜琛岃缃産ody鍙傛暟
+        body.put("is_hyaline",false);
+        body.put("check_path", false);
+        body.put("page","pages/index/index");
+        OkHttpClient client = new OkHttpClient().newBuilder().build();
+        okhttp3.MediaType mediaType = okhttp3.MediaType.parse("application/json");
+        log.info("=========================================="+JSONObject.toJSONString(body));
+        okhttp3.RequestBody requestBody = okhttp3.RequestBody.create(mediaType, JSONObject.toJSONString(body));
+        Request request = new Request.Builder().url("https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=75_MppLyM-Fy1rWPbJE8ccXfy90Afg_3wdENqKBEshglyyARP3egjvsti3agoaZJ0UVKHh_wwuIDcbu41ptPKleUcaD1vDRi4BrH8oN8TEHPTUCb1Kcp6ZoMJNNWScZKChAIAHSK").method("POST", requestBody).build();
+        try {
+            Response response = client.newCall(request).execute();
+            if (response.isSuccessful()) {
+                InputStream inputStream = new ByteArrayInputStream(response.body().bytes());
+                String nowDate = DateUtil.getNowShortDate();
+                File file = new File("D://test1.png");
+                FileUtils.copyInputStreamToFile(inputStream,file);
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
 
     /**
      * 鐢熸垚灏忕▼搴忕爜
@@ -212,20 +259,63 @@
         if(Objects.isNull(systemDictData)){
             return;
         }
+         String url =  "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token="+ systemDictData.getCode();
+        String release =   systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.MINI_PROGRAMME_REALEASE).getCode();
         //鐢熸垚鍥剧墖涓婁紶OSS
         Map<String,Object> body = new HashMap<>();
         // 鍦烘櫙鐮侊紝涓庡墠绔害瀹氾紝鏈�缁堟槸闇�瑕佸墠绔В鏋�
         body.put("scene", locks.getSiteId() + "/" +locks.getCode() );
         // 姝e紡鐗堜负 "release"锛屼綋楠岀増涓� "trial"锛屽紑鍙戠増涓� "develop"銆傞粯璁ゆ槸姝e紡鐗堛��
-        body.put("env_version", "release");
-        body.put("env_version", "trial");
+//        body.put("env_version", "release");
+        body.put("env_version", StringUtils.defaultString(release, "release"));
         // 閫忔槑锛屾牴鎹綘鐨勫満鏅嚜琛岃缃産ody鍙傛暟
         body.put("is_hyaline", false);
         body.put("check_path", false);
+        body.put("width", 290);
+        body.put("page","pages/index/index");
+        log.info("=========================================="+url+"\n"+JSONObject.toJSONString(body));
+        try {
+            InputStream inputStream  =HttpsUtil.postJson(url,JSONObject.toJSONString(body));;
+            if (inputStream !=null) {
+                String nowDate = DateUtil.getNowShortDate();
+                String name =locks.getSiteId()+"-"+locks.getCode()+"-"+nowDate+".png";
+                String fileName =prePath+path+"/"+name;
+//                File file = new File(prePath+path,locks.getSiteId()+"-"+locks.getCode()+"-"+nowDate+".png");
+//                FileUtils.copyInputStreamToFile(inputStream,file);
+                if(ImageDesignerUtil.graphicsGenerationIs(locks.getSiteId()+"/"+locks.getCode(),inputStream,fileName)){
+                    locks.setInfo(name);
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+    /**
+     * 鐢熸垚灏忕▼搴忕爜
+     * https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/qrcode-link/qr-code/getUnlimitedQRCode.html
+     * @return
+     */
+    public void generateWXMiniCodeOld(Locks locks,SystemDictData systemDictData,String prePath,String path){
+
+        if(Objects.isNull(systemDictData)){
+            return;
+        }
+      String release =   systemDictDataBiz.queryByCode(Constants.MINI_PROGRAMME,Constants.MINI_PROGRAMME_REALEASE).getCode();
+        //鐢熸垚鍥剧墖涓婁紶OSS
+        Map<String,Object> body = new HashMap<>();
+        // 鍦烘櫙鐮侊紝涓庡墠绔害瀹氾紝鏈�缁堟槸闇�瑕佸墠绔В鏋�
+        body.put("scene", locks.getSiteId() + "/" +locks.getCode() );
+        // 姝e紡鐗堜负 "release"锛屼綋楠岀増涓� "trial"锛屽紑鍙戠増涓� "develop"銆傞粯璁ゆ槸姝e紡鐗堛��
+//        body.put("env_version", "release");
+        body.put("env_version", StringUtils.defaultString(release, "release"));
+        // 閫忔槑锛屾牴鎹綘鐨勫満鏅嚜琛岃缃産ody鍙傛暟
+        body.put("is_hyaline", Boolean.FALSE.toString());
+        body.put("check_path", Boolean.FALSE.toString());
         body.put("page","pages/index/index");
         OkHttpClient client = new OkHttpClient().newBuilder().build();
         okhttp3.MediaType mediaType = okhttp3.MediaType.parse("application/json");
         okhttp3.RequestBody requestBody = okhttp3.RequestBody.create(mediaType, JSONObject.toJSONString(body));
+        log.info("=========================================="+JSONObject.toJSONString(body));
         Request request = new Request.Builder().url("https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token="+systemDictData.getCode()).method("POST", requestBody).build();
         try {
             Response response = client.newCall(request).execute();

--
Gitblit v1.9.3