package cn.efunbox.controller; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.view.json.MappingJacksonJsonView; import cn.efunbox.base.Sex; import cn.efunbox.model.Recommend; import cn.efunbox.service.IRecommendService; @SuppressWarnings("deprecation") @Controller @RequestMapping("/recommend") public class RecommendController { @Autowired private HttpServletRequest request; private IRecommendService recmdService; public IRecommendService getRecommendService() { return recmdService; } @Autowired public void setRecommendService(IRecommendService recmdService) { this.recmdService = recmdService; } @RequestMapping("/getAll") @ResponseBody public Map getAll(){ List rows = recmdService.loadAll(); Map map = new HashMap(2); map.put("code", 200); map.put("rows", rows); return map; } @RequestMapping("/reset") @ResponseBody public Map reset(){ int ret = recmdService.updateScoreAll(); Map map = new HashMap(2); map.put("code", 200); map.put("rows", ret); return map; } @RequestMapping("/search") @ResponseBody public Map search(){ String ageStr = request.getParameter("age")==null?"0":request.getParameter("age").trim(); String sexStr = request.getParameter("sex")==null?Sex.BOY.toString():request.getParameter("sex").trim(); String typeStr = request.getParameter("type")==null?"1":request.getParameter("type").trim(); String pageStr = request.getParameter("page")==null?"1":request.getParameter("page").trim(); String sizeStr = request.getParameter("size")==null?"10":request.getParameter("size").trim(); int age = Integer.valueOf(ageStr); int sex = Integer.valueOf(sexStr); int type = Integer.valueOf(typeStr); int page = Integer.valueOf(pageStr); int size = Integer.valueOf(sizeStr); if(age<0 || age>20) age = 5; if(sex!=1 && sex!=0) sex = 1; if(page<1) page = 1; if(size<10) size = 10; int offset = Math.max(0, (page-1)) * size; List rows = recmdService.search(age, sex, type, size, offset); Map map = new HashMap(2); map.put("code", 200); map.put("rows", rows); return map; } /* @RequestMapping("/showAll") public String getRecommend(Model model){ List recmds = recmdService.loadAll(); model.addAttribute("recmds", recmds); return "showRecmds"; } @ResponseBody @RequestMapping("/getStr") public String getRecommendStr(){ List recmds = recmdService.loadAll(); return recmds.toString(); } @RequestMapping("/getJson") @ResponseBody public Map getRecommendJson(){ List recmds = recmdService.loadAll(); Map map = new HashMap(3); map.put("code", 200); map.put("num", 3); map.put("recmds", recmds); return map; } @RequestMapping("/getJson2") @ResponseBody public ModelAndView getRecommendJson2(){ List recmds = recmdService.loadAll(); Map map = new HashMap(3); map.put("code", 200); map.put("num", 3); map.put("recmds", recmds); return new ModelAndView(new MappingJacksonJsonView(),map); } */ }