1.地址池配置表单格式修改;2.boxSolidCSS选择器修改;3.snat策略配置异步获取有效地址池信息;4.ftp、mail配置禁用reject动作;
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
package com.nis.web.controller.configuration.maintenance;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@@ -9,9 +8,7 @@ import java.util.Map;
|
||||
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.eclipse.jetty.util.ajax.JSON;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
@@ -21,12 +18,8 @@ import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.basics.IpReuseIpCfg;
|
||||
import com.nis.domain.basics.PolicyGroupInfo;
|
||||
import com.nis.domain.configuration.BaseIpCfg;
|
||||
import com.nis.domain.configuration.IpAddrPoolCfg;
|
||||
import com.nis.domain.configuration.IpMultiplexPoolCfg;
|
||||
import com.nis.domain.configuration.UserManage;
|
||||
import com.nis.exceptions.MaatConvertException;
|
||||
import com.nis.util.ConfigServiceUtil;
|
||||
import com.nis.util.Constants;
|
||||
|
||||
@@ -24,9 +24,7 @@ import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.nis.domain.Page;
|
||||
@@ -34,7 +32,6 @@ import com.nis.domain.SysDataDictionaryItem;
|
||||
import com.nis.domain.basics.PolicyGroupInfo;
|
||||
import com.nis.domain.configuration.BaseIpCfg;
|
||||
import com.nis.domain.configuration.IpAddrPoolCfg;
|
||||
import com.nis.domain.configuration.IpMultiplexPoolCfg;
|
||||
import com.nis.domain.configuration.IpPortCfg;
|
||||
import com.nis.domain.configuration.IpReusePolicyCfg;
|
||||
import com.nis.domain.configuration.UserManage;
|
||||
@@ -167,23 +164,9 @@ public class IpMultiplexController extends CommonController {
|
||||
|
||||
// 获取用户信息 地址池信息
|
||||
List<UserManage> users = userManageService.findUsers();
|
||||
List<IpAddrPoolCfg> addrPools = ipAddrPoolCfgService.getEffectiveAddrPool();
|
||||
List<IpAddrPoolCfg> addrPoolsNew=new ArrayList<>();
|
||||
for (IpAddrPoolCfg addrPool : addrPools) {
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
params.put("addr_pool_id", addrPool.getCfgId());
|
||||
String url =Constants.IP_REUSE_CALL_CGI_URL ;
|
||||
Map<String, Object> resultMap=ConfigServiceUtil.getCGIInfo(url, Constants.IP_NUM_GET, params);
|
||||
if(!StringUtil.isEmpty(resultMap)
|
||||
&& !StringUtil.isEmpty(resultMap.get("num"))
|
||||
&& Integer.parseInt(resultMap.get("num").toString()) > 0) {
|
||||
addrPoolsNew.add(addrPool);
|
||||
}
|
||||
}
|
||||
|
||||
model.addAttribute("_cfg", cfg);
|
||||
model.addAttribute("users", users);
|
||||
model.addAttribute("addrPools", addrPoolsNew);
|
||||
model.addAttribute("urlPrefix","/manipulation/ipmulitiplex");
|
||||
return "/cfg/manipulation/ipmulitiplex/snatPolicyForm2";
|
||||
}
|
||||
@@ -250,6 +233,31 @@ public class IpMultiplexController extends CommonController {
|
||||
return "redirect:" + adminPath +"/manipulation/ipmulitiplex/snatPolicyList?functionId="+functionId;
|
||||
}
|
||||
|
||||
/**
|
||||
* 异步获取地址池信息
|
||||
* @param request
|
||||
* @param response
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping(value = {"/ajaxGetAddrPools"})
|
||||
public List<IpAddrPoolCfg> ajaxGetAddrPools(HttpServletRequest request, HttpServletResponse response){
|
||||
List<IpAddrPoolCfg> addrPools = ipAddrPoolCfgService.getEffectiveAddrPool();
|
||||
List<IpAddrPoolCfg> addrPoolsNew=new ArrayList<>();
|
||||
for (IpAddrPoolCfg addrPool : addrPools) {
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
params.put("addr_pool_id", addrPool.getCfgId());
|
||||
String url =Constants.IP_REUSE_CALL_CGI_URL ;
|
||||
Map<String, Object> resultMap=ConfigServiceUtil.getCGIInfo(url, Constants.IP_NUM_GET, params);
|
||||
if(!StringUtil.isEmpty(resultMap)
|
||||
&& !StringUtil.isEmpty(resultMap.get("num"))
|
||||
&& Integer.parseInt(resultMap.get("num").toString()) > 0) {
|
||||
addrPoolsNew.add(addrPool);
|
||||
}
|
||||
}
|
||||
return addrPoolsNew;
|
||||
}
|
||||
|
||||
@RequestMapping(value = {"/dnatPolicyList"})
|
||||
public String dnatPolicyList(String cfgName,Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
|
||||
this._ipList(cfgName,model, cfg, request, response);
|
||||
|
||||
@@ -1336,4 +1336,5 @@ address_pool_is_used=Address pool is used and cannot perform this operation!
|
||||
cgi_service_failed=Request CGI server failed
|
||||
available_ip=Available IP
|
||||
config_sync=Configuration Synchronization
|
||||
info_failed=Information Acquisition Failure
|
||||
info_failed=Information Acquisition Failure
|
||||
address_pool_ip_configuration=Address Pool IP Configuration
|
||||
@@ -1334,4 +1334,5 @@ address_pool_id=Address Pool ID
|
||||
log_to_cfg=\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F
|
||||
address_pool_is_used=Address pool is used and cannot perform this operation!
|
||||
available_ip=Available IP
|
||||
config_sync=Configuration Synchronization
|
||||
config_sync=Configuration Synchronization
|
||||
address_pool_ip_configuration=Address Pool IP Configuration
|
||||
@@ -1334,4 +1334,5 @@ address_pool_is_used=\u5730\u5740\u6C60\u5DF2\u88AB\u4F7F\u7528\uFF0C\u65E0\u6CD
|
||||
cgi_service_failed=\u8BF7\u6C42CGI\u670D\u52A1\u63A5\u53E3\u5931\u8D25
|
||||
available_ip=\u53EF\u7528IP\u5730\u5740
|
||||
config_sync=\u914D\u7F6E\u540C\u6B65
|
||||
info_failed=\u4FE1\u606F\u83B7\u53D6\u5931\u8D25
|
||||
info_failed=\u4FE1\u606F\u83B7\u53D6\u5931\u8D25
|
||||
address_pool_ip_configuration=\u5730\u5740\u6C60 IP\u914D\u7F6E
|
||||
@@ -0,0 +1,6 @@
|
||||
-- ftp
|
||||
UPDATE function_service_dict SET is_valid = 0 WHERE dict_id = 42 AND function_id = 51;
|
||||
-- mail地址
|
||||
UPDATE function_service_dict SET is_valid = 0 WHERE dict_id = 149 AND function_id = 37;
|
||||
-- mail高级
|
||||
UPDATE function_service_dict SET is_valid = 0 WHERE dict_id = 37 AND function_id = 35;
|
||||
@@ -11,6 +11,7 @@ $(function(){
|
||||
if($(".ipDiv").hasClass("hidden")){
|
||||
$(".ipDiv").remove();
|
||||
}
|
||||
$(".addDiv").removeClass("hidden");
|
||||
if('${fn:length(serviceList)}'>1){
|
||||
$("#serviceId").val($(".action:checked").attr("serviceId"));
|
||||
$("#protocolId").val($(".action:checked").attr("protocolId"));
|
||||
@@ -39,23 +40,23 @@ $(function(){
|
||||
|
||||
ipInfoDiv.removeClass("ipDiv");
|
||||
ipInfoDiv.removeClass("hidden");
|
||||
ipInfoDiv.find("button").each(function(){
|
||||
$(this).removeClass("addDivBut");
|
||||
$(this).children("font").attr("color","#ed6b75").attr("class","fa fa-times");
|
||||
});
|
||||
setFirstIpDiv();
|
||||
resetIndex();
|
||||
});
|
||||
|
||||
var resetDiv = function(obj){
|
||||
// 添加 or 删除
|
||||
if($(obj).hasClass("addDivBut")){
|
||||
if($(obj).hasClass("addDiv")){
|
||||
$(".ipInfo").last().after(ipInfoDiv.clone());
|
||||
}else{
|
||||
$(obj).parents(".ipInfo:first").remove();
|
||||
if($(".ipInfo").length == 1){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>");
|
||||
return;
|
||||
}else{
|
||||
$(obj).parents(".ipInfo:first").remove();
|
||||
}
|
||||
}
|
||||
|
||||
$(".selectpicker").selectpicker("render");// 重新渲染页面
|
||||
$(".selectpicker").selectpicker("render");// 重新渲染
|
||||
$("select[name$='ipType']").on("change",function(){
|
||||
switchIpInfo(this);
|
||||
});
|
||||
@@ -65,15 +66,6 @@ var resetDiv = function(obj){
|
||||
resetIndex();
|
||||
}
|
||||
|
||||
// 设置第一个div +
|
||||
var setFirstIpDiv = function(){
|
||||
$(".ipInfo").not(".ipDiv").first().find("button").each(function(){
|
||||
$(this).addClass("addDivBut");
|
||||
$(this).children("font").attr("color","#27a4b0").attr("class","fa fa-plus");
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
var resetIndex = function(){
|
||||
// 设置索引
|
||||
$(".ipInfo").not(".hidden").each(function(index,element){
|
||||
@@ -178,15 +170,27 @@ var resetIndex = function(){
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><spring:message code="desc"/>:</label>
|
||||
<div class="col-md-6">
|
||||
<form:textarea path="description" htmlEscape="false" rows="1" maxlength="128" class="form-control" />
|
||||
<form:textarea path="description" htmlEscape="false" maxlength="128" class="form-control" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row ipInfo ipDiv <c:if test="${!empty _cfg.ipCfgs}">hidden</c:if>">
|
||||
<h5 class="page-header"></h5>
|
||||
<h4 class="form-section">
|
||||
<spring:message code="address_pool_ip_configuration" />
|
||||
<small>
|
||||
<span class="glyphicon glyphicon-plus addDiv"
|
||||
onClick="resetDiv(this)" title="add"></span>
|
||||
</small>
|
||||
</h4>
|
||||
<div class="row ipInfo boxSolid ipDiv <c:if test="${!empty _cfg.ipCfgs}">hidden</c:if>">
|
||||
<input type="hidden" name="ipCfgs[0].protocolId" value="0">
|
||||
<div class="row">
|
||||
<div class="pull-right">
|
||||
<span class="glyphicon glyphicon-remove pull-right" title="remove"
|
||||
onClick="resetDiv(this);" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
@@ -203,86 +207,7 @@ var resetIndex = function(){
|
||||
<div for="ipCfgs[0].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"/></label>
|
||||
<div class="col-md-6">
|
||||
<div class="input-group">
|
||||
<input class="form-control required ipCheck" type="text" name="ipCfgs[0].srcIpAddress">
|
||||
<span class="input-group-btn">
|
||||
<button class="btn btn-default addDivBut" onclick="resetDiv(this)" type="button"><font color="#27a4b0" class="fa fa-plus"></font></button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div for="ipCfgs[0].srcIpAddress"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row port">
|
||||
<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="ipCfgs[0].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="ipCfgs[0].ipPattern"></div>
|
||||
</div>
|
||||
</div>
|
||||
<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="ipCfgs[0].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="ipCfgs[0].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="ipCfgs[0].srcPort">
|
||||
</div>
|
||||
<div for="ipCfgs[0].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="ipCfgs[0].destIpAddress">
|
||||
</div>
|
||||
<div for="ipCfgs[0].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="ipCfgs[0].destPort">
|
||||
</div>
|
||||
<div for="ipCfgs[0].destPort"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row hidden protocol">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group hidden">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
<spring:message code="protocol" /></label>
|
||||
@@ -298,7 +223,83 @@ var resetIndex = function(){
|
||||
</div>
|
||||
<div for="ipCfgs[0].protocol"></div>
|
||||
</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="ip_pattern"/></label>
|
||||
<div class="col-md-6">
|
||||
<select name="ipCfgs[0].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="ipCfgs[0].ipPattern"></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"/></label>
|
||||
<div class="col-md-6">
|
||||
<input class="form-control required ipCheck" type="text" name="ipCfgs[0].srcIpAddress">
|
||||
</div>
|
||||
<div for="ipCfgs[0].srcIpAddress"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row port">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group hidden">
|
||||
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="port_pattern"/></label>
|
||||
<div class="col-md-6">
|
||||
<select name="ipCfgs[0].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="ipCfgs[0].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="ipCfgs[0].srcPort">
|
||||
</div>
|
||||
<div for="ipCfgs[0].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="ipCfgs[0].destIpAddress">
|
||||
</div>
|
||||
<div for="ipCfgs[0].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="ipCfgs[0].destPort">
|
||||
</div>
|
||||
<div for="ipCfgs[0].destPort"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row protocol">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group hidden">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
@@ -320,9 +321,14 @@ var resetIndex = function(){
|
||||
</div>
|
||||
|
||||
<c:forEach items="${_cfg.ipCfgs }" var="ipCfg" varStatus="index">
|
||||
<div class="row ipInfo">
|
||||
<h5 class="page-header"></h5>
|
||||
<div class="row ipInfo boxSolid">
|
||||
<input type="hidden" name="ipCfgs[0].protocolId" value="0">
|
||||
<div class="row">
|
||||
<div class="pull-right">
|
||||
<span class="glyphicon glyphicon-remove pull-right" title="remove"
|
||||
onClick="resetDiv(this);" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
@@ -343,22 +349,28 @@ var resetIndex = function(){
|
||||
</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"/></label>
|
||||
<div class="col-md-6">
|
||||
<div class="input-group">
|
||||
<input class="form-control required ipCheck" type="text" name="ipCfgs[0].srcIpAddress" value="${ipCfg.srcIpAddress }">
|
||||
<span class="input-group-btn">
|
||||
<button class="btn btn-default" onclick="resetDiv(this)" type="button"><font color="#ed6b75" class="fa fa-times"></font></button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div for="ipCfgs[0].srcIpAddress"></div>
|
||||
<div class="form-group hidden">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
<spring:message code="protocol" /></label>
|
||||
<div class="col-md-6">
|
||||
<select name="ipCfgs[0].protocol"
|
||||
class="selectpicker show-tick form-control required">
|
||||
<c:forEach items="${fns:getDictList('PROTOCOL')}" var="protocolC">
|
||||
<option value="${protocolC.itemCode}"
|
||||
<c:if test="${ipCfg.protocol == protocolC.itemCode}">
|
||||
selected
|
||||
</c:if>>
|
||||
<spring:message code="${protocolC.itemValue}"/>
|
||||
</option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</div>
|
||||
<div for="ipCfgs[0].protocol"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row port">
|
||||
<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="ip_pattern"/></label>
|
||||
@@ -377,7 +389,19 @@ var resetIndex = function(){
|
||||
<div for="ipCfgs[0].ipPattern"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6 hidden">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="ip"/></label>
|
||||
<div class="col-md-6">
|
||||
<input class="form-control required ipCheck" type="text" name="ipCfgs[0].srcIpAddress" value="${ipCfg.srcIpAddress }">
|
||||
</div>
|
||||
<div for="ipCfgs[0].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">
|
||||
@@ -407,7 +431,7 @@ var resetIndex = function(){
|
||||
</div>
|
||||
<div class="row destPort">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group ">
|
||||
<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="ipCfgs[0].destIpAddress" value="${ipCfg.destIpAddress }">
|
||||
@@ -416,7 +440,7 @@ var resetIndex = function(){
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group ">
|
||||
<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="ipCfgs[0].destPort" value="${ipCfg.destPort }">
|
||||
@@ -425,27 +449,7 @@ var resetIndex = function(){
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row hidden protocol">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group hidden">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
<spring:message code="protocol" /></label>
|
||||
<div class="col-md-6">
|
||||
<select name="ipCfgs[0].protocol"
|
||||
class="selectpicker show-tick form-control required">
|
||||
<c:forEach items="${fns:getDictList('PROTOCOL')}" var="protocolC">
|
||||
<option value="${protocolC.itemCode}"
|
||||
<c:if test="${ipCfg.protocol == protocolC.itemCode}">
|
||||
selected
|
||||
</c:if>>
|
||||
<spring:message code="${protocolC.itemValue}"/>
|
||||
</option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</div>
|
||||
<div for="ipCfgs[0].protocol"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row protocol">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group hidden">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
|
||||
@@ -18,7 +18,29 @@ $(function(){
|
||||
form.submit();
|
||||
},
|
||||
errorContainer: "#messageBox"
|
||||
});
|
||||
});
|
||||
|
||||
// 获取地址池信息
|
||||
var pathName=window.document.location.pathname.substring(0,window.document.location.pathname.lastIndexOf("/nis")+4);
|
||||
$.ajax({
|
||||
type:'get',
|
||||
url:pathName+'/manipulation/ipmulitiplex/ajaxGetAddrPools',
|
||||
dataType:'json',
|
||||
success:function(data){
|
||||
if(data != null){
|
||||
//$("#addrPoolSel").empty();
|
||||
$.each(data, function(i, n){
|
||||
if("${_cfg.addrPoolId}" == data[i].cfgId){
|
||||
var option = new Option(data[i].addrPoolName, data[i].cfgId, null, true);
|
||||
}else{
|
||||
var option = new Option(data[i].addrPoolName, data[i].cfgId);
|
||||
}
|
||||
$("#addrPoolSel")[0].options.add(option);
|
||||
});
|
||||
$("#addrPoolSel").selectpicker("refresh");
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
@@ -157,12 +179,9 @@ $(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="addrPoolId" class="selectpicker show-tick form-control required" data-live-search="true" data-live-search-placeholder="search">
|
||||
<select id="addrPoolSel" 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.cfgId}" <c:if test="${_cfg.addrPoolId eq addrPool.cfgId }">selected</c:if>><spring:message code="${addrPool.addrPoolName}"/></option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</select>
|
||||
</div>
|
||||
<div for="addrPoolId"></div>
|
||||
</div>
|
||||
|
||||
@@ -22614,7 +22614,7 @@ span[id^='close']{
|
||||
background: #e7ecf1;
|
||||
border:none
|
||||
}
|
||||
.form-section + .boxSolid {
|
||||
.form-section ~ .boxSolid {
|
||||
border: 1px solid #eeeeee;
|
||||
margin-top:-14px;
|
||||
margin-bottom:10px
|
||||
|
||||
Reference in New Issue
Block a user