package cn.ksource.web.controller.uc.ucstatis; 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.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import cn.ksource.core.util.ConvertUtil; import cn.ksource.core.util.DateUtil; import cn.ksource.core.util.JsonUtil; import cn.ksource.core.web.WebUtil; import cn.ksource.web.Constants; import cn.ksource.web.facade.customermanage.CustomerManageFacade; import cn.ksource.web.facade.tj.IncidentStatisFacade; @Controller @RequestMapping("/uc/statis/incident") public class UcStatisIncidentController { @Resource(name="incidentStatisFacade") private IncidentStatisFacade incidentStatisFacade; @Resource private CustomerManageFacade customerFacade; /** * 查询事件类型统计占比 */ @RequestMapping("incidentTypePie.html") public void incidentTypePie(HttpServletRequest request,HttpServletResponse response) { List attitude = incidentStatisFacade.incidentTypePie(request); WebUtil.write(response, JsonUtil.list2Json(attitude)); } /** * 查询事件类型时间走势 */ @RequestMapping("incidentTypeLine.html") public void incidentTypeLine(HttpServletRequest request,HttpServletResponse response) { Map scoreLine = incidentStatisFacade.incidentTypeLine(request); WebUtil.write(response, JsonUtil.map2Json(scoreLine)); } /** * 事件发生时间 * @param request * @param response * @return */ @RequestMapping("incidentHappenTime.html") public ModelAndView incidentRole(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentHappenTime"); //获取当前session中的客户信息 Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); modelAndView.addObject("cus", cus); modelAndView.addObject("selDay", DateUtil.getCurrentDate8()); return modelAndView; } /** * 查询事件类型时间走势 */ @RequestMapping("incidentHappenTimeLine.html") public void incidentHappenTimeLine(HttpServletRequest request,HttpServletResponse response) { Map scoreLine = incidentStatisFacade.incidentTimeLine(request); WebUtil.write(response, JsonUtil.map2Json(scoreLine)); } /** * 事件解决率页面 * @param request * @param response * @return */ @RequestMapping("incidentDealRate.html") public ModelAndView incidentDealRate(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentDealRate"); //获取当前session中的客户信息 Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); long month = DateUtil.getCurrentDate6(); long monthFirstDate = ConvertUtil.obj2Long(month+"01"); String beginTime = DateUtil.format("yyyy-MM-dd", monthFirstDate); String endTime = DateUtil.getToday("yyyy-MM-dd"); modelAndView.addObject("beginTime", beginTime.replaceAll("-", "")); modelAndView.addObject("endTime", endTime.replaceAll("-", "")); modelAndView.addObject("cus", cus); return modelAndView; } /** * 查询事件解决率 */ @RequestMapping("incidentDealRateColumn.html") public void incidentDealRateColumn(HttpServletRequest request,HttpServletResponse response) { Map resMap = incidentStatisFacade.incidentDealRateColumn(request); WebUtil.write(response, JsonUtil.map2Json(resMap)); } /** * 查询事件解决率 */ @RequestMapping("incidentDealRateLine.html") public void incidentDealRateLine(HttpServletRequest request,HttpServletResponse response) { Map resMap = incidentStatisFacade.incidentDealRateLine(request); //System.out.println("---------"+JsonUtil.map2Json(resMap)); WebUtil.write(response, JsonUtil.map2Json(resMap)); } @RequestMapping("incidentTotalChartIndex.html") public ModelAndView incidentTotalChartIndex(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentTotalChartIndex"); //获取当前session中的客户信息 Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); long month = DateUtil.getCurrentDate6(); long monthFirstDate = ConvertUtil.obj2Long(month+"01"); String beginTime = DateUtil.format("yyyy-MM-dd", monthFirstDate); String endTime = DateUtil.getToday("yyyy-MM-dd"); modelAndView.addObject("beginTime", beginTime.replaceAll("-", "")); modelAndView.addObject("endTime", endTime.replaceAll("-", "")); modelAndView.addObject("cus", cus); return modelAndView; } @RequestMapping("incidentTotalChart.html") public ModelAndView incidentTotalChart(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentTotalChart"); //获取当前session中的客户信息 String cusId = WebUtil.getWebLoginUserCusId(request); String cusName = request.getParameter("cusName"); String beginTime = request.getParameter("beginDay"); String endTime = request.getParameter("endDay"); Map resMap = incidentStatisFacade.incidentTotalChart(cusId,cusName,beginTime,endTime); List typeList = (List)resMap.get("typeList"); List sourceList = (List)resMap.get("sourceList"); List closeList = (List)resMap.get("closeList"); List priList = (List)resMap.get("priList"); List effectList = (List)resMap.get("effectList"); List levelList = (List)resMap.get("levelList"); List timeoutList = (List)resMap.get("timeoutList"); List resolveList = (List)resMap.get("resolveList"); List stateList = (List)resMap.get("stateList"); List resList = (List)resMap.get("resList"); modelAndView.addObject("typeList",typeList); modelAndView.addObject("sourceList",sourceList); modelAndView.addObject("closeList",closeList); modelAndView.addObject("priList",priList); modelAndView.addObject("effectList",effectList); modelAndView.addObject("levelList",levelList); modelAndView.addObject("timeoutList",timeoutList); modelAndView.addObject("resolveList",resolveList); modelAndView.addObject("stateList",stateList); modelAndView.addObject("resList",resList); modelAndView.addObject("cusName",cusName); return modelAndView; } /** * 跳转到办公网络保修统计页面 * @param request * @return * @author 李云鹏 */ @RequestMapping("incidentStatisIndex.html") public ModelAndView incidentStatisIndex(HttpServletRequest request){ Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentStatisIndex"); long month = DateUtil.getCurrentDate6(); long monthFirstDate = ConvertUtil.obj2Long(month+"01"); String beginTime = DateUtil.format("yyyy-MM-dd", monthFirstDate); String endTime = DateUtil.getToday("yyyy-MM-dd"); modelAndView.addObject("beginTime", beginTime.replaceAll("-", "")); modelAndView.addObject("endTime", endTime.replaceAll("-", "")); modelAndView.addObject("cus", cus); return modelAndView; } /** * 办公网络保修统计 * @param request * @return * @author 李云鹏 */ @RequestMapping("incidentStatis.html") public ModelAndView incidentStatis(HttpServletRequest request){ ModelAndView modelAndView=new ModelAndView("/uc/statis/incident/incidentStatis"); String cusId = WebUtil.getWebLoginUserCusId(request); String beginTime = request.getParameter("beginDay"); String endTime = request.getParameter("endDay"); String sub_customer_id = request.getParameter("sub_customer_id"); List incidentList=incidentStatisFacade.queryIncidentStatis(cusId,sub_customer_id,beginTime,endTime,"","",""); if(incidentList!=null && incidentList.size()>0){ for(Map map:incidentList){ //map.put("STATE", Constants.getmapSC_WORKFLOW_RELEASE_STATE(map.get("STATE").toString())); } } modelAndView.addObject("incidentList",incidentList); modelAndView.addObject("beginTime",request.getParameter("beginDay")); modelAndView.addObject("endTime",request.getParameter("endDay")); modelAndView.addObject("cusName",request.getParameter("cusName")); return modelAndView; } /** * 事件达成率统计 */ @RequestMapping("incidentDcl.html") public ModelAndView incidentDcl(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentDcl"); Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); modelAndView.addObject("cus", cus); return modelAndView; } /** * 跳转到事件达成率信息页面 */ @RequestMapping("incidentDclStatis.html") public ModelAndView incidentDclStatis(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentDclStatis"); String cusId = WebUtil.getWebLoginUserCusId(request); String beginTime = request.getParameter("beginTime"); String endTime = request.getParameter("endTime"); String subCustomerId = request.getParameter("sub_customer_id"); List reports = incidentStatisFacade.queryIncidentDclStatis(cusId,subCustomerId,beginTime,endTime); modelAndView.addObject("reports", reports); String cusName = request.getParameter("cusName"); modelAndView.addObject("cusName", cusName); return modelAndView; } /** * 跳转到事件处理情况页面 */ @RequestMapping("incidentClqk.html") public ModelAndView incidentClqk(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentClqk"); Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); modelAndView.addObject("cus", cus); return modelAndView; } /** * 跳转到事件处理情况信息页面 */ @RequestMapping("incidentClStatis.html") public ModelAndView incidentClStatis(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/uc/statis/incident/incidentClStatis"); Map result = incidentStatisFacade.queryOrderClStatis(request,Constants.WORKFLOW_BASE_BUSINESS_TYPE_INCIDENT); modelAndView.addObject("result", result); String cusName = request.getParameter("cusName"); modelAndView.addObject("cusName", cusName); return modelAndView; } /** * 事件关闭原因 * @return */ @RequestMapping("incidentCloseReport.html") public String incidentCloseReport(Model model,HttpServletRequest request){ Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); model.addAttribute("cus", cus); return "/uc/statis/incident/incidentCloseReport"; } @RequestMapping("incidentCloseReportData.html") public String incidentCloseReportData(Model model,HttpServletRequest request,HttpServletResponse response){ String cusId = WebUtil.getWebLoginUserCusId(request); String beginDay = request.getParameter("beginDay"); String endDay = request.getParameter("endDay"); Map report = incidentStatisFacade.queryCloseReport(cusId,beginDay,endDay); model.addAttribute("report", report); return "/uc/statis/incident/incidentCloseReportData"; } /** * 事件类型 * @return */ @RequestMapping("incidentTypeReport.html") public String incidentTypeReport(Model model,HttpServletRequest request){ Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); model.addAttribute("cus", cus); return "/uc/statis/incident/incidentTypeReport"; } @RequestMapping("incidentTypeReportData.html") public String incidentTypeReportData(Model model,HttpServletRequest request,HttpServletResponse response){ String cusId = WebUtil.getWebLoginUserCusId(request); String beginDay = request.getParameter("beginDay"); String endDay = request.getParameter("endDay"); Map report = incidentStatisFacade.queryTypeReport(cusId,beginDay,endDay); model.addAttribute("report", report); return "/uc/statis/incident/incidentTypeReportData"; } /** * 事件处理时长 * @return */ @RequestMapping("incidentDealTimeReport.html") public String incidentDealTimeReport(Model model,HttpServletRequest request){ Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); model.addAttribute("cus", cus); return "/uc/statis/incident/incidentDealTimeReport"; } @RequestMapping("incidentDealTimeReportData.html") public String incidentDealTimeReportData(Model model,HttpServletRequest request,HttpServletResponse response){ String cusId = WebUtil.getWebLoginUserCusId(request); String beginDay = request.getParameter("beginDay"); String endDay = request.getParameter("endDay"); Map report = incidentStatisFacade.queryDealTimeReport(cusId,beginDay,endDay); model.addAttribute("report", report); return "/uc/statis/incident/incidentDealTimeReportData"; } /** * 事件处理情况 * @return */ @RequestMapping("incidentDealSatuationReport.html") public String incidentDealSatuationReport(Model model,HttpServletRequest request){ Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); model.addAttribute("cus", cus); return "/uc/statis/incident/incidentDealSatuationReport"; } @RequestMapping("incidentDealSatuatioReportData.html") public String incidentDealSatuatioReportData(Model model,HttpServletRequest request,HttpServletResponse response){ String cusId = WebUtil.getWebLoginUserCusId(request); String beginDay = request.getParameter("beginDay"); String endDay = request.getParameter("endDay"); Map report = incidentStatisFacade.queryDealSituationReport(cusId,beginDay,endDay); model.addAttribute("report", report); return "/uc/statis/incident/incidentDealSatuatioReportData"; } /** * 事件工程师统计 * @return */ @RequestMapping("incidentEngineerReport.html") public String incidentEngineerReport(Model model,HttpServletRequest request){ Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); model.addAttribute("cus", cus); return "/uc/statis/incident/incidentEngineerReport"; } @RequestMapping("incidentEngineerReportData.html") public String incidentEngineerReportData(Model model,HttpServletRequest request,HttpServletResponse response){ Map report = incidentStatisFacade.queryEngineerDealReport(request); model.addAttribute("report", report); return "/uc/statis/incident/incidentEngineerReportData"; } /** * 事件服务台统计 * @return */ @RequestMapping("incidentServiceReport.html") public String incidentServiceReport(Model model,HttpServletRequest request){ Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); model.addAttribute("cus", cus); return "/uc/statis/incident/incidentServiceReport"; } @RequestMapping("incidentServiceReportData.html") public String incidentServiceReportData(Model model,HttpServletRequest request,HttpServletResponse response){ Map report = incidentStatisFacade.queryServiceDealReport(request); model.addAttribute("report", report); return "/uc/statis/incident/incidentServiceReportData"; } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /** * 初始化页面数据 * @author chenlong * @param request * @param model */ private void initModel(HttpServletRequest request,Model model){ //获取当前session中的客户信息 Map cus = customerFacade.getCusById(WebUtil.getWebLoginUserCusId(request)); model.addAttribute("cus", cus); long month = DateUtil.getCurrentDate6(); long monthFirstDate = ConvertUtil.obj2Long(month+"01"); String beginTime = DateUtil.format("yyyy-MM-dd", monthFirstDate); String endTime = DateUtil.getToday("yyyy-MM-dd"); model.addAttribute("beginTime", beginTime.replaceAll("-", "")); model.addAttribute("endTime", endTime.replaceAll("-", "")); int beginMonth = DateUtil.getYear(); String endMonth = DateUtil.getToday("yyyyMM"); model.addAttribute("beginMonth", beginMonth+"01"); model.addAttribute("endMonth", endMonth); } /** * 事件来源页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentType.html") public String incidentType(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentType"; } /** * 获取事件类型饼状图 * @author chenlong */ @RequestMapping("getIncidentTypePie.html") public void getIncidentTypePie(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentTypePie(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件来源页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentSource.html") public String incidentSource(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentSource"; } /** * 获取事件来源饼状图 * @author chenlong */ @RequestMapping("getIncidentSourcePie.html") public void getIncidentSourcePie(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentSourcePie(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件关闭方式页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentClose.html") public String incidentClose(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentClose"; } /** * 获取事件关闭方式柱状图 * @author chenlong */ @RequestMapping("getIncidentCloseCol.html") public void getIncidentCloseCol(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentCloseCol(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件优先级页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentPri.html") public String incidentPri(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentPri"; } /** * 获取事件优先级饼状图图 * @author chenlong */ @RequestMapping("getIncidentPriPie.html") public void getIncidentPriPie(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentPriPie(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件影响度页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentInfluence.html") public String incidentInfluence(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentInfluence"; } /** * 获取事件影响度柱状图 * @author chenlong */ @RequestMapping("getIncidentInfluenceCol.html") public void getIncidentInfluenceCol(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentInfluenceCol(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件服务级别页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentLv.html") public String incidentLv(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentLv"; } /** * 获取事件服务级别饼状图图 * @author chenlong */ @RequestMapping("getIncidentLvPie.html") public void getIncidentLvPie(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentLvPie(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件响应统计页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentResponse.html") public String incidentResponse(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentResponse"; } /** * 获取事件响应饼状图图 * @author chenlong */ @RequestMapping("getIncidentResponsePie.html") public void getIncidentResponsePie(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentResponsePie(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件处理统计页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentDeal.html") public String incidentDeal(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentDeal"; } /** * 获取事件响应饼状图图 * @author chenlong */ @RequestMapping("getIncidentDealPie.html") public void getIncidentDealPie(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentDealPie(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } /** * 事件影响度页面 * @author chenlong * @param model * @param request * @param response * @return */ @RequestMapping("incidentHappendTime.html") public String incidentHappendTime(Model model,HttpServletRequest request,HttpServletResponse response) { initModel(request,model); return "/uc/statis/incident/incidentHappendTime"; } /** * 获取事件影响度线形图 * @author chenlong */ @RequestMapping("getIncidentHappendTimeLine.html") public void getIncidentHappendTimeLine(HttpServletRequest request,HttpServletResponse response){ String frequency = request.getParameter("type"); String startDate = request.getParameter("beginTime"); String endDate = request.getParameter("endTime"); String cusId = request.getParameter("cusId"); Map chartMap = incidentStatisFacade.incidentHappendTimeLine(frequency,cusId,startDate,endDate); WebUtil.write(response, JsonUtil.map2Json(chartMap)); } }