NewsController.java 5.1 KB

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