OrderPayController.java 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package com.izouma.nineth.web;
  2. import com.izouma.nineth.service.OrderService;
  3. import lombok.AllArgsConstructor;
  4. import lombok.extern.slf4j.Slf4j;
  5. import org.springframework.stereotype.Controller;
  6. import org.springframework.ui.Model;
  7. import org.springframework.web.bind.annotation.RequestHeader;
  8. import org.springframework.web.bind.annotation.RequestMapping;
  9. import org.springframework.web.bind.annotation.RequestMethod;
  10. import org.springframework.web.bind.annotation.RequestParam;
  11. import java.util.regex.Pattern;
  12. @Controller
  13. @RequestMapping("/payOrder")
  14. @Slf4j
  15. @AllArgsConstructor
  16. public class OrderPayController {
  17. private final OrderService orderService;
  18. @RequestMapping(value = "/alipay", method = RequestMethod.GET)
  19. public String payOrderAlipay(Long id, Model model, @RequestHeader(value = "User-Agent") String userAgent) {
  20. boolean weixin = Pattern.matches(".*(micromessenger).*", userAgent.toLowerCase());
  21. boolean ios = Pattern.matches(".*(ipad|iphone).*", userAgent.toLowerCase());
  22. boolean android = Pattern.matches(".*(android).*", userAgent.toLowerCase());
  23. model.addAttribute("weixin", weixin);
  24. model.addAttribute("ios", ios);
  25. model.addAttribute("android", android);
  26. orderService.payOrderAlipay(id, model);
  27. return "AlipayHtml";
  28. }
  29. @RequestMapping(value = "/weixin")
  30. public Object payOrderWeixin(@RequestParam Long id) {
  31. return orderService.payOrderWeixin(id);
  32. }
  33. }