From 082d8830bd164a71f01682dd6461cab01b5917dd Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Sun, 6 Apr 2025 17:46:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8D=E9=87=8D=E5=A4=8D=E7=94=9F=E6=88=90?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ycwl/basic/controller/pc/BrokerController.java | 7 ++++++- .../com/ycwl/basic/controller/pc/ScenicController.java | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ycwl/basic/controller/pc/BrokerController.java b/src/main/java/com/ycwl/basic/controller/pc/BrokerController.java index 258a9ae..7c92641 100644 --- a/src/main/java/com/ycwl/basic/controller/pc/BrokerController.java +++ b/src/main/java/com/ycwl/basic/controller/pc/BrokerController.java @@ -8,6 +8,7 @@ import com.ycwl.basic.model.pc.broker.resp.BrokerRespVO; import com.ycwl.basic.model.pc.broker.resp.DailySummaryRespVO; import com.ycwl.basic.service.pc.BrokerRecordService; import com.ycwl.basic.service.pc.BrokerService; +import com.ycwl.basic.storage.enums.StorageAcl; import com.ycwl.basic.utils.ApiResponse; import com.ycwl.basic.utils.WxMpUtil; import com.ycwl.basic.repository.ScenicRepository; @@ -123,12 +124,16 @@ public class BrokerController { String appState = mpConfig.getState(); String path = "pages/home/index?scenicId=" + broker.getScenicId() + "&morphId=" + id; String filePath = "qr_code_tk_" + id + ".jpg"; + IStorageAdapter adapter = StorageFactory.use(); + if (adapter.isExists(filePath)) { + return ApiResponse.success(adapter.getUrl(filePath)); + } try { WxMpUtil.generateWXAQRCode(appId, appSecret, appState, path, filePath); - IStorageAdapter adapter = StorageFactory.use(); File file = new File(filePath); String s = adapter.uploadFile(file, filePath); file.delete(); + adapter.setAcl(StorageAcl.PUBLIC_READ, filePath); return ApiResponse.success(s); } catch (Exception e) { return ApiResponse.fail("生成二维码失败"); diff --git a/src/main/java/com/ycwl/basic/controller/pc/ScenicController.java b/src/main/java/com/ycwl/basic/controller/pc/ScenicController.java index b0481f9..0836cb0 100644 --- a/src/main/java/com/ycwl/basic/controller/pc/ScenicController.java +++ b/src/main/java/com/ycwl/basic/controller/pc/ScenicController.java @@ -8,6 +8,7 @@ import com.ycwl.basic.model.pc.scenic.resp.ScenicRespVO; import com.ycwl.basic.service.pc.ScenicService; import com.ycwl.basic.storage.StorageFactory; import com.ycwl.basic.storage.adapters.IStorageAdapter; +import com.ycwl.basic.storage.enums.StorageAcl; import com.ycwl.basic.utils.ApiResponse; import com.ycwl.basic.utils.WxMpUtil; import com.ycwl.basic.repository.ScenicRepository; @@ -109,12 +110,16 @@ public class ScenicController { String appState = mpConfig.getState(); String path = "pages/home/index?scenicId=" + id; String filePath = "qr_code_" + id + ".jpg"; + IStorageAdapter adapter = StorageFactory.use(); + if (adapter.isExists(filePath)) { + return ApiResponse.success(adapter.getUrl(filePath)); + } try { WxMpUtil.generateWXAQRCode(appId, appSecret, appState, path, filePath); - IStorageAdapter adapter = StorageFactory.use(); File file = new File(filePath); String s = adapter.uploadFile(file, filePath); file.delete(); + adapter.setAcl(StorageAcl.PUBLIC_READ, filePath); return ApiResponse.success(s); } catch (Exception e) { return ApiResponse.fail("生成二维码失败");