diff --git a/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java b/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java index 2461193..634a4bc 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/WxLoginController.java @@ -965,17 +965,21 @@ public class WxLoginController extends BaseController { return fail("获取失败", null); } - @Operation(summary = "获取微信小程序码-订单核销码-数量极多的业务场景") + @Operation(summary = "获取微信小程序码-数量极多的业务场景(支持自定义页面与场景值)") @GetMapping("/getOrderQRCodeUnlimited/{orderNo}") - public ApiResult getOrderQRCodeUnlimited(@PathVariable("orderNo") String orderNo) { + public ApiResult getOrderQRCodeUnlimited(@PathVariable("orderNo") String orderNo, + @RequestParam(required = false) String page, + @RequestParam(required = false) String scene) { final User loginUser = getLoginUser(); if(loginUser == null){ return fail("请先登录"); } String apiUrl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + getAccessToken(loginUser.getTenantId()); final HashMap map = new HashMap<>(); - map.put("scene", "orderNo=".concat(orderNo)); - map.put("page", "package/admin/order-scan"); + // scene 优先用入参,否则回退兼容原订单核销逻辑:orderNo=xxx + map.put("scene", StrUtil.isNotBlank(scene) ? scene : "orderNo=".concat(orderNo)); + // page 优先用入参,否则回退兼容原订单核销页面 + map.put("page", StrUtil.isNotBlank(page) ? page : "package/admin/order-scan"); map.put("env_version", "trial"); // 获取图片 Buffer byte[] qrCode = HttpRequest.post(apiUrl)