package cn.ksource.web.controller.business.pages.duty;
|
|
import java.text.ParseException;
|
import java.text.SimpleDateFormat;
|
import java.util.Calendar;
|
import java.util.HashMap;
|
import java.util.LinkedList;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
|
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.RequestMethod;
|
import org.springframework.web.servlet.ModelAndView;
|
|
import cn.ksource.beans.DUTY_PLAN;
|
import cn.ksource.core.util.ConvertUtil;
|
import cn.ksource.core.util.DateUtil;
|
import cn.ksource.core.util.ParamsMapUtil;
|
import cn.ksource.core.util.StringUtil;
|
import cn.ksource.core.web.SysInfo;
|
import cn.ksource.core.web.WebUtil;
|
import cn.ksource.web.facade.duty.DutyFacade;
|
import cn.ksource.web.facade.incident.IncidentFacade;
|
/**
|
* 值班管理
|
* @author 高发展
|
*2018-03-13
|
*/
|
@Controller
|
@RequestMapping("/business/pages/duty")
|
public class DutyController {
|
|
@Resource
|
private DutyFacade dutyFacade;
|
@Autowired
|
private IncidentFacade incidentFacade;
|
/**
|
* 值班管理
|
* @param model
|
* @param request
|
* @return
|
* @author gaofazhan
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping(value = "dutyPlanList.html")
|
public String dutyPlanList(Model model,HttpServletRequest request){
|
//客户列表
|
List<Map> cusList = incidentFacade.getCustomerList();
|
model.addAttribute("customers", cusList);
|
return "/business/pages/duty/dutyPlanList";
|
}
|
/**
|
* 值班管理数据
|
* @param model
|
* @param request
|
* @return
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping(value = "dutyPlanListData.html")
|
public String dutyPlanListData(Model model,HttpServletRequest request){
|
List<Map> list = dutyFacade.getPlanListData(request);
|
model.addAttribute("list", list);
|
return "/business/pages/duty/dutyPlanListData";
|
}
|
/**
|
* 值班管理数据数量
|
* @param model
|
* @param request
|
* @param response
|
*/
|
@RequestMapping(value = "dutyPlanListCount.html")
|
public void dutyPlanListCount(Model model,HttpServletRequest request,HttpServletResponse response){
|
Integer count = dutyFacade.getPlanListConut(request);
|
WebUtil.write(response, count.toString());
|
}
|
|
/**
|
* 添加值班计划
|
* @param model
|
* @param request
|
* @return
|
* @author gaofazhan
|
*/
|
@SuppressWarnings({ "rawtypes"})
|
@RequestMapping(value = "addDutyPlan.html", method = RequestMethod.GET)
|
public String addDutyPlan(Model model,HttpServletRequest request){
|
String planId = request.getParameter("planId");
|
Map info=new HashMap();
|
if(StringUtil.isNotBlank(planId)){
|
info = new DUTY_PLAN(planId).getBeanMapById();
|
}
|
String partnerId = null;
|
model.addAttribute("partnerId", partnerId);
|
model.addAttribute("info", info);
|
model.addAttribute("customers", incidentFacade.getCustomerList());
|
return "/business/pages/duty/addDutyPlan";
|
}
|
|
@RequestMapping(value = "addDutyPlan.html", method = RequestMethod.POST)
|
public ModelAndView doAddDutyPlan(DUTY_PLAN dutyPlan,HttpServletRequest request){
|
dutyFacade.doAddDutyPlan(dutyPlan);
|
return WebUtil.sysInfoPage(request, "操作成功!",
|
"window.top.query();window.top.hideDialog('0');",
|
SysInfo.Success,"");
|
}
|
|
/**
|
* 配置值班计划
|
* @param model
|
* @param request
|
* @return
|
* @author gaofazhan
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping(value = "configDutyPlan.html", method = RequestMethod.GET)
|
public String configDutyPlan(Model model,HttpServletRequest request){
|
String planId = request.getParameter("planId");
|
Map info = new DUTY_PLAN(planId).getBeanMapById();
|
model.addAttribute("info", info);
|
return "/business/pages/duty/configDutyPlan";
|
}
|
/**
|
* 保存配置
|
* @param dutyPlan
|
* @param request
|
* @return
|
*/
|
@RequestMapping(value = "configDutyPlan.html", method = RequestMethod.POST)
|
public ModelAndView doConfigDutyPlan(DUTY_PLAN dutyPlan,HttpServletRequest request){
|
dutyFacade.doConfigDutyPlan(dutyPlan);
|
return WebUtil.sysInfoPage(request, "操作成功!",
|
"window.top.query();window.top.hideDialog('0');",
|
SysInfo.Success,"");
|
}
|
|
/**
|
* 值班日历
|
* @param model
|
* @param request
|
* @return
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping(value = "dutyCalendar.html", method = RequestMethod.GET)
|
public String dutyCalendar(Model model,HttpServletRequest request){
|
String selDate = request.getParameter("selDate");
|
String changeType = request.getParameter("changeType");
|
if(StringUtil.isBlank(selDate)){
|
selDate = DateUtil.getCurrentDate6().toString();
|
}else{
|
SimpleDateFormat df = new SimpleDateFormat("yyyyMM");
|
Calendar cal = Calendar.getInstance();
|
try {
|
cal.setTime(df.parse(selDate));
|
if(changeType.equals("1")){
|
cal.add(Calendar.MONTH, -1);
|
}else{
|
cal.add(Calendar.MONTH, 1);
|
}
|
selDate = df.format(cal.getTime());
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
}
|
model.addAttribute("selDate", selDate);
|
String planId = request.getParameter("planId");
|
List<Map> list = dutyFacade.getDutyCalendar(planId, selDate);
|
model.addAttribute("list", list);
|
return "/business/pages/duty/dutyCalendar";
|
}
|
|
|
/**
|
* 跳转到选择人员弹窗
|
*/
|
@SuppressWarnings({ "rawtypes", "unchecked" })
|
@RequestMapping("exchangeCustomer.html")
|
public ModelAndView exchangeCustomer(HttpServletRequest request) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/duty/exchangeCustomer");
|
String name=request.getParameter("name");
|
List<Map> list = dutyFacade.getUserDeptList(name);
|
Map param=ParamsMapUtil.getParameterMap(request);
|
List<Map> userList=dutyFacade.getSelectUser(param);
|
if(userList.size()>0){
|
List listOne=new LinkedList();
|
for(Map map:userList){
|
listOne.add(ConvertUtil.obj2StrBlank(map.get("USER_ID")));
|
}
|
if(list.size()>0){
|
for(Map mapa:list){
|
List<Map> listTwo=(List<Map>)mapa.get("children");
|
if(listTwo!=null){
|
if(listTwo.size()>0){
|
for(Map mapb:listTwo){
|
String uId=ConvertUtil.obj2StrBlank(mapb.get("USER_ID"));
|
if(listOne.contains(uId)){
|
mapa.put("isKj", "1");
|
mapb.put("isKj", "1");
|
}
|
}
|
}
|
}
|
}
|
}
|
}
|
modelAndView.addObject("managerList", list);
|
modelAndView.addObject("type", request.getParameter("type"));
|
modelAndView.addObject("search", request.getParameter("name"));
|
modelAndView.addObject("planId", request.getParameter("planId"));
|
modelAndView.addObject("userList", userList);
|
return modelAndView;
|
}
|
/**
|
* 保存客户
|
*
|
* @param request
|
* @param response
|
*/
|
@RequestMapping("exchangeSubmit.html")
|
public void exchangeSubmit(HttpServletRequest request, HttpServletResponse response) {
|
String userIds = request.getParameter("userIds");
|
String userNames = request.getParameter("userNames");
|
String planId = request.getParameter("planId");
|
dutyFacade.doAddDutyPerson(planId,userIds.split(","), userNames.split(","));
|
WebUtil.write(response, String.valueOf("1"));
|
}
|
/**
|
* 启用/禁用值班管理
|
*
|
* @param request
|
* @param response
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping("delPlan.html")
|
public void delSeller(HttpServletRequest request, HttpServletResponse response) {
|
Map param = ParamsMapUtil.getParameterMap(request);
|
dutyFacade.delPlan(param);
|
WebUtil.write(response, String.valueOf("1"));
|
}
|
/**
|
* 值班管理
|
* @param model
|
* @param request
|
* @return
|
* @author gaofazhan
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping(value = "dutyPlanCxList.html")
|
public String dutyPlanCxList(Model model,HttpServletRequest request){
|
//客户列表
|
List<Map> cusList = incidentFacade.getCustomerList();
|
model.addAttribute("customers", cusList);
|
return "/business/pages/duty/dutyPlanCxList";
|
}
|
/**
|
* 值班管理数据
|
* @param model
|
* @param request
|
* @return
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping(value = "dutyPlanCxListData.html")
|
public String dutyPlanCxListData(Model model,HttpServletRequest request){
|
List<Map> list = dutyFacade.getPlanListData(request);
|
model.addAttribute("list", list);
|
return "/business/pages/duty/dutyPlanCxListData";
|
}
|
/**
|
* 值班管理数据数量
|
* @param model
|
* @param request
|
* @param response
|
*/
|
@RequestMapping(value = "dutyPlanCxListCount.html")
|
public void dutyPlanCxListCount(Model model,HttpServletRequest request,HttpServletResponse response){
|
Integer count = dutyFacade.getPlanListConut(request);
|
WebUtil.write(response, count.toString());
|
}
|
/**
|
* 修改值班人员
|
*
|
* @param request
|
* @param response
|
*/
|
@SuppressWarnings("rawtypes")
|
@RequestMapping("exchangePerson.html")
|
public void exchangePerson(HttpServletRequest request, HttpServletResponse response) {
|
Map param=ParamsMapUtil.getParameterMap(request);
|
param.put("userId", request.getParameter("userIds").replace(",", ""));
|
param.put("userName", request.getParameter("userNames").replace(",", ""));
|
dutyFacade.doChangePerson(param);
|
WebUtil.write(response, String.valueOf("1"));
|
}
|
}
|