package cn.ksource.web.controller.business.pages.customerconfig;
|
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.servlet.ModelAndView;
|
|
import cn.ksource.beans.SC_PARTNER_CUSTOMER_INFO;
|
import cn.ksource.beans.SC_SERVCE_CATEGORY;
|
import cn.ksource.core.util.ConvertUtil;
|
import cn.ksource.core.util.ParamsMapUtil;
|
import cn.ksource.core.util.StringUtil;
|
import cn.ksource.core.web.SysInfo;
|
import cn.ksource.core.web.WebUtil;
|
import cn.ksource.web.Constants;
|
import cn.ksource.web.facade.JsglFacade;
|
import cn.ksource.web.facade.customerconfig.SlaCusFacade;
|
import cn.ksource.web.facade.servicelist.SlaPartnerFacade;
|
import cn.ksource.web.facade.servicelist.SlaProjectFacade;
|
|
/**
|
* 客户管理--服务目录控制器
|
* @note:
|
* @version
|
* @author sxj
|
* @date June 28, 2016 10:35:44 AM
|
*/
|
@Controller
|
@RequestMapping("/business/pages/customerconfig/slacus")
|
public class SlaCusController {
|
|
@Autowired
|
private SlaCusFacade slaCusFacade;
|
|
@Autowired
|
private SlaPartnerFacade slaPartnerFacade;
|
|
@Resource(name="slaProjectFacade")
|
private SlaProjectFacade slaProjectFacade;
|
|
@Autowired
|
private JsglFacade jsglFacade;
|
|
@RequestMapping("slacusMain.html")
|
public ModelAndView slacusMain(HttpServletRequest request) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/customerconfig/slacusMain");
|
|
return modelAndView;
|
}
|
|
|
@RequestMapping("customerSl.html")
|
public ModelAndView customerSl(HttpServletRequest request) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/customerSl");
|
|
String customerId = request.getParameter("customerId");
|
|
//查询该项目的服务目录
|
List serviceList = slaCusFacade.queryProjectSeviceList(customerId);
|
modelAndView.addObject("serviceList", serviceList);
|
return modelAndView;
|
}
|
|
|
/**
|
* 更改我的服务目录的状态
|
*/
|
@RequestMapping("changeState.html")
|
public void changeState(HttpServletRequest request,HttpServletResponse response) {
|
boolean result = slaCusFacade.updateState(request);
|
if(result) {
|
WebUtil.write(response, "1");
|
} else {
|
WebUtil.write(response, "2");
|
}
|
}
|
|
/**
|
* 跳转到增加项目服务目录页面
|
*/
|
@RequestMapping("addcussl.html")
|
public ModelAndView addcussl(HttpServletRequest request,HttpServletResponse response) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/addcussl");
|
|
//查询该三级服务目录(不包含该客户已选择的三级服务目录)
|
String customerId = request.getParameter("customerId");
|
List serviceList = slaCusFacade.queryAddServiceList(customerId);
|
modelAndView.addObject("serviceList", serviceList);
|
return modelAndView;
|
}
|
|
|
/**
|
* 保存项目新增的服务目录
|
*/
|
@RequestMapping("savecussl.html")
|
public ModelAndView savecussl(HttpServletRequest request,HttpServletResponse response) {
|
String customerId = request.getParameter("customerId");
|
|
boolean b = slaCusFacade.savesl(request);
|
|
if(b) {
|
return WebUtil.sysInfoPage(request, "操作成功!",
|
"",
|
SysInfo.Success,"/business/pages/customerconfig/slacus/customerSl.html?customerId="+customerId);
|
} else {
|
return WebUtil.sysInfoPage(request, "操作失败!",
|
"",
|
SysInfo.Error,"");
|
}
|
}
|
|
|
|
/**
|
* 查看项目的SLA关联设置
|
*/
|
@RequestMapping("customerSlaLink.html")
|
public ModelAndView customerSlaLink(HttpServletRequest request,HttpServletResponse response) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/customerSlaLink");
|
String customerId = request.getParameter("customerId");
|
//查询紧急程度,影响程度,优先级的关联信息
|
Map linkMsg = slaCusFacade.querySlaCusLink(customerId);
|
|
//查询所有的级别
|
List levels = slaCusFacade.queryPartnerLevels(request);
|
|
modelAndView.addObject("linkMsg", linkMsg);
|
modelAndView.addObject("lvs",levels);
|
return modelAndView;
|
}
|
|
/**
|
* 保存SLA关联设置
|
*/
|
@RequestMapping(value="saveSlaLink.html",method=RequestMethod.POST)
|
public void saveSlaLink(HttpServletRequest request,HttpServletResponse response) {
|
String result = slaCusFacade.saveSlaLink(request);
|
WebUtil.write(response, result);
|
}
|
|
/**
|
* 跳转到服务目录报表界面
|
*/
|
@RequestMapping("customerSlReport.html")
|
public ModelAndView customerSlReport(HttpServletRequest request) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/customerSlReport");
|
//查询服务目录报表
|
|
Map result = new HashMap();
|
String customerId = request.getParameter("customerId");
|
if(StringUtil.notEmpty(customerId)) {
|
result = slaCusFacade.slaReport(request);
|
SC_PARTNER_CUSTOMER_INFO customer = new SC_PARTNER_CUSTOMER_INFO(customerId).getInstanceById();
|
String projectName = customer.getCustomer_name();
|
modelAndView.addObject("projectName", projectName);
|
}
|
modelAndView.addObject("result", result);
|
return modelAndView;
|
}
|
|
/**
|
* 跳转到批量添加等级协议页面
|
*/
|
@RequestMapping(value="batchSlaTab.html")
|
public ModelAndView batchSlaTab(HttpServletRequest request,HttpServletResponse response) {
|
ModelAndView view = new ModelAndView("/business/pages/customerconfig/slacus/batchSlaTab");
|
String customerId = request.getParameter("customerId");
|
String cateIds = request.getParameter("cateIds");
|
String type = request.getParameter("type");
|
List<Map> slaList = slaCusFacade.getSlalevelList();
|
List<Map> slatab = new ArrayList();
|
for(int i=0; i<slaList.size(); i++){
|
Map sla =slaList.get(i);
|
Map tabMap = new HashMap();
|
tabMap.put("title", sla.get("LEVEL_NAME"));
|
tabMap.put("url", request.getContextPath()+"/business/pages/customerconfig/slacus/slaTabBatchAdd.html?type="+type+"&cateIds="+ cateIds +"&customerId="+customerId+"&levelid="+ sla.get("ID")+"&iframeNum="+i);
|
slatab.add(tabMap);
|
}
|
view.addObject("slatab", slatab);
|
view.addObject("cate", cateIds);
|
return view;
|
}
|
|
/**
|
* 跳转到批量添加服务等级协议TAB页面
|
*/
|
@RequestMapping(value="slaTabBatchAdd.html",method=RequestMethod.GET)
|
public ModelAndView slaTabBatchAdd(HttpServletRequest request,HttpServletResponse response){
|
ModelAndView view = new ModelAndView();
|
String cateIds = request.getParameter("cateIds");
|
String levelid = request.getParameter("levelid");
|
String customerId = request.getParameter("customerId");
|
String iframeNum = request.getParameter("iframeNum");
|
//Map slaMap = slaProjectFacade.getSlaList(request);
|
//view.addObject("sla", slaMap);
|
view.addObject("iframeNum", iframeNum);
|
view.setViewName("/business/pages/customerconfig/slacus/slaTabBatchAdd");
|
return view;
|
}
|
|
|
@RequestMapping(value="slaTabBatchAdd.html",method=RequestMethod.POST)
|
public ModelAndView slaTabBatchAddSubmit(HttpServletRequest request,HttpServletResponse response){
|
String cateId = request.getParameter("cateId");
|
String customerId = request.getParameter("customerId");
|
String type = request.getParameter("type");
|
slaCusFacade.saveBatchSlaTab(request);
|
return WebUtil.sysInfoPage(request,"操作成功!",
|
"",
|
SysInfo.Success,"");
|
}
|
|
/**
|
* 跳转到服务等级协议页面
|
* @param request
|
* @param response
|
* @return
|
*/
|
@RequestMapping("slaTab.html")
|
public ModelAndView slaTab(HttpServletRequest request,HttpServletResponse response){
|
ModelAndView view = new ModelAndView("/business/pages/customerconfig/slacus/slaTab");
|
String customerId = request.getParameter("customerId");
|
String cateId = request.getParameter("cateId");
|
String type = request.getParameter("type");
|
List<Map> slaList = slaCusFacade.getSlalevelList();
|
List<Map> slatab = new ArrayList();
|
for(int i=0; i<slaList.size(); i++){
|
Map sla =slaList.get(i);
|
Map tabMap = new HashMap();
|
tabMap.put("title", sla.get("LEVEL_NAME"));
|
tabMap.put("url", request.getContextPath()+"/business/pages/customerconfig/slacus/slaTabAdd.html?type="+type+"&cateId="+ cateId +"&customerId="+customerId+"&levelid="+ sla.get("ID")+"&iframeNum="+i);
|
slatab.add(tabMap);
|
}
|
view.addObject("slatab", slatab);
|
view.addObject("cate", cateId);
|
return view;
|
}
|
|
/**
|
* 跳转到服务等级协议页面
|
*/
|
@RequestMapping(value="slaTabAdd.html",method=RequestMethod.GET)
|
public ModelAndView slaTabAdd(HttpServletRequest request,HttpServletResponse response){
|
ModelAndView view = new ModelAndView();
|
String cateId = request.getParameter("cateId");
|
String levelid = request.getParameter("levelid");
|
String customerId = request.getParameter("customerId");
|
String iframeNum = request.getParameter("iframeNum");
|
String edit = request.getParameter("edit");
|
String secondcate = "";
|
String threecate = "";
|
SC_SERVCE_CATEGORY cate = new SC_SERVCE_CATEGORY(cateId).getInstanceById();
|
if(cate.getLevel() == 2) {
|
secondcate = cateId;
|
} else if(cate.getLevel() == 3) {
|
threecate = cateId;
|
secondcate = cate.getP_id();
|
}
|
Map map = slaPartnerFacade.querySlaLevel(customerId, threecate, secondcate, cate.getLevel(), levelid);
|
//Map slaMap = slaCusFacade.getSlaList(request);
|
view.addObject("sla", map);
|
view.addObject("iframeNum", iframeNum);
|
if(StringUtil.isEmpty(edit)){
|
if(map == null ||map.size()==0){
|
view.setViewName("/business/pages/customerconfig/slacus/slaTabAdd");
|
}else{
|
if(ConvertUtil.obj2Integer(map.get("isSelf")) == 1){
|
view.setViewName("/business/pages/customerconfig/slacus/slaTabAdd");
|
}else{
|
view.setViewName("/business/pages/customerconfig/slacus/slaTabDetail");
|
}
|
}
|
|
}else{
|
view.setViewName("/business/pages/customerconfig/slacus/slaTabAdd");
|
}
|
|
return view;
|
}
|
|
/**
|
* 选择通知人员
|
*/
|
@RequestMapping(value="noticeUsers.html")
|
public ModelAndView noticeUser(HttpServletRequest request,HttpServletResponse response) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/noticeUsers");
|
|
Map zzjgList = slaCusFacade.queryAllUser();
|
|
String customerId = request.getParameter("customerId");
|
List<Map> users = slaCusFacade.queryAllCusContacts(customerId);
|
modelAndView.addObject("users", users);
|
|
String sl = request.getParameter("sl");
|
if(!StringUtil.notEmpty(sl)) {
|
sl = "";
|
}
|
modelAndView.addObject("sl", sl);
|
|
modelAndView.addObject("zzjglist", zzjgList.get("resultList"));
|
modelAndView.addObject("userlist", zzjgList.get("PARTNERLIST"));
|
|
return modelAndView;
|
}
|
|
|
/**
|
* 查询该客户下所有的客户联系人
|
*/
|
@RequestMapping(value="cusContacts.html")
|
public ModelAndView cusContacts(HttpServletRequest request,HttpServletResponse response) {
|
ModelAndView modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/cusContacts");
|
//查询所有的客户联系人
|
String customerId = request.getParameter("customerId");
|
List users = slaCusFacade.queryAllCusContacts(customerId);
|
modelAndView.addObject("users", users);
|
return modelAndView;
|
}
|
|
|
|
@RequestMapping(value="slaTabAdd.html",method=RequestMethod.POST)
|
public ModelAndView slaTabAddSubmit(HttpServletRequest request,HttpServletResponse response){
|
String cateId = request.getParameter("cateId");
|
String customerId = request.getParameter("customerId");
|
String type = request.getParameter("type");
|
slaCusFacade.saveSlaTab(request);
|
return WebUtil.sysInfoPage(request,"操作成功!",
|
"",
|
SysInfo.Success,"/business/pages/customerconfig/slacus/slaTab.html?type="+type+"&customerId="+customerId+"&cateId="+cateId);
|
}
|
|
@RequestMapping(value="initsla.html",method=RequestMethod.POST)
|
public void initsla(HttpServletRequest request,HttpServletResponse response){
|
Map<String,String> params = ParamsMapUtil.getParameterMap(request);
|
slaCusFacade.updateSla(params);
|
WebUtil.write(response, "1");
|
}
|
|
/**
|
* 跳转到服务人员页面
|
*/
|
@RequestMapping("serviceUser.html")
|
public ModelAndView serviceUser(HttpServletRequest request) {
|
ModelAndView modelAndView = new ModelAndView("");
|
//Map result = slaProjectFacade.getserviceUser(request);
|
String cateId = request.getParameter("cateId");
|
String customerId = request.getParameter("customerId");
|
String edit = request.getParameter("edit");
|
|
String secondcate = "";
|
String threecate = "";
|
SC_SERVCE_CATEGORY cate = new SC_SERVCE_CATEGORY(cateId).getInstanceById();
|
if(cate.getLevel() == 2) {
|
secondcate = cateId;
|
} else if(cate.getLevel() == 3) {
|
threecate = cateId;
|
secondcate = cate.getP_id();
|
}
|
Map result = slaPartnerFacade.querySlaUser(customerId, threecate, secondcate, cate.getLevel());
|
if(result == null || result.size() ==0){
|
result = slaProjectFacade.getserviceUser(request);
|
result.put("isSelf", 1);
|
result.put("noresult", 1);
|
}else if(ConvertUtil.obj2Integer(result.get("count")) == 0){
|
result.put("isSelf", 1);
|
result.put("noresult", 1);
|
}
|
Map yxMap = (Map)result.get("yxMap");
|
Map exMap = (Map)result.get("exMap");
|
Map sxMap = (Map)result.get("sxMap");
|
Map yxrole = jsglFacade.getRoleByRoleKey(Constants.ROLE_FLINE);
|
Map exrole = jsglFacade.getRoleByRoleKey(Constants.ROLE_SLINE);
|
Map sxrole = jsglFacade.getRoleByRoleKey(Constants.ROLE_TLINE);
|
yxMap.put("roleId", yxrole.get("ID"));
|
exMap.put("roleId", exrole.get("ID"));
|
sxMap.put("roleId", sxrole.get("ID"));
|
yxMap.put("roleName", yxrole.get("ROLENAME"));
|
exMap.put("roleName", exrole.get("ROLENAME"));
|
sxMap.put("roleName", sxrole.get("ROLENAME"));
|
|
if(StringUtil.isEmpty(edit)){
|
if(ConvertUtil.obj2Integer(result.get("isSelf")) == 1){
|
modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/serviceUser");
|
}else{
|
modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/serviceUserDetail");
|
}
|
}else{
|
modelAndView = new ModelAndView("/business/pages/customerconfig/slacus/serviceUser");
|
}
|
|
modelAndView.addObject("yxMap", yxMap);
|
modelAndView.addObject("exMap", exMap);
|
modelAndView.addObject("sxMap", sxMap);
|
modelAndView.addObject("isSelf", result.get("isSelf"));
|
modelAndView.addObject("noresult", result.get("noresult"));
|
|
return modelAndView;
|
}
|
|
/**
|
* 保存服务人员
|
*/
|
@RequestMapping("saveUser.html")
|
public ModelAndView saveUser(HttpServletRequest request,HttpServletResponse response) {
|
boolean result = slaCusFacade.saveUser(request);
|
if(result) {
|
return WebUtil.sysInfoPage(request, "操作成功!",
|
"window.top.hideDialog('0')",
|
SysInfo.Success,"");
|
} else {
|
return WebUtil.sysInfoPage(request, "操作失败!",
|
"",
|
SysInfo.Error,"");
|
}
|
}
|
|
@RequestMapping(value="initSlaUser.html",method=RequestMethod.POST)
|
public void initSlaUser(HttpServletRequest request,HttpServletResponse response){
|
Map<String,String> params = ParamsMapUtil.getParameterMap(request);
|
slaCusFacade.updateSlaUser(params);
|
WebUtil.write(response, "1");
|
}
|
|
}
|