package com.farriver.bwf.web.controller.wechat; import com.farriver.bwf.common.model.ApiData; import com.farriver.bwf.common.statics.LangConstants; import com.farriver.bwf.data.transferobject.wechat.WeChatPayConfigViewModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.*; import jakarta.annotation.Resource; @RestController @RequestMapping("/api/wechat/pay") public class WXPayController { private static final Logger logger = LoggerFactory.getLogger(WXPayController.class); @Resource private WXPayViaGZHConfig wxPayViaGZHConfig; @Resource private WXPayViaMiniProgramConfig wxPayViaMiniProgramConfig; @Resource private WXPayViaNativeConfig wxPayViaNativeConfig; @GetMapping("/GetWeChatGZHConfig") public ApiData GetWeChatGZHConfig() { try { return wxPayViaGZHConfig.GetWeChatConfig(); } catch (Exception ex) { ex.printStackTrace(); logger.error(ex.getMessage(), ex); return ApiData.error(LangConstants.MSG_INFO_FAILED, ex.getMessage()); } } @GetMapping("/GetWeChatMiniProgramConfig") public ApiData GetWeChatMiniProgramConfig() { try { return wxPayViaMiniProgramConfig.GetWeChatConfig(); } catch (Exception ex) { ex.printStackTrace(); logger.error(ex.getMessage(), ex); return ApiData.error(LangConstants.MSG_INFO_FAILED, ex.getMessage()); } } @GetMapping("/GetWeChatNativeConfig") public ApiData GetWeChatNativeConfig() { try { return wxPayViaNativeConfig.GetWeChatConfig(); } catch (Exception ex) { ex.printStackTrace(); logger.error(ex.getMessage(), ex); return ApiData.error(LangConstants.MSG_INFO_FAILED, ex.getMessage()); } } @PostMapping("/PayUseWXViaGZH") public ApiData PayUseWXViaGZH(@RequestBody WeChatPayConfigViewModel model) { try { return wxPayViaGZHConfig.PayUseWX(model); } catch (Exception ex) { ex.printStackTrace(); logger.error(ex.getMessage(), ex); return ApiData.error(LangConstants.MSG_INFO_FAILED, ex.getMessage()); } } @PostMapping("/PayUseWXViaMiniProgram") public ApiData PayUseWXViaMiniProgram(@RequestBody WeChatPayConfigViewModel model) { try { return wxPayViaMiniProgramConfig.PayUseWX(model); } catch (Exception ex) { ex.printStackTrace(); logger.error(ex.getMessage(), ex); return ApiData.error(LangConstants.MSG_INFO_FAILED, ex.getMessage()); } } @PostMapping("/PayUseWXViaNative") public ApiData PayUseWXViaNative(@RequestBody WeChatPayConfigViewModel model) { try { return wxPayViaNativeConfig.PayUseWX(model); } catch (Exception ex) { ex.printStackTrace(); logger.error(ex.getMessage(), ex); return ApiData.error(LangConstants.MSG_INFO_FAILED, ex.getMessage()); } } }