ip地址添加NTC_SUBSCRIBE_ID,丢弃和回流不加NTC_SUBSCRIBE_ID配置,不记录日志

This commit is contained in:
wangxin
2018-08-25 11:42:24 +08:00
parent 13ad6d7199
commit c8a6dd4055
10 changed files with 1206 additions and 344 deletions

View File

@@ -1,10 +1,13 @@
package com.nis.web.controller.configuration.ntc;
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.RequiresPermissions;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
@@ -15,15 +18,18 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
import com.nis.domain.SysDataDictionaryItem;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.configuration.IpPortCfg;
import com.nis.domain.configuration.NtcSubscribeIdCfg;
import com.nis.domain.configuration.template.IpAddrTemplate;
import com.nis.domain.configuration.template.IpsecTemplate;
import com.nis.domain.configuration.template.TunnelIpTemplate;
import com.nis.util.Constants;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.DictUtils;
import com.nis.web.controller.configuration.CommonController;
import com.nis.web.security.UserUtils;
/**
* IP相关配置控制类
@@ -35,54 +41,87 @@ import com.nis.web.controller.configuration.CommonController;
public class IpController extends CommonController{
@RequestMapping(value = {"list"})
// @RequiresPermissions(value={"iplist:config","iplist:confirm"},logical=Logical.OR)
public String list(String cfgName,Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._ipList(cfgName, model, cfg, request, response);
model.addAttribute("urlPrefix","/ntc/iplist");
model.addAttribute("requiresPermissionPrefix","iplist");
return "/cfg/common/ipList";
public String list(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
Page<CfgIndexInfo> page = ipCfgService.getIpCfgList(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
return "/cfg/ipaddr/ipList";
}
@RequestMapping(value = {"form"})
@RequiresPermissions(value={"iplist:config"})
public String form(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(cfgName, model, ids, functionId, entity);
List<SysDataDictionaryItem> specialFunctionIdList = DictUtils.getDictList("SPECIAL_FUNCTION_ID");
String specialFunctionId=null;
for(SysDataDictionaryItem item:specialFunctionIdList) {
if(Integer.parseInt(item.getItemCode())==entity.getFunctionId().intValue()) {
specialFunctionId= item.getItemValue();
break;
}
public String form(Model model,String ids,CfgIndexInfo entity) {
if(StringUtils.isNotBlank(ids)){
entity = ipCfgService.getIpPortCfg(Long.parseLong(ids));
initUpdateFormCondition(model,entity);
}else{
initFormCondition(model,entity);
}
model.addAttribute("dropAction",Constants.DROP_ACTION);
model.addAttribute("urlPrefix","/ntc/iplist");
model.addAttribute("requiresPermissionPrefix","iplist");
// if(specialFunctionId!=null && "ipsec".equals(specialFunctionId)) {
// return "/cfg/ipsec/ipForm";
// }else if(specialFunctionId!=null && "ipaddr".equals(specialFunctionId)) {
// return "/cfg/ipaddr/ipForm";
// }
return "/cfg/common/ipForm";
model.addAttribute("_cfg", entity);
return "/cfg/ipaddr/ipForm";
}
@RequestMapping(value = {"saveOrUpdate"})
public String saveOrUpdate(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(cfgName, model, cfg);
return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+cfg.getFunctionId();
public String saveOrUpdate(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) {
ipCfgService.saveIpCfg(entity);
return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
@RequestMapping(value = {"delete"})
@RequestMapping(value = {"ajaxSubList"})
public String ajaxIpPortSubList(Model model,Long cfgId,Integer index) {
CfgIndexInfo cfg = ipCfgService.getIpPortCfg(cfgId);
/*List<FunctionRegionDict> regionList = DictUtils.getFunctionRegionDictList(cfg.getFunctionId());
model.addAttribute("regionList", regionList);*/
List<String[]> tabList = new ArrayList();
if(cfg.getIpPortList()!=null){
String cfgType = null;
for(IpPortCfg ip:cfg.getIpPortList()){
if(!ip.getCfgType().equals(cfgType)){
tabList.add(new String[]{"1",ip.getCfgType()});
cfgType = ip.getCfgType();
}
}
}
if(cfg.getNtcSubscribeIdCfgList()!=null){
String cfgType = null;
for(NtcSubscribeIdCfg keyword:cfg.getNtcSubscribeIdCfgList()){
if(!keyword.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",keyword.getCfgType()});
cfgType = keyword.getCfgType();
}
}
}
model.addAttribute("_cfg", cfg);
model.addAttribute("index", index);
model.addAttribute("tabList", tabList);
return "/cfg/ipaddr/ipSubList";
}
@RequestMapping(value = {"updateValid"})
@RequiresPermissions("iplist:config")
public String delete(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(cfgName, ids, compileIds, functionId, model);
model.addAttribute("urlPrefix","/ntc/iplist");
model.addAttribute("requiresPermissionPrefix","iplist");
public String updateIpPortCfgValid(Integer isValid,String ids,Integer functionId) {
ipCfgService.updateIpCfgValid(isValid, ids, functionId);
return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+functionId;
}
@RequestMapping(value = {"audit"})
@RequiresPermissions("iplist:confirm")
public String audit(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(cfgName, ids, cfg, redirectAttributes);
redirectAttributes.addAttribute("urlPrefix","/ntc/iplist");
redirectAttributes.addAttribute("requiresPermissionPrefix","iplist");
return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+cfg.getFunctionId();
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 = ipCfgService.getIpPortCfg(Long.parseLong(id));
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setAuditorId(UserUtils.getUser().getId());
entity.setAuditTime(new Date());
entity.setFunctionId(functionId);
try {
ipCfgService.auditIpCfg(entity,isAudit);
} catch (MaatConvertException e) {
e.printStackTrace();
logger.info("ssl配置下发失败"+e.getMessage());
addMessage(redirectAttributes, e.getMessage());
}
}
return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+functionId;
}
//ip配置导入
@RequestMapping(value = "import", method=RequestMethod.POST)

View File

@@ -41,7 +41,7 @@ public class WhiteListController extends CommonController{
//@RequiresPermissions(value={"whitelist:ip:config","whitelist:ip:confirm","whitelist:ip:aduit"},logical=Logical.OR)
public String ipList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
Page<CfgIndexInfo> page = ipCfgService.getWhiteIpList(searchPage, cfg);
Page<CfgIndexInfo> page = ipCfgService.getIpCfgList(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
return "/cfg/whitelist/ipList";