(1)ip,字符串,增强字符串mapper.xml里的get方法删除多余参数,只保留cfgId以及compileId。

(2)系统字典表更新方法查询多域增强字符串配置的匹配区域。mysql这里查询好像自动大小写忽略,待测试。
(3)多域界面提交。界面展示采用查一张主表再查其他表的方式展示,非所有表都有的字段只能查主表的,这里界面查询条件已做限制;另外表单提交未做验证;多个同类型(字符串,增强字符串)的表现在界面无法区分,后面会将界面展示意义不明的字段调整展示名称。
This commit is contained in:
wangxin
2018-03-29 14:56:27 +08:00
parent c0e0dd3b7a
commit 3d5f9d6878
21 changed files with 1894 additions and 448 deletions

View File

@@ -0,0 +1,150 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<h3 class="form-section"><spring:message code="basic_config"/></h3>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_area_block"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="isAreaEffective" value="1"
<c:if test="${_cfg.isAreaEffective==1}">checked</c:if>
><spring:message code="yes"/>
</label>
<label class="radio-inline">
<input type="radio" name="isAreaEffective" value="0"
<c:if test="${_cfg.isAreaEffective==0}">checked</c:if>
><spring:message code="no"/>
</label>
</div>
<div for="isAreaEffective"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="area_effect_id"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="areaEffectiveIds" value="${_cfg.ipCfg.areaEffectiveIds}">
</div>
<div for="areaEffectiveIds"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="letter"/></label>
<div class="col-md-6">
<select name="requestId" title=<spring:message code="select"/> data-live-search="true" data-live-search-placeholder="search" class="selectpicker form-control">
<c:forEach items="${requestInfos}" var="requestInfo">
<option value="${requestInfo.id}"
<c:if test="${requestInfo.isValid==0 or requestInfo.isAudit==3}">disabled="disabled"</c:if>
<c:if test="${requestInfo.id==_cfg.requestId}">selected</c:if>>${requestInfo.requestTitle}</option>
</c:forEach>
</select>
</div>
<div for="requestId"></div>
</div>
</div>
<!--/span-->
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="type"/></label>
<div class="col-md-6">
<select name="classify" multiple class="selectpicker form-control" title=<spring:message code="select"/>>
<c:forEach items="${fls}" var="fl">
<c:choose>
<c:when test="${_cfg.classify==null or _cfg.classify==''}">
<option value="${fl.serviceDictId}">${fl.itemValue}</option>
</c:when>
<c:when test="${fn:contains(_cfg.classify,',')}">
<option value="${fl.serviceDictId}"
<c:forEach items="${fn:split(_cfg.classify,',')}" var="_classify">
<c:if test="${fl.isValid==0}">disabled="disabled"</c:if>
<c:if test="${fn:trim(fl.serviceDictId) eq _classify}">selected</c:if>
</c:forEach>
>${fl.itemValue}</option>
</c:when>
<c:otherwise>
<option value="${fl.serviceDictId}"
<c:if test="${fl.isValid==0}">disabled="disabled"</c:if>
<c:if test="${fn:trim(fl.serviceDictId) eq _classify}">selected</c:if>
>${fl.itemValue}</option>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
</div>
</div>
</div>
<!--/span-->
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="attribute"/></label>
<div class="col-md-6">
<select name="attribute" multiple class="selectpicker form-control" title=<spring:message code="select"/>>
<c:forEach items="${xzs}" var="xz">
<c:choose>
<c:when test="${_cfg.attribute==null or _cfg.attribute==''}">
<option value="${xz.serviceDictId}">${xz.itemValue}</option>
</c:when>
<c:otherwise>
<c:forEach items="${fn:split(_cfg.attribute,',')}" var="_attribute">
<option value="${xz.serviceDictId}"
<c:if test="${xz.isValid==0}">disabled="disabled"</c:if>
<c:if test="${fn:trim(xz.serviceDictId) eq _attribute}">selected</c:if>
>${xz.itemValue}</option>
</c:forEach>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="label"/></label>
<div class="col-md-6">
<select name="lable" multiple class="selectpicker form-control" title=<spring:message code="select"/>>
<c:forEach items="${lables}" var="lable">
<c:choose>
<c:when test="${_cfg.lable==null or _cfg.lable==''}">
<option value="${lable.serviceDictId}">${lable.itemValue}</option>
</c:when>
<c:otherwise>
<c:forEach items="${fn:split(_cfg.lable,',')}" var="_lable">
<option value="${lable.serviceDictId}"
<c:if test="${lable.isValid==0}">disabled="disabled"</c:if>
<c:if test="${fn:trim(lable.serviceDictId) eq _lable}">selected</c:if>
>${lable.itemValue}</option>
</c:forEach>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
</div>
</div>
</div>
</div>
<!-- <div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3">生效范围</label>
<div class="col-md-6">
<select class="form-control">
<option>Country 1</option>
<option>Country 2</option>
</select>
</div>
</div>
</div>
</div> -->

