Merge branch 'develop' of http://10.0.6.99/gwall/gwall.git into develop

This commit is contained in:
fangshunjian
2018-08-21 10:47:23 +08:00
26 changed files with 316 additions and 222 deletions

View File

@@ -27,7 +27,14 @@ public class FunctionRegionDict extends BaseCfg<FunctionRegionDict> {
private String configPortPattern; private String configPortPattern;
private String configDirection; private String configDirection;
private String configProtocol; private String configProtocol;
private Integer configRegionSort;
public Integer getConfigRegionSort() {
return configRegionSort;
}
public void setConfigRegionSort(Integer configRegionSort) {
this.configRegionSort = configRegionSort;
}
public String getConfigIpPortShow() { public String getConfigIpPortShow() {
return configIpPortShow; return configIpPortShow;
} }

View File

@@ -16,12 +16,12 @@ public class FunctionServiceDict extends BaseCfg<FunctionServiceDict> {
private String serviceName; private String serviceName;
private String serviceDesc; private String serviceDesc;
private String actionCode; private String actionCode;
private Integer regionCode; private String regionCode;
public Integer getRegionCode() { public String getRegionCode() {
return regionCode; return regionCode;
} }
public void setRegionCode(Integer regionCode) { public void setRegionCode(String regionCode) {
this.regionCode = regionCode; this.regionCode = regionCode;
} }
public Integer getDictId() { public Integer getDictId() {

View File

@@ -11,7 +11,7 @@ public final class Constants {
/** /**
* MaatConfig 默认值 * MaatConfig 默认值
*/ */
public static Integer MAAT_CFG_DOLOG_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_default", 1); public static Integer MAAT_CFG_DOLOG_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_default", 2);
public static Integer MAAT_CFG_DOLOG_DOBLACKLIST_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_doblacklist_default", 1); public static Integer MAAT_CFG_DOLOG_DOBLACKLIST_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_doblacklist_default", 1);
public static Integer MAAT_CFG_DOLOG_CONFIGPERCENT_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_configpercent_default", 100); public static Integer MAAT_CFG_DOLOG_CONFIGPERCENT_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_configpercent_default", 100);
public static Integer MAAT_CFG_DOLOG_CONFIGOPTION_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_configoption_default", 1); public static Integer MAAT_CFG_DOLOG_CONFIGOPTION_DEFAULT=Configurations.getIntProperty("maat_cfg_dolog_configoption_default", 1);

View File

@@ -22,12 +22,13 @@
<result column="config_port_pattern" property="configPortPattern" jdbcType="VARCHAR" /> <result column="config_port_pattern" property="configPortPattern" jdbcType="VARCHAR" />
<result column="config_direction" property="configDirection" jdbcType="VARCHAR" /> <result column="config_direction" property="configDirection" jdbcType="VARCHAR" />
<result column="config_protocol" property="configProtocol" jdbcType="VARCHAR" /> <result column="config_protocol" property="configProtocol" jdbcType="VARCHAR" />
<result column="config_region_sort" property="configRegionSort" jdbcType="INTEGER" />
</resultMap> </resultMap>
<sql id="Base_Column_List" > <sql id="Base_Column_List" >
dict_id, function_id, config_region_value,config_region_code, config_district, config_desc, is_valid,is_maat,region_type dict_id, function_id, config_region_value,config_region_code, config_district, config_desc, is_valid,is_maat,region_type
,config_multi_keywords,config_hex,config_expr_type,config_match_method,config_service_type,config_ip_port_show,config_ip_type, ,config_multi_keywords,config_hex,config_expr_type,config_match_method,config_service_type,config_ip_port_show,config_ip_type,
config_ip_pattern,config_port_pattern,config_direction,config_protocol config_ip_pattern,config_port_pattern,config_direction,config_protocol,config_region_sort
</sql> </sql>
<select id="getList" resultMap="BaseResultMap" > <select id="getList" resultMap="BaseResultMap" >
select select
@@ -43,7 +44,10 @@
<if test="configRegionCode != null"> <if test="configRegionCode != null">
AND config_region_code=#{configRegionCode,jdbcType=VARCHAR} AND config_region_code=#{configRegionCode,jdbcType=VARCHAR}
</if> </if>
order by dict_id,config_region_code <if test="configRegionSort != null">
AND config_region_sort=#{configRegionSort,jdbcType=VARCHAR}
</if>
order by dict_id,config_region_sort
</select> </select>
</mapper> </mapper>

View File

@@ -11,7 +11,7 @@
<result column="service_name" property="serviceName" jdbcType="VARCHAR" /> <result column="service_name" property="serviceName" jdbcType="VARCHAR" />
<result column="service_desc" property="serviceDesc" jdbcType="VARCHAR" /> <result column="service_desc" property="serviceDesc" jdbcType="VARCHAR" />
<result column="is_valid" property="isValid" jdbcType="INTEGER" /> <result column="is_valid" property="isValid" jdbcType="INTEGER" />
<result column="region_code" property="regionCode" jdbcType="INTEGER" /> <result column="region_code" property="regionCode" jdbcType="VARCHAR" />
</resultMap> </resultMap>
<sql id="Base_Column_List" > <sql id="Base_Column_List" >

View File

@@ -450,7 +450,7 @@ ipv6_default_ip_range_value=::-::
port_default=0 port_default=0
port_mask_default=0/65535 port_mask_default=0/65535
#MAAT CFG \u4e00\u4e9b\u9ed8\u8ba4\u503c #MAAT CFG \u4e00\u4e9b\u9ed8\u8ba4\u503c
maat_cfg_dolog_default=1 maat_cfg_dolog_default=2
maat_cfg_dolog_doblacklist_default=1 maat_cfg_dolog_doblacklist_default=1
maat_cfg_dolog_configpercent_default=100 maat_cfg_dolog_configpercent_default=100
maat_cfg_dolog_configoption_default=1 maat_cfg_dolog_configoption_default=1

View File

@@ -3,5 +3,5 @@ ALTER TABLE function_region_dict ADD config_ip_type VARCHAR(20) NULL COMMENT 'ip
ALTER TABLE function_region_dict ADD config_ip_pattern VARCHAR(10) NULL COMMENT 'ip的格式 1:ip掩码;2:IP范围;3:IP;使用逗号分隔'; ALTER TABLE function_region_dict ADD config_ip_pattern VARCHAR(10) NULL COMMENT 'ip的格式 1:ip掩码;2:IP范围;3:IP;使用逗号分隔';
ALTER TABLE function_region_dict ADD config_port_pattern VARCHAR(10) NULL COMMENT '端口的格式1:port;2:port_mask;使用逗号分隔'; ALTER TABLE function_region_dict ADD config_port_pattern VARCHAR(10) NULL COMMENT '端口的格式1:port;2:port_mask;使用逗号分隔';
ALTER TABLE function_region_dict ADD config_direction VARCHAR(10) NULL COMMENT 'IP方向0,双向;1,单向.使用逗号分隔'; ALTER TABLE function_region_dict ADD config_direction VARCHAR(10) NULL COMMENT 'IP方向0,双向;1,单向.使用逗号分隔';
ALTER TABLE function_service_dict ADD region_code INT(11) NULL COMMENT 'function_region_dict 表中的config_region_code字段值'; ALTER TABLE function_service_dict ADD region_code VARCHAR(20) NULL COMMENT 'function_region_dict 表中的config_region_code字段值';
ALTER TABLE function_region_dict ADD config_protocol VARCHAR(20) NULL COMMENT '协议 0:任意;6:TCP;17:UDP;1:ICMP;50:ESP;51:AH'; ALTER TABLE function_region_dict ADD config_protocol VARCHAR(20) NULL COMMENT '协议 0:任意;6:TCP;17:UDP;1:ICMP;50:ESP;51:AH';

View File

@@ -0,0 +1,8 @@
ALTER TABLE function_region_dict ADD config_region_sort INT(11) COMMENT 'region排序';
UPDATE function_region_dict SET config_region_sort=1 WHERE config_region_code=1;
UPDATE function_region_dict SET config_region_sort=2 WHERE config_region_code=2;
UPDATE function_region_dict SET config_region_sort=3 WHERE config_region_code=3;
UPDATE function_region_dict SET config_region_sort=4 WHERE config_region_code=4;
UPDATE function_region_dict SET config_region_sort=5 WHERE config_region_code=5;
UPDATE function_region_dict SET config_region_sort=6 WHERE config_region_code=6;
UPDATE function_region_dict SET config_region_sort=7 WHERE config_region_code=7;

View File

@@ -0,0 +1,12 @@
UPDATE sys_data_dictionary_name SET REMARK='ddos 攻击类型' WHERE mark='ATTACK_TYPE';
DELETE FROM sys_data_dictionary_item WHERE dictionary_id=99;
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200594,'ICMP_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200595,'IPFRAG_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200596,'SYN_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200597,'ACK_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200598,'RST_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200599,'DNS_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200600,'NTP_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200601,'UDP_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200602,'HTTP_Flood','',0,1,1,99);
INSERT INTO sys_data_dictionary_item (item_code,item_value,item_desc,item_sort,STATUS,TYPE,dictionary_id) VALUES(200603,'SSDP_Flood','',0,1,1,99);

View File

@@ -11,7 +11,54 @@ UPDATE function_service_dict SET region_code=1 WHERE function_id=300 AND ACTION
UPDATE function_region_dict SET config_service_type='ipmulitiplex',config_ip_port_show='1' ,config_ip_type='4,6',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=68; UPDATE function_region_dict SET config_service_type='ipmulitiplex',config_ip_port_show='1' ,config_ip_type='4,6',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=68;
#IP拦截 #IP拦截
UPDATE function_service_dict SET region_code=1 WHERE function_id=200 AND ACTION IN(1,128,64,80); UPDATE function_service_dict SET region_code=1 WHERE function_id=200 AND ACTION IN(1,128,64,80);
UPDATE function_region_dict SET config_service_type='ratelimit',config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=53; UPDATE function_region_dict SET config_service_type='ratelimit',config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0' WHERE dict_id=53;
#音视频IP #音视频IP
UPDATE function_service_dict SET region_code=2 WHERE function_id=20 AND ACTION IN(1,16); UPDATE function_service_dict SET region_code=2 WHERE function_id=20 AND ACTION IN(1,16);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=17; UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=17;
#图片IP
UPDATE function_service_dict SET region_code=1 WHERE function_id=21 AND ACTION IN(1,16);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=24;
#APP IP
UPDATE function_service_dict SET region_code=1 WHERE function_id=405 AND ACTION IN(1);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0,6,17' WHERE dict_id=62;
#IP白名单
UPDATE function_service_dict SET region_code=1 WHERE function_id=3 AND ACTION IN(128);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0,6,17' WHERE dict_id=7;
#http ip
UPDATE function_service_dict SET region_code='1,2,3,4,5,6' WHERE function_id=8 AND ACTION IN(16,1);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=14;
#ssl ip
UPDATE function_service_dict SET region_code='1,2,3,4' WHERE function_id=34 AND ACTION IN(16,1);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=23;
# mail ip
UPDATE function_service_dict SET region_code='1,2,3,4,5,6' WHERE function_id=35 AND ACTION IN(16,1);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=33;
# ddos ip
UPDATE function_service_dict SET region_code='1,2,3,4,5,6' WHERE function_id=301 AND ACTION IN(32);
UPDATE function_region_dict SET config_ip_port_show='2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=74;
# ftp ip
UPDATE function_service_dict SET region_code='1,2,3' WHERE function_id=51 AND ACTION IN(1,16);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=38;
# pxy control
UPDATE function_service_dict SET region_code='1,2,3,4,5,6' WHERE function_id=207 AND ACTION IN(16);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0' WHERE dict_id=84;
#pxy redirect
UPDATE function_service_dict SET region_code='1,2,3,4,5,6' WHERE function_id=208 AND ACTION IN(48);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0' WHERE dict_id=90;
#pxy replace
UPDATE function_service_dict SET region_code='1,2,3,4,5,6' WHERE function_id=209 AND ACTION IN(80);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0' WHERE dict_id=96;
#pxy monit
UPDATE function_service_dict SET region_code='1,2,3,4,5,6' WHERE function_id=210 AND ACTION IN(1);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0' WHERE dict_id=105;
#pxy whitelist
UPDATE function_service_dict SET region_code='1,2,3' WHERE function_id=211 AND ACTION IN(128);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0' WHERE dict_id=101;
#voip ip
UPDATE function_service_dict SET region_code='1,2' WHERE function_id=24 AND ACTION IN(1,16);
UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6,46,64,10',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0,1',config_protocol='0,6,17' WHERE dict_id=8;

View File

@@ -5,12 +5,7 @@
<title><spring:message code="${cfgName}"></spring:message></title> <title><spring:message code="${cfgName}"></spring:message></title>
<script type="text/javascript"> <script type="text/javascript">
$(function(){ $(function(){
$("#cancel").on("click",function(){ initCommIpVal();
window.history.back();
});
$(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId"));
});
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#cfgFrom").validate({ $("#cfgFrom").validate({
errorPlacement: function(error,element){ errorPlacement: function(error,element){
@@ -59,7 +54,16 @@ $(function(){
<c:forEach items="${regionList}" var="region"> <c:forEach items="${regionList}" var="region">
<c:if test="${_cfg.functionId eq region.functionId}"> <c:if test="${_cfg.functionId eq region.functionId}">
<input type="hidden" name="cfgType" value="${region.configRegionValue}"> <input type="hidden" name="cfgType" value="${region.configRegionValue}">
<input type="hidden" name="cfgRegionCode" value="${region.configRegionCode}"> <input type="hidden" name="cfgRegionCode"isMaat="${region.isMaat}"
serviceType="${region.configServiceType}"
ipPortShow="${region.configIpPortShow}"
ipType="${region.configIpType}"
ipPattern="${region.configIpPattern}"
portPattern="${region.configPortPattern}"
direction="${region.configDirection}"
protocol="${region.configProtocol}"
regionType="${region.regionType}"
value="${region.configRegionCode}">
</c:if> </c:if>
</c:forEach> </c:forEach>
<div class="form-body"> <div class="form-body">
@@ -189,6 +193,7 @@ $(function(){
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode}"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">

View File

@@ -61,6 +61,7 @@ $(function(){
portPattern="${region.configPortPattern}" portPattern="${region.configPortPattern}"
direction="${region.configDirection}" direction="${region.configDirection}"
protocol="${region.configProtocol}" protocol="${region.configProtocol}"
regionType="${region.regionType}"
value="${region.configRegionCode}"> value="${region.configRegionCode}">
</c:if> </c:if>
</c:forEach> </c:forEach>

View File

@@ -5,13 +5,7 @@
<title><spring:message code="${cfgName}"></spring:message></title> <title><spring:message code="${cfgName}"></spring:message></title>
<script type="text/javascript"> <script type="text/javascript">
$(function(){ $(function(){
$("#cancel").on("click",function(){ initCommIpVal();
window.history.back();
});
$(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId"));
});
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId")); $("#protocolId").val($(".action:checked").attr("protocolId"));
$("#cfgFrom").validate({ $("#cfgFrom").validate({
@@ -56,8 +50,19 @@ $(function(){
<!-- 配置域类型 --> <!-- 配置域类型 -->
<c:forEach items="${regionList}" var="region"> <c:forEach items="${regionList}" var="region">
<c:if test="${_cfg.functionId eq region.functionId}"> <c:if test="${_cfg.functionId eq region.functionId}">
<input type="hidden" name="cfgType" value="${region.configRegionValue}"> <input type="hidden" name="${cfgName}.configServiceType" value="${region.configServiceType}">
<input type="hidden" name="cfgRegionCode" value="${region.configRegionCode}"> <input type="hidden" id="cfgType${region.configRegionCode}" name="cfgType" value="${region.configRegionValue}">
<input type="hidden" name="cfgRegionCode" id="cfgRegionCode${region.configRegionCode}"
isMaat="${region.isMaat}"
serviceType="${region.configServiceType}"
ipPortShow="${region.configIpPortShow}"
ipType="${region.configIpType}"
ipPattern="${region.configIpPattern}"
portPattern="${region.configPortPattern}"
direction="${region.configDirection}"
protocol="${region.configProtocol}"
regionType="${region.regionType}"
value="${region.configRegionCode}">
</c:if> </c:if>
</c:forEach> </c:forEach>
<div class="form-body"> <div class="form-body">
@@ -82,6 +87,7 @@ $(function(){
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">

View File

@@ -196,10 +196,8 @@
<div class="form-group"> <div class="form-group">
<label class="control-label col-md-3"><spring:message code="do_log" /></label> <label class="control-label col-md-3"><spring:message code="do_log" /></label>
<c:forEach items="${fns:getDictList('DO_LOG') }" var="dict"> <c:forEach items="${fns:getDictList('DO_LOG') }" var="dict">
<!-- 新增 -->
<c:if test="${empty _cfg.cfgId}">
<c:choose> <c:choose>
<c:when test="${dict.itemValue eq 'framework_log'}"> <c:when test="${dict.itemCode eq _cfg.doLog}">
<label class="radio-inline"> <label class="radio-inline">
<input type="radio" name="doLog" checked value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/> <input type="radio" name="doLog" checked value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/>
</label> </label>
@@ -210,22 +208,6 @@
</label> </label>
</c:otherwise> </c:otherwise>
</c:choose> </c:choose>
</c:if>
<!-- 修改 -->
<c:if test="${!empty _cfg.cfgId}">
<c:choose>
<c:when test="${dict.itemCode == _cfg.doLog}">
<label class="radio-inline">
<input type="radio" name="doLog" checked value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/>
</label>
</c:when>
<c:otherwise>
<label class="radio-inline">
<input type="radio" name="doLog" value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/>
</label>
</c:otherwise>
</c:choose>
</c:if>
</c:forEach> </c:forEach>
</div> </div>
</div> </div>

View File

@@ -13,13 +13,14 @@
$(document) $(document)
.ready( .ready(
function() { function() {
$("#cancel").on("click", function() { initCommIpVal();
/* $("#cancel").on("click", function() {
window.history.back(); window.history.back();
}); });
$(".action").on("change", function() { $(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId")); $("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId")); $("#protocolId").val($(this).attr("protocolId"));
}); }); */
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId")); $("#protocolId").val($(".action:checked").attr("protocolId"));
$("#cfgFrom").validate( $("#cfgFrom").validate(
@@ -175,6 +176,7 @@
<label class="radio-inline"> <c:if test="${_cfg.functionId eq service.functionId}"> <label class="radio-inline"> <c:if test="${_cfg.functionId eq service.functionId}">
<input type="radio" name="action" serviceId="${service.serviceId }" <input type="radio" name="action" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">
@@ -197,10 +199,8 @@
<div class="form-group"> <div class="form-group">
<label class="control-label col-md-3"><spring:message code="do_log" /></label> <label class="control-label col-md-3"><spring:message code="do_log" /></label>
<c:forEach items="${fns:getDictList('DO_LOG') }" var="dict"> <c:forEach items="${fns:getDictList('DO_LOG') }" var="dict">
<!-- 新增 -->
<c:if test="${empty _cfg.cfgId}">
<c:choose> <c:choose>
<c:when test="${dict.itemValue eq 'framework_log'}"> <c:when test="${dict.itemCode eq _cfg.doLog}">
<label class="radio-inline"> <label class="radio-inline">
<input type="radio" name="doLog" checked value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/> <input type="radio" name="doLog" checked value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/>
</label> </label>
@@ -211,22 +211,7 @@
</label> </label>
</c:otherwise> </c:otherwise>
</c:choose> </c:choose>
</c:if>
<!-- 修改 -->
<c:if test="${!empty _cfg.cfgId}">
<c:choose>
<c:when test="${dict.itemCode == _cfg.doLog}">
<label class="radio-inline">
<input type="radio" name="doLog" checked value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/>
</label>
</c:when>
<c:otherwise>
<label class="radio-inline">
<input type="radio" name="doLog" value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/>
</label>
</c:otherwise>
</c:choose>
</c:if>
</c:forEach> </c:forEach>
</div> </div>
</div> </div>

View File

@@ -82,6 +82,7 @@ $(function(){
portPattern="${region.configPortPattern}" portPattern="${region.configPortPattern}"
direction="${region.configDirection}" direction="${region.configDirection}"
protocol="${region.configProtocol}" protocol="${region.configProtocol}"
regionType="${region.regionType}"
value="${region.configRegionCode}"> value="${region.configRegionCode}">
</c:forEach> </c:forEach>
<div class="form-body"> <div class="form-body">

View File

@@ -323,6 +323,11 @@
<div class="table-responsive"> <div class="table-responsive">
<sys:message content="${message}"/> <sys:message content="${message}"/>
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap"> <table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap">
<c:forEach items="${serviceList}" var="service">
<c:if test="${service.action==64}">
<c:set var="hasRatelimit" value="1"/>
</c:if>
</c:forEach>
<thead> <thead>
<tr> <tr>
<th><input type="checkbox" class="i-checks" id="checkAll"></th> <th><input type="checkbox" class="i-checks" id="checkAll"></th>
@@ -351,7 +356,7 @@
<th exportColumn="group_name"><spring:message code="group"/></th> <th exportColumn="group_name"><spring:message code="group"/></th>
<th exportColumn="ir_type"><spring:message code="ir_type"/></th> <th exportColumn="ir_type"><spring:message code="ir_type"/></th>
</c:if> </c:if>
<c:if test="${specialFunctionId ne null and specialFunctionId eq 'ipratelimit'}"> <c:if test="${hasRatelimit==1}">
<th exportColumn="ratelimit"><spring:message code="ratelimit"/></th> <th exportColumn="ratelimit"><spring:message code="ratelimit"/></th>
</c:if> </c:if>
<c:if test="${specialFunctionId ne null and specialFunctionId eq 'pxyIpControl'}"> <c:if test="${specialFunctionId ne null and specialFunctionId eq 'pxyIpControl'}">
@@ -444,9 +449,9 @@
</c:forEach> </c:forEach>
</td> </td>
</c:if> </c:if>
<c:if test="${specialFunctionId ne null and specialFunctionId eq 'ipratelimit'}"> <c:if test="${hasRatelimit==1}">
<td> <td>
<c:if test="${cfg.ratelimit eq null}">0%</c:if> <c:if test="${cfg.ratelimit eq null and cfg.action==64}">0%</c:if>
<c:if test="${cfg.ratelimit ne null}">${cfg.ratelimit}%</c:if> <c:if test="${cfg.ratelimit ne null}">${cfg.ratelimit}%</c:if>
</td> </td>
</c:if> </c:if>

View File

@@ -5,13 +5,14 @@
<title><spring:message code="${cfgName}"></spring:message></title> <title><spring:message code="${cfgName}"></spring:message></title>
<script type="text/javascript"> <script type="text/javascript">
$(function(){ $(function(){
$("#cancel").on("click",function(){ initCommIpVal();
/* $("#cancel").on("click",function(){
window.history.back(); window.history.back();
}); });
$(".action").on("change", function() { $(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId")); $("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId")); $("#protocolId").val($(this).attr("protocolId"));
}); }); */
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId")); $("#protocolId").val($(".action:checked").attr("protocolId"));
$("#cfgFrom").validate({ $("#cfgFrom").validate({
@@ -58,7 +59,17 @@ $(function(){
<c:forEach items="${regionList}" var="region"> <c:forEach items="${regionList}" var="region">
<c:if test="${_cfg.functionId eq region.functionId}"> <c:if test="${_cfg.functionId eq region.functionId}">
<input type="hidden" name="cfgType" value="${region.configRegionValue}"> <input type="hidden" name="cfgType" value="${region.configRegionValue}">
<input type="hidden" name="cfgRegionCode" value="${region.configRegionCode}"> <input type="hidden" name="cfgRegionCode"
isMaat="${region.isMaat}"
serviceType="${region.configServiceType}"
ipPortShow="${region.configIpPortShow}"
ipType="${region.configIpType}"
ipPattern="${region.configIpPattern}"
portPattern="${region.configPortPattern}"
direction="${region.configDirection}"
protocol="${region.configProtocol}"
regionType="${region.regionType}"
value="${region.configRegionCode}">
</c:if> </c:if>
</c:forEach> </c:forEach>
<div class="form-body"> <div class="form-body">
@@ -83,6 +94,7 @@ $(function(){
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<spring:message code="${service.actionCode }" /> <spring:message code="${service.actionCode }" />

View File

@@ -13,13 +13,14 @@
$(document) $(document)
.ready( .ready(
function() { function() {
$("#cancel").on("click", function() { initCommIpVal();
/* $("#cancel").on("click", function() {
window.history.back(); window.history.back();
}); });
$(".action").on("change", function() { $(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId")); $("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId")); $("#protocolId").val($(this).attr("protocolId"));
}); }); */
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId")); $("#protocolId").val($(".action:checked").attr("protocolId"));
$("#cfgFrom").validate( $("#cfgFrom").validate(
@@ -174,6 +175,7 @@
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">

View File

@@ -4,7 +4,6 @@
<head> <head>
<title></title> <title></title>
<script type="text/javascript"> <script type="text/javascript">
</script> </script>
</head> </head>
<%-- <c:forEach items="${regionList}" var="regionDistrict"> <%-- <c:forEach items="${regionList}" var="regionDistrict">
@@ -12,7 +11,17 @@
test="${ipPort.functionId eq regionDistrict.functionId and regionDistrict.regionType eq 1}"> --%> test="${ipPort.functionId eq regionDistrict.functionId and regionDistrict.regionType eq 1}"> --%>
<!-- regionDistrict.regionType==1表示IP类配置 --> <!-- regionDistrict.regionType==1表示IP类配置 -->
<input type="hidden" name="${cfgName}.cfgType" value="${region.configRegionValue }"> <input type="hidden" name="${cfgName}.cfgType" value="${region.configRegionValue }">
<input type="hidden" name="${cfgName}.cfgRegionCode" value="${region.configRegionCode }"> <input type="hidden" name="${cfgName}.cfgRegionCode"
isMaat="${region.isMaat}"
serviceType="${region.configServiceType}"
ipPortShow="${region.configIpPortShow}"
ipType="${region.configIpType}"
ipPattern="${region.configIpPattern}"
portPattern="${region.configPortPattern}"
direction="${region.configDirection}"
protocol="${region.configProtocol}"
regionType="${region.regionType}"
value="${region.configRegionCode }">
<%-- </c:if> <%-- </c:if>
</c:forEach> --%> </c:forEach> --%>
<input type="hidden" name="${cfgName}.protocolId" id="protocolId" value=""> <input type="hidden" name="${cfgName}.protocolId" id="protocolId" value="">

View File

@@ -13,13 +13,14 @@
$(document) $(document)
.ready( .ready(
function() { function() {
$("#cancel").on("click", function() { initCommIpVal();
/* $("#cancel").on("click", function() {
window.history.back(); window.history.back();
}); });
$(".action").on("change", function() { $(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId")); $("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId")); $("#protocolId").val($(this).attr("protocolId"));
}); }); */
$("#fileInfo").on('click',function(){ $("#fileInfo").on('click',function(){
$("#file").trigger("click"); $("#file").trigger("click");
}); });
@@ -180,6 +181,7 @@
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">

View File

@@ -13,13 +13,14 @@
$(document) $(document)
.ready( .ready(
function() { function() {
$("#cancel").on("click", function() { initCommIpVal();
/* $("#cancel").on("click", function() {
window.history.back(); window.history.back();
}); });
$(".action").on("change", function() { $(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId")); $("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId")); $("#protocolId").val($(this).attr("protocolId"));
}); }); */
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId")); $("#protocolId").val($(".action:checked").attr("protocolId"));
@@ -177,6 +178,7 @@
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">

View File

@@ -13,13 +13,14 @@
$(document) $(document)
.ready( .ready(
function() { function() {
$("#cancel").on("click", function() { initCommIpVal();
window.history.back(); //$("#cancel").on("click", function() {
}); // window.history.back();
$(".action").on("change", function() { //});
$("#serviceId").val($(this).attr("serviceId")); //$(".action").on("change", function() {
$("#protocolId").val($(this).attr("protocolId")); // $("#serviceId").val($(this).attr("serviceId"));
}); // $("#protocolId").val($(this).attr("protocolId"));
//});
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId")); $("#protocolId").val($(".action:checked").attr("protocolId"));
if($("#cfgId").val()!=""){ if($("#cfgId").val()!=""){
@@ -241,6 +242,7 @@
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">

View File

@@ -13,13 +13,14 @@
$(document) $(document)
.ready( .ready(
function() { function() {
$("#cancel").on("click", function() { initCommIpVal();
/* $("#cancel").on("click", function() {
window.history.back(); window.history.back();
}); });
$(".action").on("change", function() { $(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId")); $("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId")); $("#protocolId").val($(this).attr("protocolId"));
}); }); */
$("#serviceId").val($(".action:checked").attr("serviceId")); $("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId")); $("#protocolId").val($(".action:checked").attr("protocolId"));
$("#cfgFrom").validate( $("#cfgFrom").validate(
@@ -174,6 +175,7 @@
<input type="radio" name="action" <input type="radio" name="action"
serviceId="${service.serviceId }" serviceId="${service.serviceId }"
protocolId="${service.protocolId }" protocolId="${service.protocolId }"
regionCode="${service.regionCode }"
value="${service.action }" class="required action" value="${service.action }" class="required action"
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>> <c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict"> <c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">

View File

@@ -6,51 +6,7 @@
<script type="text/javascript"> <script type="text/javascript">
$(function(){ $(function(){
switchIpInfo($("select[name$='ipType']"),"ipType"); switchIpInfo($("select[name$='ipType']"),"ipType");
$("input[name='isAreaEffective']").on('change',function(){ initCommIpVal();
var val=$(this).val();
if(val==1){
$(".areaType").removeClass("hidden");
if($("input[name='areaType']:checked").val()==1){//areaISP
$("#areaIsp").removeClass("hidden");
}else if($("input[name='areaType']:checked").val()==0){//areaIp
$("#areaIp").removeClass("hidden");
}
}else{
$(".areaType").addClass("hidden");
$("#areaIp").addClass("hidden");
$("#areaIsp").addClass("hidden");
}
});
$("input[name='areaType']").on('change',function(){
var val=$(this).val();
if($(this).is(":visible")){
if(val==0){
$("#areaIp").removeClass("hidden");
$("#areaIsp").addClass("hidden");
}else{
$("#areaIsp").removeClass("hidden");
$("#areaIp").addClass("hidden");
}
}else{
$("#areaIsp").addClass("hidden");
$("#areaIp").addClass("hidden");
}
});
$("#cancel").on("click",function(){
window.history.back();
});
$("select[name$='ipType']").on("change",function(){
switchIpInfo(this,"ipType");
});
$("select[name$='ipPattern']").on("change",function(){
switchIpInfo(this,"ipPattern");
});
$("select[name$='portPattern']").on("change",function(){
switchIpInfo(this,"portPattern");
});
$(".action").on("change",function(){
$("#serviceId").val($(this).attr("serviceId"));
});
$("#ipCfgFrom").validate({ $("#ipCfgFrom").validate({
errorPlacement: function(error,element){ errorPlacement: function(error,element){
$(element).parents(".form-group").find("div[for='"+element.attr("name")+"']").append(error); $(element).parents(".form-group").find("div[for='"+element.attr("name")+"']").append(error);
@@ -93,7 +49,8 @@ $(function(){
<input type="hidden" name="isAreaEffective" value="0"> <input type="hidden" name="isAreaEffective" value="0">
<c:if test="${fn:length(serviceList)==1}"> <c:if test="${fn:length(serviceList)==1}">
<c:forEach items="${serviceList}" var="service"> <c:forEach items="${serviceList}" var="service">
<input type="hidden" name="action" value="${service.action }"> <input type="hidden" name="${cfgName}.configServiceType" value="${region.configServiceType}">
<input type="hidden" name="action" protocolId="${service.protocolId}" regionCode="${service.regionCode}" value="${service.action }">
<input type="hidden" id="serviceId" name="serviceId" value="${service.serviceId}"> <input type="hidden" id="serviceId" name="serviceId" value="${service.serviceId}">
</c:forEach> </c:forEach>
</c:if> </c:if>
@@ -104,7 +61,16 @@ $(function(){
<c:forEach items="${regionList}" var="region"> <c:forEach items="${regionList}" var="region">
<c:if test="${_cfg.functionId eq region.functionId}"> <c:if test="${_cfg.functionId eq region.functionId}">
<input type="hidden" name="cfgType" value="${region.configRegionValue}"> <input type="hidden" name="cfgType" value="${region.configRegionValue}">
<input type="hidden" name="cfgRegionCode" value="${region.configRegionCode}"> <input type="hidden" name="cfgRegionCode" isMaat="${region.isMaat}"
serviceType="${region.configServiceType}"
ipPortShow="${region.configIpPortShow}"
ipType="${region.configIpType}"
ipPattern="${region.configIpPattern}"
portPattern="${region.configPortPattern}"
direction="${region.configDirection}"
protocol="${region.configProtocol}"
regionType="${region.regionType}"
value="${region.configRegionCode}">
</c:if> </c:if>
</c:forEach> </c:forEach>
<h3 class="form-section"><spring:message code="block_config"/></h3> <h3 class="form-section"><spring:message code="block_config"/></h3>

View File

@@ -362,12 +362,15 @@ $(function(){
$(".action").on("change", function() { $(".action").on("change", function() {
$("#serviceId").val($(this).attr("serviceId")); $("#serviceId").val($(this).attr("serviceId"));
$("#protocolId").val($(this).attr("protocolId")); $("#protocolId").val($(this).attr("protocolId"));
var actionCode=$(this).val();
var regionCode=$(this).attr("regionCode"); var regionCode=$(this).attr("regionCode");
if(!regionCode){ if(!regionCode){
regionCode=$("input[name='action']").attr("regionCode"); regionCode=$("input[name='action']").attr("regionCode");
} }
if(regionCode){ if(regionCode){
if(regionCode.indexOf(",")==-1){
$("#cfgRegionCode"+regionCode).attr("name","cfgRegionCode");
$("#cfgType"+regionCode).attr("name","cfgType");
$("[id^='cfgRegionCode']").each(function(){ $("[id^='cfgRegionCode']").each(function(){
if($(this).attr("id")==("cfgRegionCode"+regionCode)){ if($(this).attr("id")==("cfgRegionCode"+regionCode)){
$(this).attr("name","cfgRegionCode"); $(this).attr("name","cfgRegionCode");
@@ -382,32 +385,49 @@ $(function(){
$(this).removeAttr("name"); $(this).removeAttr("name");
} }
}); });
var ipPortShow=$("input[name='cfgRegionCode']").attr("ipPortShow"), }else{
ipType=$("input[name='cfgRegionCode']").attr("ipType"), var _region='';
ipPattern=$("input[name='cfgRegionCode']").attr("ipPattern"), var regionArr=regionCode.split(',');
portPattern=$("input[name='cfgRegionCode']").attr("portPattern"), $("input[name$='cfgRegionCode'][regionType='1']").each(function(){
direction=$("input[name='cfgRegionCode']").attr("direction"), for(var re in regionArr){
protocol=$("input[name='cfgRegionCode']").attr("protocol"); if($(this).val()==regionArr[re]){
serviceType=$(this).attr("serviceType");
_region=regionArr[re];
break;
}
}
});
if(_region!=''){
regionCode=_region;
}
}
var ipPortShow=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("ipPortShow"),
ipType=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("ipType"),
ipPattern=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("ipPattern"),
portPattern=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("portPattern"),
direction=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("direction"),
protocol=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("protocol"),
regionType=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("regionType");
//ip端口处理 //ip端口处理
if(ipPortShow){ if(ipPortShow){
if(ipPortShow.indexOf('1')>-1){//展示源IP,端口 if(ipPortShow.indexOf('1')>-1){//展示源IP,端口
$("input[name='srcIpAddress']").parents(".form-group").removeClass("hidden"); $("input[name$='srcIpAddress']").parents(".form-group").removeClass("hidden");
$("input[name='srcPort']").parents(".form-group").removeClass("hidden"); $("input[name$='srcPort']").parents(".form-group").removeClass("hidden");
}else{ }else{
$("input[name='srcIpAddress']").parents(".form-group").addClass("hidden"); $("input[name$='srcIpAddress']").parents(".form-group").addClass("hidden");
$("input[name='srcPort']").parents(".form-group").addClass("hidden"); $("input[name$='srcPort']").parents(".form-group").addClass("hidden");
} }
if(ipPortShow.indexOf('2')>-1){//展示目的IP,端口 if(ipPortShow.indexOf('2')>-1){//展示目的IP,端口
$("input[name='destIpAddress']").parents(".form-group").removeClass("hidden"); $("input[name$='destIpAddress']").parents(".form-group").removeClass("hidden");
$("input[name='destPort']").parents(".form-group").removeClass("hidden"); $("input[name$='destPort']").parents(".form-group").removeClass("hidden");
}else{ }else{
$("input[name='destIpAddress']").parents(".form-group").addClass("hidden"); $("input[name$='destIpAddress']").parents(".form-group").addClass("hidden");
$("input[name='destPort']").parents(".form-group").addClass("hidden"); $("input[name$='destPort']").parents(".form-group").addClass("hidden");
} }
} }
if(ipType){ if(ipType){
var arr=ipType.split(','); var arr=ipType.split(',');
$("select[name='ipType'] option").each(function(){ $("select[name$='ipType'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -422,10 +442,11 @@ $(function(){
$(this).attr("disabled",true); $(this).attr("disabled",true);
} }
}); });
$("select[name$='ipType']").selectpicker("refresh");
} }
if(ipPattern){ if(ipPattern){
arr=ipPattern.split(','); arr=ipPattern.split(',');
$("select[name='ipPattern'] option").each(function(){ $("select[name$='ipPattern'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -440,10 +461,11 @@ $(function(){
$(this).attr("disabled",true); $(this).attr("disabled",true);
} }
}); });
$("select[name$='ipPattern']").selectpicker("refresh");
} }
if(portPattern){ if(portPattern){
arr=portPattern.split(','); arr=portPattern.split(',');
$("select[name='portPattern'] option").each(function(){ $("select[name$='portPattern'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -458,10 +480,11 @@ $(function(){
$(this).attr("disabled",true); $(this).attr("disabled",true);
} }
}); });
$("select[name$='portPattern']").selectpicker("refresh");
} }
if(direction){ if(direction){
arr=direction.split(','); arr=direction.split(',');
$("select[name='direction'] option").each(function(){ $("select[name$='direction'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -476,11 +499,12 @@ $(function(){
$(this).attr("disabled",true); $(this).attr("disabled",true);
} }
}); });
$("select[name$='direction']").selectpicker("refresh");
} }
if(protocol){ if(protocol){
arr=protocol.split(','); arr=protocol.split(',');
$("select[name='protocol'] option").each(function(){ $("select[name$='protocol'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -495,21 +519,19 @@ $(function(){
$(this).attr("disabled",true); $(this).attr("disabled",true);
} }
}); });
$("select[name$='protocol']").selectpicker("refresh");
} }
//处理自定义字段 //处理自定义字段
var serviceType=$("#cfgRegionCode"+regionCode).attr("serviceType"); var serviceType=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("serviceType");
if(serviceType){ if(serviceType){
if(serviceType.indexOf("ipaddr")>-1){ if(serviceType.indexOf("ipaddr")>-1){
if($(this).val()==32){ if($(this).val()==32){
$("select[name='protocol'] option").each(function(){ $("select[name$='protocol'] option[value='1']").removeAttr("disabled")
if($(this).attr("value")==1){ }else{
$(this).removeAttr("disabled"); $("select[name$='protocol'] option[value='1']").attr("disabled",true);
} }
}); $("select[name$='protocol']").selectpicker("refresh");
$("select[name='protocol']").selectpicker("refresh");
}
} }
if(serviceType.indexOf("ipmulitiplex")>-1){ if(serviceType.indexOf("ipmulitiplex")>-1){
$(".ipmulitiplex").removeClass("hidden"); $(".ipmulitiplex").removeClass("hidden");
@@ -526,7 +548,7 @@ $(function(){
$(".ratelimit").addClass("hidden"); $(".ratelimit").addClass("hidden");
} }
if($(this).val()==0x20||$(this).val()==0x60){ if($(this).val()==0x20||$(this).val()==0x60){
$("input[name='isAreaEffective']").each(function(){ $("input[name$='isAreaEffective']").each(function(){
if($(this).val()==0){ if($(this).val()==0){
$(this).click(); $(this).click();
} }
@@ -1362,35 +1384,55 @@ var validateInvisibleCharTag=function(){
return true; return true;
} }
var initCommIpVal=function(){ var initCommIpVal=function(){
var regionCode,serviceType; var regionCode,serviceType,ipPortShow,ipType,
if($("input[name='action']:checked").length>0){ ipPattern,portPattern,direction,protocol,regionType;
regionCode=$("input[name='action']:checked").attr("regionCode"); if($("input[name$='action']:checked").length>0){
serviceType=$("#cfgRegionCode"+regionCode).attr("serviceType"); regionCode=$("input[name$='action']:checked").attr("regionCode");
}else{ }else{
regionCode=$("input[name='action']").attr("regionCode"); regionCode=$("input[name$='action']").attr("regionCode");
serviceType=$("#cfgRegionCode"+regionCode).attr("serviceType"); }
if(regionCode){
if(regionCode.indexOf(",")==-1){
$("#cfgRegionCode"+regionCode).attr("name","cfgRegionCode");
$("#cfgType"+regionCode).attr("name","cfgType");
serviceType=$("input[name$='cfgRegionCode'][regionType='1'][value='"+regionCode+"']").attr("serviceType");
}else{
var _region='';
var regionArr=regionCode.split(',');
$("input[name$='cfgRegionCode'][regionType='1']").each(function(){
for(var re in regionArr){
if($(this).val()==regionArr[re]){
serviceType=$(this).attr("serviceType");
_region=regionArr[re];
break;
}
}
});
if(_region!=''){
regionCode=_region;
}
}
} }
if(serviceType){ if(serviceType){
if(serviceType.indexOf("ipaddr")>-1&&$("input[name='action']:checked").val()==32){ if(serviceType.indexOf("ipaddr")>-1&&$("input[name$='action']:checked").val()==32){
$("select[name='protocol'] option").each(function(){ $("select[name$='protocol'] option").each(function(){
if($(this).attr("value")==1){ if($(this).attr("value")==1){
$(this).removeAttr("disabled"); $(this).removeAttr("disabled");
} }
}); });
$("select[name='protocol']").selectpicker("refresh"); $("select[name$='protocol']").selectpicker("refresh");
} }
if(serviceType&&serviceType.indexOf("ipaddr")>-1&&$("input[name='action']").val()==32){ if(serviceType&&serviceType.indexOf("ipaddr")>-1&&$("input[name$='action']").val()==32){
$("select[name='protocol'] option").each(function(){ $("select[name$='protocol'] option").each(function(){
if($(this).attr("value")==1){ if($(this).attr("value")==1){
$(this).removeAttr("disabled"); $(this).removeAttr("disabled");
} }
}); });
$("select[name='protocol']").selectpicker("refresh"); $("select[name$='protocol']").selectpicker("refresh");
} }
if(serviceType.indexOf("ipmulitiplex")>-1){ if(serviceType.indexOf("ipmulitiplex")>-1){
$(".ipmulitiplex").removeClass("hidden"); $(".ipmulitiplex").removeClass("hidden");
$("input[name='isAreaEffective']").each(function(){ $("input[name$='isAreaEffective']").each(function(){
if($(this).val()==0){ if($(this).val()==0){
$(this).click(); $(this).click();
} }
@@ -1401,7 +1443,7 @@ var initCommIpVal=function(){
$(".ipmulitiplex").addClass("hidden"); $(".ipmulitiplex").addClass("hidden");
} }
if(serviceType.indexOf("ratelimit")>-1){ if(serviceType.indexOf("ratelimit")>-1){
if($("input[name='action']").val()==64||$("input[name='action']:checked").val()==64){ if($("input[name$='action']").val()==64||$("input[name$='action']:checked").val()==64){
$(".ratelimit").removeClass("hidden"); $(".ratelimit").removeClass("hidden");
}else{ }else{
$(".ratelimit").addClass("hidden"); $(".ratelimit").addClass("hidden");
@@ -1410,41 +1452,33 @@ var initCommIpVal=function(){
$(".ratelimit").addClass("hidden"); $(".ratelimit").addClass("hidden");
} }
} }
$("#cfgRegionCode"+regionCode).attr("name","cfgRegionCode"); ipPortShow=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("ipPortShow"),
$("#cfgType"+regionCode).attr("name","cfgType"); ipType=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("ipType"),
$("div[class^='region']").each(function(){ ipPattern=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("ipPattern"),
if(!$(this).hasClass("region"+regionCode)){ portPattern=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("portPattern"),
$(this).addClass("hidden"); direction=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("direction"),
$(this).find("input").removeAttr("name"); protocol=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("protocol"),
$(this).find("select").removeAttr("name"); regionType=$("input[name$='cfgRegionCode'][value='"+regionCode+"']").attr("regionType");
}
})
var ipPortShow=$("input[name='cfgRegionCode']").attr("ipPortShow"),
ipType=$("input[name='cfgRegionCode']").attr("ipType"),
ipPattern=$("input[name='cfgRegionCode']").attr("ipPattern"),
portPattern=$("input[name='cfgRegionCode']").attr("portPattern"),
direction=$("input[name='cfgRegionCode']").attr("direction"),
protocol=$("input[name='cfgRegionCode']").attr("protocol");
//ip端口处理 //ip端口处理
if(ipPortShow){ if(ipPortShow){
if(ipPortShow.indexOf('1')>-1){//展示源IP,端口 if(ipPortShow.indexOf('1')>-1){//展示源IP,端口
$("input[name='srcIpAddress']").parents(".form-group").removeClass("hidden"); $("input[name$='srcIpAddress']").parents(".form-group").removeClass("hidden");
$("input[name='srcPort']").parents(".form-group").removeClass("hidden"); $("input[name$='srcPort']").parents(".form-group").removeClass("hidden");
}else{ }else{
$("input[name='srcIpAddress']").parents(".form-group").addClass("hidden"); $("input[name$='srcIpAddress']").parents(".form-group").addClass("hidden");
$("input[name='srcPort']").parents(".form-group").addClass("hidden"); $("input[name$='srcPort']").parents(".form-group").addClass("hidden");
} }
if(ipPortShow.indexOf('2')>-1){//展示目的IP,端口 if(ipPortShow.indexOf('2')>-1){//展示目的IP,端口
$("input[name='destIpAddress']").parents(".form-group").removeClass("hidden"); $("input[name$='destIpAddress']").parents(".form-group").removeClass("hidden");
$("input[name='destPort']").parents(".form-group").removeClass("hidden"); $("input[name$='destPort']").parents(".form-group").removeClass("hidden");
}else{ }else{
$("input[name='destIpAddress']").parents(".form-group").addClass("hidden"); $("input[name$='destIpAddress']").parents(".form-group").addClass("hidden");
$("input[name='destPort']").parents(".form-group").addClass("hidden"); $("input[name$='destPort']").parents(".form-group").addClass("hidden");
} }
} }
if(ipType){ if(ipType){
var arr=ipType.split(','); var arr=ipType.split(',');
$("select[name='ipType'] option").each(function(){ $("select[name$='ipType'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -1462,7 +1496,7 @@ var initCommIpVal=function(){
} }
if(ipPattern){ if(ipPattern){
arr=ipPattern.split(','); arr=ipPattern.split(',');
$("select[name='ipPattern'] option").each(function(){ $("select[name$='ipPattern'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -1480,7 +1514,7 @@ var initCommIpVal=function(){
} }
if(portPattern){ if(portPattern){
arr=portPattern.split(','); arr=portPattern.split(',');
$("select[name='portPattern'] option").each(function(){ $("select[name$='portPattern'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -1498,7 +1532,7 @@ var initCommIpVal=function(){
} }
if(direction){ if(direction){
arr=direction.split(','); arr=direction.split(',');
$("select[name='direction'] option").each(function(){ $("select[name$='direction'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){
@@ -1516,7 +1550,7 @@ var initCommIpVal=function(){
} }
if(protocol){ if(protocol){
arr=protocol.split(','); arr=protocol.split(',');
$("select[name='protocol'] option").each(function(){ $("select[name$='protocol'] option").each(function(){
var has=false; var has=false;
for(var type in arr){ for(var type in arr){
if($(this).val()==arr[type]){ if($(this).val()==arr[type]){