Browse Source

热点管理新增数据场景的更新

Signed-off-by: you.chen <you.chen@cloudcross.com>
you.chen 9 years ago
parent
commit
068015e2f1

+ 190 - 0
src/main/java/com/cloudcross/ssp/web/back/main/ap/PlaceController.java

@@ -0,0 +1,190 @@
+package com.cloudcross.ssp.web.back.main.ap;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+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.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import com.cloudcross.ssp.base.web.SimpleController;
+import com.cloudcross.ssp.common.utils.Pager;
+import com.cloudcross.ssp.common.utils.SqlHelper;
+import com.cloudcross.ssp.model.Place;
+import com.cloudcross.ssp.model.PlaceOperator;
+import com.cloudcross.ssp.service.IPlaceOperatorService;
+import com.cloudcross.ssp.service.IPlaceService;
+
+/**
+ * 场景相关控制器
+ * @author chenyou
+ *
+ */
+@Controller("back.placeController")
+@RequestMapping("/back/main/ap/place")
+public class PlaceController extends SimpleController {
+	@Autowired
+	private IPlaceService placeService;
+	@Autowired
+	private IPlaceOperatorService placeOperatorService;
+	
+	/**
+	 * 跳转到新增数聚场景页面
+	 * 按数聚场景名称搜索,变量名为placeName
+	 * @param model
+	 * @return
+	 */
+	@RequestMapping("/create")
+	public String edit(Model model, @RequestParam HashMap<String, Object> paramMap,
+			@RequestParam(defaultValue = "1") int page) {
+		//对传递过来的数聚场景名称做处理,如果传递的为空或者是空字符串,则让它等于空
+		if(null == paramMap.get("placeName") || "".equals(paramMap.get("placeName"))) {
+			paramMap.put("placeName", null);
+		} else {
+			paramMap.put("placeName", SqlHelper.doLike(String.valueOf(paramMap.get("placeName")).trim()));
+		}
+		
+		int totalRow = 0;
+		Pager pager = null;
+		pager = new Pager();
+		//查询符合条件的总的条数
+		totalRow = placeService.countByParams(paramMap);
+		pager.setPage(page);
+		pager.setTotalRow(totalRow);
+		
+		List<Place> placeList = placeService.findByParams(paramMap, pager);
+		model.addAttribute("placeList", placeList);
+		model.addAllAttributes(paramMap);
+		return page("create");
+	}
+	
+	@RequestMapping("/add")
+	public String add(@RequestParam String placeName) {
+		Place place = new Place();
+		place.setName(placeName);
+		placeService.add(place);
+		return redirect(page("create"));
+	}
+	/**
+	 * 得到与该数聚场景对应的场景(运营商定义的)
+	 * @param placeId
+	 * @return
+	 */
+	@RequestMapping("/get-place")
+	public @ResponseBody
+	List<PlaceOperator> getPlace(@RequestParam Long placeId) {
+		//如果传递的数聚场景id为空则返回空值
+		if(null == placeId) {
+			return null;
+		}
+		
+		List<PlaceOperator> placeOperatorList = placeOperatorService.findPlaceDefindedByOperator(placeId);
+		
+		return placeOperatorList;
+	}
+	
+	/**
+	 * 删除场景
+	 * @param model
+	 * @param paramMap
+	 * @return
+	 */
+	@RequestMapping("/delete-place")
+	public @ResponseBody String deletePlace(Model model, @RequestParam Long id) {
+		//传递的参数是不是为空
+		if(null == id) {
+			System.out.println("传递的参数有误");
+			return ERROR;
+		}
+		
+		placeOperatorService.deleteById(id);
+		return OK;
+	}
+	
+	
+	/**
+	 * 用户场景定义页面
+	 * @param model
+	 * @param paramMap
+	 * @param page
+	 * @return
+	 */
+	@RequestMapping("place-sort")
+	public String placeSort(Model model, @RequestParam HashMap<String, Object> paramMap,
+			@RequestParam(defaultValue = "1") int page) {
+		// 对传递过来的场景名称做处理,如果传递的为空或者是空字符串,则让它等于空
+		if (null == paramMap.get("place")
+				|| "".equals(paramMap.get("place"))) {
+			paramMap.put("place", null);
+		} else {
+			paramMap.put("place", SqlHelper.doLike(String.valueOf(
+					paramMap.get("place")).trim()));
+		}
+
+		int totalRow = 0;
+		Pager pager = null;
+		pager = new Pager();
+		// 查询符合条件的总的条数
+		totalRow = placeOperatorService.countUnclassfiedPlace(paramMap);
+		pager.setPage(page);
+		pager.setTotalRow(totalRow);
+		
+		paramMap.put("pager", pager);
+		List<PlaceOperator> placeOperatorList = placeOperatorService.findUnclassfiedPlace(paramMap);
+		model.addAttribute("placeOperatorList", placeOperatorList);
+		model.addAllAttributes(paramMap);
+		return page("place-sort");
+	}
+	
+	/**
+	 * 得到所有的数聚场景的名称
+	 * @return
+	 */
+	@RequestMapping("/placeName")
+	public @ResponseBody List<Place> findAllPlaceName() {
+		List<Place> placeList = placeService.findAll();
+		return placeList;
+	}
+	
+	
+	
+	/**
+	 * 用户场景分类的保存
+	 * 这里要传递两个变量,一个是t_place_operator的id字符串(变量名为id),另一个就是数聚场景id
+	 * 注:字符串格式像"1-4-5",就是id以-号划分,当有多个id的时候;
+	 * @param model
+	 * @param paramMap
+	 * @return
+	 */
+	@RequestMapping("/save")
+	public String placeSort(Model model, @RequestParam HashMap<String, Object> paramMap) {
+		Long[] id = null;
+		Long placeId = null;
+		//当传递过来的是空值或者是空字符串时,则什么也不做
+		if(null == paramMap.get("id") || "".equals(paramMap.get("id"))
+				|| null == paramMap.get("placeId") || "".equals(paramMap.get("placeId"))) {
+			return redirect(page("create"));
+		} else {
+			String idString = String.valueOf(paramMap.get("id"));
+			String[] idArray = idString.split("-");
+			placeId = Long.parseLong(String.valueOf(paramMap.get("placeId")));
+			id = new Long[idArray.length];
+			
+			for(int i = 0; i < id.length; i++) {
+				id[i] = Long.parseLong(idArray[i]);
+			}
+ 		}
+		
+		Map<String, Object> map = new HashMap<String, Object>();
+		map.put("idList", id);
+		map.put("placeId", placeId);
+		placeOperatorService.update(map);
+		
+		return redirect(page("place-sort"));
+	}
+	
+}