View File

@@ -0,0 +1,164 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<h3 class="form-section">增强字符串<spring:message code="block_config"/><small><span class="glyphicon glyphicon-chevron-down" data-toggle="collapse" data-target=".complexCfg" title="add"></span></small></h3>
<div class="row complexCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '4' and otherTable==null}">
<input name="complexCfg[${mainTable}].cfgDesc" type="text" class="form-control" value="${_cfg.complexCfg[mainTable].cfgDesc}"/>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '4'}">
<input name="complexCfg[${otherTable.tableName}].cfgDesc" type="text" class="form-control" value="${_cfg.complexCfg[otherTable.tableName].cfgDesc}"/>
</c:when>
</c:choose>
</div>
<div for="cfgDesc"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="match_area"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '4' and otherTable==null}">
<select name="complexCfg[${mainTable}].district" class="district selectpicker select2 form-control">
<option value=""><spring:message code='select'/></option>
<c:forEach items="${districts}" var="district">
<option value="${district.itemValue}">${district.itemValue}</option>
</c:forEach>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '4'}">
<select name="complexCfg[${otherTable.tableName}].district" class="district selectpicker select2 form-control">
<option value=""><spring:message code='select'/></option>
<c:forEach items="${districts}" var="district">
<option value="${district.itemValue}">${district.itemValue}</option>
</c:forEach>
</select>
</c:when>
</c:choose>
<input type="hidden" name="" placeholder="请输入自定义域" class="otherValue form-control" value="${_cfg.complexCfg[mainTable].district}"/>
</div>
<div for="district"></div>
</div>
</div>
</div>
<div class="row complexCfg collapse">
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="key_word"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '4' and otherTable==null}">
<input name="complexCfg[${mainTable}].keywords" type="text" class="form-control" value="${_cfg.complexCfg[mainTable].keywords}"/>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '4'}">
<input name="complexCfg[${otherTable.tableName}].keywords" type="text" class="form-control" value="${_cfg.complexCfg[otherTable.tableName].keywords}"/>
</c:when>
</c:choose>
</div>
<div for="keywords"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="expression_type"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '4' and otherTable==null}">
<label class="radio-inline">
<input type="radio" name="complexCfg[${mainTable}].exprType" value="1"
<c:if test="${_cfg.complexCfg[mainTable].exprType==1}">checked</c:if>
><spring:message code="and"/>
</label>
<label class="radio-inline">
<input type="radio" name="complexCfg[${mainTable}].exprType" value="0"
<c:if test="${_cfg.complexCfg[mainTable].exprType==0}">checked</c:if>
><spring:message code="null"/>
</label>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '4'}">
<label class="radio-inline">
<input type="radio" name="complexCfg[${otherTable.tableName}].exprType" value="1"
<c:if test="${_cfg.complexCfg[otherTable.tableName].exprType==1}">checked</c:if>
><spring:message code="and"/>
</label>
<label class="radio-inline">
<input type="radio" name="complexCfg[${otherTable.tableName}].exprType" value="0"
<c:if test="${_cfg.complexCfg[otherTable.tableName].exprType==0}">checked</c:if>
><spring:message code="null"/>
</label>
</c:when>
</c:choose>
</div>
<div for="isAreaEffective"></div>
</div>
</div>
</div>
<div class="row complexCfg collapse">
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="match_method"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '4' and otherTable==null}">
<select name="complexCfg[${mainTable}].matchMethod" class="selectpicker select2 form-control" >
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.complexCfg[mainTable].matchMethod==0 }">selected</c:if>><spring:message code="substring_match"></spring:message></option>
<option value="1" <c:if test="${_cfg.complexCfg[mainTable].matchMethod==1 }">selected</c:if>><spring:message code="right_match"></spring:message></option>
<option value="2" <c:if test="${_cfg.complexCfg[mainTable].matchMethod==2 }">selected</c:if>><spring:message code="left_match"></spring:message></option>
<option value="3" <c:if test="${_cfg.complexCfg[mainTable].matchMethod==3 }">selected</c:if>><spring:message code="exactly_match"></spring:message></option>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '4'}">
<select name="complexCfg[${otherTable.tableName}].matchMethod" class="selectpicker select2 form-control" >
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.complexCfg[otherTable.tableName].matchMethod==0 }">selected</c:if>><spring:message code="substring_match"></spring:message></option>
<option value="1" <c:if test="${_cfg.complexCfg[otherTable.tableName].matchMethod==1 }">selected</c:if>><spring:message code="right_match"></spring:message></option>
<option value="2" <c:if test="${_cfg.complexCfg[otherTable.tableName].matchMethod==2 }">selected</c:if>><spring:message code="left_match"></spring:message></option>
<option value="3" <c:if test="${_cfg.complexCfg[otherTable.tableName].matchMethod==3 }">selected</c:if>><spring:message code="exactly_match"></spring:message></option>
</select>
</c:when>
</c:choose>
</div>
<div for="matchMethod"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_hexbinary"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '4' and otherTable==null}">
<select name="complexCfg[${mainTable}].isHexbin" class="selectpicker select2 form-control" >
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.complexCfg[mainTable].isHexbin==0 }">selected</c:if>><spring:message code="case_insensitive_nohex"></spring:message></option>
<option value="1" <c:if test="${_cfg.complexCfg[mainTable].isHexbin==1 }">selected</c:if>><spring:message code="hex_binary"></spring:message></option>
<option value="2" <c:if test="${_cfg.complexCfg[mainTable].isHexbin==2 }">selected</c:if>><spring:message code="case_sensitive_nohex"></spring:message></option>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '4'}">
<select name="complexCfg[${otherTable.tableName}].isHexbin" class="selectpicker select2 form-control" >
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.complexCfg[otherTable.tableName].isHexbin==0 }">selected</c:if>><spring:message code="case_insensitive_nohex"></spring:message></option>
<option value="1" <c:if test="${_cfg.complexCfg[otherTable.tableName].isHexbin==1 }">selected</c:if>><spring:message code="hex_binary"></spring:message></option>
<option value="2" <c:if test="${_cfg.complexCfg[otherTable.tableName].isHexbin==2 }">selected</c:if>><spring:message code="case_sensitive_nohex"></spring:message></option>
</select>
</c:when>
</c:choose>
</div>
</div>
</div>
<c:choose>
<c:when test="${mainTableType eq '4' and otherTable==null}">
<input name="complexCfg[${mainTable}].cfgId" type="hidden" value="${_cfg.complexCfg[mainTable].cfgId}"/>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '4'}">
<input name="complexCfg[${otherTable.tableName}].cfgId" type="hidden" value="${_cfg.complexCfg[otherTable.tableName].cfgId}"/>
</c:when>
</c:choose>
</div>
<!--/row-->

