1、HTTP重定向配置业务功能提交;2、HTTP替换配置列表界面增加controller消息显示;3、修正ntc
http配置新增时的区域IP信息保存 Signed-off-by: zhangwei <zhangwei@intranet.com>
This commit is contained in:
@@ -64,6 +64,7 @@ import com.nis.web.service.configuration.ControlPolicyService;
|
||||
import com.nis.web.service.configuration.DnsIpCfgService;
|
||||
import com.nis.web.service.configuration.DnsResStrategyService;
|
||||
import com.nis.web.service.configuration.FileTransferCfgService;
|
||||
import com.nis.web.service.configuration.HttpRedirectCfgService;
|
||||
import com.nis.web.service.configuration.IpCfgService;
|
||||
import com.nis.web.service.configuration.MailCfgService;
|
||||
import com.nis.web.service.configuration.NumCfgService;
|
||||
@@ -159,6 +160,8 @@ public class BaseController {
|
||||
protected PolicyGroupInfoService policyGroupInfoService;
|
||||
@Autowired
|
||||
protected DnsResStrategyService dnsResStrategyService;
|
||||
@Autowired
|
||||
protected HttpRedirectCfgService httpRedirectCfgService;
|
||||
/**
|
||||
* 管理基础路径
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,188 @@
|
||||
package com.nis.web.controller.configuration.proxy;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.authz.annotation.Logical;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.configuration.AreaIpCfg;
|
||||
import com.nis.domain.configuration.BaseIpCfg;
|
||||
import com.nis.domain.configuration.BaseStringCfg;
|
||||
import com.nis.domain.configuration.CfgIndexInfo;
|
||||
import com.nis.domain.configuration.HttpBodyCfg;
|
||||
import com.nis.domain.configuration.HttpReqHeadCfg;
|
||||
import com.nis.domain.configuration.HttpResHeadCfg;
|
||||
import com.nis.domain.configuration.HttpUrlCfg;
|
||||
import com.nis.domain.configuration.IpPortCfg;
|
||||
import com.nis.exceptions.MaatConvertException;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.web.controller.BaseController;
|
||||
import com.nis.web.security.UserUtils;
|
||||
|
||||
/**
|
||||
* http重定向策略
|
||||
* @author zhangwei
|
||||
*
|
||||
*/
|
||||
@Controller
|
||||
@RequestMapping("${adminPath}/proxy/control/httpRedirect")
|
||||
public class HttpRedirectPolicyController extends BaseController{
|
||||
@RequestMapping(value = {"list"})
|
||||
public String list(Model model,HttpServletRequest request,HttpServletResponse response,@ModelAttribute("cfg")CfgIndexInfo cfg){
|
||||
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
|
||||
Page<CfgIndexInfo> page = httpRedirectCfgService.getHttpRedirectList(searchPage, cfg);
|
||||
model.addAttribute("page", page);
|
||||
initPageCondition(model,cfg);
|
||||
return "/cfg/proxy/control/httpRedirectList";
|
||||
}
|
||||
@RequestMapping(value = {"form"})
|
||||
@RequiresPermissions(value={"control:httpRedirect:config"})
|
||||
public String form(Model model,HttpServletRequest request,HttpServletResponse response,String ids,@ModelAttribute("cfg")CfgIndexInfo entity){
|
||||
if(StringUtils.isNotBlank(ids)){
|
||||
entity = httpRedirectCfgService.getHttpCfg(Long.parseLong(ids));
|
||||
|
||||
HttpUrlCfg urlCfg = new HttpUrlCfg();
|
||||
urlCfg.setCfgType(Constants.HTTP_REDIRECT_URL_REGION);
|
||||
entity.setHttpUrl(urlCfg);
|
||||
HttpReqHeadCfg reqHdrCfg = new HttpReqHeadCfg();
|
||||
reqHdrCfg.setCfgType(Constants.HTTP_REDIRECT_REQ_HEAD_REGION);
|
||||
entity.setHttpReqHdr(reqHdrCfg);
|
||||
HttpResHeadCfg resHdrCfg = new HttpResHeadCfg();
|
||||
resHdrCfg.setCfgType(Constants.HTTP_REDIRECT_RES_HEAD_REGION);
|
||||
entity.setHttpResHdr(resHdrCfg);
|
||||
HttpBodyCfg reqBodyCfg = new HttpBodyCfg();
|
||||
reqBodyCfg.setCfgType(Constants.HTTP_REDIRECT_REQ_BODY_REGION);
|
||||
entity.setHttpReqBody(reqBodyCfg);
|
||||
HttpBodyCfg resBodyCfg = new HttpBodyCfg();
|
||||
resBodyCfg.setCfgType(Constants.HTTP_REDIRECT_RES_BODY_REGION);
|
||||
entity.setHttpResBody(resBodyCfg);
|
||||
|
||||
int httpReqCfgNum = entity.getHttpUrlList().size()+
|
||||
entity.getHttpReqBodyList().size()+
|
||||
entity.getHttpReqHdrList().size();
|
||||
int httpResCfgNum = entity.getHttpResHdrList().size()+
|
||||
entity.getHttpResBodyList().size();
|
||||
model.addAttribute("httpReqCfgNum", httpReqCfgNum);
|
||||
model.addAttribute("httpResCfgNum", httpResCfgNum);
|
||||
|
||||
if(entity.getHttpUrlList().size()==0){
|
||||
entity.getHttpUrlList().add(urlCfg);
|
||||
}
|
||||
if(entity.getHttpReqHdrList().size()==0){
|
||||
entity.getHttpReqHdrList().add(reqHdrCfg);
|
||||
}
|
||||
if(entity.getHttpResHdrList().size()==0){
|
||||
entity.getHttpResHdrList().add(resHdrCfg);
|
||||
}
|
||||
if(entity.getHttpReqBodyList().size()==0){
|
||||
entity.getHttpReqBodyList().add(reqBodyCfg);
|
||||
}
|
||||
if(entity.getHttpResBodyList().size()==0){
|
||||
entity.getHttpResBodyList().add(resBodyCfg);
|
||||
}
|
||||
initUpdateFormCondition(model,entity);
|
||||
}else{
|
||||
//设置http各类配置的配置域类型
|
||||
HttpUrlCfg urlCfg = new HttpUrlCfg();
|
||||
urlCfg.setCfgType(Constants.HTTP_REDIRECT_URL_REGION);
|
||||
entity.setHttpUrl(urlCfg);
|
||||
HttpReqHeadCfg reqHdrCfg = new HttpReqHeadCfg();
|
||||
reqHdrCfg.setCfgType(Constants.HTTP_REDIRECT_REQ_HEAD_REGION);
|
||||
entity.setHttpReqHdr(reqHdrCfg);
|
||||
HttpResHeadCfg resHdrCfg = new HttpResHeadCfg();
|
||||
resHdrCfg.setCfgType(Constants.HTTP_REDIRECT_RES_HEAD_REGION);
|
||||
entity.setHttpResHdr(resHdrCfg);
|
||||
HttpBodyCfg reqBodyCfg = new HttpBodyCfg();
|
||||
reqBodyCfg.setCfgType(Constants.HTTP_REDIRECT_REQ_BODY_REGION);
|
||||
entity.setHttpReqBody(reqBodyCfg);
|
||||
HttpBodyCfg resBodyCfg = new HttpBodyCfg();
|
||||
resBodyCfg.setCfgType(Constants.HTTP_REDIRECT_RES_BODY_REGION);
|
||||
entity.setHttpResBody(resBodyCfg);
|
||||
|
||||
List<HttpUrlCfg> urlList=new ArrayList<HttpUrlCfg>();
|
||||
urlList.add(urlCfg);
|
||||
entity.setHttpUrlList(urlList);
|
||||
List<HttpReqHeadCfg> reqHdrList=new ArrayList<HttpReqHeadCfg>();
|
||||
reqHdrList.add(reqHdrCfg);
|
||||
entity.setHttpReqHdrList(reqHdrList);
|
||||
List<HttpResHeadCfg> resHdrList=new ArrayList<HttpResHeadCfg>();
|
||||
resHdrList.add(resHdrCfg);
|
||||
entity.setHttpResHdrList(resHdrList);
|
||||
List<HttpBodyCfg> reqBodyList=new ArrayList<HttpBodyCfg>();
|
||||
reqBodyList.add(reqBodyCfg);
|
||||
entity.setHttpReqBodyList(reqBodyList);
|
||||
List<HttpBodyCfg> resBodyList=new ArrayList<HttpBodyCfg>();
|
||||
resBodyList.add(resBodyCfg);
|
||||
entity.setHttpResBodyList(resBodyList);
|
||||
initFormCondition(model,entity);
|
||||
}
|
||||
|
||||
model.addAttribute("_cfg", entity);
|
||||
return "/cfg/proxy/control/httpRedirectForm";
|
||||
}
|
||||
|
||||
@RequestMapping(value = {"saveOrUpdate"})
|
||||
@RequiresPermissions(value={"control:httpRedirect:config"})
|
||||
public String saveOrUpdate(Model model,HttpServletRequest request,HttpServletResponse response,
|
||||
@ModelAttribute("cfg")CfgIndexInfo cfg){
|
||||
try{
|
||||
httpRedirectCfgService.saveHttpCfg(cfg);
|
||||
addMessage(model,"save_success");
|
||||
}catch(Exception e){
|
||||
logger.error("信息保存失败",e);
|
||||
e.printStackTrace();
|
||||
addMessage(model,"save_failed");
|
||||
}
|
||||
|
||||
return "redirect:" + adminPath +"/proxy/control/httpRedirect/list?functionId="+cfg.getFunctionId();
|
||||
}
|
||||
@RequestMapping(value = {"ajaxHttpSubList"})
|
||||
@RequiresPermissions(value={"control:httpRedirect:config"})
|
||||
public String ajaxHttpSubList(Model model,Long cfgId,Integer index) {
|
||||
CfgIndexInfo cfg = httpRedirectCfgService.getHttpCfg(cfgId);
|
||||
model.addAttribute("_cfg", cfg);
|
||||
model.addAttribute("index", index);
|
||||
return "/cfg/proxy/control/httpRedirectSubList";
|
||||
}
|
||||
@RequestMapping(value = {"delete"})
|
||||
@RequiresPermissions(value={"control:httpRedirect:config"})
|
||||
public String delete(Integer isAudit,Integer isValid,String ids,Integer functionId){
|
||||
httpRedirectCfgService.updateHttpCfgValid(isValid,ids,functionId);
|
||||
return "redirect:" + adminPath +"/proxy/control/httpRedirect/list?functionId="+functionId;
|
||||
}
|
||||
@RequestMapping(value = {"audit"})
|
||||
@RequiresPermissions(value={"control:httpRedirect:audit"})
|
||||
public String audit(Integer isAudit,Integer isValid,String ids,Integer functionId, RedirectAttributes redirectAttributes) {
|
||||
CfgIndexInfo entity = new CfgIndexInfo();
|
||||
String[] idArray = ids.split(",");
|
||||
for(String id :idArray){
|
||||
entity = httpRedirectCfgService.getHttpCfg(Long.parseLong(id));
|
||||
entity.setIsAudit(isAudit);
|
||||
entity.setIsValid(isValid);
|
||||
entity.setAuditorId(UserUtils.getUser().getId());
|
||||
entity.setAuditTime(new Date());
|
||||
entity.setFunctionId(functionId);
|
||||
try {
|
||||
httpRedirectCfgService.auditHttpCfg(entity,isAudit);
|
||||
} catch (MaatConvertException e) {
|
||||
e.printStackTrace();
|
||||
logger.info("http重定向配置下发失败:"+e.getMessage());
|
||||
addMessage(redirectAttributes, e.getMessage());
|
||||
}
|
||||
}
|
||||
return "redirect:" + adminPath +"/proxy/control/httpRedirect/list?functionId="+functionId;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user