package cn.ksource.web.controller.wechat.uwyw; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; 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.SC_WORKFLOW_CI_REMIND; import cn.ksource.core.page.PageInfo; 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.WebUtil; import cn.ksource.web.Constants; import cn.ksource.web.facade.incident.IncidentFacade; import cn.ksource.web.facade.wechat.ewyw.EwRemindFacade; @Controller @RequestMapping("/uwyw/uRemind") public class EwRemindByCusIdController { @Autowired private EwRemindFacade ewRemindFacade; @Autowired private IncidentFacade incidentFacade; /** * 跳转到所有事件工单页面(根据客户ID) */ @RequestMapping("ewRemindByCusId.html") public ModelAndView ewRemindByCusId(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uRemind/ewRemindByCusId"); //查询工单状态 Map state = Constants.mapWORKFLOW_BASE_WFSTATE_PART; List status = new ArrayList(); for (Map.Entry entry : state.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); Map map = new HashMap(); map.put("state", key); map.put("stateName", value); status.add(map); } //查询事件所有环节 Map node = Constants.remindNode; List nodes = new ArrayList(); for (Map.Entry entry : node.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); Map map = new HashMap(); map.put("nodeId", key); map.put("nodeName", value); nodes.add(map); } modelAndView.addObject("nodes", nodes); modelAndView.addObject("status", status); return modelAndView; } /** * 查询工单列表 */ @RequestMapping(value="ewRemindByCusIdData.html",method=RequestMethod.POST) public ModelAndView eRemindByCusIdData(PageInfo pageInfo,HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uRemind/ewRemindByCusIdData"); Map param = ParamsMapUtil.getParameterMap(request); //取得当前用户微运维当前登录的客户ID String customerId=WebUtil.getUserWywCusId(request); param.put("customerId", customerId); PageInfo list = ewRemindFacade.ewRemindByCusIdData(pageInfo,param); modelAndView.addObject("orderList", list); String flowstate = param.get("flowstate"); modelAndView.addObject("flowstate", flowstate); return modelAndView; } /** * 查询工单总数量 */ @RequestMapping(value="ewRemindByCusIdCount.html",method=RequestMethod.POST) public void eRemindByCusIdCount(HttpServletRequest request,HttpServletResponse response) { Map param = ParamsMapUtil.getParameterMap(request); //取得当前用户微运维当前登录的客户ID String customerId=WebUtil.getUserWywCusId(request); param.put("customerId", customerId); int count = ewRemindFacade.ewRemindByCusIdCount(param); WebUtil.write(response, String.valueOf(count)); } /** * 跳转到我的例行维护日历页面 */ @RequestMapping("ewRemindByCusIdCheck.html") public String ewMyRemindCheck(Model model,HttpServletRequest request) { //查询当前年前五年和后五年 int year = DateUtil.getYear(); List years = new ArrayList(); for(int i=5; i>=0; i--) { int preYear = year-i; years.add(preYear); } for(int i=1; i<5; i++) { int nextYear = year+i; years.add(nextYear); } model.addAttribute("years", years); model.addAttribute("year", DateUtil.getToday("yyyy")); model.addAttribute("month", DateUtil.getToday("MM")); List months = new ArrayList(); for(int i=1; i<=12; i++) { if(i<10) { months.add("0"+i); } else { months.add(i); } } model.addAttribute("months", months); return "/business/wechat/uwyw/uRemind/ewRemindByCusIdCheck"; } /** * 查询例行维护报告日历 */ @SuppressWarnings("unchecked") @RequestMapping("ewRemindByCusIdCal.html") public String ewRemindByCusIdCal(PageInfo pageInfo,Model model,HttpServletRequest request,HttpServletResponse response) { Map param = ParamsMapUtil.getParameterMap(request); //取得当前用户微运维当前登录的客户ID String customerId=WebUtil.getUserWywCusId(request); param.put("customerId", customerId); String year = param.get("year"); String month = param.get("month"); Map result = ewRemindFacade.queryRemindCalandar(param); List list = (List)result.get("monthDays"); List weekDays = (List)result.get("weekDays"); model.addAttribute("calandars", list); model.addAttribute("weeks", weekDays); Long[] dates = DateUtil.getDateFromMonth(ConvertUtil.obj2Int(year),ConvertUtil.obj2Int(month)); PageInfo reminds = ewRemindFacade.ewRemindByCusIdData(pageInfo,param); model.addAttribute("orderList", reminds); return "/business/wechat/uwyw/uRemind/ewRemindByCusIdCal"; } /** * 根据日期获取所有例行维护列表 * @param model * @param request * @return */ @RequestMapping("ewRemindByDate.html") public String ewRemindByDate(Model model,HttpServletRequest request){ initProSelector(model,request); return "/business/wechat/uwyw/uRemind/ewRemindByDate"; } /** * 初始化项目选择下拉框 * @param model * @param request */ private void initProSelector(Model model,HttpServletRequest request){ //客户列表 List customers = incidentFacade.getCustomerList(); model.addAttribute("customers",customers); } /** * 事件工单详情 */ @RequestMapping("ewRemindByCusIdInfo.html") public ModelAndView ewRemindInfo(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uRemind/ewRemindByCusIdInfo"); //查询事件基本信息 String orderId = request.getParameter("orderId"); String flowId = new String(); if(StringUtil.notEmpty(orderId)) { SC_WORKFLOW_CI_REMIND remind = new SC_WORKFLOW_CI_REMIND(orderId).getInstanceById(); flowId = remind.getFlow_id(); } //通过工单编号查询工单基本信息 Map baseMsg = ewRemindFacade.queryRemindInfo(orderId); modelAndView.addObject("baseMsg", baseMsg); modelAndView.addObject("orderId", orderId); modelAndView.addObject("flowId", flowId); return modelAndView; } /** * 例行维护报告 * @param model * @param request * @return */ @RequestMapping("uRemindReport.html") public String uRemindReport(Model model,HttpServletRequest request){ Map param = ParamsMapUtil.getParameterMap(request); Map map=ewRemindFacade.getRemindeItem(param); model.addAttribute("remindMap", map.get("remindMap")); model.addAttribute("dealerMap", map.get("dealerMap")); model.addAttribute("detailCount", map.get("detailCount")); model.addAttribute("detailStateCount", map.get("detailStateCount")); model.addAttribute("fileList", map.get("fileList")); model.addAttribute("orderList", map.get("orderList")); model.addAttribute("node", map.get("node")); return "/business/wechat/uwyw/uRemind/uRemindReport"; } /** * 获取设备列表 * @param model * @param request * @return */ @RequestMapping("uRemindCiList.html") private String uRemindCiList(Model model,HttpServletRequest request){ String orderId = request.getParameter("orderId"); List ciList = ewRemindFacade.getRemindCiList(orderId); model.addAttribute("ciList",ciList); return "/business/wechat/uwyw/uRemind/uRemindCiList"; } }