package com.uas.service.donate.controller; import com.alibaba.fastjson.JSONObject; import com.uas.service.donate.core.model.Status; import com.uas.service.donate.model.*; import com.uas.service.donate.service.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 提供给移动端的控制器 */ @Controller @RequestMapping("/app") public class AppController { @Autowired private ProjectRecodeService projectRecodeService; @Autowired private CarouselService carouselService; @Autowired private ProjectService projectService; @Autowired private ActivityController activityController; @Autowired private ActivityService activityService; @Autowired private ActivityRecodeService activityRecodeService; @Autowired private UserService userService; /** * 返回移动端首页轮播图 */ @ResponseBody @RequestMapping(value = "/appIndex",method = RequestMethod.GET) public ModelMap returnapp(@RequestParam(value = "useFor",defaultValue ="donate-app")String useFor){ ModelMap modelMap=new ModelMap(); Double totality=projectRecodeService.totality(); //存入捐款总数 modelMap.put("totality",totality); List carouselList=carouselService.getCarousels(useFor); //存入首页轮播图 modelMap.put("carouselList",carouselList); //查询项目中所有领域分类 List allArea=projectService.allArea(); modelMap.put("allArea",allArea); return modelMap; } /** * 返回首页项目列表 */ @ResponseBody @RequestMapping(value = "/projects",method = RequestMethod.GET) public ModelMap returnProjects(@RequestParam(value="area",defaultValue = "全部")String area, @RequestParam(value = "search",required = false)String search){ ModelMap modelMap=new ModelMap(); if (Status.ALL.getPhrase().equals(area)) { List projectList=projectService.findProjects(); modelMap.put("projectList",projectList); }else{ List projectList=projectService.findArea(area); modelMap.put("projectList",projectList); } if(search!=null){ List projectList=projectService.search(search); modelMap.put("projectList",projectList); } return modelMap; } /** * 获取活动列表 */ @ResponseBody @RequestMapping(value = "/activities",method = RequestMethod.GET) public ModelMap returnActivities(@RequestParam(value="status",defaultValue = "全部")String status, @RequestParam(value = "keyWork",defaultValue = "")String keyWork){ ModelMap modelMap=new ModelMap(); if("全部".equals(status)){ List activityList=activityService.findAll(); modelMap.put("activityList",activityList); }else{ List activityList=activityController.getActivities(status); modelMap.put("activityList",activityList); } if(!"".equals(keyWork)){ List activityList=activityService.search(keyWork); modelMap.put("activityList",activityList); } return modelMap; } /** * 获取当前用户的捐款信息 * 传入用户UUID */ @ResponseBody @RequestMapping(value = "/donateDetail/{imid}",method = RequestMethod.GET) public ModelMap projectRecodeList(@PathVariable("imid") String imid)throws Exception{ User user= userService.getUserByImId(Long.valueOf(imid)); ModelMap modelMap=new ModelMap(); List projectRecodeList=projectRecodeService.findByuuid(user.getUserUU()); modelMap.put("projectRecodeList",projectRecodeList); //计算参与的项目总数 Long sumJoin=projectRecodeService.sumJoin(user.getUserUU()); modelMap.put("sumJoin",sumJoin); //捐赠的善款总数 Long sumMoney=projectRecodeService.sumMoney(user.getUserUU()); modelMap.put("sumMoney",sumMoney); return modelMap; } /** * 查询某一用户参与的活动 */ @ResponseBody @RequestMapping(value = "/joinActivity/{imid}",method = RequestMethod.GET) public ModelMap queryOne(@PathVariable("imid")String imid)throws Exception{ User user= userService.getUserByImId(Long.valueOf(imid)); ModelMap modelMap=new ModelMap(); List activityRecodeList=activityRecodeService.queryOne(user.getUserUU()); modelMap.put("activityRecodeList",activityRecodeList); //计算某人参与的活动总数 Long sumJoin=activityRecodeService.sumJoin(user.getUserUU()); modelMap.put("sumJoin",sumJoin); return modelMap; } /** * 个人中心列表 */ @ResponseBody @RequestMapping(value = "/center",method = RequestMethod.GET) public ModelMap center(String imid) throws Exception { User user= userService.getUserByImId(Long.valueOf(imid)); ModelMap modelMap=new ModelMap(); modelMap.put("user",user); //捐赠的善款总数 Long sumMoney=projectRecodeService.sumMoney(user.getUserUU()); modelMap.put("sumMoney",sumMoney); //计算某人参与的活动总数 Long sumActJoin=activityRecodeService.sumJoin(user.getUserUU()); modelMap.put("sumActJoin",sumActJoin); //计算参与的项目总数 Long sumProJoin=projectRecodeService.sumJoin(user.getUserUU()); modelMap.put("sumProJoin",sumProJoin); return modelMap; } }