package cn.ksource.web.controller.wechat.uwyw; import java.io.File; import java.io.IOException; 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.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import cn.ksource.beans.SC_WORKFLOW_INCIDENT; import cn.ksource.core.page.PageInfo; import cn.ksource.core.util.ConvertUtil; import cn.ksource.core.util.DownloadUtil; import cn.ksource.core.util.ParamsMapUtil; import cn.ksource.core.util.StringUtil; import cn.ksource.core.web.WebUtil; import cn.ksource.web.facade.incident.IncidentFacade; import cn.ksource.web.facade.uc.order.UcIncidentFacade; import cn.ksource.web.service.file.FileService; @Controller @RequestMapping("/uwyw/uIncident") public class UincidentControler { @Autowired private UcIncidentFacade ucIncidentFacade; @Autowired private IncidentFacade incidentFacade; /** * 事件工单详情 */ @RequestMapping("uIncidentInfo.html") public ModelAndView uIncidentInfo(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uIncidentInfo"); //查询事件基本信息 String orderId = request.getParameter("orderId"); String flowId = new String(); if(StringUtil.notEmpty(orderId)) { SC_WORKFLOW_INCIDENT incident = new SC_WORKFLOW_INCIDENT(orderId).getInstanceById(); flowId = incident.getFlow_id(); } //通过工单编号查询工单基本信息 Map baseMsg = ucIncidentFacade.queryIncidentBaseMsg(orderId); modelAndView.addObject("baseMsg", baseMsg); modelAndView.addObject("orderId", orderId); modelAndView.addObject("flowId", flowId); return modelAndView; } /** * 跳转到我的事件工单页面 */ @RequestMapping("umyIncident.html") public ModelAndView umyIncident(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/umyIncident"); return modelAndView; } /** * 查询我的事件工单的数量 */ @RequestMapping("umyIncidentData.html") public ModelAndView umyIncidentData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/umyIncidentData"); String customer_id = WebUtil.getUserWywCusId(request); Map params = ParamsMapUtil.getParameterMap(request); params.put("cusId", customer_id); String orderStatus = request.getParameter("flowstate"); PageInfo list = new PageInfo(); if(StringUtil.isEmpty(orderStatus)){ list = ucIncidentFacade.queryIncidentOrderList(pageInfo,params); }else{ if("11".equals(orderStatus)){ list = ucIncidentFacade.queryincidentOrderNodeList(pageInfo,params); }else{ params.put("type", orderStatus); list = ucIncidentFacade.queryincidentEndList(pageInfo,params); } } modelAndView.addObject("orderList", list); modelAndView.addObject("flowstate", orderStatus); return modelAndView; } /** * 查询我的事件工单的数据 */ @RequestMapping("umyIncidentCount.html") public void umyIncidnetCount(HttpServletRequest request,HttpServletResponse response) { String customer_id = WebUtil.getUserWywCusId(request); Map params = ParamsMapUtil.getParameterMap(request); params.put("cusId", customer_id); String orderStatus = request.getParameter("flowstate"); int count = 0; if(StringUtil.isEmpty(orderStatus)){ count = ucIncidentFacade.queryIncidentOrderCount(params); }else{ if("11".equals(orderStatus)){ count = ucIncidentFacade.queryincidentOrderNodeCount(params); }else{ params.put("type", orderStatus); count = ucIncidentFacade.queryincidentEndCount(params); } } WebUtil.write(response, String.valueOf(count)); } /** * 查询流转记录 */ @RequestMapping("uLzRecord.html") public ModelAndView ewLcRecord(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uLzRecord"); String flowId = request.getParameter("flowId"); List lzs = ucIncidentFacade.incidentLzRecord(flowId); modelAndView.addObject("lzs", lzs); return modelAndView; } /** * 查询处理记录 */ @RequestMapping("uClRecord.html") public ModelAndView clRecord(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uClRecord"); String flowId = request.getParameter("flowId"); List records = ucIncidentFacade.queryDealRecord(flowId); modelAndView.addObject("records", records); return modelAndView; } /** * 查询关联设备 */ @RequestMapping("uLinkDevice.html") public ModelAndView ewLinkDevice(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uLinkDevice"); String flowId = request.getParameter("flowId"); List devices = ucIncidentFacade.queryDevices(flowId); modelAndView.addObject("devices", devices); return modelAndView; } /** * 查询关联工单 */ @RequestMapping("uLinkOrder.html") public ModelAndView uLinkOrder(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uLinkOrder"); String flowId = request.getParameter("flowId"); List orders = ucIncidentFacade.queryOrders(flowId); modelAndView.addObject("orders", orders); return modelAndView; } /** * 查询文档附件 */ @RequestMapping("uFile.html") public ModelAndView uFile(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uFile"); String flowId = request.getParameter("flowId"); List files = incidentFacade.queryFiles(flowId); modelAndView.addObject("files", files); return modelAndView; } /** * 查询处理记录详细信息 */ @RequestMapping("uClmore.html") public ModelAndView clmore(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uClmore"); String id = request.getParameter("id"); Map record = incidentFacade.queryClDetail(id); modelAndView.addObject("record", record); return modelAndView; } /** * 查询流转记录详细信息 */ @RequestMapping("uLcMore.html") public ModelAndView uLcMore(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uLcMore"); String id = request.getParameter("id"); Map record = incidentFacade.queryLzDetail(id); modelAndView.addObject("record", record); return modelAndView; } /** * 查询事件处理报告 */ @RequestMapping("uFinishReport.html") public ModelAndView ewFinishReport(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uFinishReport"); String orderId = request.getParameter("orderId"); Map report = incidentFacade.queryWcReport(orderId); modelAndView.addObject("report", report); return modelAndView; } /** * 工单关闭时的事件处理报告 */ @RequestMapping("uCloseReport.html") public ModelAndView closeReport(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/wechat/uwyw/uIncident/uCloseReport"); String orderId = request.getParameter("orderId"); Map report = incidentFacade.queryCloseReport(orderId); modelAndView.addObject("report", report); return modelAndView; } @Autowired private FileService fileService; /** * 文件下载 */ @RequestMapping("download.html") public void download(HttpServletRequest request,HttpServletResponse response) { String fileId = request.getParameter("fileId"); Map fileMsg = ucIncidentFacade.queryFileMsg(fileId); if(null!=fileMsg && fileMsg.size()>0) { String fileName = ConvertUtil.obj2StrBlank(fileMsg.get("FILE_NAME")); String filePath = ConvertUtil.obj2StrBlank(fileMsg.get("FILE_PATH")); String basePath = request.getSession().getServletContext().getRealPath(""); File file = new File(basePath+filePath); try { DownloadUtil.download(response, file, fileName, false); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }