分类性质标签、地域运营商作用域:融合自定义显示,添加排序,优化代码,
特定服务器管理:修正列表分页显示,条件查询,添加自定义显示,添加排序,新增修改页面添加表单校验, 协议ip配置:修正条件查询,添加自定义显示,添加排序,新增修改页面添加表单校验(ipV4\ipV6地址及掩码校验,端口校验)
This commit is contained in:
@@ -7,57 +7,106 @@
|
||||
<script type="text/javascript" src="${ctxStatic}/pages/scripts/dict.js"></script>
|
||||
<title></title>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(
|
||||
function() {
|
||||
$(document).ready(function() {
|
||||
$("[data-toogle='tooltip']").tooltip();
|
||||
$("select[name='ipType']").on("change",function(){
|
||||
var type=$(this).val();
|
||||
if(4==type){
|
||||
$("input[name='srcIpMask']").attr("placeholder","任意掩码请填0.0.0.0,无掩码请填255.255.255.255");
|
||||
$("input[name='dstIpMask']").attr("placeholder","任意掩码请填0.0.0.0,无掩码请填255.255.255.255");
|
||||
$("input[name='srcIp']").attr("placeholder","任意ip请填0.0.0.0");
|
||||
$("input[name='dstIp']").attr("placeholder","任意ip请填0.0.0.0");
|
||||
$("input[name='srcIpMask']").attr("title","任意掩码请填0.0.0.0,无掩码请填255.255.255.255");
|
||||
$("input[name='dstIpMask']").attr("title","任意掩码请填0.0.0.0,无掩码请填255.255.255.255");
|
||||
$("input[name='srcIp']").attr("title","任意ip请填0.0.0.0");
|
||||
$("input[name='dstIp']").attr("title","任意ip请填0.0.0.0");
|
||||
}
|
||||
if(6==type){
|
||||
$("input[name='srcIpMask']").attr("placeholder","若无请填FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF,任意请填 ::");
|
||||
$("input[name='dstIpMask']").attr("placeholder","若无请填FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF,任意请填 ::");
|
||||
$("input[name='srcIp']").attr("placeholder","任意ip请填 ::");
|
||||
$("input[name='dstIp']").attr("placeholder","任意ip请填 ::");
|
||||
$("input[name='srcIpMask']").attr("title","若无请填FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF,任意请填 ::");
|
||||
$("input[name='dstIpMask']").attr("title","若无请填FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF,任意请填 ::");
|
||||
$("input[name='srcIp']").attr("title","任意ip请填 ::");
|
||||
$("input[name='dstIp']").attr("title","任意ip请填 ::");
|
||||
}
|
||||
});
|
||||
jQuery.validator.addMethod("maxValue",
|
||||
function(value, element) {
|
||||
return value >= 0 && value < 10000000;
|
||||
return value >= 0 && value < 210000000;
|
||||
}, "请填写正确的协议id");
|
||||
//ip地址校验
|
||||
jQuery.validator.addMethod("ip",function(value, element) {
|
||||
return this.optional(element)||(/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/.test(value) && (RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256));
|
||||
}, "请填写正确的IP地址,如192.168.0.1");
|
||||
var typeInt=$("select[name='ipType']").val();
|
||||
if(typeInt==4){
|
||||
return this.optional(element)||(/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/.test(value) && (RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256));
|
||||
}else if(typeInt==6){
|
||||
return this.optional(element)||/^\s*((([0-9A-Fa-f]{1,4}:){7}(([0-9A-Fa-f]{1,4})|:))|(([0-9A-Fa-f]{1,4}:){6}(:|((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})|(:[0-9A-Fa-f]{1,4})))|(([0-9A-Fa-f]{1,4}:){5}((:((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){0,1}((:((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){0,2}((:((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){0,3}((:((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(([0-9A-Fa-f]{1,4}:)(:[0-9A-Fa-f]{1,4}){0,4}((:((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(:(:[0-9A-Fa-f]{1,4}){0,5}((:((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})?)|((:[0-9A-Fa-f]{1,4}){1,2})))|(((25[0-5]|2[0-4]\d|[01]?\d{1,2})(\.(25[0-5]|2[0-4]\d|[01]?\d{1,2})){3})))(%.+)?\s*$/.test(value);
|
||||
}}, "请填写正确的IP地址");
|
||||
//ip地址掩码校验
|
||||
jQuery.validator.addMethod("ipMask",function(value, element) {
|
||||
obj=value;
|
||||
var typeInt=$("select[name='ipType']").val();
|
||||
if(typeInt==4){
|
||||
if(obj=="255.255.255.255"){
|
||||
return true;
|
||||
}else{
|
||||
var exp=/^(254|252|248|240|224|192|128|0)\.0\.0\.0|255\.(254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(254|252|248|240|224|192|128|0)$/;
|
||||
var reg = obj.match(exp);
|
||||
if(reg==null){return false;}else{return true}
|
||||
}
|
||||
}else if(typeInt==6){
|
||||
if(obj=="FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF"||obj==0||obj=="::"){
|
||||
return true;
|
||||
}else{return (obj > 0) && ((obj & (obj - 1)) == 0)};
|
||||
}
|
||||
}, "请填写正确的IP地址掩码");
|
||||
$("#name").focus();
|
||||
$("#inputForm")
|
||||
.validate(
|
||||
{
|
||||
rules : {
|
||||
'specServiceId':{
|
||||
required:true
|
||||
specServiceId:{
|
||||
required:true,
|
||||
digits:true,
|
||||
maxValue:true
|
||||
},
|
||||
'srcIp':{
|
||||
srcIp:{
|
||||
required:true,
|
||||
ip:true
|
||||
},
|
||||
'dstIp':{
|
||||
dstIp:{
|
||||
required:true,
|
||||
ip:true
|
||||
},
|
||||
'srcIpMask':{
|
||||
required:true
|
||||
srcIpMask:{
|
||||
required:true,
|
||||
ipMask:true
|
||||
},
|
||||
'dstIpMask':{
|
||||
required:true
|
||||
dstIpMask:{
|
||||
required:true,
|
||||
ipMask:true
|
||||
},
|
||||
'srcPort':{
|
||||
srcPort:{
|
||||
required:true,
|
||||
digits:true,
|
||||
max: 65535,
|
||||
min: 0
|
||||
},
|
||||
'dstPort':{
|
||||
dstPort:{
|
||||
required:true,
|
||||
digits:true,
|
||||
max: 65535,
|
||||
min: 0
|
||||
},
|
||||
'srcPortMask':{
|
||||
srcPortMask:{
|
||||
required:true,
|
||||
digits:true,
|
||||
max: 65535,
|
||||
min: 0
|
||||
},
|
||||
'dstPortMask':{
|
||||
dstPortMask:{
|
||||
required:true,
|
||||
digits:true,
|
||||
max: 65535,
|
||||
@@ -65,42 +114,44 @@
|
||||
}
|
||||
},
|
||||
messages : {
|
||||
'specServiceId':{
|
||||
required:'<spring:message code="required"/>'
|
||||
specServiceId:{
|
||||
required:'<spring:message code="required"/>',
|
||||
digits:'请填写整数数值',
|
||||
maxValue:'请填写合适的值(0~210000000)'
|
||||
},
|
||||
'srcIp':{
|
||||
srcIp:{
|
||||
required:'<spring:message code="required"/>',
|
||||
ip:'请填写正确的ip'
|
||||
},
|
||||
'dstIp':{
|
||||
dstIp:{
|
||||
required:'<spring:message code="required"/>',
|
||||
ip:'请填写正确的ip'
|
||||
},
|
||||
'srcIpMask':{
|
||||
srcIpMask:{
|
||||
required:'<spring:message code="required"/>'
|
||||
},
|
||||
'dstIpMask':{
|
||||
dstIpMask:{
|
||||
required:'<spring:message code="required"/>'
|
||||
},
|
||||
'srcPort':{
|
||||
srcPort:{
|
||||
required:'<spring:message code="required"/>',
|
||||
digits:'请填写整数',
|
||||
max: '数值不得大于65535',
|
||||
min: '数值不得小于0'
|
||||
},
|
||||
'dstPort':{
|
||||
dstPort:{
|
||||
required:'<spring:message code="required"/>',
|
||||
digits:'请填写整数',
|
||||
max: '数值不得大于65535',
|
||||
min: '数值不得小于0'
|
||||
},
|
||||
'srcPortMask':{
|
||||
srcPortMask:{
|
||||
required:'<spring:message code="required"/>',
|
||||
digits:'请填写整数',
|
||||
max: '数值不得大于65535',
|
||||
min: '数值不得小于0'
|
||||
},
|
||||
'dstPortMask':{
|
||||
dstPortMask:{
|
||||
required:'<spring:message code="required"/>',
|
||||
digits:'请填写整数',
|
||||
max: '数值不得大于65535',
|
||||
@@ -148,7 +199,7 @@
|
||||
|
||||
|
||||
<h3 class="page-title">
|
||||
<spring:message code="configuration_manage" />
|
||||
<spring:message code="agreement_ip_configuration" />
|
||||
</h3>
|
||||
|
||||
<div class="row">
|
||||
@@ -202,7 +253,6 @@
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>协议:</label>
|
||||
<div class="col-md-6">
|
||||
<form:select path="protocol" class="selectpicker select2 form-control" >
|
||||
<form:option value="">-请选择协议类型-</form:option>
|
||||
<c:forEach items="${fns:getDictList('SPEC_PROTOCOL')}" var="dict">
|
||||
<form:option value="${dict.itemCode}">${dict.itemValue}</form:option>
|
||||
</c:forEach>
|
||||
@@ -212,13 +262,16 @@
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>是否审核:</label>
|
||||
<div class="col-md-6">
|
||||
<form:select path="isAudit" class="selectpicker select2 form-control" >
|
||||
<c:if test="${hostId == null}">
|
||||
<form:option value="0">${fns:getDictLabel("SPEC_AUDIT","0","0")}</form:option>
|
||||
</c:if>
|
||||
</form:select>
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>ip类型:</label>
|
||||
<div class="col-md-6">
|
||||
<form:select path="ipType" class="selectpicker select2 form-control" >
|
||||
<c:forEach items="${fns:getDictList('SPEC_IP_TYPE')}" var="dict">
|
||||
<form:option value="${dict.itemCode}">${dict.itemValue}</form:option>
|
||||
</c:forEach>
|
||||
</form:select>
|
||||
</div>
|
||||
<div class="col-md-6" style="display:none;">
|
||||
<input name="isAudit" value="1"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -229,7 +282,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>源IP地址:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="srcIp" htmlEscape="false" maxlength="50" class="form-control" placeholder="0.0.0.0"/>
|
||||
<form:input path="srcIp" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" data-placement="top" title="任意ip请填0.0.0.0" placeholder="任意ip请填0.0.0.0"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -237,7 +290,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>目的IP地址:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="dstIp" htmlEscape="false" maxlength="50" class="form-control" placeholder="0.0.0.0"/>
|
||||
<form:input path="dstIp" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" data-placement="top" title="任意ip请填0.0.0.0" placeholder="任意ip请填0.0.0.0"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -248,7 +301,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>源地址掩码:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="srcIpMask" htmlEscape="false" maxlength="50" class="form-control" placeholder="255.255.255.255"/>
|
||||
<form:input path="srcIpMask" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" title="任意掩码请填0.0.0.0,无掩码请填255.255.255.255" data-placement="top" placeholder="任意掩码请填0.0.0.0,无掩码请填255.255.255.255"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -256,7 +309,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>目的地址掩码:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="dstIpMask" htmlEscape="false" maxlength="50" class="form-control" placeholder="255.255.255.255"/>
|
||||
<form:input path="dstIpMask" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" data-placement="top" title="任意掩码请填0.0.0.0,无掩码请填255.255.255.255" placeholder="任意掩码请填0.0.0.0,无掩码请填255.255.255.255"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -267,7 +320,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>源端口:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="srcPort" htmlEscape="false" maxlength="50" class="form-control" placeholder="0"/>
|
||||
<form:input path="srcPort" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" data-placement="top" title="任意端口请填0" placeholder="任意端口请填0"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -275,7 +328,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>目的端口:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="dstPort" htmlEscape="false" maxlength="50" class="form-control" placeholder="0"/>
|
||||
<form:input path="dstPort" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" data-placement="top" title="任意端口请填0" placeholder="任意端口请填0"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -285,7 +338,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>源端口掩码:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="srcPortMask" htmlEscape="false" maxlength="50" class="form-control" placeholder="65535"/>
|
||||
<form:input path="srcPortMask" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" data-placement="top" title="任意掩码请填0,无掩码请填65535" placeholder="任意掩码请填0,无掩码请填65535"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -293,7 +346,7 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><font color="red">*</font>目的端口掩码:</label>
|
||||
<div class="col-md-6">
|
||||
<form:input path="dstPortMask" htmlEscape="false" maxlength="50" class="form-control" placeholder="65535"/>
|
||||
<form:input path="dstPortMask" htmlEscape="false" maxlength="50" class="form-control" data-toggle="tooltip" data-placement="top" title="任意掩码请填0,无掩码请填65535" placeholder="任意掩码请填0,无掩码请填65535"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user