BaseController.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package com.caimei.www.controller;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.caimei.www.pojo.page.BaseLink;
  4. import com.caimei.www.pojo.page.TopMenu;
  5. import com.caimei.www.service.page.BaseService;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.beans.factory.annotation.Value;
  8. import org.springframework.http.server.reactive.ServerHttpRequest;
  9. import org.springframework.stereotype.Controller;
  10. import org.springframework.ui.Model;
  11. import org.springframework.web.bind.annotation.ModelAttribute;
  12. import java.util.List;
  13. /**
  14. * 页面全局变量
  15. *
  16. * @author : Charles
  17. * @date : 2020/6/18
  18. */
  19. @Controller
  20. public class BaseController {
  21. @Value("${caimei.coreServer}")
  22. private String coreServer;
  23. @Value("${caimei.zplmDomain}")
  24. private String zplmDomain;
  25. @Value("${caimei.zplmServer}")
  26. private String zplmServer;
  27. @Value("${aliyunOss.ossBucket}")
  28. private String ossBucket;
  29. /** 打包时间 */
  30. @Value("${caimei.siteEnv}")
  31. private String siteEnv;
  32. /** 打包时间 */
  33. @Value("${spring.application.build-time}")
  34. private String buildTime;
  35. /** 错误页面 */
  36. private static final String ERROR_PATH = "error/404";
  37. public BaseService baseService;
  38. @Autowired
  39. public void setBaseService(BaseService baseService) {
  40. this.baseService = baseService;
  41. }
  42. /**
  43. * 页面公共请求
  44. * @param model
  45. * @param request
  46. * @return
  47. */
  48. @ModelAttribute
  49. public Model init(final Model model, ServerHttpRequest request) {
  50. // 环境变量,(2:正式环境,1:测试环境,0:开发环境)
  51. model.addAttribute("siteEnv", siteEnv);
  52. // 判断请求设备
  53. List<String> strings = request.getHeaders().get("User-Agent");
  54. String agent = strings!=null ? strings.get(0) : "";
  55. model.addAttribute("agent", agent);
  56. // 静态文件版本号
  57. model.addAttribute("version", buildTime);
  58. // spi服务器地址
  59. model.addAttribute("coreServer", coreServer);
  60. // zplm服务器地址
  61. model.addAttribute("zplmDomain", zplmDomain);
  62. // zplm接口地址
  63. model.addAttribute("zplmServer", zplmServer);
  64. // 阿里云oss对象存储文件上传目录
  65. model.addAttribute("ossBucket", ossBucket);
  66. // 搜索热门关键字
  67. List<String> searchHotWord = baseService.getSearchHotWord();
  68. model.addAttribute("searchHotWord", searchHotWord);
  69. // 头部菜单
  70. List<TopMenu> menuList = baseService.getNavMenu();
  71. model.addAttribute("topMenuList", menuList);
  72. // 分类菜单
  73. List<JSONObject> classifyList = baseService.getClassifyJson();
  74. model.addAttribute("classifyJson", classifyList);
  75. // 底部帮助页
  76. List<BaseLink> helpPages = baseService.getHelpPages();
  77. model.addAttribute("helpPages", helpPages);
  78. // 友情链接
  79. List<BaseLink> friendLinks = baseService.getFriendLinks();
  80. model.addAttribute("friendLinks", friendLinks);
  81. return model;
  82. }
  83. protected String errorPath(){
  84. return ERROR_PATH;
  85. }
  86. }