View File

@@ -0,0 +1,249 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<style>
.ipCfg-hide{
display:none;
}
</style>
<h3 class="form-section">IP<spring:message code="block_config"/><small><span class="glyphicon glyphicon-plus" data-toggle="collapse" data-target=".ipCfg" title="add"></span></small></h3>
<div class="row ipCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].cfgDesc" value="${_cfg.ipCfg[mainTable].cfgDesc}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].cfgDesc" value="${_cfg.ipCfg[otherTable.tableName].cfgDesc}">
</c:when>
</c:choose>
</div>
<div for="cfgDesc"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="ip_type"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<select name="ipCfg[${mainTable}].ipType" class="ipType selectpicker show-tick form-control">
<option value="" ><spring:message code="select"/></option>
<option value="4" <c:if test="${_cfg.ipCfg[mainTable].ipType==4}">selected</c:if> >V4</option>
<option value="6" <c:if test="${_cfg.ipCfg[mainTable].ipType==6}">selected</c:if>>V6</option>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<select name="ipCfg[${otherTable.tableName}].ipType" class="ipType selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value="" ><spring:message code="select"/></option>
<option value="4" <c:if test="${_cfg.ipCfg[otherTable.tableName].ipType==4}">selected</c:if> >V4</option>
<option value="6" <c:if test="${_cfg.ipCfg[otherTable.tableName].ipType==6}">selected</c:if>>V6</option>
</select>
</c:when>
</c:choose>
</div>
<div for="ipType"></div>
</div>
</div>
</div>
<div class="row ipCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_ip"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].srcIp" value="${_cfg.ipCfg[mainTable].srcIp}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].srcIp" value="${_cfg.ipCfg[otherTable.tableName].srcIp}">
</c:when>
</c:choose>
</div>
<div for="srcIp"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_address_mask"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].srcIpMask" value="${_cfg.ipCfg[mainTable].srcIpMask}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].srcIpMask" value="${_cfg.ipCfg[otherTable.tableName].srcIpMask}">
</c:when>
</c:choose>
</div>
<div for="srcIpMask"></div>
</div>
</div>
</div>
<div class="row ipCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].srcPort" value="${_cfg.ipCfg[mainTable].srcPort}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].srcPort" value="${_cfg.ipCfg[otherTable.tableName].srcPort}">
</c:when>
</c:choose>
</div>
<div for="srcPort"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port_mask"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].srcPortMask" value="${_cfg.ipCfg[mainTable].srcPortMask}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].srcPortMask" value="${_cfg.ipCfg[otherTable.tableName].srcPortMask}">
</c:when>
</c:choose>
</div>
<div for="srcPortMask"></div>
</div>
</div>
</div>
<div class="row ipCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_ip"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].dstIp" value="${_cfg.ipCfg[mainTable].dstIp}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].dstIp" value="${_cfg.ipCfg[otherTable.tableName].dstIp}">
</c:when>
</c:choose>
</div>
<div for="dstIp"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_address_mask"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].dstIpMask" value="${_cfg.ipCfg[mainTable].dstIpMask}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].dstIpMask" value="${_cfg.ipCfg[otherTable.tableName].dstIpMask}">
</c:when>
</c:choose>
</div>
<div for="dstIpMask"></div>
</div>
</div>
</div>
<div class="row ipCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].dstPort" value="${_cfg.ipCfg[mainTable].dstPort}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].dstPort" value="${_cfg.ipCfg[otherTable.tableName].dstPort}">
</c:when>
</c:choose>
</div>
<div for="dstPort"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port_mask"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input class="form-control" type="text" name="ipCfg[${mainTable}].dstPortMask" value="${_cfg.ipCfg[mainTable].dstPortMask}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input class="form-control" type="text" name="ipCfg[${otherTable.tableName}].dstPortMask" value="${_cfg.ipCfg[otherTable.tableName].dstPortMask}">
</c:when>
</c:choose>
</div>
<div for="dstPortMask"></div>
</div>
</div>
</div>
<div class="row ipCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="direction"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<select name="ipCfg[${mainTable}].direction" class="selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.ipCfg[mainTable].direction==0}">selected</c:if>>0</option>
<option value="1" <c:if test="${_cfg.ipCfg[mainTable].direction==1}">selected</c:if>>1</option>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<select name="ipCfg[${otherTable.tableName}].direction" class="selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.ipCfg[otherTable.tableName].direction==0}">selected</c:if>>0</option>
<option value="1" <c:if test="${_cfg.ipCfg[otherTable.tableName].direction==1}">selected</c:if>>1</option>
</select>
</c:when>
</c:choose>
<%-- <input class="form-control" type="text" name="direction" value="${_cfg.ipCfg.direction}"> --%>
</div>
<div for="direction"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="protocol"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<select name="ipCfg[${mainTable}].protocol" class="selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value=""><spring:message code="select"/></option>
<option value="6" <c:if test="${_cfg.ipCfg[mainTable].protocol==6}">selected</c:if>>TCP</option>
<option value="17" <c:if test="${_cfg.ipCfg[mainTable].protocol==17}">selected</c:if>>UDP</option>
<option value="0" <c:if test="${_cfg.ipCfg[mainTable].protocol==0}">selected</c:if>><spring:message code="arbitrary"/></option>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<select name="ipCfg[${otherTable.tableName}].protocol" class="selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value="" ><spring:message code="select"/></option>
<option value="6" <c:if test="${_cfg.ipCfg[otherTable.tableName].protocol==6}">selected</c:if>>TCP</option>
<option value="17" <c:if test="${_cfg.ipCfg[otherTable.tableName].protocol==17}">selected</c:if>>UDP</option>
<option value="0" <c:if test="${_cfg.ipCfg[otherTable.tableName].protocol==0}">selected</c:if>><spring:message code="arbitrary"/></option>
</select>
</c:when>
</c:choose>
</div>
<div for="protocol"></div>
</div>
</div>
<c:choose>
<c:when test="${mainTableType eq '1' and otherTable==null}">
<input type="hidden" name="ipCfg[${mainTable}].protocolId" value="${_cfg.ipCfg[mainTable].protocolId}">
<input name="ipCfg[${mainTable}].cfgId" type="hidden" value="${_cfg.ipCfg[mainTable].cfgId}"/>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '1'}">
<input type="hidden" name="ipCfg[${otherTable.tableName}].protocolId" value="${_cfg.ipCfg[otherTable.tableName].protocolId}">
<input name="ipCfg[${otherTable.tableName}].cfgId" type="hidden" value="${_cfg.ipCfg[otherTable.tableName].cfgId}"/>
</c:when>
</c:choose>
</div>

