完善IP复用地址池、策略配置.

This commit is contained in:
zhangwq
2018-12-01 16:06:08 +08:00
parent 68e822bb26
commit 8cfb175fd2
18 changed files with 804 additions and 405 deletions

View File

@@ -103,7 +103,6 @@ var resetIndex = function(){
<form:form id="cfgFrom" modelAttribute="_cfg" action="${ctx}/maintenance/ipMultiplexPoolCfg/snatSaveOrUpdate" method="post" class="form-horizontal">
<input type="hidden" name="cfgId" value="${_cfg.cfgId}">
<input type="hidden" name="functionId" value="${_cfg.functionId}">
<input type="hidden" name="addrPoolId" value="${_cfg.addrPoolId}">
<input type="hidden" id="compileId" name="compileId" value="${_cfg.compileId}">
<c:if test="${fn:length(serviceList)==1}">
<c:forEach items="${serviceList}" var="service">

View File

@@ -6,8 +6,10 @@
<script>
$(document).ready(function() {
//搜索框提示语初始化
if("${cfg.addrPoolId}"){
$("#intype").val("${cfg.addrPoolId}");
if("${cfg.cfgId}"){
$("#intype").val("${cfg.cfgId}");
}else if("${cfg.addrPoolName}"){
$("#intype").val("${cfg.addrPoolName}");
}else{
$("#intype").attr("placeholder","<spring:message code='input'/> "+$("#seltype").find("option:selected").text());
}
@@ -38,8 +40,6 @@
}
}
var requestUrl = "http://192.168.11.137:8090/command/?cmd=IpNumGet&addr_pool_id=";
//var requestUrl = "https://api.douban.com/v2/book/search?q=javascript&count=1";
$("td[addrPoolId]").each(function(){
var td = $(this);
var audit = $(this).attr("audit")
@@ -48,7 +48,6 @@
var failed=$.validator.messages.failed;
// 判断是否为审核通过状态
if(audit == 1){
// $.getJSON(requestUrl,function(data,status){});
$.ajax({
timeout:15000,// 超时时间
data:{"addrPoolId":addrPoolId,"cmd":"IpNumGet"},
@@ -178,7 +177,8 @@
<div class="input-group">
<div class="input-group-btn">
<form:select path="seltype" class="selectpicker select2 input-small" >
<form:option value="addrPoolId"><spring:message code="address_pool_id"></spring:message></form:option>
<form:option value="cfgId"><spring:message code="address_pool_id"></spring:message></form:option>
<form:option value="addrPoolName"><spring:message code="address_pool"></spring:message></form:option>
<form:option value="action"><spring:message code="block_type"></spring:message></form:option>
<form:option value="isValid"><spring:message code="valid_identifier"></spring:message></form:option>
</form:select>
@@ -357,7 +357,7 @@
<!-- /筛选搜索内容栏 结束-->
</form:form>
</div>
<sys:message content="${message}"/>
<sys:message content="${message}" type="${messageTypes }"/>
<div class="table-responsive">
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap">
<thead>
@@ -371,7 +371,7 @@
<th><spring:message code="block_type"/></th>
<th class="sort-column r.is_valid"><spring:message code="valid_identifier"/></th>
<th><spring:message code="is_audit"/></th>
<th><spring:message code="whether_area_block"/></th>
<%-- <th><spring:message code="whether_area_block"/></th> --%>
<th><spring:message code="letter"/></th>
<th><spring:message code="classification"/></th>
<th><spring:message code="attribute"/></th>
@@ -388,8 +388,8 @@
<tbody>
<c:forEach items="${page.list }" var="cfg" varStatus="status" step="1">
<tr>
<td><input type="checkbox" class="i-checks" serviceId="${cfg.serviceId}" id="${cfg.cfgId}" value="${cfg.isAudit}" addressPoolId="${cfg.addrPoolId }" ></td>
<td>${cfg.addrPoolId }</td>
<td><input type="checkbox" class="i-checks" serviceId="${cfg.serviceId}" id="${cfg.cfgId}" value="${cfg.isAudit}" addressPoolId="${cfg.cfgId }" ></td>
<td>${cfg.cfgId }</td>
<td>
<a href="javascript:;" data-original-title="${cfg.addrPoolName}"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
@@ -397,7 +397,7 @@
</a>
</td>
<td>${cfg.ipTotal }</td>
<td audit="${cfg.isAudit}" addrPoolId="${cfg.addrPoolId }"><div class="loading-total"></div></td>
<td audit="${cfg.isAudit}" addrPoolId="${cfg.cfgId }"><div class="loading-total"></div></td>
<td>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">
@@ -419,14 +419,14 @@
<c:when test="${cfg.isAudit eq '3'}"><span indexTable="${cfg.indexTable}" data-placement="right" data-original-title="<spring:message code='letter_cancel_info'/>: " class="label le-ca-fo label-warning tooltips" data-icon="&#xe01e;"> <spring:message code="cancel_approved"/></span></c:when>
</c:choose>
</td>
<td>
<%-- <td>
<c:if test="${cfg.isAreaEffective==0}"><spring:message code="all"/></c:if>
<c:if test="${cfg.isAreaEffective==1}">
<a href="javascript:viewAreaInfo('${ctx}','${cfg.areaEffectiveIds }','${cfg.compileId }')" >
<spring:message code="selective"/>
</a>
</c:if>
</td>
</td> --%>
<td>${cfg.requestName }</td>
<td>
<c:set var="classify"></c:set>
@@ -488,7 +488,7 @@
<td>
<!-- <a href="#">新增IP</a>
<a href="#">删除IP</a> -->
<a href="javascript:;" onclick="getInfo(this)" addrPoolId="${cfg.addrPoolId }"><spring:message code="show_detail"/></a>
<a href="javascript:;" onclick="getInfo(this)" addrPoolId="${cfg.cfgId }"><spring:message code="show_detail"/></a>
</td>
<td>${cfg.creatorName }</td>
<td><fmt:formatDate value="${cfg.createTime }" pattern="yyyy-MM-dd HH:mm:ss"/></td>

View File

@@ -79,7 +79,7 @@ $(function(){
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="cfgDesc" value="${_cfg.cfgDesc}" autocomplete="off">
<input class="form-control" type="text" name="cfgDesc" value="${_cfg.cfgDesc}">
</div>
</div>
</div>
@@ -87,14 +87,14 @@ $(function(){
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="user"/></label>
<div class="col-md-6">
<select name="userRegion1" class="selectpicker show-tick form-control required" data-live-search="true" data-live-search-placeholder="search">
<select name="userId" class="selectpicker show-tick form-control required" data-live-search="true" data-live-search-placeholder="search">
<option value="" ><spring:message code="select"/></option>
<c:forEach items="${users }" var="user">
<option value="${user.id}" <c:if test="${_cfg.userRegion1 eq user.id }">selected</c:if>><spring:message code="${user.userName}"/></option>
<option value="${user.id}" <c:if test="${_cfg.userId eq user.id }">selected</c:if>><spring:message code="${user.userName}"/></option>
</c:forEach>
</select>
</div>
<div for="userRegion1"></div>
<div for="userId"></div>
</div>
</div>
<c:if test="${fn:length(serviceList)>1}">
@@ -131,138 +131,18 @@ $(function(){
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="address_pool"/></label>
<div class="col-md-6">
<select name="userRegion2" class="selectpicker show-tick form-control required" data-live-search="true" data-live-search-placeholder="search">
<select name="addrPoolId" class="selectpicker show-tick form-control required" data-live-search="true" data-live-search-placeholder="search">
<option value="" ><spring:message code="select"/></option>
<c:forEach items="${addrPools }" var="addrPool">
<option value="${addrPool.addrPoolId}" <c:if test="${_cfg.userRegion2 eq addrPool.addrPoolId }">selected</c:if>><spring:message code="${addrPool.addrPoolName}"/></option>
<option value="${addrPool.cfgId}" <c:if test="${_cfg.addrPoolId eq addrPool.cfgId }">selected</c:if>><spring:message code="${addrPool.addrPoolName}"/></option>
</c:forEach>
</select>
</div>
<div for="userRegion2"></div>
<div for="addrPoolId"></div>
</div>
</div>
</div>
<div class="row ipInfo hidden">
<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="ip_type"/></label>
<div class="col-md-6">
<select name="ipType" class="selectpicker show-tick form-control required">
<c:forEach items="${fns:getDictList('IP_TYPE')}" var="ipTypeC">
<option value="${ipTypeC.itemCode}">
<spring:message code="${ipTypeC.itemValue}"/>
</option>
</c:forEach>
</select>
</div>
<div for="ipType"></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_pattern"/></label>
<div class="col-md-6">
<select name="ipPattern" class="selectpicker show-tick form-control required">
<c:forEach items="${fns:getDictList('IP_PATTERN')}" var="ipPatternC">
<option value="${ipPatternC.itemCode}"><spring:message code="${ipPatternC.itemValue}"/></option>
</c:forEach>
</select>
</div>
<div for="ipPattern"></div>
</div>
</div>
</div>
<div class="row ip">
<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">
<input class="form-control required ipCheck" type="text" name="srcIpAddress">
</div>
<div for="srcIpAddress"></div>
</div>
</div>
</div>
<div class="row port">
<div class="col-md-6 hidden">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="port_pattern"/></label>
<div class="col-md-6">
<select name="portPattern" class="selectpicker show-tick form-control required">
<c:forEach items="${fns:getDictList('PORT_PATTERN')}" var="portPatternC">
<option value="${portPatternC.itemCode}"><spring:message code="${portPatternC.itemValue}"/></option>
</c:forEach>
</select>
</div>
<div for="portPattern"></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"/></label>
<div class="col-md-6">
<input class="form-control required portCheck" type="text" name="srcPort">
</div>
<div for="srcPort"></div>
</div>
</div>
</div>
<div class="row destPort">
<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">
<input class="form-control required ipCheck" type="text" name="destIpAddress">
</div>
<div for="destIpAddress"></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"/></label>
<div class="col-md-6">
<input class="form-control required portCheck" type="text" name="destPort">
</div>
<div for="destPort"></div>
</div>
</div>
</div>
<div class="row hidden protocol">
<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">
<select name="protocol"
class="selectpicker show-tick form-control required">
<c:forEach items="${fns:getDictList('PROTOCOL')}" var="protocolC">
<option value="${protocolC.itemCode}"><spring:message code="${protocolC.itemValue}"/></option>
</c:forEach>
</select>
</div>
<div for="protocol"></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="direction" /></label>
<div class="col-md-6">
<select name="direction"
class="selectpicker show-tick form-control required">
<c:forEach items="${fns:getDictList('DIRECTION')}" var="directionC">
<option value="${directionC.itemCode}"><spring:message code="${directionC.itemValue}"/></option>
</c:forEach>
</select>
</div>
<div for="direction"></div>
</div>
</div>
</div>
<br>
</div>
<div class="row ipmulitiplex">
<div class="col-md-6 hidden">
<div class="form-group">
@@ -279,17 +159,6 @@ $(function(){
</div>
</div>
</div>
<div class="row ratelimit hidden">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="ratelimit"/></label>
<div class="col-md-6">
<input class="form-control required number" range="[0,100]" type="text" name="ratelimit" value="${_cfg.ratelimit}">
</div>
<div for="ratelimit"></div>
</div>
</div>
</div>
<br>
<%@include file="/WEB-INF/include/form/areaInfo.jsp"%>
<br>

View File

@@ -9,6 +9,10 @@
//搜索框提示语初始化
if("${cfg.cfgDesc}"){
$("#intype").val("${cfg.cfgDesc}");
}else if("${cfg.addrPoolName}"){
$("#intype").val("${cfg.addrPoolName}");
}else if("${cfg.userName}"){
$("#intype").val("${cfg.userName}");
}else if("${cfg.compileId}"){
$("#intype").val("${cfg.compileId}");
}else{
@@ -63,7 +67,6 @@
<div class="portlet">
<div class="portlet-body">
<div class="row" >
<sys:message content="${message}" type="${messageTypes }"/>
<form:form id="searchForm" modelAttribute="cfg" action="${ctx}/manipulation/ipmulitiplex/snatPolicyList?functionId=${cfg.functionId}" method="post" class="form-search">
<input id="functionId" name="functionId" type="hidden" value="${cfg.functionId}"/>
<input id="audit" name="audit" type="hidden" value="${audit}"/>
@@ -94,7 +97,9 @@
<form:select path="seltype" class="selectpicker select2 input-small" >
<form:option value="cfgDesc"><spring:message code="config_describe"></spring:message></form:option>
<form:option value="userName"><spring:message code="user"></spring:message></form:option>
<form:option value="compileId"><spring:message code="cfg_id"></spring:message></form:option>
<form:option value="addrPoolName"><spring:message code="address_pool"></spring:message></form:option>
<form:option value="action"><spring:message code="block_type"></spring:message></form:option>
<form:option value="isValid"><spring:message code="valid_identifier"></spring:message></form:option>
</form:select>
@@ -125,7 +130,7 @@
<div class="pull-right">
<shiro:hasPermission name="snat_policy:config">
<sys:delRow url="${ctx}/manipulation/ipmulitiplex/snatPolicyForm" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/manipulation/ipmulitiplex/snatDelete?functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}/manipulation/ipmulitiplex/snatDelete?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}/manipulation/ipmulitiplex/exportSnat?functionId=${cfg.functionId }" searchUrl="${ctx}/manipulation/ipmulitiplex/snatPolicyList?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="export"></sys:delRow>
</shiro:hasPermission>
<shiro:hasPermission name="snat_policy:confirm">
@@ -274,6 +279,7 @@
<!-- /筛选搜索内容栏 结束-->
</form:form>
</div>
<sys:message content="${message}" type="${messageTypes }"/>
<div class="table-responsive">
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap">
<thead>
@@ -310,14 +316,14 @@
<td>${indexCfg.cfgDesc }</td>
<td>
<c:forEach items="${addrPools }" var="addrPool">
<c:if test="${indexCfg.userRegion2 eq addrPool.addrPoolId }">
<c:if test="${indexCfg.addrPoolId eq addrPool.cfgId }">
<spring:message code="${addrPool.addrPoolName }"/>
</c:if>
</c:forEach>
</td>
<td>
<c:forEach items="${users }" var="user">
<c:if test="${indexCfg.userRegion1 eq user.id }">
<c:if test="${indexCfg.userId eq user.id }">
<spring:message code="${user.userName }"/>
</c:if>
</c:forEach>