/** * @Intro descrption here * @author Lee * @Date 2013-7-31 */ package com.fang.bbks.modules.sys.web; import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import com.fang.bbks.common.web.BaseController; import com.fang.bbks.modules.sys.entity.Category; import com.fang.bbks.modules.sys.service.CategoryService; import com.google.common.collect.Lists; /** * @author Lee */ @Controller("/home") public class HomeController extends BaseController{ private static Logger log = LoggerFactory.getLogger(HomeController.class); @Resource private CategoryService categoryService; private static List<Category> all = Lists.newArrayList(); @RequestMapping(value = {"/","/index"}, method = RequestMethod.GET) public String index(Model uiModel,HttpServletRequest request,HttpSession session) { uiModel.addAttribute("qStr", ""); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(0)); return "index"; } @RequestMapping(value = {"/book/search"}, method = {RequestMethod.POST,RequestMethod.GET}) public String search(Model uiModel,HttpServletRequest request,HttpSession session, @RequestParam(value="keywords",required=true)String keywords, @RequestParam(value="sort",required=false)String sort, @RequestParam(value="sortOrder",required=false)String sortOrder){ String qStr = "kw="+keywords+"&sortby="+sort+"&sortOrders"+sortOrder; uiModel.addAttribute("qStr", qStr); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(0)); return "index"; } @RequestMapping(value = {"/book/catlog"}, method = {RequestMethod.POST,RequestMethod.GET}) public String catlog(Model uiModel,HttpServletRequest request,HttpSession session, @RequestParam(value="catlog",required=true) String catlog, @RequestParam(value="sort",required=false)String sort, @RequestParam(value="sortOrder",required=false)String sortOrder){ String qStr = "categroy_id="+catlog+"&sortby="+sort+"&sortOrders"+sortOrder; uiModel.addAttribute("qStr", qStr); uiModel.addAttribute("categroy",categoryService.findOne(Long.parseLong(catlog))); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(0)); return "index"; } @RequestMapping(value = {"/book/news"}, method = {RequestMethod.POST,RequestMethod.GET}) public String news(Model uiModel,HttpServletRequest request,HttpSession session, @RequestParam(value="sort",required=false)String sort, @RequestParam(value="sortOrder",required=false)String sortOrder){ String qStr = "sortby="+sort+"&typeStr=news"+"&sortOrders"+sortOrder;; uiModel.addAttribute("qStr", qStr); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(1)); return "index"; } @RequestMapping(value = {"/book/promotion"}, method = {RequestMethod.POST,RequestMethod.GET}) public String promotion(Model uiModel,HttpServletRequest request,HttpSession session, @RequestParam(value="sort",required=false)String sort, @RequestParam(value="sortOrder",required=false)String sortOrder){ String qStr = "sortby="+sort+"&&typeStr=promotion"+"&sortOrders"+sortOrder;; uiModel.addAttribute("qStr", qStr); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(2)); return "index"; } @RequestMapping(value = {"/book/salerank"}, method = {RequestMethod.POST,RequestMethod.GET}) public String saleRank(Model uiModel,HttpServletRequest request,HttpSession session, @RequestParam(value="sort",required=false)String sort, @RequestParam(value="sortOrder",required=false)String sortOrder){ String qStr = "sortby="+sort+"&typeStr=salerank"+"&sortOrders"+sortOrder;; uiModel.addAttribute("qStr", qStr); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(3)); return "index"; } @RequestMapping(value = {"/book/searchrank"}, method = {RequestMethod.POST,RequestMethod.GET}) public String searchRank(Model uiModel,HttpServletRequest request,HttpSession session, @RequestParam(value="sort",required=false)String sort, @RequestParam(value="sortOrder",required=false)String sortOrder){ String qStr = "sortby="+sort+"&typeStr=searchrank"+"&sortOrders"+sortOrder;; uiModel.addAttribute("qStr", qStr); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(4)); return "index"; } @RequestMapping(value = {"/book/ebooks"}, method = {RequestMethod.POST,RequestMethod.GET}) public String searchEbook(Model uiModel,HttpServletRequest request,HttpSession session, @RequestParam(value="sort",required=false)String sort, @RequestParam(value="sortOrder",required=false)String sortOrder){ String qStr = "sortby="+sort+"&typeStr=ebooks"+"&sortOrders"+sortOrder;; uiModel.addAttribute("qStr", qStr); uiModel.addAttribute("top5", top5()); uiModel.addAttribute("more", more()); uiModel.addAttribute("indexOne",new Integer(5)); return "index"; } ////////////////////////////////////////// ////////////////////////////////////////// private List<Category> top5(){ List<Category> top = Lists.newArrayList(); if(all.isEmpty()){ all.addAll(categoryService.getCaList()); } if(all.isEmpty()){ log.error("catlog is null.."); return all; } for(int a = 0;a < 5; a++){ top.add(all.get(a+3)); } return top; } private List<Category> more(){ List<Category> top = Lists.newArrayList(); if(all.isEmpty()){ all.addAll(categoryService.getCaList()); } if(all.isEmpty()){ log.error("catlog is null.."); return all; } for(int a = 0;a < 20; a++){ top.add(all.get(a+9)); } return top; } }