From 894661a8b858337ea54d1ad90110f2a65f822106 Mon Sep 17 00:00:00 2001 From: wangxin Date: Fri, 30 Mar 2018 14:21:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=9A=E5=9F=9F=E9=85=8D=E7=BD=AE=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E8=B0=83=E6=95=B4=EF=BC=8C=E5=A4=9A=E4=B8=AAmaat=5Fta?= =?UTF-8?q?ble=E8=BF=9B=E8=A1=8C=E5=88=86=E5=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nis/domain/configuration/BaseCfg.java | 11 +- .../configuration/MultipleCfgController.java | 12 +- .../java/com/nis/web/service/CrudService.java | 126 ++++++++++++--- .../configuration/MultipleCfgService.java | 39 +++-- src/main/resources/sql/truncate_tables.sql | 46 ++++++ .../WEB-INF/include/form/multiple/numInfo.jsp | 153 ++++++++++++++++++ .../WEB-INF/views/cfg/multipleCfgForm.jsp | 4 +- .../WEB-INF/views/cfg/multipleCfgList.jsp | 18 ++- 8 files changed, 366 insertions(+), 43 deletions(-) create mode 100644 src/main/resources/sql/truncate_tables.sql create mode 100644 src/main/webapp/WEB-INF/include/form/multiple/numInfo.jsp diff --git a/src/main/java/com/nis/domain/configuration/BaseCfg.java b/src/main/java/com/nis/domain/configuration/BaseCfg.java index de9af5d99..5701759c2 100644 --- a/src/main/java/com/nis/domain/configuration/BaseCfg.java +++ b/src/main/java/com/nis/domain/configuration/BaseCfg.java @@ -21,7 +21,7 @@ import com.nis.domain.BaseEntity; * @date 2018年2月5日 上午11:15:14 * @version V1.0 */ -public class BaseCfg extends BaseEntity { +public class BaseCfg extends BaseEntity implements Cloneable{ protected String showName;//表在界面上展示的名称 protected String seltype;//选中类型,页面搜索用 protected String tableName; @@ -664,4 +664,13 @@ public class BaseCfg extends BaseEntity { public void setCompileId(Integer compileId) { this.compileId = compileId; } + /* (non-Javadoc) + * @see java.lang.Object#clone() + */ + @Override + public Object clone() throws CloneNotSupportedException { + // TODO Auto-generated method stub + return super.clone(); + } + } diff --git a/src/main/java/com/nis/web/controller/configuration/MultipleCfgController.java b/src/main/java/com/nis/web/controller/configuration/MultipleCfgController.java index 399f075a8..6ef86fd4c 100644 --- a/src/main/java/com/nis/web/controller/configuration/MultipleCfgController.java +++ b/src/main/java/com/nis/web/controller/configuration/MultipleCfgController.java @@ -850,6 +850,8 @@ public class MultipleCfgController extends BaseController{ BaseIpCfg resultIpCfg=ipCfgService.get(searchIpCfg); searchIpCfg.setAuditorId(searchIpCfg.getCurrentUser().getId()); searchIpCfg.setAuditTime(date); + searchIpCfg.setCfgId(resultIpCfg.getCfgId()); + searchIpCfg.setIsAudit(audit); if(audit==Constants.AUDIT_NOT_YES){//取消审核通过,设置有效标志为0 searchIpCfg.setIsValid(Constants.VALID_NO); if(resultIpCfg!=null){ @@ -892,6 +894,8 @@ public class MultipleCfgController extends BaseController{ BaseStringCfg resultStringCfg=stringCfgService.get(searchStringCfg); searchStringCfg.setAuditorId(searchStringCfg.getCurrentUser().getId()); searchStringCfg.setAuditTime(date); + searchStringCfg.setCfgId(resultStringCfg.getCfgId()); + searchStringCfg.setIsAudit(audit); if(audit==Constants.AUDIT_NOT_YES){//取消审核通过,设置有效标志为0 searchStringCfg.setIsValid(Constants.VALID_NO); if(resultStringCfg!=null){ @@ -932,6 +936,8 @@ public class MultipleCfgController extends BaseController{ NumBoundaryCfg resultNumCfg=numCfgService.get(searchNumCfg); searchNumCfg.setAuditorId(searchNumCfg.getCurrentUser().getId()); searchNumCfg.setAuditTime(date); + searchNumCfg.setCfgId(resultNumCfg.getCfgId()); + searchNumCfg.setIsAudit(audit); if(audit==Constants.AUDIT_NOT_YES){//取消审核通过,设置有效标志为0 searchNumCfg.setIsValid(Constants.VALID_NO); if(resultNumCfg!=null){ @@ -972,6 +978,8 @@ public class MultipleCfgController extends BaseController{ ComplexkeywordCfg resultComplexCfg=complexStringCfgService.get(searchComplexCfg); searchComplexCfg.setAuditorId(searchComplexCfg.getCurrentUser().getId()); searchComplexCfg.setAuditTime(date); + searchComplexCfg.setCfgId(resultComplexCfg.getCfgId()); + searchComplexCfg.setIsAudit(audit); if(audit==Constants.AUDIT_NOT_YES){//取消审核通过,设置有效标志为0 searchComplexCfg.setIsValid(Constants.VALID_NO); if(resultComplexCfg!=null){ @@ -1007,8 +1015,8 @@ public class MultipleCfgController extends BaseController{ } } } - int result=multipleCfgService.auditCfg(resultCfg,searchCfg); - if(result==0){ + boolean result=multipleCfgService.auditCfg(resultCfg,searchCfg); + if(!result){ addMessage(model,"审核失败"); }else{ addMessage(model,"审核成功,正在为您跳转页面..."); diff --git a/src/main/java/com/nis/web/service/CrudService.java b/src/main/java/com/nis/web/service/CrudService.java index 3458fd785..6e23be1d5 100644 --- a/src/main/java/com/nis/web/service/CrudService.java +++ b/src/main/java/com/nis/web/service/CrudService.java @@ -214,16 +214,28 @@ public abstract class CrudService, T extends BaseEntity> ToMaatUnAuditBean toMaatUnAuditBean=new ToMaatUnAuditBean(); toMaatUnAuditBean.setServiceCfg(new ArrayList()); for(BaseCfg c:cfg){ - UnAuditBean bean=new UnAuditBean(); + if(c.getCompileId()==null||c.getCompileId()==0){ throw new RuntimeException("转换出错,未获取到正确的compileId"); } if(StringUtils.isBlank(c.getMaatTable())){ throw new RuntimeException("转换出错,未获取到正确的maatTalbe"); } - bean.setCompileId(c.getCompileId()); - bean.setMaatTable(c.getMaatTable()); - toMaatUnAuditBean.getServiceCfg().add(bean); + //针对含有多个maatTable的表 + if(c.getMaatTable().contains(",")){ + for(String maatTable:c.getMaatTable().split(",")){ + UnAuditBean bean=new UnAuditBean(); + bean.setCompileId(c.getCompileId()); + bean.setMaatTable(maatTable); + toMaatUnAuditBean.getServiceCfg().add(bean); + } + }else{ + UnAuditBean bean=new UnAuditBean(); + bean.setCompileId(c.getCompileId()); + bean.setMaatTable(c.getMaatTable()); + toMaatUnAuditBean.getServiceCfg().add(bean); + } + } String json=gson.toJson(toMaatUnAuditBean); logger.info("to maat json:"+json); @@ -237,34 +249,104 @@ public abstract class CrudService, T extends BaseEntity> for(BaseCfg c:cfg){ if(c instanceof BaseIpCfg){ compileId=compileId==0?c.getCompileId():compileId; - if(maatCfg.getIpCfg()==null){ - List list=new ArrayList<>(); - list.add((BaseIpCfg)c); - maatCfg.setIpCfg(list); + int protocolId= ((BaseIpCfg) c).getProtocolId().intValue(); + String maatTable=c.getMaatTable(); + if(maatTable.contains(",")){ + if(protocolId!=0){ + for(String _maatTable:maatTable.split(",")){ + if(_maatTable.toLowerCase().indexOf("ip")>-1){ + BaseIpCfg ipCfg=(BaseIpCfg)c.clone(); + ipCfg.setMaatTable(_maatTable); + if(maatCfg.getIpCfg()==null){ + List list=new ArrayList<>(); + list.add(ipCfg); + maatCfg.setIpCfg(list); + }else{ + List list=maatCfg.getIpCfg(); + list.add(ipCfg); + } + }else{ + NumBoundaryCfg numCfg=new NumBoundaryCfg(); + numCfg.initDefaultValue(); + numCfg.setLowBounadry((long)protocolId); + numCfg.setUpBoundary((long)protocolId); + numCfg.setMaatTable(_maatTable); + if(maatCfg.getNumCfg()==null){ + List numlist=new ArrayList<>(); + numlist.add(numCfg); + maatCfg.setNumCfg(numlist); + }else{ + List numlist=maatCfg.getNumCfg(); + numlist.add(numCfg); + } + } + } + }else{ + throw new RuntimeException("protocolId等于0,却对应两个maat_table "+maatTable); + } }else{ - List list=maatCfg.getIpCfg(); - list.add((BaseIpCfg)c); + if(maatCfg.getIpCfg()==null){ + List list=new ArrayList<>(); + list.add((BaseIpCfg)c); + maatCfg.setIpCfg(list); + }else{ + List list=maatCfg.getIpCfg(); + list.add((BaseIpCfg)c); + } } }else if(c instanceof BaseStringCfg){ compileId=compileId==0?c.getCompileId():compileId; - if(maatCfg.getStrCfg()==null){ - List list=new ArrayList(); - list.add((BaseStringCfg)c); - maatCfg.setStrCfg(list); + String maatTable=c.getMaatTable(); + if(maatTable.contains(",")){ + for(String _maatTable:maatTable.split(",")){ + BaseStringCfg strCfg=(BaseStringCfg)c.clone(); + strCfg.setMaatTable(_maatTable); + if(maatCfg.getStrCfg()==null){ + List list=new ArrayList(); + list.add(strCfg); + maatCfg.setStrCfg(list); + }else{ + List list=maatCfg.getStrCfg(); + list.add(strCfg); + } + } }else{ - List list=maatCfg.getStrCfg(); - list.add((BaseStringCfg)c); + if(maatCfg.getStrCfg()==null){ + List list=new ArrayList(); + list.add((BaseStringCfg)c); + maatCfg.setStrCfg(list); + }else{ + List list=maatCfg.getStrCfg(); + list.add((BaseStringCfg)c); + } } }else if(c instanceof ComplexkeywordCfg){ compileId=compileId==0?c.getCompileId():compileId; - if(maatCfg.getComplexStrCfg()==null){ - List list=new ArrayList(); - list.add((ComplexkeywordCfg)c); - maatCfg.setComplexStrCfg(list); + String maatTable=c.getMaatTable(); + if(maatTable.contains(",")){ + for(String _maatTable:maatTable.split(",")){ + ComplexkeywordCfg complexCfg=(ComplexkeywordCfg)c.clone(); + complexCfg.setMaatTable(_maatTable); + if(maatCfg.getComplexStrCfg()==null){ + List list=new ArrayList(); + list.add(complexCfg); + maatCfg.setComplexStrCfg(list); + }else{ + List list=maatCfg.getComplexStrCfg(); + list.add(complexCfg); + } + } }else{ - List list=maatCfg.getComplexStrCfg(); - list.add((ComplexkeywordCfg)c); + if(maatCfg.getComplexStrCfg()==null){ + List list=new ArrayList(); + list.add((ComplexkeywordCfg)c); + maatCfg.setComplexStrCfg(list); + }else{ + List list=maatCfg.getComplexStrCfg(); + list.add((ComplexkeywordCfg)c); + } } + }else if(c instanceof NumBoundaryCfg){ compileId=compileId==0?c.getCompileId():compileId; if(maatCfg.getNumCfg()==null){ diff --git a/src/main/java/com/nis/web/service/configuration/MultipleCfgService.java b/src/main/java/com/nis/web/service/configuration/MultipleCfgService.java index b650d7ffb..b0c17840e 100644 --- a/src/main/java/com/nis/web/service/configuration/MultipleCfgService.java +++ b/src/main/java/com/nis/web/service/configuration/MultipleCfgService.java @@ -143,8 +143,22 @@ public class MultipleCfgService extends CrudService cfgs=new ArrayList(); if(sendCfg.getIpCfg()!=null){ @@ -172,52 +186,51 @@ public class MultipleCfgService extends CrudService +<%@ include file="/WEB-INF/include/taglib.jsp"%> +

数值

+
+
+
+ +
+ + + + + + + + +
+
+
+
+
+
+ +
+ + + + + + + + +
+
+
+
+
+
+
+
+ +
+ + + + + + + + +
+
+
+
+
+
+ +
+ + + + + + + + + + +
+
+
+
+
+
+
+
+ +
+ + + + + + + + +
+
+
+
+
+
+ +
+ + + + + + + + +
+
+
+ + + + + + + + +
+ \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/cfg/multipleCfgForm.jsp b/src/main/webapp/WEB-INF/views/cfg/multipleCfgForm.jsp index f52421572..d481ad5b4 100644 --- a/src/main/webapp/WEB-INF/views/cfg/multipleCfgForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/multipleCfgForm.jsp @@ -60,7 +60,7 @@ $(function(){ if(4==type){ if(!$("input[name='"+tableName+".srcIpMask']").val()){ $("input[name='"+tableName+".srcIpMask']").val("255.255.255.255"); - }else if($("input[name='"+tableName+"srcIpMask']").val()=="FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF"){ + }else if($("input[name='"+tableName+".srcIpMask']").val()=="FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF"){ $("input[name='"+tableName+".srcIpMask']").val("255.255.255.255"); } if(!$("input[name='"+tableName+".dstIpMask']").val()){ @@ -169,6 +169,7 @@ $(function(){ <%@include file="/WEB-INF/include/form/multiple/complexInfo.jsp" %> + <%@include file="/WEB-INF/include/form/multiple/numInfo.jsp" %> <%@include file="/WEB-INF/include/form/multiple/stringInfo.jsp" %> @@ -183,6 +184,7 @@ $(function(){ <%@include file="/WEB-INF/include/form/multiple/complexInfo.jsp" %> + <%@include file="/WEB-INF/include/form/multiple/numInfo.jsp" %> <%@include file="/WEB-INF/include/form/multiple/stringInfo.jsp" %> diff --git a/src/main/webapp/WEB-INF/views/cfg/multipleCfgList.jsp b/src/main/webapp/WEB-INF/views/cfg/multipleCfgList.jsp index 593f6ea97..6ff627a5c 100644 --- a/src/main/webapp/WEB-INF/views/cfg/multipleCfgList.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/multipleCfgList.jsp @@ -111,9 +111,7 @@ - -
@@ -277,6 +275,9 @@ <%--数值 --%> + + + <%--字符串 --%> @@ -308,6 +309,9 @@ + + + 字符串 @@ -360,6 +364,9 @@ <%--数值 --%> + ${bean.numCfg[mainTable].cfgDesc } + ${bean.numCfg[mainTable].lowBounadry} + ${bean.numCfg[mainTable].upBounadry } <%--字符串 --%> @@ -405,8 +412,11 @@ + ${bean.numCfg[other.tableName].cfgDesc } + ${bean.numCfg[other.tableName].lowBounadry} + ${bean.numCfg[other.tableName].upBounadry } - + @@ -518,7 +528,7 @@
  • -
  • +