package com.hqyg.disjob.console.web.controller; import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpSession; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.SessionAttributes; import com.hqyg.disjob.common.model.JobGroup; import com.hqyg.disjob.common.model.Result; import com.hqyg.disjob.console.SystemDefault; import com.hqyg.disjob.register.job.EjobServerService; import com.hqyg.disjob.register.job.JobOperationService; import com.google.gson.Gson; import com.hqyg.disjob.monitor.db.domain.PageResult; @Controller @RequestMapping("/service/job/bind") @SessionAttributes(SystemDefault.USER_SESSION_KEY) public class JobBindController { @Resource private EjobServerService ejobServerService; @Resource private JobOperationService jobOperationService; @RequestMapping("/getBindSession") @ResponseBody public List<String> getGroupList(HttpSession session) { return ejobServerService.getSessionsList(); } @SuppressWarnings("unchecked") @RequestMapping("/doBind") @ResponseBody public Result doBind(HttpSession session, @RequestParam(value="sessions", required=true)String sessions, @RequestParam(value="groupNames", required=true)String groupNames) { if(!StringUtils.isEmpty(sessions) && !StringUtils.isEmpty(groupNames)){ List<String> sessionList = new Gson().fromJson(sessions, List.class); List<String> groupNameList = new Gson().fromJson(groupNames, List.class); jobOperationService.bindJob(sessionList, groupNameList); return new Result(); }else{ return new Result(false); } } @SuppressWarnings("unchecked") @RequestMapping("/doReBind") @ResponseBody public Result doReBind(HttpSession session, @RequestParam(value="sessions", required=true)String sessions, @RequestParam(value="groupNames", required=true)String groupNames) { if(!StringUtils.isEmpty(sessions) && !StringUtils.isEmpty(groupNames)){ List<String> sessionList = new Gson().fromJson(sessions, List.class); List<String> groupNameList = new Gson().fromJson(groupNames, List.class); jobOperationService.reBindJob(sessionList, groupNameList); return new Result(); }else{ return new Result(false); } } @RequestMapping("/getJobGroupList") @ResponseBody public List<JobGroup> getJobGroupList(@RequestParam(value="search", required=false) String search) { List<JobGroup> groupNameList = jobOperationService.getAllJobGroupForPageList(); return groupNameList; } }