View File

@@ -0,0 +1,139 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<h3 class="form-section">字符串<spring:message code="block_config"/><small><span class="glyphicon glyphicon-chevron-down" data-toggle="collapse" data-target=".stringCfg" title="add"></span></small></h3>
<div class="row stringCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '2' and otherTable==null}">
<input class="form-control" type="text" name="stringCfg[${mainTable}].cfgDesc" value="${_cfg.stringCfg[mainTable].cfgDesc}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '2'}">
<input class="form-control" type="text" name="stringCfg[${otherTable.tableName}].cfgDesc" value="${_cfg.stringCfg[otherTable.tableName].cfgDesc}">
</c:when>
</c:choose>
</div>
<div for="cfgDesc"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="key_word"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '2' and otherTable==null}">
<input class="form-control" type="text" name="stringCfg[${mainTable}].cfgKeywords" value="${_cfg.stringCfg[mainTable].cfgKeywords}">
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '2'}">
<input class="form-control" type="text" name="stringCfg[${otherTable.tableName}].cfgKeywords" value="${_cfg.stringCfg[otherTable.tableName].cfgKeywords}">
</c:when>
</c:choose>
</div>
<div for="cfgKeywords"></div>
</div>
</div>
</div>
<div class="row stringCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="expression_type"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '2' and otherTable==null}">
<label class="radio-inline">
<input type="radio" name="stringCfg[${mainTable}].exprType" value="1"
<c:if test="${_cfg.stringCfg[mainTable].exprType==1}">checked</c:if>
><spring:message code="and"/>
</label>
<label class="radio-inline">
<input type="radio" name="stringCfg[${mainTable}].exprType" value="0"
<c:if test="${_cfg.stringCfg[mainTable].exprType==0}">checked</c:if>
><spring:message code="null"/>
</label>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '2'}">
<label class="radio-inline">
<input type="radio" name="stringCfg[${otherTable.tableName}].exprType" value="1"
<c:if test="${_cfg.stringCfg[otherTable.tableName].exprType==1}">checked</c:if>
><spring:message code="and"/>
</label>
<label class="radio-inline">
<input type="radio" name="stringCfg[${otherTable.tableName}].exprType" value="0"
<c:if test="${_cfg.stringCfg[otherTable.tableName].exprType==0}">checked</c:if>
><spring:message code="null"/>
</label>
</c:when>
</c:choose>
</div>
<div for="exprType"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="match_method"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '2' and otherTable==null}">
<select name="stringCfg[${mainTable}].matchMethod" class="selectpicker select2 form-control">
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.stringCfg[mainTable].matchMethod==0 }">selected</c:if>><spring:message code="substring_match"></spring:message></option>
<option value="1" <c:if test="${_cfg.stringCfg[mainTable].matchMethod==1 }">selected</c:if>><spring:message code="right_match"></spring:message></option>
<option value="2" <c:if test="${_cfg.stringCfg[mainTable].matchMethod==2 }">selected</c:if>><spring:message code="left_match"></spring:message></option>
<option value="3" <c:if test="${_cfg.stringCfg[mainTable].matchMethod==3 }">selected</c:if>><spring:message code="exactly_match"></spring:message></option>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '2'}">
<select name="stringCfg[${otherTable.tableName}].matchMethod" class="selectpicker select2 form-control">
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.stringCfg[otherTable.tableName].matchMethod==0 }">selected</c:if>><spring:message code="substring_match"></spring:message></option>
<option value="1" <c:if test="${_cfg.stringCfg[otherTable.tableName].matchMethod==1 }">selected</c:if>><spring:message code="right_match"></spring:message></option>
<option value="2" <c:if test="${_cfg.stringCfg[otherTable.tableName].matchMethod==2 }">selected</c:if>><spring:message code="left_match"></spring:message></option>
<option value="3" <c:if test="${_cfg.stringCfg[otherTable.tableName].matchMethod==3 }">selected</c:if>><spring:message code="exactly_match"></spring:message></option>
</select>
</c:when>
</c:choose>
</div>
<div for="matchMethod"></div>
</div>
</div>
</div>
<div class="row stringCfg collapse">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_hexbinary"/></label>
<div class="col-md-6">
<c:choose>
<c:when test="${mainTableType eq '2' and otherTable==null}">
<select name="stringCfg[${mainTable}].isHexbin" class="selectpicker select2 form-control" >
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.stringCfg[mainTable].isHexbin==0 }">selected</c:if>><spring:message code="case_insensitive_nohex"></spring:message></option>
<option value="1" <c:if test="${_cfg.stringCfg[mainTable].isHexbin==1 }">selected</c:if>><spring:message code="hex_binary"></spring:message></option>
<option value="2" <c:if test="${_cfg.stringCfg[mainTable].isHexbin==2 }">selected</c:if>><spring:message code="case_sensitive_nohex"></spring:message></option>
</select>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '2'}">
<select name="stringCfg[${otherTable.tableName}].isHexbin" class="selectpicker select2 form-control" >
<option value="" ><spring:message code="select"/></option>
<option value="0" <c:if test="${_cfg.stringCfg[otherTable.tableName].isHexbin==0 }">selected</c:if>><spring:message code="case_insensitive_nohex"></spring:message></option>
<option value="1" <c:if test="${_cfg.stringCfg[otherTable.tableName].isHexbin==1 }">selected</c:if>><spring:message code="hex_binary"></spring:message></option>
<option value="2" <c:if test="${_cfg.stringCfg[otherTable.tableName].isHexbin==2 }">selected</c:if>><spring:message code="case_sensitive_nohex"></spring:message></option>
</select>
</c:when>
</c:choose>
</div>
<div for="isHexbin"></div>
</div>
</div>
<c:choose>
<c:when test="${mainTableType eq '2' and otherTable==null}">
<input name="stringCfg[${mainTable}].cfgId" type="hidden" value="${_cfg.stringCfg[mainTable].cfgId}"/>
</c:when>
<c:when test="${otherTable!=null and otherTable.tableType eq '2'}">
<input name="stringCfg[${otherTable.tableName}].cfgId" type="hidden" value="${_cfg.stringCfg[otherTable.tableName].cfgId}"/>
</c:when>
</c:choose>
</div>
<!--/row-->