NewsController.java 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  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.apache.commons.lang3.time.DateFormatUtils;
  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.AFTConstants;
  15. import com.goafanti.common.constant.ErrorConstants;
  16. import com.goafanti.common.controller.BaseController;
  17. import com.goafanti.common.model.Banners;
  18. import com.goafanti.common.model.News;
  19. import com.goafanti.common.utils.StringUtils;
  20. import com.goafanti.core.mybatis.page.Pagination;
  21. import com.goafanti.news.bo.NewsPortalList;
  22. import com.goafanti.news.enums.NewsType;
  23. import com.goafanti.news.service.NewsService;
  24. @Controller
  25. public class NewsController extends BaseController {
  26. @Resource
  27. NewsService newsService;
  28. @Resource
  29. private BannersService bannersService;
  30. /**
  31. * 策源地
  32. *
  33. * @param request
  34. * @param modelview
  35. * @return
  36. */
  37. @RequestMapping(value = "/portal/news/newsIndex", method = RequestMethod.GET)
  38. public ModelAndView portalNewsNewsIndex(HttpServletRequest request, ModelAndView modelview, String noCache) {
  39. modelview.setViewName("/portal/news/newsIndex");
  40. if (StringUtils.equals(noCache, "clear")) {
  41. newsService.cleanList();
  42. }
  43. String domainName = request.getServerName();
  44. modelview.addObject("kjkx", newsService.findNewsList(0, NewsType.KJZX.getCode(), 2, domainName, false));
  45. modelview.addObject("jtdt", newsService.findNewsList(0, NewsType.JTDT.getCode(), 2, domainName, false));
  46. modelview.addObject("zfwl", newsService.findNewsList(0, NewsType.ZFWL.getCode(), 3, domainName, false));
  47. modelview.addObject("gjzc", newsService.findNewsList(0, NewsType.GJZC.getCode(), 3, domainName, false));
  48. modelview.addObject("dfzc", newsService.findNewsList(0, NewsType.DFZC.getCode(), 3, domainName, false));
  49. handleBanners(modelview, BannersType.CE_YUAN_DI);
  50. return modelview;
  51. }
  52. /**
  53. * 新闻详情
  54. */
  55. @RequestMapping(value = "/portal/news/newsDetails", method = RequestMethod.GET)
  56. public ModelAndView portalNewsNewsDetails(HttpServletRequest request, ModelAndView modelview) {
  57. modelview.setViewName("/portal/news/newsDetails");
  58. return modelview;
  59. }
  60. /**
  61. * 新闻详情APP
  62. */
  63. @RequestMapping(value = "/portal/news/newsDetailApp", method = RequestMethod.GET)
  64. public ModelAndView portalNewsNewsDetailApp(HttpServletRequest request, ModelAndView modelview) {
  65. modelview.setViewName("/portal/news/newsDetailApp");
  66. return modelview;
  67. }
  68. /**
  69. * 新闻详情列表
  70. */
  71. @RequestMapping(value = "/portal/news/list", method = RequestMethod.GET)
  72. @ResponseBody
  73. public Result portalNewsList(Integer type, String pageSize, String pageNo, Integer hot, Integer provinceId,
  74. String keyword) {
  75. Result res = new Result();
  76. Integer pNo = 1, pSize = 4;
  77. if (StringUtils.isNumeric(pageNo)) {
  78. pNo = Integer.parseInt(pageNo);
  79. }
  80. if (StringUtils.isNumeric(pageSize)) {
  81. pSize = Integer.parseInt(pageSize);
  82. }
  83. res.setData(newsService.portalNewsList(pSize, pNo, type, hot, provinceId, keyword));
  84. return res;
  85. }
  86. /**
  87. * 新闻详情
  88. */
  89. @RequestMapping(value = "/portal/news/detailInfo", method = RequestMethod.GET)
  90. @ResponseBody
  91. public Result portalNewsDetail(Long id) {
  92. Result res = new Result();
  93. if (null == id) {
  94. res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "新闻ID"));
  95. return res;
  96. }
  97. /* newsService.portalNewsList(6,1, type,hot,provinceId,keyword) */
  98. res.setData(newsService.findNewsDetail(id));
  99. return res;
  100. }
  101. @RequestMapping(value = "/portal/news/newsDetail", method = RequestMethod.GET)
  102. public ModelAndView portalHighTechEvaluateIprInfo(HttpServletRequest request, ModelAndView modelview, Long id) {
  103. modelview.setViewName("/portal/news/newsDetail");
  104. Pagination<NewsPortalList> newsList = newsService.portalNewsList(6, 1, 5, null, null, null);
  105. News newsDetail = newsService.findNewsDetail(id);
  106. Object news = newsList.getList().get(0);
  107. if (null != newsDetail) {
  108. newsDetail.setCreateTimeS(newsDetail.getCreateTime() != null
  109. ? DateFormatUtils.format(newsDetail.getCreateTime(), AFTConstants.MMDDYYYY) : "");
  110. String summary = newsDetail.getSummary();
  111. modelview.addObject("hasHighTech",
  112. summary != null && (summary.indexOf("高新") > -1 || summary.indexOf("高企") > -1));
  113. modelview.addObject("hasPatent",
  114. summary != null && (summary.indexOf("专利") > -1 || summary.indexOf("知识产权") > -1));
  115. modelview.addObject("hasCopyright",
  116. summary != null && (summary.indexOf("软著") > -1 || summary.indexOf("知识产权") > -1));
  117. modelview.addObject("hasTechProj",
  118. summary != null && (summary.indexOf("科技") > -1 || summary.indexOf("项目") > -1));
  119. }
  120. @SuppressWarnings("unchecked")
  121. List<NewsPortalList> la = (List<NewsPortalList>) newsList.getList();
  122. for (NewsPortalList n : la) {
  123. String createTimeFormattedDate = n.getCreateTimeFormattedDate();
  124. n.setDataS(createTimeFormattedDate);
  125. }
  126. modelview.addObject("newsDetail", newsDetail);
  127. modelview.addObject("newsList", newsList.getList());
  128. modelview.addObject("news", news);
  129. return modelview;
  130. }
  131. private void handleBanners(ModelAndView modelview, BannersType bannersType) {
  132. List<Banners> banners = bannersService.findPortalBanners(bannersType.getKey());
  133. if (!banners.isEmpty()) {
  134. modelview.addObject("banners", banners);
  135. }
  136. }
  137. /**
  138. * 高新认定APP
  139. */
  140. @RequestMapping(value = "/portal/news/appCognizance", method = RequestMethod.GET)
  141. public ModelAndView appCognizance(HttpServletRequest request, ModelAndView modelview) {
  142. modelview.setViewName("/portal/news/appCognizance");
  143. return modelview;
  144. }
  145. /**
  146. * APP注册协议
  147. */
  148. @RequestMapping(value = "/portal/news/agreement", method = RequestMethod.GET)
  149. public ModelAndView agreement(HttpServletRequest request, ModelAndView modelview) {
  150. modelview.setViewName("/portal/news/agreement");
  151. return modelview;
  152. }
  153. }