NewsController.java 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. package com.goafanti.news.controller;
  2. import java.util.List;
  3. import javax.annotation.Resource;
  4. import javax.servlet.http.HttpServletRequest;
  5. import org.springframework.stereotype.Controller;
  6. import org.springframework.web.bind.annotation.RequestMapping;
  7. import org.springframework.web.bind.annotation.RequestMethod;
  8. import org.springframework.web.bind.annotation.ResponseBody;
  9. import org.springframework.web.servlet.ModelAndView;
  10. import com.goafanti.banners.enums.BannersType;
  11. import com.goafanti.banners.service.BannersService;
  12. import com.goafanti.common.bo.Result;
  13. import com.goafanti.common.constant.ErrorConstants;
  14. import com.goafanti.common.controller.BaseController;
  15. import com.goafanti.common.model.Banners;
  16. import com.goafanti.common.utils.StringUtils;
  17. import com.goafanti.news.enums.NewsType;
  18. import com.goafanti.news.service.NewsService;
  19. @Controller
  20. public class NewsController extends BaseController {
  21. @Resource
  22. NewsService newsService;
  23. @Resource
  24. private BannersService bannersService;
  25. /**
  26. * 策源地
  27. *
  28. * @param request
  29. * @param modelview
  30. * @return
  31. */
  32. @RequestMapping(value = "/portal/news/newsIndex", method = RequestMethod.GET)
  33. public ModelAndView portalNewsNewsIndex(HttpServletRequest request, ModelAndView modelview, String noCache) {
  34. modelview.setViewName("/portal/news/newsIndex");
  35. if (StringUtils.equals(noCache, "clear")) {
  36. newsService.cleanList();
  37. }
  38. String domainName = request.getServerName();
  39. modelview.addObject("kjkx", newsService.findNewsList(0, NewsType.KJZX.getCode(), 2,domainName));
  40. modelview.addObject("jtdt", newsService.findNewsList(0, NewsType.JTDT.getCode(), 2,domainName));
  41. modelview.addObject("zfwl", newsService.findNewsList(0, NewsType.ZFWL.getCode(), 3,domainName));
  42. modelview.addObject("gjzc", newsService.findNewsList(0, NewsType.GJZC.getCode(), 3,domainName));
  43. modelview.addObject("dfzc", newsService.findNewsList(0, NewsType.DFZC.getCode(), 3,domainName));
  44. handleBanners(modelview, BannersType.CE_YUAN_DI);
  45. return modelview;
  46. }
  47. /**
  48. * 新闻详情
  49. */
  50. @RequestMapping(value = "/portal/news/newsDetails", method = RequestMethod.GET)
  51. public ModelAndView portalNewsNewsDetails(HttpServletRequest request, ModelAndView modelview) {
  52. modelview.setViewName("/portal/news/newsDetails");
  53. return modelview;
  54. }
  55. /**
  56. * 新闻详情APP
  57. */
  58. @RequestMapping(value = "/portal/news/newsDetailApp", method = RequestMethod.GET)
  59. public ModelAndView portalNewsNewsDetailApp(HttpServletRequest request, ModelAndView modelview) {
  60. modelview.setViewName("/portal/news/newsDetailApp");
  61. return modelview;
  62. }
  63. /**
  64. * 新闻详情列表
  65. */
  66. @RequestMapping(value = "/portal/news/list", method = RequestMethod.GET)
  67. @ResponseBody
  68. public Result portalNewsList(Integer type, String pageSize, String pageNo, String noCache,HttpServletRequest request) {
  69. Result res = new Result();
  70. if (StringUtils.equals(noCache, "clear")) {
  71. newsService.cleanPortalList();
  72. }
  73. String domainName = request.getServerName();
  74. Integer pN = getPageNo(pageNo);
  75. Integer pS = getPageSize(pageSize);
  76. res.setData(newsService.findPortalList(pS, (pN - 1) * pS, type,domainName));
  77. return res;
  78. }
  79. /**
  80. * 新闻详情
  81. */
  82. @RequestMapping(value = "/portal/news/detailInfo", method = RequestMethod.GET)
  83. @ResponseBody
  84. public Result portalNewsDetail(Long id) {
  85. Result res = new Result();
  86. if (null == id) {
  87. res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "新闻ID"));
  88. return res;
  89. }
  90. res.setData(newsService.findNewsDetail(id));
  91. return res;
  92. }
  93. @RequestMapping(value = "/portal/news/newsDetail", method = RequestMethod.GET)
  94. public ModelAndView portalHighTechEvaluateIprInfo(HttpServletRequest request, ModelAndView modelview) {
  95. modelview.setViewName("/portal/news/newsDetail");
  96. return modelview;
  97. }
  98. private void handleBanners(ModelAndView modelview, BannersType bannersType) {
  99. List<Banners> banners = bannersService.findPortalBanners(bannersType.getKey());
  100. if (!banners.isEmpty()) {
  101. modelview.addObject("banners", banners);
  102. }
  103. }
  104. private Integer getPageNo(String pageNo){
  105. if (StringUtils.isNumeric(pageNo)) {
  106. Integer pn = Integer.parseInt(pageNo);
  107. return pn < 1 ? 1 : pn;
  108. }
  109. return 1;
  110. }
  111. private Integer getPageSize(String pageSize){
  112. if (StringUtils.isNumeric(pageSize)) {
  113. Integer ps = Integer.parseInt(pageSize);
  114. return ps > 50 ? 50 : (ps < 5 ? 5 : ps);
  115. }
  116. return 10;
  117. }
  118. }