diff --git a/ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController.java b/ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController2.java similarity index 97% rename from ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController.java rename to ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController2.java index 95a53aa..1f11cc8 100644 --- a/ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController.java +++ b/ruoyi-mall/src/main/java/com/cyl/h5/controller/WechatController2.java @@ -14,7 +14,7 @@ import javax.servlet.http.HttpServletRequest; */ @RestController @RequestMapping("") -public class WechatController { +public class WechatController2 { @Autowired private MemberWechatService memberWechatService; /** diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/WechatController.java b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatController.java new file mode 100644 index 0000000..102855b --- /dev/null +++ b/ruoyi-mall/src/main/java/com/cyl/wechat/WechatController.java @@ -0,0 +1,35 @@ +package com.cyl.wechat; + +import com.cyl.wechat.response.JssdkConfigResponse; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +@RestController +@RequestMapping("/no-auth/wechat") +public class WechatController { + + @GetMapping("/jssdk") + public ResponseEntity getJssdkConfig(){ + String appId = WechatPayData.appId; + String nonceStr = WechatPayUtil.generateNonceStr(); + long timeStamp = WechatPayUtil.getCurrentTimestamp(); + String signature = Stream.of(appId, String.valueOf(timeStamp), nonceStr) + .collect(Collectors.joining("\n", "", "\n")); + JssdkConfigResponse response = new JssdkConfigResponse(); + response.setAppId(appId); + List jsApiList = new ArrayList<>(); + jsApiList.add("chooseWXPay"); + response.setJsApiList(jsApiList); + response.setNonceStr(nonceStr); + response.setTimeStamp(String.valueOf(timeStamp)); + response.setSignature(signature); + return ResponseEntity.ok(response); + } +} diff --git a/ruoyi-mall/src/main/java/com/cyl/wechat/response/JssdkConfigResponse.java b/ruoyi-mall/src/main/java/com/cyl/wechat/response/JssdkConfigResponse.java new file mode 100644 index 0000000..aed9f66 --- /dev/null +++ b/ruoyi-mall/src/main/java/com/cyl/wechat/response/JssdkConfigResponse.java @@ -0,0 +1,20 @@ +package com.cyl.wechat.response; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class JssdkConfigResponse { + @ApiModelProperty("appId") + private String appId; + @ApiModelProperty("timeStamp") + private String timeStamp; + @ApiModelProperty("nonceStr") + private String nonceStr; + @ApiModelProperty("signature") + private String signature; + @ApiModelProperty("jsApiList") + private List jsApiList; +}