@Override public void generateBody() { System.out.println("=========重新生成首页的内容信息=============="); // 1、获取所有的首页栏目 List<Channel> cs = channelService.listAllIndexChannel(ChannelType.TOPIC_LIST); // 2、根据首页栏目创建相应的IndexTopic对象 // 加载indexChannel.properties Properties prop = PropertiesUtil.getInstance().load("indexChannel"); // 文章 第一个是次序,用来在ftl中显示次序ts[1] order 是在配置文件中配置的 Map<String, IndexTopic> topics = new HashMap<String, IndexTopic>(); for (Channel c : cs) { int cid = c.getId(); String[] xs = prop.getProperty(cid + "").split("_"); // String order = xs[0]; int num = Integer.parseInt(xs[1]); // num 显示的数目 IndexTopic it = new IndexTopic(); it.setCid(cid); it.setCname(c.getName()); List<Topic> tops = topicService.listTopicByChannelAndNumber(cid, num); // System.out.println(cid+"--"+tops); it.setTopics(tops); topics.put(order, it); } String outfile = SystemContext.getRealPath() + outPath + "/body.jsp"; // 3、更新首页图片 BaseInfo bi = BaseInfoUtil.getInstacne().read(); int picnum = bi.getIndexPicNumber(); Map<String, Object> root = new HashMap<String, Object>(); root.put("ts", topics); root.put("pics", indexPicService.listIndexPicByNum(picnum)); root.put("keywords", keyworkService.getMaxTimesKeyword(12)); root.put("xxgk", topicService.loadLastedTopicByColumn(7)); util.fprint(root, "/body.ftl", outfile); }
@RequestMapping("/channel/{cid}") public String showChannel( @PathVariable int cid, Model model, HttpServletResponse resp, HttpServletRequest req) throws IOException { Channel c = channelService.load(cid); System.out.println(c.getType()); Channel pc = null; if (c.getType() == ChannelType.NAV_CHANNEL) { pc = c; // 如果是导航栏目,需要获取该栏目中的第一个栏目 c = channelService.loadFirstChannelByNav(c.getId()); } else { pc = c.getParent(); } // System.out.println(c.getType()==ChannelType.TOPIC_LIST); // System.out.println(c.getType()); if (c.getType() == ChannelType.TOPIC_CONTENT) { resp.sendRedirect( req.getContextPath() + "/topic/" + topicService.loadLastedTopicByColumn(cid).getId()); } else if (c.getType() == ChannelType.TOPIC_IMG) { SystemContext.setPageSize(16); SystemContext.setSort("a.topic.publishDate"); SystemContext.setOrder("desc"); Pager<Attachment> atts = attachmentService.findChannelPic(cid); model.addAttribute("datas", atts); } else if (c.getType() == ChannelType.TOPIC_LIST) { SystemContext.setSort("t.publishDate"); SystemContext.setOrder("desc"); // System.out.println(c.getType()); model.addAttribute("datas", topicService.find(c.getId(), null, 1)); } SystemContext.removeSort(); SystemContext.removeOrder(); model.addAttribute("pc", pc); model.addAttribute("cs", channelService.listUseChannelByParent(pc.getId())); model.addAttribute("channel", c); if (c.getType() == ChannelType.TOPIC_LIST) { return "index/channel"; } else { return "index/channel_pic"; } }