summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwangxin <[email protected]>2019-07-10 17:03:11 +0800
committerwangxin <[email protected]>2019-07-10 17:03:11 +0800
commitef04251ef1e1c8ba2efce95e1fbf32b093567f4a (patch)
treed065189dcfeb018989014607bc49ce203f512ef2
parent377cca923cbee0d35633f3ceb432db376bef7504 (diff)
(1)doLog切换改为和service id相同界面的doLog切换一致
(2)serviceId设置改为在jsp页面进行 (3)fns.tld调整错误的函数返回值
-rw-r--r--src/main/java/com/nis/util/DictUtils.java21
-rw-r--r--src/main/java/com/nis/web/controller/configuration/ObjectGroupController.java1
-rw-r--r--src/main/java/com/nis/web/service/configuration/ObjectGroupService.java144
-rw-r--r--src/main/webapp/WEB-INF/tlds/fns.tld28
-rw-r--r--src/main/webapp/WEB-INF/views/cfg/objgroup/form.jsp125
-rw-r--r--src/main/webapp/static/global/scripts/doLog.js6
6 files changed, 191 insertions, 134 deletions
diff --git a/src/main/java/com/nis/util/DictUtils.java b/src/main/java/com/nis/util/DictUtils.java
index ea6765544..84cec22d9 100644
--- a/src/main/java/com/nis/util/DictUtils.java
+++ b/src/main/java/com/nis/util/DictUtils.java
@@ -437,5 +437,24 @@ public class DictUtils {
}
return null;
}*/
-
+ public static Map<Integer,Object> getObjGroupListServiceDicts(Integer functionId){
+ Map<Integer,Object> dictMap=new HashMap<>();
+ List<Map<String,Object>> templateList= ServiceConfigTemplateUtil.getServiceListByFunctionId(functionId);
+ StringBuffer buf=new StringBuffer();
+ for(Map<String,Object> temp:templateList){
+ if(temp.containsKey("serviceIds")){
+ String serviceIds= temp.get("serviceIds").toString();
+ buf.append(serviceIds).append(",");
+ }
+ }
+ List<FunctionServiceDict> serviceDicts=getFunctionServiceDictList();
+ for(FunctionServiceDict dict:serviceDicts){
+ for(String serviceId:buf.toString().split(",")){
+ if(StringUtils.isNotBlank(serviceId)&&dict.getServiceId().toString().equals(serviceId)){
+ dictMap.put(Integer.parseInt(serviceId),dict);
+ }
+ }
+ }
+ return dictMap;
+ }
}
diff --git a/src/main/java/com/nis/web/controller/configuration/ObjectGroupController.java b/src/main/java/com/nis/web/controller/configuration/ObjectGroupController.java
index e97b84b3d..cbdc22ff3 100644
--- a/src/main/java/com/nis/web/controller/configuration/ObjectGroupController.java
+++ b/src/main/java/com/nis/web/controller/configuration/ObjectGroupController.java
@@ -2,6 +2,7 @@ package com.nis.web.controller.configuration;
+import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.configuration.BaseCfg;
diff --git a/src/main/java/com/nis/web/service/configuration/ObjectGroupService.java b/src/main/java/com/nis/web/service/configuration/ObjectGroupService.java
index be5803f49..2980785f2 100644
--- a/src/main/java/com/nis/web/service/configuration/ObjectGroupService.java
+++ b/src/main/java/com/nis/web/service/configuration/ObjectGroupService.java
@@ -92,78 +92,78 @@ public class ObjectGroupService extends BaseService {
}
entity.setIsValid(0);
entity.setIsAudit(0);
- //设置service_id
- if("HTTPS".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(592);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(576);
- }
- }else if("INTERCEPT".equalsIgnoreCase(protocolType)){
- entity.setServiceId(512);
- }else if("HTTP".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(129);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(17);
- }
- }else if("MAIL".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(132);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(20);
- }
- }else if("DNS".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(130);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(18);
- }
- }else if("FTP".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(133);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(21);
- }
- }else if("BGP".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(143);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(31);
- }
- }else if("SSL".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(131);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(19);
- }
- }else if("P2P".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(146);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(34);
- }
- }else if("streaming_media".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(151);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(39);
- }
- }else if("voip".equalsIgnoreCase(protocolType)){
- if(entity.getAction().equals(1)){
- entity.setServiceId(150);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(38);
- }
- }else if(StringUtils.isBlank(protocolType)){
- if(MapUtils.isNotEmpty(entity.getUserRegion())&&entity.getUserRegion().containsKey("ipGroup")){
- if(entity.getAction().equals(1)){
- entity.setServiceId(128);
- }else if(entity.getAction().equals(16)){
- entity.setServiceId(16);
- }
- }
- }
+ //设置service_id 改为从jsp页面获取
+// if("HTTPS".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(592);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(576);
+// }
+// }else if("INTERCEPT".equalsIgnoreCase(protocolType)){
+// entity.setServiceId(512);
+// }else if("HTTP".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(129);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(17);
+// }
+// }else if("MAIL".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(132);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(20);
+// }
+// }else if("DNS".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(130);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(18);
+// }
+// }else if("FTP".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(133);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(21);
+// }
+// }else if("BGP".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(143);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(31);
+// }
+// }else if("SSL".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(131);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(19);
+// }
+// }else if("P2P".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(146);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(34);
+// }
+// }else if("streaming_media".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(151);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(39);
+// }
+// }else if("voip".equalsIgnoreCase(protocolType)){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(150);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(38);
+// }
+// }else if(StringUtils.isBlank(protocolType)){
+// if(MapUtils.isNotEmpty(entity.getUserRegion())&&entity.getUserRegion().containsKey("ipGroup")){
+// if(entity.getAction().equals(1)){
+// entity.setServiceId(128);
+// }else if(entity.getAction().equals(16)){
+// entity.setServiceId(16);
+// }
+// }
+// }
if(entity.getCfgId()==null){
Integer compileId = 0;
try {
diff --git a/src/main/webapp/WEB-INF/tlds/fns.tld b/src/main/webapp/WEB-INF/tlds/fns.tld
index 0fb8f26b0..a399c0002 100644
--- a/src/main/webapp/WEB-INF/tlds/fns.tld
+++ b/src/main/webapp/WEB-INF/tlds/fns.tld
@@ -148,7 +148,7 @@
<example>${fns:unescapeHtml(html)}</example>
</function>
- <!-- ProcessUtil -->
+ <!-- ProcessUtil wx:ProcessUtil 不存在
<function>
<description>根据案件状态获取标签颜色样式</description>
<name>getCaseStateColor</name>
@@ -162,7 +162,7 @@
<function-class>com.nis.util.ProcessUtil</function-class>
<function-signature>java.lang.String isAlarmDesc(int)</function-signature>
<example>${fns:isAlarmDesc(caseState)}</example>
- </function>
+ </function>-->
<!-- StringUtils -->
<function>
@@ -244,7 +244,7 @@
<description>获取字典Map列表</description>
<name>getDictOption</name>
<function-class>com.nis.util.DictUtils</function-class>
- <function-signature>java.util.List getDictOption(java.lang.String)</function-signature>
+ <function-signature>java.util.Map getDictOption(java.lang.String)</function-signature>
<example>${fns:getDictOption(key)}</example>
</function>
@@ -300,7 +300,7 @@
<description>获取特征域字典对象列表</description>
<name>getFeaturesDictData</name>
<function-class>com.nis.util.DictUtils</function-class>
- <function-signature>java.lang.String getFeaturesDictData(java.lang.String)</function-signature>
+ <function-signature>java.util.List getFeaturesDictData(java.lang.String)</function-signature>
<example>${fns:getFeaturesDictData(itemCode)}</example>
</function>
@@ -333,7 +333,7 @@
<description>根据id获取服务字典配置</description>
<name>getServiceDictInfoById</name>
<function-class>com.nis.util.ConfigDictUtils</function-class>
- <function-signature>java.lang.String getServiceDictInfoById(java.lang.Integer)</function-signature>
+ <function-signature>com.nis.domain.basics.ServiceDictInfo getServiceDictInfoById(java.lang.Integer)</function-signature>
<example>${fns:getServiceDictInfoById(id)}</example>
</function>
@@ -341,7 +341,7 @@
<description>根据id获取系统字典配置</description>
<name>getSysDictInfoById</name>
<function-class>com.nis.util.ConfigDictUtils</function-class>
- <function-signature>java.lang.String getSysDictInfoById(java.lang.Integer)</function-signature>
+ <function-signature>com.nis.domain.basics.SysDictInfo getSysDictInfoById(java.lang.Integer)</function-signature>
<example>${fns:getSysDictInfoById(id)}</example>
</function>
@@ -349,7 +349,7 @@
<description>根据id获取特定服务配置</description>
<name>getBySpecServiceId</name>
<function-class>com.nis.util.ConfigDictUtils</function-class>
- <function-signature>java.lang.String getBySpecServiceId(java.lang.Integer)</function-signature>
+ <function-signature>com.nis.domain.specific.SpecificServiceCfg getBySpecServiceId(java.lang.Integer)</function-signature>
<example>${fns:getBySpecServiceId(id)}</example>
</function>
@@ -358,7 +358,7 @@
<description>计算序号</description>
<name>getNumberResult</name>
<function-class>com.nis.util.ConfigDictUtils</function-class>
- <function-signature>java.lang.String getNumberResult(java.lang.Integer,java.lang.Integer,java.lang.Integer)</function-signature>
+ <function-signature>java.lang.Integer getNumberResult(java.lang.Integer,java.lang.Integer,java.lang.Integer)</function-signature>
<example>${fns:getNumberResult(integer1,integer2,integer3)}</example>
</function>
@@ -368,7 +368,7 @@
<description>取出数据类型</description>
<name>getItemTypeByNo</name>
<function-class>com.nis.util.ConfigDictUtils</function-class>
- <function-signature>java.lang.String getItemTypeByNo(java.lang.String,java.util.List)</function-signature>
+ <function-signature>java.util.List getItemTypeByNo(java.lang.String,java.util.List)</function-signature>
<example>${fns:getItemTypeByNo(str1,list)}</example>
</function>
@@ -410,7 +410,7 @@
<description>根据compileId获取crl</description>
<name>getTrustedCrlByCerId</name>
<function-class>com.nis.util.ConfigDictUtils</function-class>
- <function-signature>java.util.List getTrustedCrlByCerId(java.lang.Integer)</function-signature>
+ <function-signature>java.lang.String getTrustedCrlByCerId(java.lang.Integer)</function-signature>
<example>${fns:getTrustedCrlByCerId(cerId)}</example>
</function>
<!-- 根据表名取出运营商ISP标签集合 -->
@@ -429,4 +429,12 @@
<function-signature>java.util.List getASNIPNum(java.lang.Integer)</function-signature>
<example>${fns:getASNIPNum(str)}</example>
</function>
+ <!--策略对象获取当前页面相关serviceDict-->
+ <function>
+ <description>获取字典对象列表</description>
+ <name>getObjGroupListServiceDicts</name>
+ <function-class>com.nis.util.DictUtils</function-class>
+ <function-signature>java.util.Map getObjGroupListServiceDicts(java.lang.Integer)</function-signature>
+ <example>${fns:getObjGroupListServiceDicts(key)}</example>
+ </function>
</taglib>
diff --git a/src/main/webapp/WEB-INF/views/cfg/objgroup/form.jsp b/src/main/webapp/WEB-INF/views/cfg/objgroup/form.jsp
index b54c4e4ed..da6794e81 100644
--- a/src/main/webapp/WEB-INF/views/cfg/objgroup/form.jsp
+++ b/src/main/webapp/WEB-INF/views/cfg/objgroup/form.jsp
@@ -13,27 +13,11 @@ $(function(){
if('${_cfg.action}'!=1 && '${_cfg.action}'!=""){
$("[name='userRegion1'] option[value=intercept]").addClass("hidden").addClass("disabled");
$(".domainGroup").addClass("hidden").addClass("disabled");
- //处理do_log
- $("[name='doLog']").each(function () {
- if($(this).val()==0){
- $(this).parent(".radio-inline").removeClass("hidden");
- }
- })
- }else{
- //处理do_log
- $("[name='doLog']").each(function () {
- if($(this).val()==0){
- $(this).parent(".radio-inline").addClass("hidden");
- }
- })
- }
+ }else{}
if('${_cfg.userRegion1}'=='intercept'){
$(".domainGroup").removeClass("hidden").removeClass("disabled");
$(".urlGroup").addClass("hidden").addClass("disabled");
$(".subscribeIdGroup").addClass("hidden").addClass("disabled");
- //处理do_log
- $(".doLog").addClass("hidden");
- $("[name='doLog']").find("[value=2]").prop("checked",true);
}else if('${_cfg.userRegion1}'=='https'||'${_cfg.userRegion1}'=='http'||'${_cfg.userRegion1}'=='ftp'||'${_cfg.userRegion1}'=='streaming_media'){
$(".domainGroup").addClass("hidden").addClass("disabled");
$(".subscribeIdGroup").removeClass("hidden").removeClass("disabled");
@@ -47,14 +31,18 @@ $(function(){
$(".subscribeIdGroup").removeClass("hidden").removeClass("disabled");
$(".urlGroup").addClass("hidden").addClass("disabled");
}
-
+ changeServiceId();
+ var serviceId=$("[name='serviceId']").val();
+ var configDoLog=$("#serviceId_"+serviceId).attr("configDoLog");
+ processDoLog(configDoLog);
$(".action").on("change", function() {
- $("#serviceId").val($(this).attr("serviceId"));
+ //$("#serviceId").val($(this).attr("serviceId"));
+ changeServiceId();
$("#protocolId").val($(this).attr("protocolId"));
var action=$("input[name='action']:checked").val();
switchAction(action);
- processDoLog($(this).attr("configDoLog"));
+
//处理页面协议
if($(this).val()!="1"){
if($("[name='userRegion1']").val()=="intercept"){//拦截隐藏
@@ -67,62 +55,41 @@ $(function(){
$("[name='userRegion1'] option[value=intercept]").removeClass("hidden").removeClass("disabled");
if($("[name='userRegion1']").val()=="intercept"){
$(".domainGroup").removeClass("hidden").removeClass("disabled");
- //处理do_log
- $(".doLog").addClass("hidden");
- $("[name='doLog']").each(function () {
- if($(this).val()==2){
- $(this).prop("checked",true);
- }else{
- $(this).removeAttr("checked");
- }
- })
}else{
$(".domainGroup").addClass("hidden").addClass("disabled");
- //处理do_log
- $(".doLog").removeClass("hidden");
}
}
$("[name='userRegion1']").selectpicker("refresh");
+ var serviceId=$("[name='serviceId']").val();
+ var configDoLog=$("#serviceId_"+serviceId).attr("configDoLog");
+ processDoLog(configDoLog);
});
$("[name='userRegion1']").on("change",function () {
if("intercept"==$(this).val()){
$(".urlGroup").addClass("hidden").addClass("disabled");
$(".subscribeIdGroup").addClass("hidden").addClass("disabled");
$(".domainGroup").removeClass("hidden").removeClass("disabled");
- //处理do_log
- $(".doLog").addClass("hidden");
- $("[name='doLog']").each(function () {
- if($(this).val()==2){
- $(this).prop("checked",true);
- }else{
- $(this).removeAttr("checked");
- }
- })
}else if("https"==$(this).val()||"http"==$(this).val()||"ftp"==$(this).val()||"streaming_media"==$(this).val()){
$(".urlGroup").removeClass("hidden").removeClass("disabled");
$(".subscribeIdGroup").removeClass("hidden").removeClass("disabled");
$(".domainGroup").addClass("hidden").addClass("disabled");
- //处理do_log
- $(".doLog").removeClass("hidden");
}else if(""==$(this).val()||"bgp"==$(this).val()){
$(".urlGroup").addClass("hidden").addClass("disabled");
$(".subscribeIdGroup").addClass("hidden").addClass("disabled");
$(".domainGroup").addClass("hidden").addClass("disabled");
- //处理do_log
- $(".doLog").removeClass("hidden");
}else if("mail"==$(this).val()||"dns"==$(this).val()||"ssl"==$(this).val()||"p2p"==$(this).val()||"voip"==$(this).val()){
$(".urlGroup").addClass("hidden").addClass("disabled");
$(".subscribeIdGroup").removeClass("hidden").removeClass("disabled");
$(".domainGroup").addClass("hidden").addClass("disabled");
- //处理do_log
- $(".doLog").removeClass("hidden");
}else{
$(".urlGroup").removeClass("hidden").removeClass("disabled");
$(".subscribeIdGroup").removeClass("hidden").removeClass("disabled");
$(".domainGroup").removeClass("hidden").removeClass("disabled");
- //处理do_log
- $(".doLog").removeClass("hidden");
}
+ changeServiceId();
+ var serviceId=$("[name='serviceId']").val();
+ var configDoLog=$("#serviceId_"+serviceId).attr("configDoLog");
+ processDoLog(configDoLog);
})
$("#serviceId").val($(".action:checked").attr("serviceId"));
$("#protocolId").val($(".action:checked").attr("protocolId"));
@@ -225,7 +192,64 @@ var delContent = function(contentClassName, addBtnClassName) {
$("." + contentClassName).addClass("hidden").addClass("disabled");
$("." + addBtnClassName).removeClass("hidden");
}
+var changeServiceId=function () {
+ var action=$("[name='action']:checked").val();
+ var protocolType=$("[name='userRegion1']").val();
+ if(1==action){
+ //512,592,128,129,130,131,132,133,143,146,150,151
+ if(""==protocolType){
+ $("#serviceId").val(128);
+ }else if("https"==protocolType){
+ $("#serviceId").val(592);
+ }else if("http"==protocolType){
+ $("#serviceId").val(129);
+ }else if("mail"==protocolType){
+ $("#serviceId").val(132);
+ }else if("dns"==protocolType){
+ $("#serviceId").val(130);
+ }else if("ftp"==protocolType){
+ $("#serviceId").val(133);
+ }else if("bgp"==protocolType){
+ $("#serviceId").val(143);
+ }else if("ssl"==protocolType){
+ $("#serviceId").val(131);
+ }else if("p2p"==protocolType){
+ $("#serviceId").val(146);
+ }else if("streaming_media"==protocolType){
+ $("#serviceId").val(151);
+ }else if("voip"==protocolType){
+ $("#serviceId").val(150);
+ }else if("intercept"==protocolType){
+ $("#serviceId").val(512);
+ }
+ }else if(16==action){
+ //576,16,17,18,19,20,21,31,34,38,39
+ if(""==protocolType){
+ $("#serviceId").val(16);
+ }else if("https"==protocolType){
+ $("#serviceId").val(576);
+ }else if("http"==protocolType){
+ $("#serviceId").val(17);
+ }else if("mail"==protocolType){
+ $("#serviceId").val(20);
+ }else if("dns"==protocolType){
+ $("#serviceId").val(18);
+ }else if("ftp"==protocolType){
+ $("#serviceId").val(21);
+ }else if("bgp"==protocolType){
+ $("#serviceId").val(31);
+ }else if("ssl"==protocolType){
+ $("#serviceId").val(19);
+ }else if("p2p"==protocolType){
+ $("#serviceId").val(34);
+ }else if("streaming_media"==protocolType){
+ $("#serviceId").val(39);
+ }else if("voip"==protocolType){
+ $("#serviceId").val(38);
+ }
+ }
+}
</script>
</head>
<body>
@@ -254,7 +278,10 @@ var delContent = function(contentClassName, addBtnClassName) {
<input type="hidden" name="isValid" value="${_cfg.isValid}">
<input type="hidden" name="isAudit" value="${_cfg.isAudit}">
<input type="hidden" id="serviceId" name="serviceId" value="${_cfg.serviceId}">
- <input type="hidden" id="commonGroupIds" name="commonGroupIds" value='${_cfg.commonGroupIds}'>
+ <input type="hidden" id="commonGroupIds" name="commonGroupIds" value='${_cfg.commonGroupIds}'>
+ <c:forEach items="${fns:getObjGroupListServiceDicts(_cfg.functionId)}" var="entry" varStatus="status">
+ <input type="hidden" id="${'serviceId_'.concat(entry.key)}" value="${entry.key}" configDoLog="${entry.value['configDoLog']}">
+ </c:forEach>
<%--<input type="hidden" id="exprType" name="exprType" value="0">
<input type="hidden" id="matchMethod" name="matchMethod" value="0">
<input type="hidden" id="isHexbin" name="isHexbin" value="0">--%>
diff --git a/src/main/webapp/static/global/scripts/doLog.js b/src/main/webapp/static/global/scripts/doLog.js
index 6a78427d9..496b3ac30 100644
--- a/src/main/webapp/static/global/scripts/doLog.js
+++ b/src/main/webapp/static/global/scripts/doLog.js
@@ -10,8 +10,10 @@ $(function(){
processDoLog(doLog);
}
$(".action").on("change",function(){
- var _doLog=$(this).attr("configDoLog");
- if(_doLog&&_doLog!=""){
+ var _doLog=$(this).attr("configDoLog");
+ var functionId=$("[name='functionId']").val();
+ //888为策略对象策略,比较特殊
+ if(_doLog&&_doLog!=""&&888!=functionId){
processDoLog(_doLog);
}
});