package cn.ksource.web.controller.business.pages.question; import cn.ksource.beans.*; import cn.ksource.core.page.PageInfo; import cn.ksource.core.util.ConvertUtil; import cn.ksource.core.util.JsonUtil; import cn.ksource.core.util.ParamsMapUtil; import cn.ksource.core.util.StringUtil; import cn.ksource.core.web.SysInfo; import cn.ksource.core.web.SysInfoMsg; import cn.ksource.core.web.WebUtil; import cn.ksource.web.Constants; import cn.ksource.web.GnConstants; import cn.ksource.web.facade.customermanage.CustomerManageFacade; import cn.ksource.web.facade.fpry.FpryFacade; import cn.ksource.web.facade.incident.IncidentFacade; import cn.ksource.web.facade.order.OrderFacade; import cn.ksource.web.facade.question.QuestionFacade; import cn.ksource.web.service.DataDictionaryService; import cn.ksource.web.service.device.DeviceService; import cn.ksource.web.service.file.FileService; import cn.ksource.web.service.message.MessageService; import cn.ksource.web.service.order.OrderService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 日常运维--问题管理控制器 * @note: * @version * @author sxj * @date June 28, 2016 10:35:44 AM */ @Controller @RequestMapping("/business/pages/question") public class QuestionController { @Autowired private QuestionFacade questionFacade; @Autowired private IncidentFacade incidentFacade; @Autowired private DataDictionaryService dataDictionaryService; @Autowired private FileService fileService; @Autowired private OrderService orderService; @Autowired private DeviceService deviceService; @Autowired private OrderFacade orderFacade; @Resource private CustomerManageFacade customerFacade; @Autowired private MessageService messageService; @Autowired private FpryFacade fpryFacade; /** * 选择人员 * @param request * @param response * @return */ @RequestMapping("xzry.html") public ModelAndView xzry(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/xzry"); Map param=ParamsMapUtil.getParameterMap(request); String currend_id = WebUtil.getLoginedUserId(request); param.put("CURRENT_ID", currend_id); //所有角色 List rlist=fpryFacade.getRole(param); //角色下所有人员 List ryList=fpryFacade.getLyRy(param); modelAndView.addObject("rlist", rlist); modelAndView.addObject("ryList", ryList); return modelAndView; } /** * 复选框选择人员 * @param request * @param response * @return */ @RequestMapping("xzryMore.html") public ModelAndView xzryMore(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/xzryMore"); Map param=ParamsMapUtil.getParameterMap(request); String currend_id = WebUtil.getLoginedUserId(request); param.put("CURRENT_ID", currend_id); //所有角色 List rlist=fpryFacade.getRole(param); //角色下所有人员 List ryList=fpryFacade.getLyRy(param); modelAndView.addObject("rlist", rlist); modelAndView.addObject("ryList", ryList); return modelAndView; } /** * 问题列表页面 * @param request * @param response * @return */ @RequestMapping(value="questionList.html", method=RequestMethod.GET) public ModelAndView questionList(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/questionList"); //查询工单数量,通过类型判断查询那种类型的数量 Map msgCount = questionFacade.queryQuestionCount(request); System.out.println(JsonUtil.map2Json(msgCount)); view.addObject("c", msgCount); //查询问题类型数据字典 List sources = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); view.addObject("sources", sources); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type","1"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); return view; } /** * 查询问题工单列表数据 */ @RequestMapping(value="questionData.html",method=RequestMethod.POST) public ModelAndView questionData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); PageInfo list = questionFacade.queryQuestionOrderList(pageInfo,params); modelAndView.addObject("orderList", list); return modelAndView; } /** * 查询问题工单总数量 */ @RequestMapping(value="questionCount.html",method=RequestMethod.POST) public void questionCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); int count = questionFacade.queryQuestionOrderCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 跳转到我的问题工单列表 */ @RequestMapping("myQuestion.html") public ModelAndView myIncident(HttpServletRequest request) { ModelAndView view = new ModelAndView("/business/pages/question/myQuestion"); Map num = orderFacade.queryOrderCountByCate(request, Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION.toString()); view.addObject("num", num); //查询问题类型数据字典 List sources = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); view.addObject("sources", sources); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type","2"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); return view; } /** * 查询我的问题列表 */ @RequestMapping("myQuestionData.html") public ModelAndView myIncidentData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/myQuestionData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); PageInfo question = questionFacade.queryMyQuestionData(pageInfo,params); modelAndView.addObject("orders", question); return modelAndView; } /** * 查询我的问题数量 */ @RequestMapping("myQuestionCount.html") public void myIncidentCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); int count = questionFacade.queryMyQuestionCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 服务台创建问题页面 * @param request * @param response * @return */ @RequestMapping(value="addquestion", method=RequestMethod.GET) public ModelAndView addIncidentForService(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/addquestion"); //来源于事件升级 Map questionMsg = questionFacade.getQuestionMsgByOrderId(request); //查询问题来源数据字典 List froms = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); //取得问题来源的第一条数据 if(null!=froms && froms.size()>0) { Map from = froms.get(0); view.addObject("fromId", from.get("DATAKEY")); view.addObject("fromName", from.get("DATAVALUE")); } //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); view.addObject("froms", froms); view.addObject("questionMsg", questionMsg); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type","2"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); view.addObject("gnmark", GnConstants.ADDWT); return view; } /** * 服务台创建问题页面 * @param request * @param response * @return */ @RequestMapping(value="addfwtquestion", method=RequestMethod.GET) public ModelAndView addfwtquestion(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/addquestion"); //来源于事件升级 Map questionMsg = questionFacade.getQuestionMsgByOrderId(request); //查询问题来源数据字典 List froms = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); //取得问题来源的第一条数据 if(null!=froms && froms.size()>0) { Map from = froms.get(0); view.addObject("fromId", from.get("DATAKEY")); view.addObject("fromName", from.get("DATAVALUE")); } //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); view.addObject("froms", froms); view.addObject("questionMsg", questionMsg); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type","2"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); view.addObject("gnmark", GnConstants.FWTADDWT); return view; } /** * 服务台创建问题页面 * @param request * @param response * @return */ @RequestMapping(value="addchangequestion", method=RequestMethod.GET) public ModelAndView addchangequestion(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/addchangequestion"); //来源于事件升级 Map questionMsg = questionFacade.getQuestionMsgByOrderId(request); //查询问题来源数据字典 List froms = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); view.addObject("froms", froms); view.addObject("questionMsg", questionMsg); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); return view; } /** * 创建问题提交 * @param request * @param response * @return */ @RequestMapping(value="addquestion.html", method=RequestMethod.POST) public ModelAndView addquestionSubmit(HttpServletRequest request, HttpServletResponse response,SC_WORKFLOW_QUESTION sc_workflow_question) { Map resultMap = questionFacade.saveQuestion(request,sc_workflow_question); String result = ConvertUtil.obj2StrBlank(resultMap.get("result")); String nouser = ConvertUtil.obj2StrBlank(resultMap.get("nouser")); if(result.equals("1")) { SysInfoMsg msg = (SysInfoMsg)resultMap.get("msg"); return WebUtil.sysInfoPage(request, "操作成功!", "", SysInfo.Success,"/business/pages/question/myQuestion.html",msg); }else { if(nouser.equals("1")){ return WebUtil.sysInfoPage(request, "没有选择问题受理人员", "", SysInfo.Error,""); }else{ return WebUtil.sysInfoPage(request, "操作失败!", "", SysInfo.Error,""); } } } /** * 通过优先级和影响度查询对应的级别 */ @RequestMapping("queryLevel.html") public void queryLevel(HttpServletRequest request,HttpServletResponse response) { String priority_id = request.getParameter("priority_id"); String influence_id = request.getParameter("influence_id"); String customerId = request.getParameter("customer_id"); Map levelMap = questionFacade.queryLevel(priority_id,influence_id,customerId); WebUtil.write(response, JsonUtil.map2Json(levelMap)); } /** * 分配人员 */ @RequestMapping("slusers.html") public ModelAndView slusers(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/slusers"); String curnodeId = request.getParameter("curnodeId"); String flowId = request.getParameter("flowId"); List nodeList = questionFacade.getFlueNode(request); modelAndView.addObject("nodeList", nodeList); modelAndView.addObject("curnodeId", curnodeId); return modelAndView; } /** * 查询所有的分配人员 */ @RequestMapping("selectTab.html") public ModelAndView selectTab(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/selectTab"); List groupList = incidentFacade.getGroupUser(request); modelAndView.addObject("groupList", groupList); return modelAndView; } /** * 查询所有的分配人员 */ @RequestMapping("selectDealer.html") public ModelAndView selectDealer(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/selectDealer"); List groupList = incidentFacade.getGroupUser(request); modelAndView.addObject("groupList", groupList); return modelAndView; } /** * 查询角色 */ @RequestMapping("selectGroup.html") public ModelAndView selectGroup(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/incident/selectGroup"); List groupList = incidentFacade.getGroupUser(request); modelAndView.addObject("groupList", groupList); return modelAndView; } /** * 查询客户自定义组 */ @RequestMapping("selectZdyGroup.html") public ModelAndView selectZdyGroup(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/selectZdyGroup"); List groupList = questionFacade.getZdyGroupList(request); modelAndView.addObject("groupList", groupList); return modelAndView; } /** * 查询客户自定义组 */ @RequestMapping("zdyGroupList.html") public ModelAndView zdyGroupList(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/zdyGroupList"); List groupList = questionFacade.getZdyGroupList(request); modelAndView.addObject("groupList", groupList); return modelAndView; } /** * 添加客户自定义组下的人员 */ @RequestMapping(value="addzdyGroupUser.html",method=RequestMethod.GET) public ModelAndView addzdyGroupUser(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/addzdyGroupUser"); String groupId = request.getParameter("groupId"); if(!StringUtil.isEmpty(groupId)){ modelAndView.addObject("group", new CUSTOM_GROUP(groupId).getBeanMapById()); }else{ modelAndView.addObject("group", new HashMap()); } Map users = questionFacade.usersbyGroup(request); modelAndView.addObject("users", users.get("resList")); modelAndView.addObject("groupuser", users.get("groupuser")); modelAndView.addObject("main", users); return modelAndView; } /** * 添加客户自定义组下的人员 */ @RequestMapping(value="addzdyGroupUser.html",method=RequestMethod.POST) public ModelAndView addzdyGroupUserSumbit(HttpServletRequest request) { String groupId = request.getParameter("groupId"); String customerId = request.getParameter("customerId"); questionFacade.addGroupUser(request); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('zdyadd');window.top.document.getElementById('dialogIframedealer').contentWindow.loadGroup();", SysInfo.Success,""); } /** * 删除客户自定义分组 */ @RequestMapping("delzdyGroupUser.html") public void delGroupUser(HttpServletRequest request,HttpServletResponse response) { String id = request.getParameter("id"); CUSTOM_GROUP group = new CUSTOM_GROUP(); group.setId(id).deleteById(); WebUtil.write(response, "1"); } /** * 跳转到工单处理页面 * @param request * @return */ @RequestMapping("questionDeal.html") public ModelAndView questionDeal(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionDeal"); //查询问题基本信息 String orderId = request.getParameter("orderId"); String flowId = request.getParameter("flowId"); Map questionMap = questionFacade.queryQuestionBaseMsg(orderId); //校验当前流程中的处理人是否为当前登录人 String clr=ConvertUtil.obj2StrBlank(questionMap.get("clr")); String dqr=WebUtil.getUserId(request); if(clr.equals(dqr)){ modelAndView.addObject("sfwdqclr", 1); } List cilist = deviceService.queryLinkDevices(flowId); List orderlist = orderService.queryLinkOrders(flowId); List filelist = fileService.getFileList(flowId); questionMap.put("ciList", cilist); questionMap.put("orderList", orderlist); questionMap.put("fileList", filelist); //查询问题来源数据字典 List froms = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); WORKFLOW_BASE base = new WORKFLOW_BASE(flowId).getInstanceById(); Map node = questionFacade.getFlowMsg(flowId, WebUtil.getLoginedUserId(request)); //node为空,则为分派到组 if(StringUtil.isEmpty(ConvertUtil.obj2StrBlank(node.get("ID")))){ node = new WORKFLOW_NODE(base.getCurrent_node_id()).getBeanMapById(); } String isclose = ""; List closejd = JsonUtil.json2List(ConvertUtil.obj2Str(questionMap.get("closejd"))); for(Map map:closejd){ if(map.get("nodeId").equals(node.get("NODE_TEMPLATE_ID"))){ isclose = "1"; } } String isback = ""; List backjd = JsonUtil.json2List(ConvertUtil.obj2Str(questionMap.get("backjd"))); for(Map map:backjd){ if(map.get("nodeId").equals(node.get("NODE_TEMPLATE_ID"))){ isback = "1"; } } if((Constants.WTFQ).equals(node.get("NODE_TEMPLATE_ID"))){ modelAndView = new ModelAndView("/business/pages/question/backquestion"); }else if((Constants.WTHG).equals(node.get("NODE_TEMPLATE_ID"))){ modelAndView = new ModelAndView("/business/pages/question/questionSh"); } if(ConvertUtil.obj2Integer(node.get("FLOWSTATE")) == 1){ modelAndView.addObject("answer", 1); } //通过工单编号查询工单基本信息 Map baseMsg = questionFacade.queryQuestionBaseMsg(orderId); modelAndView.addObject("dqjd", ConvertUtil.obj2StrBlank(questionMap.get("note"))); modelAndView.addObject("eventDg", eventDg); modelAndView.addObject("eventPri", eventPri); modelAndView.addObject("question", questionMap); modelAndView.addObject("froms", froms); modelAndView.addObject("baseMsg", baseMsg); modelAndView.addObject("orderId", orderId); modelAndView.addObject("flowId", flowId); modelAndView.addObject("nodeId", node.get("ID")); modelAndView.addObject("ismain", node.get("IS_ADMIN")); modelAndView.addObject("isclose", isclose); modelAndView.addObject("isback", isback); modelAndView.addObject("curnodeId", node.get("NODE_TEMPLATE_ID")); modelAndView.addObject("curnodeState", Constants.getWORKFLOW_NODE_FLOWSTATE_Label(ConvertUtil.obj2Integer(node.get("FLOWSTATE")))); modelAndView.addObject("repeat_mark", questionMap.get("REPEAT_MARK")); return modelAndView; } @RequestMapping("anwer.html") public ModelAndView anwer(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/anwer"); String flowId = request.getParameter("flowId"); String nodeId = request.getParameter("nodeId"); String orderId = request.getParameter("orderId"); Map question = new SC_WORKFLOW_QUESTION(orderId).getBeanMapById(); WORKFLOW_NODE node = new WORKFLOW_NODE(nodeId).getInstanceById(); Map nodeMsgMap = new HashMap(); if(node.getFlow_type() == 2){ nodeMsgMap = new WORKFLOW_NODE(node.getSource_node_instance_id()).getBeanMapById(); nodeMsgMap.put("ORDER_CODE", question.get("ORDER_CODE")); nodeMsgMap.put("STATE", question.get("STATE")); nodeMsgMap.put("CUSTOMER_NAME", question.get("CUSTOMER_NAME")); nodeMsgMap.put("FIRST_CATEGORY_NAME", question.get("FIRST_CATEGORY_NAME")); nodeMsgMap.put("SECOND_CATEGORY_NAME", question.get("SECOND_CATEGORY_NAME")); nodeMsgMap.put("THIRD_CATEGORY_NAME", question.get("THIRD_CATEGORY_NAME")); nodeMsgMap.put("isback", 2); view.addObject("nodeMsg", nodeMsgMap); }else{ view.addObject("nodeMsg", question); } view.addObject("flowId", flowId); view.addObject("nodeId", nodeId); view.addObject("orderId", orderId); return view; } @RequestMapping(value="answer.html", method=RequestMethod.POST) public void anwerSubmit(HttpServletRequest request, HttpServletResponse response) { String result = questionFacade.anwerSubmit(request); WebUtil.write(response, result); } /** * 查询问题基本信息 */ @RequestMapping("questionBaseMsg.html") public ModelAndView incidentBaseMsg(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionBaseMsg"); String orderId = request.getParameter("orderId"); //通过工单编号查询工单基本信息 Map baseMsg = questionFacade.queryQuestionBaseMsg(orderId); modelAndView.addObject("baseMsg", baseMsg); return modelAndView; } /** * 问题修改页面 * @param request * @param response * @return */ @RequestMapping("editQuestion.html") public ModelAndView editQuestion(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/editQuestion"); String id = request.getParameter("id"); String flowId = request.getParameter("flowId"); Map questionMap = questionFacade.queryQuestionBaseMsg(id); List fileList = fileService.getFileList(flowId); questionMap.put("fileList", fileList); view.addObject("question", questionMap); //查询问题来源数据字典 List froms = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); view.addObject("eventPri", eventPri); view.addObject("froms", froms); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); return view; } /** * 修改问题提交 * @param request * @param response * @return */ @RequestMapping(value="editQuestion.html", method=RequestMethod.POST) public ModelAndView editQuestionSubmit(HttpServletRequest request, HttpServletResponse response,SC_WORKFLOW_QUESTION sc_workflow_question) { questionFacade.updateQuestion(request,sc_workflow_question); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.location.reload(true);", SysInfo.Success,"",null); } /** * 诊断报告历史 */ @RequestMapping(value="questionZdMsg.html",method=RequestMethod.GET) public ModelAndView questionZdMsg(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionZdMsg"); String orderId = request.getParameter("orderId"); String flowId = request.getParameter("flowId"); String curnodeId = request.getParameter("curnodeId"); Map baseMsg = new SC_WORKFLOW_QUESTION(orderId).getBeanMapById(); modelAndView.addObject("curnodeId", curnodeId); modelAndView.addObject("baseMsg", baseMsg); return modelAndView; } /** * 诊断报告历史数据 */ @RequestMapping(value="questionzdmsgdata.html",method=RequestMethod.POST) public ModelAndView questionzdmsgdata(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionzdmsgdata"); String flowId = request.getParameter("flowId"); String orderId = request.getParameter("orderId"); List zdList = questionFacade.getZdMsgList(flowId); modelAndView.addObject("zdList", zdList); modelAndView.addObject("userId", WebUtil.getLoginedUserId(request)); modelAndView.addObject("orderMsg", new SC_WORKFLOW_QUESTION(orderId).getBeanMapById()); return modelAndView; } /** * 诊断报告历史 */ @RequestMapping(value="viewquestionZdMsg.html",method=RequestMethod.POST) public ModelAndView viewquestionZdMsg(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/viewquestionZdMsg"); String orderId = request.getParameter("orderId"); String flowId = request.getParameter("flowId"); String curnodeId = request.getParameter("curnodeId"); modelAndView.addObject("curnodeId", curnodeId); List zdList = questionFacade.getZdMsgList(flowId); modelAndView.addObject("zdList", zdList); modelAndView.addObject("userId", WebUtil.getLoginedUserId(request)); modelAndView.addObject("orderMsg", new SC_WORKFLOW_QUESTION(orderId).getBeanMapById()); return modelAndView; } /** * 跳转到填写结局方案页面 */ @RequestMapping(value="questionZdReport.html",method=RequestMethod.GET) public ModelAndView questionZdReport(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionZdReport"); String id = request.getParameter("id"); String type = request.getParameter("type"); Map zdMsg = questionFacade.getzdmsgbyId(request); List fileList = new ArrayList(); if(!StringUtil.isEmpty(type)){ if("1".equals(type)){ fileList=fileService.getFileList(ConvertUtil.obj2StrBlank(zdMsg.get("ZDID"))); }else{ fileList=fileService.getFileList(ConvertUtil.obj2StrBlank(zdMsg.get("ID"))); } } modelAndView.addObject("zdMsg", zdMsg); modelAndView.addObject("type", type); modelAndView.addObject("fileList", fileList); return modelAndView; } /** * 结果方案提交 */ @RequestMapping(value="questionZdReport.html",method=RequestMethod.POST) public ModelAndView questionZdReportsubmit(HttpServletRequest request,HttpServletResponse response) { questionFacade.updateZdMsg(request); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.document.getElementById('zdReportIframe').contentWindow.queryRecord();window.top.hideDialog('2');", SysInfo.Success,"",null); } /** * 诊断报告历史数据 */ @RequestMapping(value="delReport.html",method=RequestMethod.POST) public void delReport(HttpServletRequest request,HttpServletResponse response) { String reportId = request.getParameter("reportId"); QUESTION_ZD_HISTORY zd = new QUESTION_ZD_HISTORY(reportId); zd.deleteById(); WebUtil.write(response, "1"); } /** * 查询是否可以进入下一个节点 */ @RequestMapping("issave.html") public void issave(HttpServletRequest request,HttpServletResponse response) { String issave = questionFacade.issave(request); WebUtil.write(response, issave); } /** * 分配人员 */ @RequestMapping("wtusersAssign.html") public ModelAndView queryUser(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/wtusersAssign"); String curnodeId = request.getParameter("curnodeId"); String flowId = request.getParameter("flowId"); List nodeList = questionFacade.getFlueNode(request); Map tempMsg = questionFacade.gettempMsg(flowId,WebUtil.getLoginedUserId(request)); if(tempMsg.get("ID") != null){ Map user = JsonUtil.json2Map(ConvertUtil.obj2StrBlank(tempMsg.get("DEALER"))); tempMsg.put("userId", user.get("userid")); tempMsg.put("userName", user.get("username")); } if(tempMsg.get("ID") == null){ if(curnodeId.equals(Constants.WTZD)){ List zdmsg = questionFacade.getZdMsgList(flowId); if(zdmsg.size()> 0){ modelAndView.addObject("zdmsg", zdmsg.get(0)); List fileList=fileService.getFileList(ConvertUtil.obj2StrBlank(zdmsg.get(0).get("ID"))); modelAndView.addObject("fileList", fileList); } } } modelAndView.addObject("nodeList", nodeList); modelAndView.addObject("curnodeId", curnodeId); modelAndView.addObject("tempMsg", tempMsg); return modelAndView; } /** * 分派人员 */ @RequestMapping("saveusersAssign.html") public ModelAndView usersAssign(HttpServletRequest request,HttpServletResponse response) { String savetype = request.getParameter("savetype"); Map resultMap = questionFacade.updateAssign(request); if("1".equals(savetype)){ return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('1');", SysInfo.Success,"/business/pages/question/myQuestion.html",null); }else{ String result = ConvertUtil.obj2StrBlank(resultMap.get("result")); if(result.equals("1")) { SysInfoMsg msg = (SysInfoMsg)resultMap.get("msg"); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('1');", SysInfo.Success,"/business/pages/question/myQuestion.html",msg); }else { return WebUtil.sysInfoPage(request, "操作失败!", "", SysInfo.Error,""); } } } /** * 流转备注 */ @RequestMapping(value="lzbz.html", method=RequestMethod.GET) public ModelAndView lzbz(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/lzbz"); return modelAndView; } /** * 流转备注 */ @RequestMapping(value="lzbz.html", method=RequestMethod.POST) public ModelAndView lzbzsubmit(HttpServletRequest request,HttpServletResponse response) { questionFacade.updatefinishnode(request); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('2');", SysInfo.Success,"/business/pages/question/myQuestion.html"); } /** * 工单审核中回退 */ @RequestMapping(value="orderBack.html", method=RequestMethod.GET) public ModelAndView orderback(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/orderBack"); String nodeId = request.getParameter("nodeId"); Map nodeMap = questionFacade.getBeforeNodeMsg(nodeId); String node_template_name = Constants.getquestionNodeLabel(ConvertUtil.obj2StrBlank(nodeMap.get("NODE_TEMPLATE_ID"))); nodeMap.put("NODE_TEMPLATE_NAME",node_template_name ); modelAndView.addObject("nodeMap", nodeMap); return modelAndView; } /** * 工单审核中回退 */ @RequestMapping(value="orderBack.html", method=RequestMethod.POST) public ModelAndView orderBacksubmit(HttpServletRequest request,HttpServletResponse response) { Map resultMap = questionFacade.gobackNodeSubmit(request); SysInfoMsg msg = (SysInfoMsg)resultMap.get("msg"); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('2');", SysInfo.Success,"/business/pages/question/myQuestion.html",msg); } /** * 跳转到填写申请工单结束方案页面 */ @RequestMapping(value="adminEndQuestion.html",method=RequestMethod.GET) public ModelAndView adminEndQuestion(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/adminEndQuestion"); return modelAndView; } /** * 申请工单结束方案提交 */ @RequestMapping(value="adminEndQuestion.html",method=RequestMethod.POST) public ModelAndView adminEndQuestionSubmit(HttpServletRequest request,HttpServletResponse response) { Map resultMap = questionFacade.updateApplyEnd(request); SysInfoMsg msg = (SysInfoMsg)resultMap.get("msg"); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('10');", SysInfo.Success,"/business/pages/question/myQuestion.html",msg); } /** * 跳转到填写结局方案页面 */ @RequestMapping(value="endQuestion.html",method=RequestMethod.GET) public ModelAndView endQuestion(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/endQuestion"); String orderId = request.getParameter("orderId"); Map question = new SC_WORKFLOW_QUESTION(orderId).getBeanMapById(); Map endMsg = questionFacade.getEndMsgById(orderId); //查询解决方式数据字典 List ways = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTIONEND_RESOLVE_TYPE); //查询解决方式数据字典 List closeways = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTIONCLOSE_RESOLVE_TYPE); modelAndView.addObject("closeways", closeways); modelAndView.addObject("ways", ways); modelAndView.addObject("endMsg", endMsg); modelAndView.addObject("question", question); return modelAndView; } /** * 结果方案提交 */ @RequestMapping(value="endQuestion.html",method=RequestMethod.POST) public ModelAndView endQuestionsubmit(HttpServletRequest request,HttpServletResponse response) { questionFacade.updateEndQuestion(request); String orderId = request.getParameter("orderId"); ModelAndView modelAndView = new ModelAndView("/business/pages/question/rechange"); modelAndView.addObject("orderId", orderId); modelAndView.addObject("bustype", Constants.WORKFLOW_BASE_BUSINESS_TYPE_QUESTION); return modelAndView; } /** * 查询重复问题工单 */ @RequestMapping("linkwtOrder.html") public ModelAndView linkwtOrder(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/linkwtOrder"); return modelAndView; } /** * 查询关联工单 */ @RequestMapping("orderwtList.html") public ModelAndView orderwtList(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/orderwtList"); List orders = questionFacade.queryLinkwtOrder(request); modelAndView.addObject("orders", orders); return modelAndView; } /** * 问题回退信息提交 * @param request * @param response * @return */ @RequestMapping(value="backquestion.html", method=RequestMethod.POST) public ModelAndView backUpdatequestionSubmit(HttpServletRequest request, HttpServletResponse response,SC_WORKFLOW_QUESTION sc_workflow_question) { Map resultMap = questionFacade.saveQuestion(request,sc_workflow_question); String result = ConvertUtil.obj2StrBlank(resultMap.get("result")); SysInfoMsg msg = (SysInfoMsg)resultMap.get("msg"); return WebUtil.sysInfoPage(request, "操作成功!", "", SysInfo.Success,"/business/pages/question/myQuestion.html",msg); } /** * 工单审核中关闭 */ @RequestMapping(value="closequestion.html", method=RequestMethod.GET) public ModelAndView orderclose(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/closequestion"); String orderId = request.getParameter("orderId"); Map question = new SC_WORKFLOW_QUESTION(orderId).getBeanMapById(); //查询解决方式数据字典 List ways = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTIONCLOSE_RESOLVE_TYPE); modelAndView.addObject("ways", ways); modelAndView.addObject("question", question); return modelAndView; } /** * 工单审核中关闭 */ @RequestMapping(value="closequestion.html", method=RequestMethod.POST) public ModelAndView closequestionsubmit(HttpServletRequest request,HttpServletResponse response) { questionFacade.updateResolveType(request); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('3');", SysInfo.Success,"/business/pages/question/myQuestion.html",null); } /** * 跳转到订单查看页面 */ @RequestMapping("questionDetail.html") public ModelAndView incidentDetail(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionDetail"); //查询问题基本信息 String orderId = request.getParameter("orderId"); String flowId = request.getParameter("flowId"); //通过工单编号查询工单基本信息 Map baseMsg = questionFacade.queryQuestionBaseMsg(orderId); String isopen = questionFacade.getIsOpenQuestion(request); messageService.doReadMessage(orderId, WebUtil.getUserId(request)); modelAndView.addObject("baseMsg", baseMsg); modelAndView.addObject("orderId", orderId); modelAndView.addObject("flowId", flowId); modelAndView.addObject("isopen", isopen); return modelAndView; } /** * 问题处理服务报告 * @param request * @return */ @RequestMapping("questionInfo.html") public ModelAndView QuestionInfo(HttpServletRequest request){ ModelAndView view = new ModelAndView("/business/pages/question/questionInfo"); Map map=questionFacade.questionInfo(request); Map report=(Map)map.get("questionMap"); if(report!=null){ //项目编号 String CUSTOMER_ID =ConvertUtil.obj2Str(report.get("CUSTOMER_ID")); if(StringUtil.notEmpty(CUSTOMER_ID)){ SC_PARTNER_CUSTOMER_INFO customer_INFO=new SC_PARTNER_CUSTOMER_INFO(CUSTOMER_ID).getInstanceById(); if (customer_INFO !=null) report.put("customer_code", customer_INFO.getCustomer_code()); } String FIRST_CATEGORY_ID=ConvertUtil.obj2Str(report.get("FIRST_CATEGORY_ID")); if(StringUtil.notEmpty(FIRST_CATEGORY_ID)){ SC_SERVCE_CATEGORY sc_SERVCE_CATEGORY =new SC_SERVCE_CATEGORY(FIRST_CATEGORY_ID).getInstanceById(); report.put("FIRST_CATEGORY_CODE", sc_SERVCE_CATEGORY.getCategory_code()); } String SECOND_CATEGORY_ID=ConvertUtil.obj2Str(report.get("SECOND_CATEGORY_ID")); if(StringUtil.notEmpty(SECOND_CATEGORY_ID)){ SC_SERVCE_CATEGORY sc_SERVCE_CATEGORY =new SC_SERVCE_CATEGORY(SECOND_CATEGORY_ID).getInstanceById(); report.put("SECOND_CATEGORY_CODE", sc_SERVCE_CATEGORY.getCategory_code()); } String THIRD_CATEGORY_ID=ConvertUtil.obj2Str(report.get("THIRD_CATEGORY_ID")); if(StringUtil.notEmpty(THIRD_CATEGORY_ID)){ SC_SERVCE_CATEGORY sc_SERVCE_CATEGORY =new SC_SERVCE_CATEGORY(THIRD_CATEGORY_ID).getInstanceById(); report.put("THIRD_CATEGORY_CODE", sc_SERVCE_CATEGORY.getCategory_code()); } } view.addObject("questionMap", report); view.addObject("orderList", map.get("orderList")); view.addObject("ciList", map.get("ciList")); view.addObject("fileList", map.get("fileList")); return view; } /** * 退回信息 */ @RequestMapping("orderBackMsg.html") public ModelAndView orderBackMsg(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/orderBackMsg"); String orderId = request.getParameter("orderId"); String nodeId = request.getParameter("nodeId"); Map question = new SC_WORKFLOW_QUESTION(orderId).getBeanMapById(); WORKFLOW_NODE node = new WORKFLOW_NODE(nodeId).getInstanceById(); Map nodeMsgMap = new WORKFLOW_NODE(node.getSource_node_instance_id()).getBeanMapById(); nodeMsgMap.put("NAME", question.get("NAME")); modelAndView.addObject("nodeMsg", nodeMsgMap); return modelAndView; } /** * 工单挂起 */ @RequestMapping(value="questiongq.html", method=RequestMethod.GET) public ModelAndView questiongq(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questiongq"); //查询解决方式数据字典 List ways = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_GQYY); modelAndView.addObject("ways", ways); return modelAndView; } /** * 工单挂起 */ @RequestMapping(value="questiongq.html", method=RequestMethod.POST) public ModelAndView questiongqsubmit(HttpServletRequest request,HttpServletResponse response) { questionFacade.updateQuestiongq(request); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('3');", SysInfo.Success,"/business/pages/question/myQuestion.html",null); } /** * 查询挂起历史 */ @RequestMapping("gqhistoryList.html") public ModelAndView gqhistoryList(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/gqhistoryList"); return modelAndView; } /** * 查询挂起历史数据 */ @RequestMapping("gqhistoryData.html") public ModelAndView gqhistoryData(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/gqhistoryData"); List gqList = questionFacade.queryGqhistoryData(request); modelAndView.addObject("gqList", gqList); return modelAndView; } /** * 工单开启 */ @RequestMapping(value="questionopen.html", method=RequestMethod.GET) public ModelAndView questionopen(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionopen"); return modelAndView; } /** * 工单开启 */ @RequestMapping(value="questionopen.html",method=RequestMethod.POST) public ModelAndView questionopenSubmit(HttpServletRequest request,HttpServletResponse response) { questionFacade.updateQuestionOpen(request); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('5');", SysInfo.Success,"/business/pages/question/myQuestion.html",null); } /** * 跳转到我的工单池页面 */ @RequestMapping("myquestionpool.html") public ModelAndView myquestionpool(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/myquestionpool"); String type = request.getParameter("type"); //查询工单数量,通过类型判断查询那种类型的数量 Map msgCount = questionFacade.querymyQuestionpoolCount(request); System.out.println(JsonUtil.map2Json(msgCount)); modelAndView.addObject("c", msgCount); //查询工单类型 Map state = Constants.mapWORKFLOW_BASE_BUSINESS_TYPE; List ways = new ArrayList(); for (Map.Entry entry : state.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); Map map = new HashMap(); map.put("typeId", key); map.put("typeName", value); if(key.equals(type)) { map.put("checked", 1); } else { map.put("checked", 2); } ways.add(map); } modelAndView.addObject("types", ways); //客户列表 List cusList = incidentFacade.getCustomerList(); modelAndView.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type","2"); Map map = questionFacade.getOrderNum(params); modelAndView.addObject("data", map); return modelAndView; } /** * 查询我的工单池数据 */ @RequestMapping("myquestionpoolData.html") public ModelAndView myquestionpoolData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/myquestionPoolData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); PageInfo orderList = questionFacade.myquestionpoolData(pageInfo,params); modelAndView.addObject("orders", orderList); return modelAndView; } /** * 查询我的工单池数据 */ @RequestMapping("myquestionpoolCount.html") public void myquestionpoolCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); int count = questionFacade.myquestionpoolCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 事件服务台首页(我的) * @param model * @param request * @param response * @return */ @RequestMapping(value="myQuestionIndex.html") public String myQuestionIndex(Model model,HttpServletRequest request,HttpServletResponse response){ List cusList = customerFacade.getCusList(); model.addAttribute("cusList", cusList); model.addAttribute("userId", WebUtil.getUserId(request)); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type","2"); Map map = questionFacade.getOrderNum(params); model.addAttribute("data", map); return "/business/pages/question/myQuestionIndex"; } @RequestMapping(value="myQuestionIndexLoad.html") public String myQuestionIndexLoad(Model model,HttpServletRequest request,HttpServletResponse response){ Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getUserId(request)); //工单池问题数量 int poolCount = questionFacade.myquestionpoolCount(params); //待处理问题数量 params.put("type","1"); int pendingCount = questionFacade.querymyQuestionOrderNodeCount(params); //进行中问题数量 params.put("type","2"); int inHandCount = questionFacade.querymyQuestionOrderNodeCount(params); //已处理 params.put("type","3"); int processedCount = questionFacade.querymyQuestionOrderNodeCount (params); model.addAttribute("poolCount",poolCount); model.addAttribute("pendingCount",pendingCount); model.addAttribute("inHandCount",inHandCount); model.addAttribute("processedCount",processedCount); return "/business/pages/question/myQuestionIndexLoad"; } /** * 查询最近一月问题数量 * @param request * @param response */ @RequestMapping(value="getQuestionSumLineChart.html") public void getQuestionSumLineChart(HttpServletRequest request,HttpServletResponse response){ Map params = ParamsMapUtil.getParameterMap(request); Map info = questionFacade.getLastMonthQuestionCount(params); WebUtil.write(response, JsonUtil.map2Json(info)); } /** * 查询最近一月问题级别分析 * @param request * @param response */ @RequestMapping(value="getQuestionLvPieChart.html") public void getQuestionLvPieChart(HttpServletRequest request,HttpServletResponse response){ Map params = ParamsMapUtil.getParameterMap(request); Map info = questionFacade.getLastMonthQuestionLv(params); WebUtil.write(response, JsonUtil.map2Json(info)); } /** * 查询最近一月问题优先级分析 * @param request * @param response */ @RequestMapping(value="getQuestionPriPieChart.html") public void getQuestionPriPieChart(HttpServletRequest request,HttpServletResponse response){ Map params = ParamsMapUtil.getParameterMap(request); Map info = questionFacade.getLastMonthQuestionPri(params); WebUtil.write(response, JsonUtil.map2Json(info)); } /** * 查询最近一月问题影响度分析 * @param request * @param response */ @RequestMapping(value="getQuestionEffectPieChart.html") public void getQuestionEffectPieChart(HttpServletRequest request,HttpServletResponse response){ Map params = ParamsMapUtil.getParameterMap(request); Map info = questionFacade.getLastMonthQuestionEffect(params); //System.out.println("json--------------------------"+JsonUtil.map2Json(info)); WebUtil.write(response, JsonUtil.map2Json(info)); } /** * 查询最近一月服务目录问题数量 * @param request * @param response */ @RequestMapping(value="getQuestionServerLineChart.html") public void getQuestionServerLineChart(HttpServletRequest request,HttpServletResponse response){ Map params = ParamsMapUtil.getParameterMap(request); Map info = questionFacade.getLastMonthQuestionServer(params); WebUtil.write(response, JsonUtil.map2Json(info)); } /** * 问题待响应列表页面 * @param request * @param response * @return */ @RequestMapping(value="{type}/myquestionNodeList.html", method=RequestMethod.GET) public ModelAndView myquestionNodeList(HttpServletRequest request, HttpServletResponse response,@PathVariable(value="type") String type) { ModelAndView view = new ModelAndView("/business/pages/question/myQuestionNodeList"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type", type); //查询工单数量,通过类型判断查询那种类型的数量 Map msgCount = questionFacade.querymyQuestionNodeCount(params); System.out.println(JsonUtil.map2Json(msgCount)); view.addObject("c", msgCount); //查询问题类型数据字典 List sources = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); view.addObject("sources", sources); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); view.addObject("type", type); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); params.put("type","2"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); return view; } /** * 查询问题工单列表数据 */ @RequestMapping(value="myquestionNodeData.html",method=RequestMethod.POST) public ModelAndView myquestionNodeData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/myQuestionNodeData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); PageInfo list = questionFacade.querymyQuestionOrderNodeList(pageInfo,params); modelAndView.addObject("orderList", list); modelAndView.addObject("type", params.get("type")); return modelAndView; } /** * 查询问题工单总数量 */ @RequestMapping(value="myquestionNodeCount.html",method=RequestMethod.POST) public void myquestionNodeCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); int count = questionFacade.querymyQuestionOrderNodeCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 问题待响应列表页面 * @param request * @param response * @return */ @RequestMapping(value="{type}/myquestionEndList.html", method=RequestMethod.GET) public ModelAndView myquestionEndList(HttpServletRequest request, HttpServletResponse response,@PathVariable(value="type") String type) { ModelAndView view = new ModelAndView("/business/pages/question/myquestionEndList"); //查询问题类型数据字典 List sources = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); view.addObject("sources", sources); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); view.addObject("type", type); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); params.put("type","2"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); return view; } /** * 查询问题工单列表数据 */ @RequestMapping(value="myquestionEndData.html",method=RequestMethod.POST) public ModelAndView myquestionEndData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/myquestionEndData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); PageInfo list = questionFacade.querymyQuestionEndList(pageInfo,params); modelAndView.addObject("orderList", list); modelAndView.addObject("type", params.get("type")); return modelAndView; } /** * 查询问题工单总数量 */ @RequestMapping(value="myquestionEndCount.html",method=RequestMethod.POST) public void myquestionEndCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getLoginedUserId(request)); int count = questionFacade.querymyQuestionEndCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 问题催办 * @return */ @RequestMapping(value="questionRemind.html",method=RequestMethod.GET) public String questionRemind(HttpServletRequest request,HttpServletResponse response){ return "/business/pages/question/questionRemind"; } @RequestMapping(value="questionRemind.html",method=RequestMethod.POST) public ModelAndView doQuestionRemind(HttpServletRequest request,HttpServletResponse response){ String reminder = WebUtil.getLoginUser(request).getLoginUser().get("ZSXM").toString(); String flowId = request.getParameter("flowId"); String text = request.getParameter("text"); messageService.sendOrderRemindersMsg(flowId, reminder, text); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('0');", SysInfo.Success,""); } /** * 所有工单池 */ @RequestMapping("questionpool.html") public ModelAndView orderpool(HttpServletRequest request,HttpServletResponse response) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionpool"); //查询工单数量,通过类型判断查询那种类型的数量 Map msgCount = questionFacade.queryQuestionpoolCount(request); System.out.println(JsonUtil.map2Json(msgCount)); modelAndView.addObject("c", msgCount); //查询工单类型 Map state = Constants.mapWORKFLOW_BASE_BUSINESS_TYPE; List ways = new ArrayList(); for (Map.Entry entry : state.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); Map map = new HashMap(); map.put("typeId", key); map.put("typeName", value); ways.add(map); } modelAndView.addObject("types", ways); //客户列表 List cusList = incidentFacade.getCustomerList(); modelAndView.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("type","1"); Map map = questionFacade.getOrderNum(params); modelAndView.addObject("data", map); return modelAndView; } /** * 查询我的工单池数据 */ @RequestMapping("questionpoolData.html") public ModelAndView questionpoolData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionPoolData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); PageInfo orderList = questionFacade.questionpoolData(pageInfo,params); modelAndView.addObject("orders", orderList); return modelAndView; } /** * 查询我的工单池数据 */ @RequestMapping("questionpoolCount.html") public void questionpoolCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); int count = questionFacade.questionpoolCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 问题待响应列表页面 * @param request * @param response * @return */ @RequestMapping(value="questionNodeList.html", method=RequestMethod.GET) public ModelAndView questionDxyList(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/questionNodeList"); //查询工单数量,通过类型判断查询那种类型的数量 Map msgCount = questionFacade.queryQuestionNodeCount(request); System.out.println(JsonUtil.map2Json(msgCount)); view.addObject("c", msgCount); //查询问题类型数据字典 List sources = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); view.addObject("sources", sources); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("type","1"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); return view; } /** * 查询问题工单待响应列表数据 */ @RequestMapping(value="questionNodeData.html",method=RequestMethod.POST) public ModelAndView questionDxyData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionNodeData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); PageInfo list = questionFacade.queryQuestionOrderNodeList(pageInfo,params); modelAndView.addObject("orderList", list); return modelAndView; } /** * 查询问题工单待响应总数量 */ @RequestMapping(value="questionNodeCount.html",method=RequestMethod.POST) public void questionDxyCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); int count = questionFacade.queryQuestionOrderNodeCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 问题进行中列表页面 * @param request * @param response * @return */ @RequestMapping(value="questionJxzList.html", method=RequestMethod.GET) public ModelAndView questionJxzList(HttpServletRequest request, HttpServletResponse response) { ModelAndView view = new ModelAndView("/business/pages/question/questionJxzList"); //查询工单数量,通过类型判断查询那种类型的数量 Map msgCount = questionFacade.queryQuestionJxzNodeCount(request); System.out.println(JsonUtil.map2Json(msgCount)); view.addObject("c", msgCount); //查询问题类型数据字典 List sources = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); view.addObject("sources", sources); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("type","1"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); return view; } /** * 查询问题工单进行中列表数据 */ @RequestMapping(value="questionJxzData.html",method=RequestMethod.POST) public ModelAndView questionJxzData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionJxzData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); PageInfo list = questionFacade.queryQuestionJxzList(pageInfo,params); modelAndView.addObject("orderList", list); return modelAndView; } /** * 查询问题工单进行中总数量 */ @RequestMapping(value="questionJxzCount.html",method=RequestMethod.POST) public void questionJxzCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); int count = questionFacade.queryQuestionJxzCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 问题待响应列表页面 * @param request * @param response * @return */ @RequestMapping(value="{type}/questionEndList.html", method=RequestMethod.GET) public ModelAndView questionEndList(HttpServletRequest request, HttpServletResponse response,@PathVariable(value="type") String type) { ModelAndView view = new ModelAndView("/business/pages/question/questionEndList"); //查询问题类型数据字典 List sources = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.QUESTION_SOURCE); view.addObject("sources", sources); //查询该加盟商的事件优先级 List eventPri = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_PRI); view.addObject("eventPri", eventPri); //查询事件影响度数据字典 List eventDg = dataDictionaryService.getDataDictionaryByCategoryKey(Constants.EVENT_EFFECT_DG); view.addObject("eventDg", eventDg); view.addObject("type", type); //客户列表 List cusList = incidentFacade.getCustomerList(); view.addObject("customers", cusList); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("type","1"); Map map = questionFacade.getOrderNum(params); view.addObject("data", map); return view; } /** * 查询问题工单列表数据 */ @RequestMapping(value="questionEndData.html",method=RequestMethod.POST) public ModelAndView questionEndData(HttpServletRequest request,PageInfo pageInfo) { ModelAndView modelAndView = new ModelAndView("/business/pages/question/questionEndData"); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); PageInfo list = questionFacade.queryQuestionEndList(pageInfo,params); modelAndView.addObject("orderList", list); modelAndView.addObject("type", params.get("type")); return modelAndView; } /** * 查询问题工单总数量 */ @RequestMapping(value="questionEndCount.html",method=RequestMethod.POST) public void questionEndCount(HttpServletRequest request,HttpServletResponse response) { //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); int count = questionFacade.queryQuestionEndCount(params); WebUtil.write(response, String.valueOf(count)); } /** * 问题首页 * @param model * @param request * @param response * @return */ @RequestMapping(value="questionIndex.html") public String questionIndex(Model model,HttpServletRequest request,HttpServletResponse response){ List cusList = customerFacade.getCusList(); model.addAttribute("cusList", cusList); model.addAttribute("userId", WebUtil.getUserId(request)); //定义参数Map Map params = ParamsMapUtil.getParameterMap(request); params.put("type","1"); Map map = questionFacade.getOrderNum(params); model.addAttribute("data", map); return "/business/pages/question/questionIndex"; } @RequestMapping(value="questionIndexLoad.html") public String questionIndexLoad(Model model,HttpServletRequest request,HttpServletResponse response){ Map params = ParamsMapUtil.getParameterMap(request); params.put("userId", WebUtil.getUserId(request)); //工单池问题数量 int poolCount = questionFacade.questionpoolCount(params); //待处理问题数量 int pendingCount = questionFacade.queryQuestionOrderNodeCount(params); //进行中问题数量 int inHandCount = questionFacade.queryQuestionJxzCount(params); //已挂起 params.put("type", "6"); int sleepCount = questionFacade.queryQuestionEndCount(params); model.addAttribute("poolCount",poolCount); model.addAttribute("pendingCount",pendingCount); model.addAttribute("inHandCount",inHandCount); model.addAttribute("sleepCount",sleepCount); return "/business/pages/question/questionIndexLoad"; } /** * 查询问题工单处理人 */ @RequestMapping(value="questionDealer.html",method=RequestMethod.POST) public void questionDealer(HttpServletRequest request,HttpServletResponse response) { String user = questionFacade.queryQuestionDealer(request); WebUtil.write(response, user); } /** * 查询问题工单处理人 */ @RequestMapping(value="questionGroupDealer.html",method=RequestMethod.POST) public void questionGroupDealer(HttpServletRequest request,HttpServletResponse response) { String user = questionFacade.queryQuestionGroupDealer(request); WebUtil.write(response, user); } }