diff --git a/src/main/java/com/nis/domain/basics/AsnGroupInfo.java b/src/main/java/com/nis/domain/basics/AsnGroupInfo.java index f76c5e316..5cd534325 100644 --- a/src/main/java/com/nis/domain/basics/AsnGroupInfo.java +++ b/src/main/java/com/nis/domain/basics/AsnGroupInfo.java @@ -30,8 +30,16 @@ public class AsnGroupInfo extends BaseCfg implements Serializable{ @ExcelField(title="ASN",sort=305) private Long asnId; + private Integer isUsed; + private Integer regionId; - + + public Integer getIsUsed() { + return isUsed; + } + public void setIsUsed(Integer isUsed) { + this.isUsed = isUsed; + } public Long getIssuedIPs() { return issuedIPs; } @@ -127,6 +135,14 @@ public class AsnGroupInfo extends BaseCfg implements Serializable{ public void setAsnId(Long asnId) { this.asnId = asnId; } + + + public Integer getRegionId() { + return regionId; + } + public void setRegionId(Integer regionId) { + this.regionId = regionId; + } @Override public String toString() { diff --git a/src/main/java/com/nis/domain/basics/AsnIpCfg.java b/src/main/java/com/nis/domain/basics/AsnIpCfg.java index 9e6a2324b..9517669d0 100644 --- a/src/main/java/com/nis/domain/basics/AsnIpCfg.java +++ b/src/main/java/com/nis/domain/basics/AsnIpCfg.java @@ -17,13 +17,13 @@ public class AsnIpCfg extends BaseCfg { @Expose private String ratelimit; @Expose - @ExcelField(title="ip_type",dictType="IP_TYPE",sort=3) + @ExcelField(title="ip_type",dictType="IP_TYPE",sort=6) @SerializedName("ipType") private Integer ipType; - @ExcelField(title="ip_pattern",dictType="IP_PATTERN",sort=6) + @ExcelField(title="ip_pattern",dictType="IP_PATTERN",sort=8) private Integer ipPattern; private String srcIpAddress; - @ExcelField(title="server_ip",sort=5) + @ExcelField(title="ip",sort=7) private String destIpAddress; private Integer portPattern; private String srcPort; @@ -45,11 +45,11 @@ public class AsnIpCfg extends BaseCfg { private Integer protocol ; private Integer protocolId; - @ExcelField(title="organization",sort=91) + @ExcelField(title="organization",sort=2) private String organization; - @ExcelField(title="country",sort=92) + @ExcelField(title="country",sort=3) private String country; - @ExcelField(title="detail",sort=93) + @ExcelField(title="detail",sort=3) private String detail; private String userregion1; diff --git a/src/main/java/com/nis/domain/configuration/AppComplexFeatureCfg.java b/src/main/java/com/nis/domain/configuration/AppComplexFeatureCfg.java index 779681480..230713804 100644 --- a/src/main/java/com/nis/domain/configuration/AppComplexFeatureCfg.java +++ b/src/main/java/com/nis/domain/configuration/AppComplexFeatureCfg.java @@ -55,6 +55,11 @@ public class AppComplexFeatureCfg extends BaseCfg { private String icmpCode; private String icmpIdentifier; private String headerType; + //以下参数为APP payload payload的特殊属性(偏移量表达式时处理) + private Integer payloadOffset; + private Integer payloadSize;//下发综合服务接口时,为单独的域配置 + private String payloadPacketDirection;//下发综合服务接口时,为单独的域配置 + public String getCfgRegionCode1() { return cfgRegionCode1; @@ -299,5 +304,28 @@ public class AppComplexFeatureCfg extends BaseCfg { this.headerType = headerType; } + public Integer getPayloadOffset() { + return payloadOffset; + } + + public void setPayloadOffset(Integer payloadOffset) { + this.payloadOffset = payloadOffset; + } + + public Integer getPayloadSize() { + return payloadSize; + } + + public void setPayloadSize(Integer payloadSize) { + this.payloadSize = payloadSize; + } + + public String getPayloadPacketDirection() { + return payloadPacketDirection; + } + + public void setPayloadPacketDirection(String payloadPacketDirection) { + this.payloadPacketDirection = payloadPacketDirection; + } } diff --git a/src/main/java/com/nis/domain/configuration/AppFeatureIndex.java b/src/main/java/com/nis/domain/configuration/AppFeatureIndex.java index 45ef53501..32c5a2b06 100644 --- a/src/main/java/com/nis/domain/configuration/AppFeatureIndex.java +++ b/src/main/java/com/nis/domain/configuration/AppFeatureIndex.java @@ -46,6 +46,12 @@ public class AppFeatureIndex extends BaseCfg { private String cfgRegionType; private String cfgRegionValue; private String cfgRegionCode1; + private Integer isDrop;// + private Integer isLoop; + private Integer dropTime;//drop持续时间,默认180s,0-1800s + private Integer loopTime;//loop持续时间,默认180s,0-1800s + private Integer isRelation; + private Integer relationTime;//关联持续时间,默认10s,0-180s public static String getTablename() { return tableName; } @@ -133,5 +139,59 @@ public class AppFeatureIndex extends BaseCfg { public void setNumCfgList(List numCfgList) { this.numCfgList = numCfgList; } + public Integer getExprType() { + return exprType; + } + public void setExprType(Integer exprType) { + this.exprType = exprType; + } + public Integer getMatchMethod() { + return matchMethod; + } + public void setMatchMethod(Integer matchMethod) { + this.matchMethod = matchMethod; + } + public Integer getIsHexbin() { + return isHexbin; + } + public void setIsHexbin(Integer isHexbin) { + this.isHexbin = isHexbin; + } + public Integer getIsDrop() { + return isDrop; + } + public void setIsDrop(Integer isDrop) { + this.isDrop = isDrop; + } + public Integer getIsLoop() { + return isLoop; + } + public void setIsLoop(Integer isLoop) { + this.isLoop = isLoop; + } + public Integer getDropTime() { + return dropTime; + } + public void setDropTime(Integer dropTime) { + this.dropTime = dropTime; + } + public Integer getLoopTime() { + return loopTime; + } + public void setLoopTime(Integer loopTime) { + this.loopTime = loopTime; + } + public Integer getIsRelation() { + return isRelation; + } + public void setIsRelation(Integer isRelation) { + this.isRelation = isRelation; + } + public Integer getRelationTime() { + return relationTime; + } + public void setRelationTime(Integer relationTime) { + this.relationTime = relationTime; + } } diff --git a/src/main/java/com/nis/domain/configuration/AppPolicyCfg.java b/src/main/java/com/nis/domain/configuration/AppPolicyCfg.java index a29846ae2..ea261c737 100644 --- a/src/main/java/com/nis/domain/configuration/AppPolicyCfg.java +++ b/src/main/java/com/nis/domain/configuration/AppPolicyCfg.java @@ -53,6 +53,7 @@ public class AppPolicyCfg extends BaseCfg { private String userRegion5; private String configType; + @ExcelField(title="encrypted_tunnel_behavior",sort=5) private String behaviorName; @ExcelField(title="social_app",sort=5) @@ -108,6 +109,9 @@ public class AppPolicyCfg extends BaseCfg { @SerializedName("isHexbin") private Integer isHexbin; + @ExcelField(title="log_total",sort=31) + private Long totalLogs; + private List ipPortList; private IpPortCfg ipPort; private NtcSubscribeIdCfg ntcSubscribeIdCfg; @@ -278,5 +282,13 @@ public class AppPolicyCfg extends BaseCfg { public void setIndexTable(String indexTable) { this.indexTable = indexTable; } + + public Long getTotalLogs() { + return totalLogs; + } + + public void setTotalLogs(Long totalLogs) { + this.totalLogs = totalLogs; + } } diff --git a/src/main/java/com/nis/domain/configuration/AvFileSampleCfg.java b/src/main/java/com/nis/domain/configuration/AvFileSampleCfg.java index 1ae4d318c..82d74658d 100644 --- a/src/main/java/com/nis/domain/configuration/AvFileSampleCfg.java +++ b/src/main/java/com/nis/domain/configuration/AvFileSampleCfg.java @@ -28,13 +28,23 @@ public class AvFileSampleCfg extends BaseCfg { @ExcelField(title="harm_level",sort=21) private Integer level; @Expose + @ExcelField(title="cfg_id",sort=0) @SerializedName("cfgId") private Integer compileId; private String srcPath; private String samplePath; private Integer isSampleCreated; private String resultPath; - + @ExcelField(title="log_total",sort=40) + private Long totalLogs; + + + public Long getTotalLogs() { + return totalLogs; + } + public void setTotalLogs(Long totalLogs) { + this.totalLogs = totalLogs; + } public String getSrcPath() { return srcPath; } diff --git a/src/main/java/com/nis/domain/configuration/BaseIpCfg.java b/src/main/java/com/nis/domain/configuration/BaseIpCfg.java index 520b91f31..1f9c56baf 100644 --- a/src/main/java/com/nis/domain/configuration/BaseIpCfg.java +++ b/src/main/java/com/nis/domain/configuration/BaseIpCfg.java @@ -75,10 +75,18 @@ public class BaseIpCfg extends BaseCfg { protected String organization; //仅用于copy属性使用 protected String country; //仅用于copy属性使用 protected String detail; //仅用于copy属性使用 + @ExcelField(title="log_total",sort=31) + private Long totalLogs; public String getOrganization() { return organization; } + public Long getTotalLogs() { + return totalLogs; + } + public void setTotalLogs(Long totalLogs) { + this.totalLogs = totalLogs; + } public void setOrganization(String organization) { this.organization = organization; } diff --git a/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java b/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java index d27f552f9..5ae686d8d 100644 --- a/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java +++ b/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java @@ -92,7 +92,8 @@ public class CfgIndexInfo extends BaseCfg { private Integer isAudit; @ExcelField(title="do_log",dictType="DO_LOG",sort=27) private Integer doLog = Constants.MAAT_CFG_DOLOG_DEFAULT; - + + /*private CachePolicyUserRegion cachePolicyUserRegion;//缓存策略用户自定义域参数 public static class CachePolicyUserRegion{ @@ -101,6 +102,7 @@ public class CfgIndexInfo extends BaseCfg { } }*/ + public Integer getIsValid() { return isValid; } diff --git a/src/main/java/com/nis/domain/configuration/DdosIpCfg.java b/src/main/java/com/nis/domain/configuration/DdosIpCfg.java index 91200ff60..c06a292e5 100644 --- a/src/main/java/com/nis/domain/configuration/DdosIpCfg.java +++ b/src/main/java/com/nis/domain/configuration/DdosIpCfg.java @@ -29,7 +29,23 @@ public class DdosIpCfg extends BaseIpCfg { private Long bpsThreadshold;// 即DDoS攻击保护动作触发阈值,每秒Bit数和每秒包数 @ExcelField(title="pps_threadshold",sort=43) private Long ppsThreadshold; - + @ExcelField(title="log_total",sort=32) + private Long totalLogs; + @ExcelField(title="is_audit",dictType="AUDIT_STATUS",sort=20) + private Integer isAudit; + + public Integer getIsAudit() { + return isAudit; + } + public void setIsAudit(Integer isAudit) { + this.isAudit = isAudit; + } + public Long getTotalLogs() { + return totalLogs; + } + public void setTotalLogs(Long totalLogs) { + this.totalLogs = totalLogs; + } public String getAntiddosProtocol() { return antiddosProtocol; } diff --git a/src/main/java/com/nis/domain/configuration/FileDigestCfg.java b/src/main/java/com/nis/domain/configuration/FileDigestCfg.java index 57fef7b6d..7aee7e54a 100644 --- a/src/main/java/com/nis/domain/configuration/FileDigestCfg.java +++ b/src/main/java/com/nis/domain/configuration/FileDigestCfg.java @@ -37,6 +37,8 @@ public class FileDigestCfg extends BaseCfg { private Integer cfdsLevel; @ExcelField(title="file_url",sort=6) private String fileUrl; + @ExcelField(title="log_total",sort=40) + private Long totalLogs; private NtcSubscribeIdCfg ntcSubscribeIdCfg; private List ntcSubscribeIdCfgList; @@ -89,5 +91,10 @@ public class FileDigestCfg extends BaseCfg { public void setIndexTable(String indexTable) { this.indexTable = indexTable; } - + public Long getTotalLogs() { + return totalLogs; + } + public void setTotalLogs(Long totalLogs) { + this.totalLogs = totalLogs; + } } diff --git a/src/main/java/com/nis/domain/configuration/IpReusePolicyCfg.java b/src/main/java/com/nis/domain/configuration/IpReusePolicyCfg.java index af29f5ca5..f6371c9d8 100644 --- a/src/main/java/com/nis/domain/configuration/IpReusePolicyCfg.java +++ b/src/main/java/com/nis/domain/configuration/IpReusePolicyCfg.java @@ -40,6 +40,7 @@ public class IpReusePolicyCfg extends BaseCfg{ private String srcIpAddress; private String destIpAddress; @Expose + @ExcelField(title="cfg_id",sort=0) @SerializedName("configId") private Integer compileId; @Expose @@ -47,7 +48,15 @@ public class IpReusePolicyCfg extends BaseCfg{ private String areaEffectiveIds ; @Expose private Integer doLog = Constants.MAAT_CFG_DOLOG_DEFAULT; + @ExcelField(title="log_total",sort=31) + private Long totalLogs; + public Long getTotalLogs() { + return totalLogs; + } + public void setTotalLogs(Long totalLogs) { + this.totalLogs = totalLogs; + } public void setDoLog(Integer doLog) { this.doLog = doLog; } diff --git a/src/main/java/com/nis/domain/configuration/template/ComplexStringAllNotDoLogTemplate.java b/src/main/java/com/nis/domain/configuration/template/ComplexStringAllNotDoLogTemplate.java new file mode 100644 index 000000000..702f0f0cd --- /dev/null +++ b/src/main/java/com/nis/domain/configuration/template/ComplexStringAllNotDoLogTemplate.java @@ -0,0 +1,60 @@ +package com.nis.domain.configuration.template; + +import com.nis.util.excel.ExcelField; + +/** + * @Description: excel导入增强字符串类配置 + */ +public class ComplexStringAllNotDoLogTemplate extends BasicTemplate{ + private String cfgDesc; + + private String district; + private String cfgKeywords; + private Integer matchMethod ; + private Integer isHex; + private Integer isCaseInsenstive; + + @ExcelField(title="config_describe",align=2,sort=1) + public String getCfgDesc() { + return cfgDesc; + } + public void setCfgDesc(String cfgDesc) { + this.cfgDesc = cfgDesc; + } + @ExcelField(title="district",sort=11) + public String getDistrict() { + return district; + } + public void setDistrict(String district) { + this.district = district; + } + @ExcelField(title="key_word",sort=12) + public String getCfgKeywords() { + return cfgKeywords; + } + public void setCfgKeywords(String cfgKeywords) { + this.cfgKeywords = cfgKeywords; + } + @ExcelField(title="match_method",dictType="MATCH_METHOD",sort=14) + public Integer getMatchMethod() { + return matchMethod; + } + public void setMatchMethod(Integer matchMethod) { + this.matchMethod = matchMethod; + } + @ExcelField(title="is_hex",dictType="IS_HEX",sort=15) + public Integer getIsHex() { + return isHex; + } + public void setIsHex(Integer isHex) { + this.isHex = isHex; + } + @ExcelField(title="is_case_insenstive",dictType="CASE_INSENSTIVE",sort=16) + public Integer getIsCaseInsenstive() { + return isCaseInsenstive; + } + public void setIsCaseInsenstive(Integer isCaseInsenstive) { + this.isCaseInsenstive = isCaseInsenstive; + } + +} diff --git a/src/main/java/com/nis/domain/configuration/template/ComplexStringAllTemplate.java b/src/main/java/com/nis/domain/configuration/template/ComplexStringAllTemplate.java index 18e23d19e..6446f79f9 100644 --- a/src/main/java/com/nis/domain/configuration/template/ComplexStringAllTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/ComplexStringAllTemplate.java @@ -21,6 +21,7 @@ public class ComplexStringAllTemplate extends BasicTemplate{ private Integer matchMethod ; private Integer isHex; private Integer isCaseInsenstive; + private Integer doLog; @ExcelField(title="config_describe",align=2,sort=1) public String getCfgDesc() { @@ -64,4 +65,12 @@ public class ComplexStringAllTemplate extends BasicTemplate{ public void setIsCaseInsenstive(Integer isCaseInsenstive) { this.isCaseInsenstive = isCaseInsenstive; } + + @ExcelField(title="do_log",dictType="DO_LOG",align=2,sort=2) + public Integer getDoLog() { + return doLog; + } + public void setDoLog(Integer doLog) { + this.doLog = doLog; + } } diff --git a/src/main/java/com/nis/domain/configuration/template/DdosIpTemplate.java b/src/main/java/com/nis/domain/configuration/template/DdosIpTemplate.java index cd7167df6..ec4d5a01d 100644 --- a/src/main/java/com/nis/domain/configuration/template/DdosIpTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/DdosIpTemplate.java @@ -6,21 +6,21 @@ public class DdosIpTemplate extends IpAllTemplate { private String antiddosProtocol; private Long bpsThreadshold; private Long ppsThreadshold; - @ExcelField(title="antiddos_protocol",align=2,sort=2) + @ExcelField(title="antiddos_protocol",align=2,sort=3) public String getAntiddosProtocol() { return antiddosProtocol; } public void setAntiddosProtocol(String antiddosProtocol) { this.antiddosProtocol = antiddosProtocol; } - @ExcelField(title="bps_threadshold",align=2,sort=3) + @ExcelField(title="bps_threadshold",align=2,sort=4) public Long getBpsThreadshold() { return bpsThreadshold; } public void setBpsThreadshold(Long bpsThreadshold) { this.bpsThreadshold = bpsThreadshold; } - @ExcelField(title="pps_threadshold",align=2,sort=4) + @ExcelField(title="pps_threadshold",align=2,sort=5) public Long getPpsThreadshold() { return ppsThreadshold; } diff --git a/src/main/java/com/nis/domain/configuration/template/DnsComplexStringTemplate.java b/src/main/java/com/nis/domain/configuration/template/DnsComplexStringTemplate.java index 103899a72..18a7139d4 100644 --- a/src/main/java/com/nis/domain/configuration/template/DnsComplexStringTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/DnsComplexStringTemplate.java @@ -16,7 +16,7 @@ import com.nis.util.excel.ExcelField; public class DnsComplexStringTemplate extends ComplexStringAllTemplate { private Long dnsStrategyId; - @ExcelField(title="policy_name",align=2,sort=2) + @ExcelField(title="policy_name",align=2,sort=3) public Long getDnsStrategyId() { return dnsStrategyId; } diff --git a/src/main/java/com/nis/domain/configuration/template/DnsIpTemplate.java b/src/main/java/com/nis/domain/configuration/template/DnsIpTemplate.java index 79a16c5fe..5907117ca 100644 --- a/src/main/java/com/nis/domain/configuration/template/DnsIpTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/DnsIpTemplate.java @@ -24,7 +24,7 @@ public class DnsIpTemplate extends IpAllTemplate { private Integer dnsStrategyId; - @ExcelField(title="policy_name",align=2,sort=2) + @ExcelField(title="policy_name",align=2,sort=3) public Integer getDnsStrategyId() { return dnsStrategyId; } diff --git a/src/main/java/com/nis/domain/configuration/template/DomainInterceptMonitTemplate.java b/src/main/java/com/nis/domain/configuration/template/DomainInterceptMonitTemplate.java index e99cf60ed..5d75c9519 100644 --- a/src/main/java/com/nis/domain/configuration/template/DomainInterceptMonitTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/DomainInterceptMonitTemplate.java @@ -7,7 +7,7 @@ import com.nis.util.excel.ExcelField; * @author dell * */ -public class DomainInterceptMonitTemplate extends StringAllTemplate{ +public class DomainInterceptMonitTemplate extends StringAllNotDoLogTemplate{ private String userRegion5; private String cfgKeywords; diff --git a/src/main/java/com/nis/domain/configuration/template/DomainInterceptRateLimitTemplate.java b/src/main/java/com/nis/domain/configuration/template/DomainInterceptRateLimitTemplate.java index 62426cef6..5d3f222e4 100644 --- a/src/main/java/com/nis/domain/configuration/template/DomainInterceptRateLimitTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/DomainInterceptRateLimitTemplate.java @@ -7,7 +7,7 @@ import com.nis.util.excel.ExcelField; * @author dell * */ -public class DomainInterceptRateLimitTemplate extends StringAllTemplate{ +public class DomainInterceptRateLimitTemplate extends StringAllNotDoLogTemplate{ private String userRegion2; private String cfgKeywords; diff --git a/src/main/java/com/nis/domain/configuration/template/DomainInterceptTemplate.java b/src/main/java/com/nis/domain/configuration/template/DomainInterceptTemplate.java index 8e81e44fb..39f90bd86 100644 --- a/src/main/java/com/nis/domain/configuration/template/DomainInterceptTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/DomainInterceptTemplate.java @@ -2,7 +2,7 @@ package com.nis.domain.configuration.template; import com.nis.util.excel.ExcelField; -public class DomainInterceptTemplate extends StringAllTemplate{ +public class DomainInterceptTemplate extends StringAllNotDoLogTemplate{ private String cfgKeywords; @ExcelField(title="domain_name",sort=11) diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsRedirectComplexTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsRedirectComplexTemplate.java index 8e6112b85..0d9b70fb5 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsRedirectComplexTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsRedirectComplexTemplate.java @@ -12,7 +12,7 @@ public class HttpsRedirectComplexTemplate extends ComplexStringAllTemplate{ private String userRegion1;// 重定向应答码 private String userRegion2;// 重定向URL - @ExcelField(title="redirect_response_code",dictType="REDIRECT_RESPONSE_CODE",align=2,sort=2) + @ExcelField(title="redirect_response_code",dictType="REDIRECT_RESPONSE_CODE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -21,7 +21,7 @@ public class HttpsRedirectComplexTemplate extends ComplexStringAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="redirect_url",align=2,sort=3) + @ExcelField(title="redirect_url",align=2,sort=4) public String getUserRegion2() { return userRegion2; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsRedirectIpTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsRedirectIpTemplate.java index 3cf44b757..27e6ca992 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsRedirectIpTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsRedirectIpTemplate.java @@ -12,7 +12,7 @@ public class HttpsRedirectIpTemplate extends IpAllTemplate{ private String userRegion1;// 重定向应答码 private String userRegion2;// 重定向URL - @ExcelField(title="redirect_response_code",dictType="REDIRECT_RESPONSE_CODE",align=2,sort=2) + @ExcelField(title="redirect_response_code",dictType="REDIRECT_RESPONSE_CODE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -21,7 +21,7 @@ public class HttpsRedirectIpTemplate extends IpAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="redirect_url",align=2,sort=3) + @ExcelField(title="redirect_url",align=2,sort=4) public String getUserRegion2() { return userRegion2; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsRedirectTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsRedirectTemplate.java index 0a2ae6aa0..bbe0ba8b2 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsRedirectTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsRedirectTemplate.java @@ -12,7 +12,7 @@ public class HttpsRedirectTemplate extends StringAllTemplate{ private String userRegion1;// 重定向应答码 private String userRegion2;// 重定向URL - @ExcelField(title="redirect_response_code",dictType="REDIRECT_RESPONSE_CODE",align=2,sort=2) + @ExcelField(title="redirect_response_code",dictType="REDIRECT_RESPONSE_CODE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -21,7 +21,7 @@ public class HttpsRedirectTemplate extends StringAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="redirect_url",align=2,sort=3) + @ExcelField(title="redirect_url",align=2,sort=4) public String getUserRegion2() { return userRegion2; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsRejectComplexTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsRejectComplexTemplate.java index 72f569dda..5b0d9115d 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsRejectComplexTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsRejectComplexTemplate.java @@ -12,7 +12,7 @@ public class HttpsRejectComplexTemplate extends ComplexStringAllTemplate{ private String userRegion1;// 应答码 private String userRegion2;// 响应内容 - @ExcelField(title="response_code",dictType="RESPONSE_CODE",align=2,sort=2) + @ExcelField(title="response_code",dictType="RESPONSE_CODE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -21,7 +21,7 @@ public class HttpsRejectComplexTemplate extends ComplexStringAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="response_content",align=2,sort=3) + @ExcelField(title="response_content",align=2,sort=4) public String getUserRegion2() { return userRegion2; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsRejectIpTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsRejectIpTemplate.java index d02510027..d509e36c2 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsRejectIpTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsRejectIpTemplate.java @@ -12,7 +12,7 @@ public class HttpsRejectIpTemplate extends IpAllTemplate{ private String userRegion1;// 应答码 private String userRegion2;// 响应内容 - @ExcelField(title="response_code",dictType="RESPONSE_CODE",align=2,sort=2) + @ExcelField(title="response_code",dictType="RESPONSE_CODE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -21,7 +21,7 @@ public class HttpsRejectIpTemplate extends IpAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="response_content",align=2,sort=3) + @ExcelField(title="response_content",align=2,sort=4) public String getUserRegion2() { return userRegion2; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsRejectTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsRejectTemplate.java index 3cb2ffcc0..d581d0f9c 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsRejectTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsRejectTemplate.java @@ -12,7 +12,7 @@ public class HttpsRejectTemplate extends StringAllTemplate{ private String userRegion1;// 应答码 private String userRegion2;// 响应内容 - @ExcelField(title="response_code",dictType="RESPONSE_CODE",align=2,sort=2) + @ExcelField(title="response_code",dictType="RESPONSE_CODE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -21,7 +21,7 @@ public class HttpsRejectTemplate extends StringAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="response_content",align=2,sort=3) + @ExcelField(title="response_content",align=2,sort=4) public String getUserRegion2() { return userRegion2; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsReplaceComplexTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsReplaceComplexTemplate.java index 18a39ed14..6c2be1638 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsReplaceComplexTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsReplaceComplexTemplate.java @@ -13,7 +13,7 @@ public class HttpsReplaceComplexTemplate extends ComplexStringAllTemplate{ private String userRegion2;// 发现内容 private String userRegion3;// 替换内容 - @ExcelField(title="replace_zone",dictType="CONTROL_REPLACE_ZONE",align=2,sort=2) + @ExcelField(title="replace_zone",dictType="CONTROL_REPLACE_ZONE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -22,7 +22,7 @@ public class HttpsReplaceComplexTemplate extends ComplexStringAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="replaced_content",align=2,sort=3) + @ExcelField(title="replaced_content",align=2,sort=4) public String getUserRegion2() { return userRegion2; } @@ -31,7 +31,7 @@ public class HttpsReplaceComplexTemplate extends ComplexStringAllTemplate{ this.userRegion2 = userRegion2; } - @ExcelField(title="replace_content",align=2,sort=4) + @ExcelField(title="replace_content",align=2,sort=5) public String getUserRegion3() { return userRegion3; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsReplaceIpTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsReplaceIpTemplate.java index c7a57075b..e9aeee245 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsReplaceIpTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsReplaceIpTemplate.java @@ -13,7 +13,7 @@ public class HttpsReplaceIpTemplate extends IpAllTemplate{ private String userRegion2;// 发现内容 private String userRegion3;// 替换内容 - @ExcelField(title="replace_zone",dictType="CONTROL_REPLACE_ZONE",align=2,sort=2) + @ExcelField(title="replace_zone",dictType="CONTROL_REPLACE_ZONE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -22,7 +22,7 @@ public class HttpsReplaceIpTemplate extends IpAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="replaced_content",align=2,sort=3) + @ExcelField(title="replaced_content",align=2,sort=4) public String getUserRegion2() { return userRegion2; } @@ -31,7 +31,7 @@ public class HttpsReplaceIpTemplate extends IpAllTemplate{ this.userRegion2 = userRegion2; } - @ExcelField(title="replace_content",align=2,sort=4) + @ExcelField(title="replace_content",align=2,sort=5) public String getUserRegion3() { return userRegion3; } diff --git a/src/main/java/com/nis/domain/configuration/template/HttpsReplaceTemplate.java b/src/main/java/com/nis/domain/configuration/template/HttpsReplaceTemplate.java index 2a40ee17b..e1a710147 100644 --- a/src/main/java/com/nis/domain/configuration/template/HttpsReplaceTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/HttpsReplaceTemplate.java @@ -13,7 +13,7 @@ public class HttpsReplaceTemplate extends StringAllTemplate{ private String userRegion2;// 发现内容 private String userRegion3;// 替换内容 - @ExcelField(title="replace_zone",dictType="CONTROL_REPLACE_ZONE",align=2,sort=2) + @ExcelField(title="replace_zone",dictType="CONTROL_REPLACE_ZONE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } @@ -22,7 +22,7 @@ public class HttpsReplaceTemplate extends StringAllTemplate{ this.userRegion1 = userRegion1; } - @ExcelField(title="replaced_content",align=2,sort=3) + @ExcelField(title="replaced_content",align=2,sort=4) public String getUserRegion2() { return userRegion2; } @@ -31,7 +31,7 @@ public class HttpsReplaceTemplate extends StringAllTemplate{ this.userRegion2 = userRegion2; } - @ExcelField(title="replace_content",align=2,sort=4) + @ExcelField(title="replace_content",align=2,sort=5) public String getUserRegion3() { return userRegion3; } diff --git a/src/main/java/com/nis/domain/configuration/template/IpAllNotDoLogTemplate.java b/src/main/java/com/nis/domain/configuration/template/IpAllNotDoLogTemplate.java new file mode 100644 index 000000000..6075c8938 --- /dev/null +++ b/src/main/java/com/nis/domain/configuration/template/IpAllNotDoLogTemplate.java @@ -0,0 +1,78 @@ +package com.nis.domain.configuration.template; + +import com.nis.util.excel.ExcelField; + +/** + * @Description: excel导入IP类配置 + */ +public class IpAllNotDoLogTemplate extends BasicTemplate{ + + /** + * @Fields serialVersionUID:TODO(用一句话描述这个变量表示什么) + * + * @since 1.0.0 + */ + + + + private String cfgDesc; + private String srcIpAddress; + private String destIpAddress; + private String srcPort; + private String destPort; + private Integer protocol; + private Integer direction; + + @ExcelField(title="config_describe",align=2,sort=1) + public String getCfgDesc() { + return cfgDesc; + } + public void setCfgDesc(String cfgDesc) { + this.cfgDesc = cfgDesc; + } + @ExcelField(title="client_ip",align=2,sort=11) + public String getSrcIpAddress() { + return srcIpAddress; + } + public void setSrcIpAddress(String srcIpAddress) { + this.srcIpAddress = srcIpAddress; + } + @ExcelField(title="server_ip",align=2,sort=12) + public String getDestIpAddress() { + return destIpAddress; + } + public void setDestIpAddress(String destIpAddress) { + this.destIpAddress = destIpAddress; + } + + @ExcelField(title="client_port",align=2,sort=13) + public String getSrcPort() { + return srcPort; + } + public void setSrcPort(String srcPort) { + this.srcPort = srcPort; + } + @ExcelField(title="server_port",align=2,sort=14) + public String getDestPort() { + return destPort; + } + public void setDestPort(String destPort) { + this.destPort = destPort; + } + + @ExcelField(title="protocol",align=2,sort=15) + public Integer getProtocol() { + return protocol; + } + public void setProtocol(Integer protocol) { + this.protocol = protocol; + } + @ExcelField(title="direction",align=2,sort=16) + public Integer getDirection() { + return direction; + } + public void setDirection(Integer direction) { + this.direction = direction; + } + +} diff --git a/src/main/java/com/nis/domain/configuration/template/IpAllTemplate.java b/src/main/java/com/nis/domain/configuration/template/IpAllTemplate.java index 01e03464e..860577947 100644 --- a/src/main/java/com/nis/domain/configuration/template/IpAllTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/IpAllTemplate.java @@ -31,6 +31,7 @@ public class IpAllTemplate extends BasicTemplate{ private String destPort; private Integer protocol; private Integer direction; + private Integer doLog; @ExcelField(title="config_describe",align=2,sort=1) public String getCfgDesc() { @@ -84,4 +85,11 @@ public class IpAllTemplate extends BasicTemplate{ this.direction = direction; } + @ExcelField(title="do_log",dictType="DO_LOG",align=2,sort=2) + public Integer getDoLog() { + return doLog; + } + public void setDoLog(Integer doLog) { + this.doLog = doLog; + } } diff --git a/src/main/java/com/nis/domain/configuration/template/IpPayloadTemplate.java b/src/main/java/com/nis/domain/configuration/template/IpPayloadTemplate.java index 08f028394..bb7ba7902 100644 --- a/src/main/java/com/nis/domain/configuration/template/IpPayloadTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/IpPayloadTemplate.java @@ -12,21 +12,21 @@ public class IpPayloadTemplate extends IpAllTemplate { private String userRegion2; private String userRegion3; - @ExcelField(title="replace_zone",dictType="INTERCEPT_REPLACE_ZONE",align=2,sort=2) + @ExcelField(title="replace_zone",dictType="INTERCEPT_REPLACE_ZONE",align=2,sort=3) public String getUserRegion1() { return userRegion1; } public void setUserRegion1(String userRegion1) { this.userRegion1 = userRegion1; } - @ExcelField(title="replaced_content",align=2,sort=3) + @ExcelField(title="replaced_content",align=2,sort=4) public String getUserRegion2() { return userRegion2; } public void setUserRegion2(String userRegion2) { this.userRegion2 = userRegion2; } - @ExcelField(title="replace_content",align=2,sort=4) + @ExcelField(title="replace_content",align=2,sort=5) public String getUserRegion3() { return userRegion3; } diff --git a/src/main/java/com/nis/domain/configuration/template/IpRateLimitTemplate.java b/src/main/java/com/nis/domain/configuration/template/IpRateLimitTemplate.java index eef1ca2c9..b879ce2a6 100644 --- a/src/main/java/com/nis/domain/configuration/template/IpRateLimitTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/IpRateLimitTemplate.java @@ -6,7 +6,7 @@ import com.nis.util.excel.ExcelField; * EXCEL IP导入限速模板 * */ -public class IpRateLimitTemplate extends IpAllTemplate { +public class IpRateLimitTemplate extends IpAllNotDoLogTemplate { public static String userRegion1="0"; private String userRegion2; @ExcelField(title="ratelimit",dictType="RATE_LIMIT",align=2,sort=2) diff --git a/src/main/java/com/nis/domain/configuration/template/IpSpoofingTemplate.java b/src/main/java/com/nis/domain/configuration/template/IpSpoofingTemplate.java new file mode 100644 index 000000000..13274838f --- /dev/null +++ b/src/main/java/com/nis/domain/configuration/template/IpSpoofingTemplate.java @@ -0,0 +1,31 @@ +package com.nis.domain.configuration.template; + +import com.nis.util.excel.ExcelField; + +/** + * EXCEL IpSpoofing 导入模板 + * @author dell + * + */ +public class IpSpoofingTemplate extends IpAllTemplate{ + + private String userRegion1; + private String userRegion2; + + @ExcelField(title="spoofing",dictType="SPOOFING_IP_TYPE",align=2,sort=3) + public String getUserRegion1() { + return userRegion1; + } + public void setUserRegion1(String userRegion1) { + this.userRegion1 = userRegion1; + } + + @ExcelField(title="With",align=2,sort=4) + public String getUserRegion2() { + return userRegion2; + } + public void setUserRegion2(String userRegion2) { + this.userRegion2 = userRegion2; + } + +} diff --git a/src/main/java/com/nis/domain/configuration/template/IpWhitelistTemplate.java b/src/main/java/com/nis/domain/configuration/template/IpWhitelistTemplate.java index 728e672a8..a839585db 100644 --- a/src/main/java/com/nis/domain/configuration/template/IpWhitelistTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/IpWhitelistTemplate.java @@ -30,6 +30,7 @@ public class IpWhitelistTemplate extends BasicTemplate{ private String destPort; private Integer protocol; private Integer direction; + private Integer doLog; @ExcelField(title="config_describe",align=2,sort=1) public String getCfgDesc() { @@ -84,4 +85,12 @@ public class IpWhitelistTemplate extends BasicTemplate{ this.direction = direction; } + @ExcelField(title="do_log",dictType="DO_LOG",align=2,sort=2) + public Integer getDoLog() { + return doLog; + } + public void setDoLog(Integer doLog) { + this.doLog = doLog; + } + } diff --git a/src/main/java/com/nis/domain/configuration/template/StringAllNotDoLogTemplate.java b/src/main/java/com/nis/domain/configuration/template/StringAllNotDoLogTemplate.java new file mode 100644 index 000000000..f604158c0 --- /dev/null +++ b/src/main/java/com/nis/domain/configuration/template/StringAllNotDoLogTemplate.java @@ -0,0 +1,52 @@ +package com.nis.domain.configuration.template; + +import com.nis.util.excel.ExcelField; + +/** + * @Description: excel导入字符串类配置 + */ +public class StringAllNotDoLogTemplate extends BasicTemplate{ + private String cfgDesc; + + private String cfgKeywords; + private Integer matchMethod ; + private Integer isHex; + private Integer isCaseInsenstive; + + @ExcelField(title="config_describe",align=2,sort=1) + public String getCfgDesc() { + return cfgDesc; + } + public void setCfgDesc(String cfgDesc) { + this.cfgDesc = cfgDesc; + } + @ExcelField(title="key_word",sort=11) + public String getCfgKeywords() { + return cfgKeywords; + } + public void setCfgKeywords(String cfgKeywords) { + this.cfgKeywords = cfgKeywords; + } + @ExcelField(title="match_method",dictType="MATCH_METHOD",sort=13) + public Integer getMatchMethod() { + return matchMethod; + } + public void setMatchMethod(Integer matchMethod) { + this.matchMethod = matchMethod; + } + @ExcelField(title="is_hex",dictType="IS_HEX",sort=14) + public Integer getIsHex() { + return isHex; + } + public void setIsHex(Integer isHex) { + this.isHex = isHex; + } + @ExcelField(title="is_case_insenstive",dictType="CASE_INSENSTIVE",sort=15) + public Integer getIsCaseInsenstive() { + return isCaseInsenstive; + } + public void setIsCaseInsenstive(Integer isCaseInsenstive) { + this.isCaseInsenstive = isCaseInsenstive; + } + +} diff --git a/src/main/java/com/nis/domain/configuration/template/StringAllTemplate.java b/src/main/java/com/nis/domain/configuration/template/StringAllTemplate.java index c6e1b097d..4b5141d0d 100644 --- a/src/main/java/com/nis/domain/configuration/template/StringAllTemplate.java +++ b/src/main/java/com/nis/domain/configuration/template/StringAllTemplate.java @@ -20,6 +20,7 @@ public class StringAllTemplate extends BasicTemplate{ private Integer matchMethod ; private Integer isHex; private Integer isCaseInsenstive; + private Integer doLog; @ExcelField(title="config_describe",align=2,sort=1) public String getCfgDesc() { @@ -56,4 +57,12 @@ public class StringAllTemplate extends BasicTemplate{ public void setIsCaseInsenstive(Integer isCaseInsenstive) { this.isCaseInsenstive = isCaseInsenstive; } + + @ExcelField(title="do_log",dictType="DO_LOG",align=2,sort=2) + public Integer getDoLog() { + return doLog; + } + public void setDoLog(Integer doLog) { + this.doLog = doLog; + } } diff --git a/src/main/java/com/nis/domain/log/NtcSslRecordLog.java b/src/main/java/com/nis/domain/log/NtcSslRecordLog.java new file mode 100644 index 000000000..b550ff442 --- /dev/null +++ b/src/main/java/com/nis/domain/log/NtcSslRecordLog.java @@ -0,0 +1,131 @@ +package com.nis.domain.log; + +import com.nis.util.excel.ExcelField; + +public class NtcSslRecordLog extends BaseLogEntity { + + private static final long serialVersionUID = 533266057780162781L; + + // @ExcelField(title = "log_id", sort = 8) + private String logId; + + @ExcelField(title = "version", sort = 8) + private String version;// 版本号 + + @ExcelField(title = "SNI", sort = 9) + private String sni;// SNI + + @ExcelField(title = "SAN", sort = 10) + private String san;// SAN + + @ExcelField(title = "CN", sort = 11) + private String cn;// CN + + // @ExcelField(title = "individual_cert_file", sort = 12) + private String individualCertFile; + + // @ExcelField(title = "middle_cert_file", sort = 13) + private String middleCertFile; + + // @ExcelField(title = "root_cert_file", sort = 14) + private String rootCertFile; + + // @ExcelField(title = "chain_cert_file", sort = 15) + private String chainCertFile; + + public String getLogId() { + return logId; + } + + public void setLogId(String logId) { + this.logId = logId; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + + public String getSni() { + return sni; + } + + public void setSni(String sni) { + this.sni = sni; + } + + public String getSan() { + return san; + } + + public void setSan(String san) { + this.san = san; + } + + public String getCn() { + return cn; + } + + public void setCn(String cn) { + this.cn = cn; + } + + public String getIndividualCertFile() { + return individualCertFile; + } + + public void setIndividualCertFile(String individualCertFile) { + this.individualCertFile = individualCertFile; + } + + public String getMiddleCertFile() { + return middleCertFile; + } + + public void setMiddleCertFile(String middleCertFile) { + this.middleCertFile = middleCertFile; + } + + public String getRootCertFile() { + return rootCertFile; + } + + public void setRootCertFile(String rootCertFile) { + this.rootCertFile = rootCertFile; + } + + public String getChainCertFile() { + return chainCertFile; + } + + public void setChainCertFile(String chainCertFile) { + this.chainCertFile = chainCertFile; + } + + public static long getSerialversionuid() { + return serialVersionUID; + } + + @Override + public String toString() { + return "NtcSslRecordLog [logId=" + logId + ", version=" + version + ", sni=" + sni + ", san=" + san + ", cn=" + + cn + ", individualCertFile=" + individualCertFile + ", middleCertFile=" + middleCertFile + + ", rootCertFile=" + rootCertFile + ", chainCertFile=" + chainCertFile + ", cfgId=" + cfgId + + ", foundTime=" + foundTime + ", recvTime=" + recvTime + ", transProto=" + transProto + ", addrType=" + + addrType + ", dIp=" + dIp + ", sIp=" + sIp + ", dPort=" + dPort + ", sPort=" + sPort + ", service=" + + service + ", entranceId=" + entranceId + ", deviceId=" + deviceId + ", direction=" + direction + + ", streamDir=" + streamDir + ", capIp=" + capIp + ", addrList=" + addrList + ", serverLocate=" + + serverLocate + ", clientLocate=" + clientLocate + ", sAsn=" + sAsn + ", dAsn=" + dAsn + + ", sSubscribeId=" + sSubscribeId + ", dSubscribeId=" + dSubscribeId + ", sceneFile=" + sceneFile + + ", functionId=" + functionId + ", action=" + action + ", date=" + date + ", seltype=" + seltype + + ", searchFoundStartTime=" + searchFoundStartTime + ", searchFoundEndTime=" + searchFoundEndTime + + ", isLogTotalSearch=" + isLogTotalSearch + ", orderBy=" + orderBy + ", encapType=" + encapType + + ", linkId=" + linkId + ", innerSmac=" + innerSmac + ", innerDmac=" + innerDmac + ", id=" + id + + ", currentUser=" + currentUser + ", page=" + page + ", pageLog=" + pageLog + ", sqlMap=" + sqlMap + + ", isNewRecord=" + isNewRecord + ", isFilterAction=" + isFilterAction + "]"; + } + +} diff --git a/src/main/java/com/nis/domain/maat/GroupReuseAddBean.java b/src/main/java/com/nis/domain/maat/GroupReuseAddBean.java index b19bf123e..8427a99ae 100644 --- a/src/main/java/com/nis/domain/maat/GroupReuseAddBean.java +++ b/src/main/java/com/nis/domain/maat/GroupReuseAddBean.java @@ -44,7 +44,7 @@ public class GroupReuseAddBean implements Serializable{ @Expose private Integer opAction; @Expose - @SerializedName("groupReuseList") + @SerializedName("commonGroupList") private List groupReuseCfgList; public String getVersion() { diff --git a/src/main/java/com/nis/domain/maat/GroupReuseCfg.java b/src/main/java/com/nis/domain/maat/GroupReuseCfg.java index dbc391446..8fb0a2d81 100644 --- a/src/main/java/com/nis/domain/maat/GroupReuseCfg.java +++ b/src/main/java/com/nis/domain/maat/GroupReuseCfg.java @@ -14,7 +14,7 @@ import com.nis.domain.maat.MaatCfg.StringCfg; * */ public class GroupReuseCfg implements Serializable { - @Expose + /*@Expose @SerializedName("service") private Integer serviceId; public Integer getServiceId() { @@ -23,7 +23,7 @@ public class GroupReuseCfg implements Serializable { public void setServiceId(Integer serviceId) { this.serviceId = serviceId; } - /** +*/ /** * */ private static final long serialVersionUID = 1830956100866313836L; diff --git a/src/main/java/com/nis/domain/maat/MaatCfg.java b/src/main/java/com/nis/domain/maat/MaatCfg.java index bcbf489e0..93392a39d 100644 --- a/src/main/java/com/nis/domain/maat/MaatCfg.java +++ b/src/main/java/com/nis/domain/maat/MaatCfg.java @@ -95,6 +95,8 @@ public class MaatCfg implements Serializable { @Expose @SerializedName("ipClientRangeList") private List areaIpRegionList; + @Expose + private List keepGroupList; public static class GroupCfg{ @Expose @@ -104,6 +106,8 @@ public class MaatCfg implements Serializable { @Expose private Integer isValid; @Expose + private Integer isCommonGroup; + @Expose @SerializedName("opTime") private Date auditTime; public Integer getGroupId() { @@ -130,7 +134,12 @@ public class MaatCfg implements Serializable { public void setAuditTime(Date auditTime) { this.auditTime = auditTime; } - + public Integer getIsCommonGroup() { + return isCommonGroup; + } + public void setIsCommonGroup(Integer isCommonGroup) { + this.isCommonGroup = isCommonGroup; + } } public static class StringCfg{ @Expose @@ -679,6 +688,13 @@ public class MaatCfg implements Serializable { public void setRequestId(Integer requestId) { this.requestId = requestId; } + + public List getKeepGroupList() { + return keepGroupList; + } + public void setKeepGroupList(List keepGroupList) { + this.keepGroupList = keepGroupList; + } public void initDefaultValue() { this.doLog=Constants.MAAT_CFG_DOLOG_DEFAULT; // this.doBlackList=Constants.MAAT_CFG_DOLOG_DOBLACKLIST_DEFAULT; diff --git a/src/main/java/com/nis/domain/specific/ConfigGroupInfo.java b/src/main/java/com/nis/domain/specific/ConfigGroupInfo.java index 7dade5be2..8021f8d66 100644 --- a/src/main/java/com/nis/domain/specific/ConfigGroupInfo.java +++ b/src/main/java/com/nis/domain/specific/ConfigGroupInfo.java @@ -23,6 +23,21 @@ public class ConfigGroupInfo implements Serializable{ @ExcelField(title="cfg_id",sort=301) private Integer compileId; private Long asnId; + private Integer isAuditAll; //是否有策略选择了此公共组下发所有; + private Integer isUsed; //是否有策略选择了此公共组; + + public Integer getIsUsed() { + return isUsed; + } + public void setIsUsed(Integer isUsed) { + this.isUsed = isUsed; + } + public Integer getIsAuditAll() { + return isAuditAll; + } + public void setIsAuditAll(Integer isAuditAll) { + this.isAuditAll = isAuditAll; + } public Long getAsnId() { return asnId; diff --git a/src/main/java/com/nis/util/excel/ExcelCsv.java b/src/main/java/com/nis/util/excel/ExcelCsv.java index 0024e5036..24809147b 100644 --- a/src/main/java/com/nis/util/excel/ExcelCsv.java +++ b/src/main/java/com/nis/util/excel/ExcelCsv.java @@ -130,9 +130,7 @@ public class ExcelCsv { Map> commentMap=new HashMap>(); for (String title : titleList) { String noExportField=noExportMap.get(title); - if(noExportField.contains("do_log")){ - noExportField=",do_blacklist,"+noExportField; - } + noExportField=",do_blacklist,"+noExportField; List annotationList = Lists.newArrayList(); List list=new ArrayList(); // Get annotation field diff --git a/src/main/java/com/nis/util/excel/ExportExcel.java b/src/main/java/com/nis/util/excel/ExportExcel.java index 7eb9f2345..b42ab7a7a 100644 --- a/src/main/java/com/nis/util/excel/ExportExcel.java +++ b/src/main/java/com/nis/util/excel/ExportExcel.java @@ -143,6 +143,16 @@ public class ExportExcel { String defaultValue=""; int index=0; String[] titleInfo=new String[3]; + + // Rule Name + if("config_describe".equals(headerStr)) { + commentStr=commentStr+msgProp.getProperty("rule_desc_tip")+":\n"; + index++; + //1、非空 + commentStr=commentStr+"▶"+msgProp.getProperty("required")+"\n"; + index++; + } + //p2p_hash_type if("p2p_hash_type".equals(headerStr)){ commentStr=""; @@ -403,13 +413,17 @@ public class ExportExcel { if("bps_threadshold".equals(headerStr)){ commentStr=commentStr+msgProp.getProperty("rule_desc_tip")+":\n"; index++; - commentStr=commentStr+msgProp.getProperty("input_integer")+"\n"; + commentStr=commentStr+"▶"+msgProp.getProperty("input_integer")+"\n"; + index++; + commentStr=commentStr+"▶"+msgProp.getProperty("min_value")+"1000000\n"; index++; } if("pps_threadshold".equals(headerStr)){ commentStr=commentStr+msgProp.getProperty("rule_desc_tip")+":\n"; index++; - commentStr=commentStr+msgProp.getProperty("input_integer")+"\n"; + commentStr=commentStr+"▶"+msgProp.getProperty("input_integer")+"\n"; + index++; + commentStr=commentStr+"▶"+msgProp.getProperty("min_value")+"1000\n"; index++; } if("group".equals(headerStr)) { @@ -490,6 +504,70 @@ public class ExportExcel { index++; } + // doLog + if("do_log".equals(headerStr)) { + commentStr=""; + List dict=DictUtils.getDictList("DO_LOG"); + if(dict !=null && dict.size()>0){ + if(StringUtil.isEmpty(service.getConfigDoLog())){ + headerStr=""; + commentStr=""; + }else{ + String configDoLog = service.getConfigDoLog(); + String doLogOption = configDoLog.substring(configDoLog.indexOf(";"), configDoLog.lastIndexOf(";")); + for (SysDataDictionaryItem sysDataDictionaryItem : dict) { + String itemCode = sysDataDictionaryItem.getItemCode(); + if(doLogOption.contains(itemCode)) { + commentStr=commentStr+itemCode+"("+msgProp.getProperty(sysDataDictionaryItem.getItemValue(),sysDataDictionaryItem.getItemValue())+")\n"; + index++; + } + } + defaultValue = configDoLog.substring(configDoLog.lastIndexOf(";")+1); + } + } + commentStr=msgProp.getProperty("select")+":\n"+commentStr; + index++; + commentStr=commentStr+"\n"+msgProp.getProperty("rule_desc_tip")+":\n"; + index++; + if(!StringUtil.isEmpty(defaultValue)){ + //1、默认值说明 + commentStr=commentStr+"▶"+msgProp.getProperty("default_value")+":"+defaultValue+"\n"; + index++; + index++; + } + } + + /** Ip Spoofing **/ + if("spoofing".equals(headerStr) && (region.getFunctionId().equals(214))){ + commentStr=""; + List dict=DictUtils.getDictList("SPOOFING_IP_TYPE"); + if(dict !=null && dict.size()>0){ + for (SysDataDictionaryItem sysDataDictionaryItem : dict) { + commentStr=commentStr+sysDataDictionaryItem.getItemCode()+"("+msgProp.getProperty(sysDataDictionaryItem.getItemValue(),sysDataDictionaryItem.getItemValue())+")\n"; + index++; + } + defaultValue=dict.get(0).getItemCode(); + } + commentStr=msgProp.getProperty("select")+":\n"+commentStr; + index++; + index++; + commentStr=commentStr+"\n"+msgProp.getProperty("rule_desc_tip")+":\n"; + index++; + if(!StringUtil.isEmpty(defaultValue)){ + //1、默认值说明 + commentStr=commentStr+"▶"+msgProp.getProperty("default_value")+":"+defaultValue+"\n"; + index++; + index++; + } + } + if(("With".equals(headerStr)) && (region.getFunctionId().equals(214))){ + commentStr=commentStr+msgProp.getProperty("rule_desc_tip")+":\n"; + index++; + //1、非空 + commentStr=commentStr+"▶"+msgProp.getProperty("required")+"\n"; + index++; + } + if(region.getRegionType().equals(1)){//IP配置 //ip配置需要导入的信息:srcIp srcPort destIp destPort Protocol Direction //确定需要导入的srcIp srcPort destIp destPort信息 @@ -1035,6 +1113,7 @@ public class ExportExcel { if(StringUtil.isEmpty(defaultValue)){ defaultValue="0"; } + defaultValue = region.getFunctionId().equals(301)?"1":defaultValue; } /*}*/ /*if(StringUtil.isEmpty(commentStr)){ @@ -1260,7 +1339,11 @@ public class ExportExcel { commentStr=commentStr+msgProp.getProperty("rule_desc_tip")+":\n"; index++; //2、默认值说明 - commentStr=commentStr+"▶"+msgProp.getProperty("default_value")+":0\n"; + if(region.getDictId().equals(159)) { // P2P文件标识配置 + commentStr=commentStr+"▶"+msgProp.getProperty("default_value")+":1\n"; + }else { + commentStr=commentStr+"▶"+msgProp.getProperty("default_value")+":0\n"; + } index++; } } @@ -1290,10 +1373,19 @@ public class ExportExcel { } }else{ for (SysDataDictionaryItem sysDataDictionaryItem : isCaseSenstive) { - if(sysDataDictionaryItem.getItemCode().equals("1")){ - commentStr=commentStr+sysDataDictionaryItem.getItemCode()+"("+msgProp.getProperty(sysDataDictionaryItem.getItemValue())+")"+"\n"; - list.add(sysDataDictionaryItem.getItemCode()); - index++; + if(region.getDictId().equals(159)) { // P2P文件标识配置 + if(sysDataDictionaryItem.getItemCode().equals("0")){ + commentStr=commentStr+sysDataDictionaryItem.getItemCode()+"("+msgProp.getProperty(sysDataDictionaryItem.getItemValue())+")"+"\n"; + list.add(sysDataDictionaryItem.getItemCode()); + index++; + } + }else { + if(sysDataDictionaryItem.getItemCode().equals("1")){ + commentStr=commentStr+sysDataDictionaryItem.getItemCode()+"("+msgProp.getProperty(sysDataDictionaryItem.getItemValue())+")"+"\n"; + list.add(sysDataDictionaryItem.getItemCode()); + index++; + } + } } } @@ -2161,8 +2253,8 @@ public class ExportExcel { } } // If is dict, get dict label + String valStr=val==null?"":val.toString(); if (StringUtils.isNotBlank(ef.dictType())){ - String valStr=val==null?"":val.toString(); if("type".equals(ef.dictType()) || "attribute".equals(ef.dictType()) || "label".equals(ef.dictType())){ // Get basic info @@ -2175,6 +2267,16 @@ public class ExportExcel { } } + if(ef.title().equals("whether_area_block")&&!StringUtil.isEmpty(val)){ + Integer whetherAreaBlock=Integer.parseInt(valStr); + if(whetherAreaBlock.equals(0)){ + val = msgProp.getProperty("all","all"); + }else if(whetherAreaBlock.equals(1)){ + val = msgProp.getProperty("selective","selective"); + }else{ + val =""; + } + } if(ef.title().equals("is_hex") && !StringUtil.isEmpty(val)){ Integer isHex=Integer.parseInt(val.toString()); if(isHex.equals(0) || isHex.equals(2)){ @@ -2350,9 +2452,7 @@ public class ExportExcel { Map> commentMap=new HashMap>(); for (String title : titleList) { String noExportField=noExportMap.get(title); - if(noExportField.contains("do_log")){ - noExportField=",do_blacklist,"+noExportField; - } + noExportField=",do_blacklist,"+noExportField; List annotationList = Lists.newArrayList(); List list=new ArrayList(); // Get annotation field diff --git a/src/main/java/com/nis/util/excel/thread/CheckComplexStringFormatThread.java b/src/main/java/com/nis/util/excel/thread/CheckComplexStringFormatThread.java index f75a72812..e01a35d7c 100644 --- a/src/main/java/com/nis/util/excel/thread/CheckComplexStringFormatThread.java +++ b/src/main/java/com/nis/util/excel/thread/CheckComplexStringFormatThread.java @@ -19,6 +19,7 @@ import com.beust.jcommander.internal.Sets; import com.nis.domain.FunctionRegionDict; import com.nis.domain.FunctionServiceDict; import com.nis.domain.SysDataDictionaryItem; +import com.nis.domain.configuration.BaseStringCfg; import com.nis.domain.configuration.ComplexkeywordCfg; import com.nis.domain.configuration.DnsResStrategy; import com.nis.util.Constants; @@ -101,7 +102,10 @@ public class CheckComplexStringFormatThread implements Callable{ if(baseStringCfg.getCfgKeywords().length() < 4 || baseStringCfg.getCfgKeywords().length() > 1024){ errInfo.append(prop.getProperty("key_word")+prop.getProperty("length_error")+" "+String.format(prop.getProperty("min_length")+":4,"+prop.getProperty("max_length")+":1024") + ";"); } - + + // doLog属性检验 + this.validDoLog(baseStringCfg,errInfo); + if (regionDict.getRegionType().equals(3)) { if (regionDict.getFunctionId().equals(7)) { Long dnsStrategyId = baseStringCfg.getDnsStrategyId(); @@ -438,4 +442,28 @@ public class CheckComplexStringFormatThread implements Callable{ logger.warn("validate complexString data finish,cost:"+(end-start)); return stringList; } + + /** + * doLog属性校验 + * @param baseStringCfg + * @param errInfo + */ + public void validDoLog(ComplexkeywordCfg baseStringCfg, StringBuffer errInfo) { + + String configDoLog = serviceDict.getConfigDoLog(); + if(StringUtils.isNotBlank(configDoLog)) { + String defaultValue = configDoLog.substring(configDoLog.lastIndexOf(";")+1); + String doLogOption = configDoLog.substring(configDoLog.indexOf(";")+1, configDoLog.lastIndexOf(";")); + if(baseStringCfg.getDoLog() == null) { + baseStringCfg.setDoLog(Integer.parseInt(defaultValue)); + } + Integer doLog = baseStringCfg.getDoLog(); + if(!doLogOption.contains(doLog+"")) { + errInfo.append( + String.format(prop.getProperty("is_incorrect"), prop.getProperty("do_log")) + + ";"); + } + } + + } } diff --git a/src/main/java/com/nis/util/excel/thread/CheckIpFormatThread.java b/src/main/java/com/nis/util/excel/thread/CheckIpFormatThread.java index fbe6a56bb..fb8bc3f73 100644 --- a/src/main/java/com/nis/util/excel/thread/CheckIpFormatThread.java +++ b/src/main/java/com/nis/util/excel/thread/CheckIpFormatThread.java @@ -123,6 +123,14 @@ public class CheckIpFormatThread implements Callable{ // doLog属性检验 this.validDoLog(baseIpCfg,errInfo); + if(regionDict.getFunctionId().equals(200)) { + if(!serviceDict.getAction().equals(1)) { + baseIpCfg.setDoLog(0); + } + } + // doLog属性检验 + this.validDoLog(baseIpCfg,errInfo); + // 特殊字段验证 // packet ip ratelimit if (serviceDict!=null&&serviceDict.getFunctionId().intValue() == 5 && serviceDict.getAction().intValue() == 64) { diff --git a/src/main/java/com/nis/util/excel/thread/CheckStringFormatThread.java b/src/main/java/com/nis/util/excel/thread/CheckStringFormatThread.java index bc4a6bf9f..ff770be4d 100644 --- a/src/main/java/com/nis/util/excel/thread/CheckStringFormatThread.java +++ b/src/main/java/com/nis/util/excel/thread/CheckStringFormatThread.java @@ -20,6 +20,7 @@ import com.nis.domain.FunctionRegionDict; import com.nis.domain.FunctionServiceDict; import com.nis.domain.SysDataDictionaryItem; import com.nis.domain.configuration.BaseStringCfg; +import com.nis.domain.configuration.IpPortCfg; import com.nis.util.Constants; import com.nis.util.DictUtils; @@ -97,6 +98,14 @@ public class CheckStringFormatThread implements Callable{ errInfo.append(prop.getProperty("config_describe")+prop.getProperty("length_error")+" "+String.format(prop.getProperty("max_length")+":128") + ";"); } + if(regionDict.getFunctionId().equals(200)) { + if(!serviceDict.getAction().equals(1)) { + baseStringCfg.setDoLog(0); + } + } + // doLog属性检验 + this.validDoLog(baseStringCfg,errInfo); + if (regionDict.getRegionType().equals(2)) { if (regionDict.getFunctionId().equals(510) && "p2p_hash".equals(regionDict.getConfigServiceType())) { String userRegion1 = baseStringCfg.getUserRegion1(); @@ -491,4 +500,28 @@ public class CheckStringFormatThread implements Callable{ logger.warn("validate stringCfg data finish,cost:"+(end-start)); return stringList; } + + /** + * doLog属性校验 + * @param baseStringCfg + * @param errInfo + */ + public void validDoLog(BaseStringCfg baseStringCfg, StringBuffer errInfo) { + + String configDoLog = serviceDict.getConfigDoLog(); + if(StringUtils.isNotBlank(configDoLog)) { + String defaultValue = configDoLog.substring(configDoLog.lastIndexOf(";")+1); + String doLogOption = configDoLog.substring(configDoLog.indexOf(";")+1, configDoLog.lastIndexOf(";")); + if(baseStringCfg.getDoLog() == null) { + baseStringCfg.setDoLog(Integer.parseInt(defaultValue)); + } + Integer doLog = baseStringCfg.getDoLog(); + if(!doLogOption.contains(doLog+"")) { + errInfo.append( + String.format(prop.getProperty("is_incorrect"), prop.getProperty("do_log")) + + ";"); + } + } + + } } diff --git a/src/main/java/com/nis/util/excel/thread/DeleteAsnIpTread.java b/src/main/java/com/nis/util/excel/thread/DeleteAsnIpTread.java index 95b12913d..c17419aee 100644 --- a/src/main/java/com/nis/util/excel/thread/DeleteAsnIpTread.java +++ b/src/main/java/com/nis/util/excel/thread/DeleteAsnIpTread.java @@ -44,7 +44,7 @@ public class DeleteAsnIpTread implements Callable { while(!asnNos.isEmpty()) { asnNos.drainTo(asnNoList,5); for(Long asnNo:asnNoList) { - AsnGroupInfo configGroupInfo=AsnCacheUtils.get(asnNo); + AsnGroupInfo configGroupInfo=null;//AsnCacheUtils.get(asnNo); if(configGroupInfo==null) { configGroupInfo=new AsnGroupInfo(); configGroupInfo.setAsnId(asnNo); @@ -85,7 +85,7 @@ public class DeleteAsnIpTread implements Callable { } sb.deleteCharAt(sb.toString().lastIndexOf(",")); asnIpCfgDao.delete(sb.toString()); - new AsnIpCfgService().asnIPRegionSendToMaat(listPage, Constants.VALID_NO); + new AsnIpCfgService().asnIPRegionSendToMaat(listPage, Constants.VALID_NO,1); transactionManager.commit(status); listPage.clear(); } catch (Throwable e) { diff --git a/src/main/java/com/nis/util/excel/thread/SaveAsnIpThread.java b/src/main/java/com/nis/util/excel/thread/SaveAsnIpThread.java index 1ba4ffb38..95807ab8d 100644 --- a/src/main/java/com/nis/util/excel/thread/SaveAsnIpThread.java +++ b/src/main/java/com/nis/util/excel/thread/SaveAsnIpThread.java @@ -112,7 +112,7 @@ public class SaveAsnIpThread implements Callable{ _cfg.setAsnIpGroup(asnNoMaps.get(1).get(Long.parseLong(_cfg.getUserRegion1()))); }else { // ConfigGroupInfo info=asnIpCfgService.getConfigGroupInfoByAsnNo(Long.parseLong(_cfg.getUserRegion1())); - AsnGroupInfo info=AsnCacheUtils.get(Long.parseLong(_cfg.getUserRegion1())); + AsnGroupInfo info=null;//AsnCacheUtils.get(Long.parseLong(_cfg.getUserRegion1())); if(info==null) { info=new AsnGroupInfo(); info.setAsnId(Long.parseLong(_cfg.getUserRegion1())); @@ -166,7 +166,7 @@ public class SaveAsnIpThread implements Callable{ this.save(cfgs); // splitAndSend(toAddRegionAsnIpCfgs,Constants.VALID_YES); if(toAddRegionAsnIpCfgs.size()>0) { - new AsnIpCfgService().asnIPRegionSendToMaat(toAddRegionAsnIpCfgs,Constants.VALID_YES); + new AsnIpCfgService().asnIPRegionSendToMaat(toAddRegionAsnIpCfgs,Constants.VALID_YES,1); } cfgs.clear(); toAddRegionAsnIpCfgs.clear(); diff --git a/src/main/java/com/nis/util/httpclient/ClientUtil.java b/src/main/java/com/nis/util/httpclient/ClientUtil.java index d2a174ea7..6f3e36e8e 100644 --- a/src/main/java/com/nis/util/httpclient/ClientUtil.java +++ b/src/main/java/com/nis/util/httpclient/ClientUtil.java @@ -66,6 +66,33 @@ public class ClientUtil { } } + /** + * @param connTimeOut 连接超时时间 + * @param readTimeOut 读取超时时间 + */ + public static void initClient(Integer connTimeOut,Integer readTimeOut){ + try{ + if(client==null){ + PoolingHttpClientConnectionManager pcm = new PoolingHttpClientConnectionManager(); + pcm.setDefaultSocketConfig( SocketConfig.custom(). setSoTimeout(Constants.POOLCM_SOCKET_TIMEOUT). build()); + pcm.setMaxTotal(Constants.HTTP_MAX_CONNECTION); pcm.setDefaultMaxPerRoute(Constants.DEFAULT_MAX_PERROUTE); + + ClientConfig clientConfig = new ClientConfig(); + clientConfig.property(ClientProperties.CONNECT_TIMEOUT, connTimeOut);//连接超时时间 + clientConfig.property(ClientProperties.READ_TIMEOUT, readTimeOut);//读取超时时间 + clientConfig.property(ApacheClientProperties.CONNECTION_MANAGER, pcm); + clientConfig.register(ClientRequestHeaderFilter.class);//请求过滤器,自动添加header信息 + clientConfig.register(JacksonFeature.class);//json支持 + clientConfig.register(MultiPartFeature.class);//文件上传支持 + client = ClientBuilder.newClient(clientConfig); + logger.info("客户端初始化成功"); + } + + }catch (Exception e) { + logger.error("初始化客户端失败,请检查证书是否正确!",e); + System.exit(1);//程序退出 + } + } /** *path 以https://或http:// 开始不做处理,否则在path前加上 Constants.BASE_URL + Constants.VERSION * @param path diff --git a/src/main/java/com/nis/web/controller/BaseController.java b/src/main/java/com/nis/web/controller/BaseController.java index 99b8409f4..54c3a024f 100644 --- a/src/main/java/com/nis/web/controller/BaseController.java +++ b/src/main/java/com/nis/web/controller/BaseController.java @@ -73,6 +73,7 @@ import com.nis.domain.configuration.DnsResStrategy; import com.nis.domain.configuration.FileDigestCfg; import com.nis.domain.configuration.IpPortCfg; import com.nis.domain.configuration.PxyObjKeyring; +import com.nis.domain.configuration.PxyObjSpoofingIpPool; import com.nis.domain.configuration.PxyObjTrustedCaCert; import com.nis.domain.configuration.PxyObjTrustedCaCrl; import com.nis.domain.configuration.RequestInfo; @@ -80,6 +81,7 @@ import com.nis.domain.configuration.StringCfgTemplate; import com.nis.domain.configuration.template.AppDomainTemplate; import com.nis.domain.configuration.template.AppPayloadTemplate; import com.nis.domain.configuration.template.AsnIpTemplate; +import com.nis.domain.configuration.template.ComplexStringAllNotDoLogTemplate; import com.nis.domain.configuration.template.ComplexStringAllTemplate; import com.nis.domain.configuration.template.DdosIpTemplate; import com.nis.domain.configuration.template.DnsComplexStringTemplate; @@ -98,12 +100,16 @@ import com.nis.domain.configuration.template.HttpsRejectTemplate; import com.nis.domain.configuration.template.HttpsReplaceComplexTemplate; import com.nis.domain.configuration.template.HttpsReplaceIpTemplate; import com.nis.domain.configuration.template.HttpsReplaceTemplate; +import com.nis.domain.configuration.template.IpAllNotDoLogTemplate; import com.nis.domain.configuration.template.IpAllTemplate; import com.nis.domain.configuration.template.IpCfgTemplate; import com.nis.domain.configuration.template.IpPayloadTemplate; import com.nis.domain.configuration.template.IpRateLimitTemplate; +import com.nis.domain.configuration.template.IpSpoofingTemplate; +import com.nis.domain.configuration.template.IpWhitelistTemplate; import com.nis.domain.configuration.template.P2pHashStringTemplate; import com.nis.domain.configuration.template.P2pIpTemplate; +import com.nis.domain.configuration.template.StringAllNotDoLogTemplate; import com.nis.domain.configuration.template.StringAllTemplate; import com.nis.domain.configuration.template.TopicWebsiteTemplate; import com.nis.domain.log.BaseLogEntity; @@ -114,7 +120,9 @@ import com.nis.domain.maat.MaatCfg.GroupCfg; import com.nis.domain.maat.MaatCfg.IpCfg; import com.nis.domain.maat.MaatCfg.NumBoundaryCfg; import com.nis.domain.maat.MaatCfg.StringCfg; +import com.nis.domain.report.NtcPzReport; import com.nis.domain.maat.ToMaatBean; +import com.nis.domain.maat.ToMaatResult; import com.nis.domain.specific.ConfigGroupInfo; import com.nis.domain.specific.SpecificServiceCfg; import com.nis.exceptions.MaatConvertException; @@ -137,6 +145,7 @@ import com.nis.util.excel.thread.CheckDnsResStrategyFormatThread; import com.nis.util.excel.thread.CheckIpFormatThread; import com.nis.util.excel.thread.CheckStringFormatThread; import com.nis.util.excel.thread.CheckTopicWebsiteFormatThread; +import com.nis.web.dao.configuration.PxyObjSpoofingIpPoolDao; import com.nis.web.security.UserUtils; import com.nis.web.service.ArchiveServcie; import com.nis.web.service.AreaService; @@ -146,6 +155,7 @@ import com.nis.web.service.LogService; import com.nis.web.service.MenuService; import com.nis.web.service.OfficeService; import com.nis.web.service.RoleService; +import com.nis.web.service.SpringContextHolder; import com.nis.web.service.SystemService; import com.nis.web.service.UserService; import com.nis.web.service.basics.AsnGroupInfoService; @@ -193,6 +203,9 @@ import com.nis.web.service.specific.SpecificServiceHostCfgService; import com.nis.web.service.systemService.ServiceConfigInfoService; import jersey.repackaged.com.google.common.collect.Maps; +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; +import net.sf.json.JsonConfig; public class BaseController { @@ -1371,6 +1384,9 @@ public class BaseController { BlockingQueue list = ei.getDataList(IpRateLimitTemplate.class ); ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict,null,asnGroupInfos, list); + } else if(serviceDict!=null&&serviceDict.getAction().equals(32)) { + BlockingQueue list = ei.getDataList(IpAllNotDoLogTemplate.class ); + ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict, null,asnGroupInfos, list); } else { BlockingQueue list = ei.getDataList(IpAllTemplate.class ); ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict, null,asnGroupInfos, list); @@ -1410,8 +1426,22 @@ public class BaseController { }else if(regionDict.getFunctionId().equals(209)){// HTTP(s)替换 BlockingQueue list = ei.getDataList(HttpsReplaceIpTemplate.class ); ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict, null,asnGroupInfos, list); - }else if(regionDict.getFunctionId().equals(200) && serviceDict.getAction().equals(64)) {// 拦截策略(限速) - BlockingQueue list = ei.getDataList(IpRateLimitTemplate.class ); + }else if(regionDict.getFunctionId().equals(211)){// HTTP(s)白名单 + BlockingQueue list = ei.getDataList(IpAllNotDoLogTemplate.class ); + ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict, null,asnGroupInfos, list); + }else if(regionDict.getFunctionId().equals(200)) {// 拦截策略 + if(serviceDict.getAction().equals(64)) { + BlockingQueue list = ei.getDataList(IpRateLimitTemplate.class ); + ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict,null,asnGroupInfos, list); + }else { + BlockingQueue list = ei.getDataList(IpAllNotDoLogTemplate.class ); + ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict,null,asnGroupInfos, list); + } + }else if(regionDict.getFunctionId().equals(3)) { // IP白名单 + BlockingQueue list = ei.getDataList(IpWhitelistTemplate.class ); + ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict,null,asnGroupInfos, list); + }else if(regionDict.getFunctionId().equals(214)) { // IpSpoofing + BlockingQueue list = ei.getDataList(IpSpoofingTemplate.class ); ipPortCfgs=this.checkIpCfgMulity(errTip,serviceDict, regionDict,null,asnGroupInfos, list); }else { BlockingQueue list = ei.getDataList(IpAllTemplate.class ); @@ -1447,6 +1477,9 @@ public class BaseController { }else if(regionDict.getFunctionId().equals(209)){// HTTP(s)替换 BlockingQueue list = ei.getDataList(HttpsReplaceTemplate.class); stringCfgs=this.checkStringCfgMulity(errTip,serviceDict, regionDict, list); + }else if(regionDict.getFunctionId().equals(211)){// HTTP(s)白名单 + BlockingQueue list = ei.getDataList(StringAllNotDoLogTemplate.class); + stringCfgs=this.checkStringCfgMulity(errTip,serviceDict, regionDict, list); }else if(regionDict.getFunctionId().equals(560)){// 主题网站 BlockingQueue list = ei.getDataList(TopicWebsiteTemplate.class); appTopicDomainCfgs=this.checkTopicWebsiteCfgMulity(errTip,serviceDict, regionDict, list); @@ -1469,6 +1502,9 @@ public class BaseController { } else if(regionDict.getFunctionId().equals(209)){// HTTP(s)替换 BlockingQueue list = ei.getDataList(HttpsReplaceComplexTemplate.class); complexkeywordCfgs = this.checkComplexStringCfgMulity(errTip,serviceDict, regionDict, list); + } else if(regionDict.getFunctionId().equals(211)){// HTTP(s)白名单 + BlockingQueue list = ei.getDataList(ComplexStringAllNotDoLogTemplate.class); + complexkeywordCfgs = this.checkComplexStringCfgMulity(errTip,serviceDict, regionDict, list); } else if(regionDict.getFunctionId().equals(563)){// APP Payload BlockingQueue list = ei.getDataList(AppPayloadTemplate.class); appComplexFeatureCfgs = this.checkAppComplexFeatureStringCfgMulity(errTip,serviceDict, regionDict, list); @@ -1599,6 +1635,145 @@ public class BaseController { _ipPortCfgs.clear(); asnIpCfgs.clear(); } + }else if(regionDict.getFunctionId().intValue()==214) { // IpSpoofing + List _ipPortCfgs=Lists.newArrayList(Constants.MAAT_JSON_SEND_SIZE); + while(!ipPortCfgs.isEmpty()) { + ipPortCfgs.drainTo(_ipPortCfgs, Constants.MAAT_JSON_SEND_SIZE); + List compileIds=Lists.newArrayList(); + List spoofingPoolIds=Lists.newArrayList(); + List regionIds=Lists.newArrayList(); + List groupIds=Lists.newArrayList(); + List numRegionGroupIds=Lists.newArrayList(); + List numRegionRegionIds=Lists.newArrayList(); + List spoofingPools = new ArrayList(); + PxyObjSpoofingIpPoolDao pxyObjSpoofingIpPoolDao = SpringContextHolder.getBean(PxyObjSpoofingIpPoolDao.class); + PxyObjSpoofingIpPoolService pxyObjSpoofingIpPoolService = SpringContextHolder.getBean(PxyObjSpoofingIpPoolService.class); + try { + compileIds = ConfigServiceUtil.getId(1,_ipPortCfgs.size()); + spoofingPoolIds = ConfigServiceUtil.getId(1,_ipPortCfgs.size()); + if(isSend.equals("1")) { + groupIds = ConfigServiceUtil.getId(2,_ipPortCfgs.size()); + regionIds = ConfigServiceUtil.getId(3,_ipPortCfgs.size()); + //需要获取数值域的id + if(serviceDict!=null&&serviceDict.getProtocolId()!=null&&serviceDict.getProtocolId()>0) { + numRegionGroupIds = ConfigServiceUtil.getId(2,_ipPortCfgs.size()); + numRegionRegionIds = ConfigServiceUtil.getId(3,_ipPortCfgs.size()); + } + } + } catch (Exception e) { + e.printStackTrace(); + logger.info("获取编译ID出错"); + throw new MaatConvertException(":"+e.getMessage()); + } + + int ind=0; + for (BaseIpCfg cfg : _ipPortCfgs) { + cfg.setAction(serviceDict==null?null:serviceDict.getAction()); + cfg.setCfgRegionCode(regionDict.getConfigRegionCode()); + cfg.setCfgType(regionDict.getConfigRegionValue()); + cfg.setCreateTime(date); + cfg.setCreatorId(UserUtils.getUser().getId()); + cfg.setFunctionId(regionDict.getFunctionId()); + if(isSend.equals("1")) { + cfg.setIsAudit(Constants.AUDIT_YES); + cfg.setIsValid(Constants.VALID_YES); + cfg.setAuditorId(UserUtils.getUser().getId()); + cfg.setAuditTime(date); + if(groupIds!=null&&groupIds.size()==_ipPortCfgs.size()) { + cfg.setGroupId(groupIds.get(ind)); + } + if(regionIds!=null&®ionIds.size()==_ipPortCfgs.size()) { + cfg.setRegionId(regionIds.get(ind)); + } + if(serviceDict!=null&&serviceDict.getProtocolId()!=null) { + if(numRegionGroupIds!=null&&numRegionGroupIds.size()==_ipPortCfgs.size()) { + cfg.setNumberRegionGroupId(numRegionGroupIds.get(ind)); + } + if(numRegionRegionIds!=null&&numRegionRegionIds.size()==_ipPortCfgs.size()) { + cfg.setNumberRegionRegionId(numRegionRegionIds.get(ind)); + } + } + }else { + cfg.setIsAudit(Constants.AUDIT_NOT_YET); + cfg.setIsValid(Constants.VALID_NO); + } + cfg.setIsAreaEffective(0); + cfg.setLable("0"); + cfg.setRequestId(StringUtil.isEmpty(requestId) ? 0 : requestId); + cfg.setAttribute(attribute); + cfg.setClassify(classify); + cfg.setServiceId(serviceDict==null?null:serviceDict.getServiceId()); + cfg.setTableName("ip_port_cfg"); + if(compileIds.size()==_ipPortCfgs.size()) { + cfg.setCompileId(compileIds.get(ind)); + } + + // 保存IP仿冒池 + PxyObjSpoofingIpPool spoofingPool = new PxyObjSpoofingIpPool(); + spoofingPool.setIpType(4);//ipv4 + spoofingPool.setIpAddress(cfg.getUserRegion2());//仿冒IP + spoofingPool.setProtocol(0); + if("dnat".equals(cfg.getUserRegion1().toLowerCase())){//spoofing server ip->dnat + spoofingPool.setDirection(1); + }else{ + spoofingPool.setDirection(2);//spoofing client ip->snat + } + spoofingPool.setPort("0"); + spoofingPool.setUserRegion("0"); + spoofingPool.setLocation(0); + spoofingPool.setServiceId(642); + spoofingPool.setAreaEffectiveIds("0"); + spoofingPool.setIsAreaEffective(0); + spoofingPool.setCreateTime(date); + spoofingPool.setCreatorId(UserUtils.getUser().getId()); + if(spoofingPoolIds.size()==_ipPortCfgs.size()) { + spoofingPool.setCompileId(spoofingPoolIds.get(ind)); + } + spoofingPool.setAction(1); + spoofingPool.setFunctionId(666); + spoofingPool.setRequestId(0); + if(isSend.equals("1")) { + spoofingPool.setIsAudit(Constants.AUDIT_YES); + spoofingPool.setIsValid(Constants.VALID_YES); + spoofingPool.setAuditorId(UserUtils.getUser().getId()); + spoofingPool.setAuditTime(date); + + }else { + spoofingPool.setIsValid(Constants.VALID_NO); + spoofingPool.setIsAudit(Constants.AUDIT_NOT_YET); + + } + pxyObjSpoofingIpPoolDao.insert(spoofingPool);//保存仿冒IP池配置 + cfg.setUserRegion3(String.valueOf(spoofingPool.getCfgId()));//将仿冒IP池配置ID作为策略组ID + + if(isSend.equals("1")) { + PxyObjSpoofingIpPool pool=new PxyObjSpoofingIpPool(); + pool.setCfgId(Long.valueOf(cfg.getUserRegion3())); + pool.setIsValid(cfg.getIsValid()); + pool.setIsAudit(cfg.getIsAudit()); + pool.setAuditorId(UserUtils.getUser().getId()); + pool.setAuditTime(date); + pxyObjSpoofingIpPoolDao.update(pool); + + spoofingPool.setAreaEffectiveIds("0"); + spoofingPool.setGroupId(spoofingPool.getCfgId().intValue()); + spoofingPools.add(spoofingPool); + } + + CfgIndexInfo cfgIndexInfo = new CfgIndexInfo(); + BeanUtils.copyProperties(cfg, cfgIndexInfo,new String[] {"cfgId"}); + cfgIndexInfos.add(cfgIndexInfo); + + ind++; + } + if(isSend.equals("1") && spoofingPools.size()>0) { + pxyObjSpoofingIpPoolService.auditSpoofingPool(spoofingPools); + } + ipCfgService.saveAndSend(regionDict, serviceDict, specificServiceCfg, _ipPortCfgs, cfgIndexInfos, appPolicyCfgs,appFeatureIndexs,asnNoMaps,isSend.equals("1")); + cfgIndexInfos.clear(); + appPolicyCfgs.clear(); + _ipPortCfgs.clear(); + } }else { List _ipPortCfgs=Lists.newArrayList(Constants.MAAT_JSON_SEND_SIZE); while(!ipPortCfgs.isEmpty()) { @@ -1643,7 +1818,7 @@ public class BaseController { cfg.setCfgType(regionDict.getConfigRegionValue()); cfg.setCreateTime(date); cfg.setCreatorId(UserUtils.getUser().getId()); - cfg.setDoLog(2); + //cfg.setDoLog(2); cfg.setFunctionId(regionDict.getFunctionId()); if(isSend.equals("1")) { cfg.setIsAudit(Constants.AUDIT_YES); @@ -1793,7 +1968,7 @@ public class BaseController { cfg.setCfgType(regionDict.getConfigRegionValue()); cfg.setCreateTime(date); cfg.setCreatorId(UserUtils.getUser().getId()); - cfg.setDoLog(2); + //cfg.setDoLog(2); cfg.setFunctionId(regionDict.getFunctionId()); if(isSend.equals("1")) { cfg.setIsAudit(Constants.AUDIT_YES); @@ -1889,7 +2064,7 @@ public class BaseController { cfg.setCfgType(regionDict.getConfigRegionValue()); cfg.setCreateTime(date); cfg.setCreatorId(UserUtils.getUser().getId()); - cfg.setDoLog(2); + //cfg.setDoLog(2); cfg.setFunctionId(regionDict.getFunctionId()); if(isSend.equals("1")) { cfg.setIsAudit(Constants.AUDIT_YES); @@ -1945,12 +2120,12 @@ public class BaseController { for (ComplexkeywordCfg cfg : _complexkeywordCfgs) { cfg.setAction(serviceDict.getAction()); /*cfg.setAuditorId(UserUtils.getUser().getId()); - cfg.setAuditTime(date);*/ + cfg.setAuditTime(date);*/ cfg.setCfgRegionCode(regionDict.getConfigRegionCode()); cfg.setCfgType(regionDict.getConfigRegionValue()); cfg.setCreateTime(date); cfg.setCreatorId(UserUtils.getUser().getId()); - cfg.setDoLog(2); + //cfg.setDoLog(2); cfg.setFunctionId(regionDict.getFunctionId()); if(isSend.equals("1")) { cfg.setIsAudit(Constants.AUDIT_YES); @@ -2235,6 +2410,8 @@ public class BaseController { if (regionDict.getFunctionId().equals(5)) { if (serviceDict!=null&&serviceDict.getAction().equals(64)) { ei.loadInitParams(IpRateLimitTemplate.class, msgProp, regionDict, serviceDict); + } else if(serviceDict!=null&&serviceDict.getAction().equals(32)) { + ei.loadInitParams(IpAllNotDoLogTemplate.class, msgProp, regionDict, serviceDict); } else { ei.loadInitParams(IpAllTemplate.class, msgProp, regionDict, serviceDict); } @@ -2257,8 +2434,18 @@ public class BaseController { ei.loadInitParams(HttpsRedirectIpTemplate.class, this.getMsgProp(), regionDict, serviceDict); } else if(regionDict.getFunctionId().equals(209)){// HTTP(s)替换 ei.loadInitParams(HttpsReplaceIpTemplate.class, this.getMsgProp(), regionDict, serviceDict); - } else if(regionDict.getFunctionId().equals(200) && serviceDict.getAction().intValue()==64){// 拦截策略(限速) - ei.loadInitParams(IpRateLimitTemplate.class, msgProp, regionDict, serviceDict); + } else if(regionDict.getFunctionId().equals(211)){// HTTP(s)白名单 + ei.loadInitParams(IpAllNotDoLogTemplate.class, this.getMsgProp(), regionDict, serviceDict); + } else if(regionDict.getFunctionId().equals(200)){// 拦截策略 + if(serviceDict.getAction().intValue()==64) { + ei.loadInitParams(IpRateLimitTemplate.class, msgProp, regionDict, serviceDict); + }else { + ei.loadInitParams(IpAllNotDoLogTemplate.class, msgProp, regionDict, serviceDict); + } + } else if(regionDict.getFunctionId().equals(3)) { // IP白名单 + ei.loadInitParams(IpWhitelistTemplate.class, msgProp, regionDict, serviceDict); + } else if(regionDict.getFunctionId().equals(214)) { // IpSpoofing + ei.loadInitParams(IpSpoofingTemplate.class, msgProp, regionDict, serviceDict); } else { ei.loadInitParams(IpAllTemplate.class, msgProp, regionDict, serviceDict); } @@ -2282,6 +2469,8 @@ public class BaseController { ei.loadInitParams(HttpsRedirectTemplate.class, this.getMsgProp(), regionDict, serviceDict); }else if(regionDict.getFunctionId().equals(209)){// HTTP(s)替换 ei.loadInitParams(HttpsReplaceTemplate.class, this.getMsgProp(), regionDict, serviceDict); + }else if(regionDict.getFunctionId().equals(211)){// HTTP(s)白名单 + ei.loadInitParams(StringAllNotDoLogTemplate.class, this.getMsgProp(), regionDict, serviceDict); }else if(regionDict.getFunctionId().equals(560)){// 主题网站 ei.loadInitParams(TopicWebsiteTemplate.class, this.getMsgProp(), regionDict, serviceDict); }else { @@ -2297,6 +2486,8 @@ public class BaseController { ei.loadInitParams(HttpsRedirectComplexTemplate.class, this.getMsgProp(), regionDict, serviceDict); }else if(regionDict.getFunctionId().equals(209)){// HTTP(s)替换 ei.loadInitParams(HttpsReplaceComplexTemplate.class, this.getMsgProp(), regionDict, serviceDict); + }else if(regionDict.getFunctionId().equals(211)){// HTTP(s)白名单 + ei.loadInitParams(ComplexStringAllNotDoLogTemplate.class, this.getMsgProp(), regionDict, serviceDict); }else if(regionDict.getFunctionId().equals(563)) {// APP Payload ei.loadInitParams(AppPayloadTemplate.class, this.getMsgProp(), regionDict, serviceDict); } else { @@ -3226,5 +3417,91 @@ public class BaseController { return hasData; } - + /** + * 通过serviceIds 和 compileIds获取日志总量 + * */ + public List> getLogTotal(Long endTime,String serviceIds,String compileIds){ + List> dataList=new ArrayList<>(); + SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT); + Date endDate=null; + Date startDate=null; + if(endTime!=null) { + if(StringUtils.isNotBlank(Constants.LOG_TIME_START)) { + try { + startDate=sdf.parse(Constants.LOG_TIME_START); + if(StringUtils.isNotBlank(Constants.LOG_TIME_END)) { + endDate=sdf.parse(Constants.LOG_TIME_END); + }else { + endDate=new Date(endTime); + } + } catch (ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + }else { + Calendar cal=Calendar.getInstance(); + //分钟间隔 + int interval=Constants.LOG_TIME_RANGE/1000/60; + cal.setTimeInMillis(endTime); + if(interval<60) {//5分钟 + cal.set(Calendar.SECOND, 0); + int minute=cal.get(Calendar.MINUTE); + cal.set(Calendar.MINUTE,minute/interval*interval); + }else {//1小时 + cal.set(Calendar.SECOND, 0); + cal.set(Calendar.MINUTE, 0); + } + Calendar endTimeCal=Calendar.getInstance(); + endTimeCal.setTimeInMillis(cal.getTimeInMillis()); + //endTimeCal.add(Calendar.SECOND, -1); + endDate=endTimeCal.getTime(); + cal.add(Calendar.MINUTE, -interval); + startDate=cal.getTime(); + } + logger.info("log search end time:"+sdf.format(endDate)); + logger.info("log search start time:"+sdf.format(startDate)); + } + List list=null; + try { + //调用带有超时时间的方法,设置与页面ajax获取total log 超时时间保持一致 页面设置在pzlog.js + String json=ConfigServiceUtil.getReport(Constants.BUSINESSTYPE_CONFIG, compileIds, serviceIds, startDate==null?null:sdf.format(startDate), endDate==null?null:sdf.format(endDate),Constants.CLIENT_CONNECT_TIMEOUT,10000); + list=getList(json); + } catch (Exception e) { + logger.error("获取日志总量失败!",e); + + } + + String[] idArr=compileIds.split(","); + for(String id:idArr) { + Map data=new HashMap(); + data.put("compileId", id); + Long sum=(long) 0; + if(list!=null&&(list.size()>0)){ + for(NtcPzReport report:list) { + if(Long.valueOf(id).longValue() == report.getCfgId().longValue()){ + sum=report.getSum().longValue(); + break; + } + } + } + data.put("sum",sum); + dataList.add(data); + } + return dataList; + } + public List getList(String json){ + JSONObject obj=JSONObject.fromObject(json); + if(obj.containsKey("data")) { + JSONObject data= obj.getJSONObject("data"); + if(data.containsKey("list")) { + Object list=data.get("list"); + JSONArray array=JSONArray.fromObject(list); + List result=JSONArray.toList(array, new NtcPzReport(),new JsonConfig()); + return result; + } + + } + return new ArrayList(); + } } diff --git a/src/main/java/com/nis/web/controller/basics/AsnGroupController.java b/src/main/java/com/nis/web/controller/basics/AsnGroupController.java index a00e3d8ef..083aec09a 100644 --- a/src/main/java/com/nis/web/controller/basics/AsnGroupController.java +++ b/src/main/java/com/nis/web/controller/basics/AsnGroupController.java @@ -1,5 +1,10 @@ package com.nis.web.controller.basics; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import java.util.Properties; import javax.servlet.http.HttpServletRequest; @@ -97,6 +102,8 @@ public class AsnGroupController extends BaseController { public String delete(RedirectAttributes redirectAttributes,String ids,String asnIds) { try { asnGroupInfoService.delete(ids,asnIds); + //TODO 查询本次删除的所有asnOrg组中是否存在asn 没有is_used=0的asn,如果存在则需要将整个组删除 + addMessage(redirectAttributes,"success","delete_success"); } catch (Exception e) { logger.error("删除失败",e); @@ -178,5 +185,38 @@ public class AsnGroupController extends BaseController { return true; } - + /** + * 异步获取ASN组织信息 + * @param model + * @return + */ + @RequestMapping(value="ajaxGetAsnOrg") + @ResponseBody + public List ajaxGetAsnOrg( ConfigGroupInfo orgGroup,Model model){ + List orgaList=new ArrayList<>(); + try { + orgaList=configGroupInfoService.findAllList(orgGroup); + } catch (Exception e) { + logger.error("异步获取ASN组织信息失败",e); + return orgaList; + } + return orgaList; + } + /** + * 异步获取ASN组织信息 + * @param model + * @return + */ + @RequestMapping(value="ajaxGetAsnNo") + @ResponseBody + public List ajaxGetAsnNo(AsnGroupInfo asnGroup,Model model){ + List orgaList=new ArrayList<>(); + try { + orgaList=asnGroupInfoService.findAsnGroupList(asnGroup); + } catch (Exception e) { + logger.error("异步获取ASN NO信息失败",e); + return orgaList; + } + return orgaList; + } } diff --git a/src/main/java/com/nis/web/controller/basics/AsnIpController.java b/src/main/java/com/nis/web/controller/basics/AsnIpController.java index ae36a28f2..0ddf3a693 100644 --- a/src/main/java/com/nis/web/controller/basics/AsnIpController.java +++ b/src/main/java/com/nis/web/controller/basics/AsnIpController.java @@ -134,7 +134,20 @@ public class AsnIpController extends BaseController{ asnIpMap.put(Long.parseLong(asnIpCfg.getUserRegion1()), _asnIps); } } - asnIpCfgService.auditIpBatch(asnIpMap,isValid); + /********************每次下发一个组的region,保证事物********************/ + for (Long asnId : asnIpMap.keySet()) { + try { + asnIpCfgService.auditIpBatch(asnIpMap.get(asnId),asnId,isValid); + } catch (Exception e) { + logger.error("配置下发失败:",e); + if(e instanceof MaatConvertException) { + addMessage(redirectAttributes,"error", "request_service_failed"); + }else { + addMessage(redirectAttributes,"error", "audit_failed"); + } + + } + } }/*else { //条件下所有配置审核 Page searchPage=new Page(request,response,"a"); diff --git a/src/main/java/com/nis/web/controller/configuration/AppCfgController.java b/src/main/java/com/nis/web/controller/configuration/AppCfgController.java index 00c2b9c13..4a24d7427 100644 --- a/src/main/java/com/nis/web/controller/configuration/AppCfgController.java +++ b/src/main/java/com/nis/web/controller/configuration/AppCfgController.java @@ -4,8 +4,10 @@ import java.io.File; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -1706,13 +1708,37 @@ public class AppCfgController extends BaseController { Page page = appCfgService.findAppPolicyList(pageInfo, entity); ipLists = page.getList(); } - + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(","); + Set set=new HashSet(); for (AppPolicyCfg policy : ipLists) { + if(policy.getIsAudit()!=0){ + set.add(policy.getServiceId()); + compileIds.append(policy.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", policy.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } SpecificServiceCfg app = specificServiceCfgService.getBySpecServiceId(policy.getSpecServiceId()); if (app != null) { policy.setSocialName(app.getSpecServiceName()); } } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } // 查找社交应用的所有有效二级特定服务 SpecificServiceCfg second = new SpecificServiceCfg(); for (SysDataDictionaryItem dict : DictUtils.getDictList("SPECIFIC_SERVICE_CFG_TYPE")) { @@ -1726,6 +1752,12 @@ public class AppCfgController extends BaseController { List secondList = specificServiceCfgService.findAllSpecificServiceCfg(second, null); // 遍历,找到匹配项后将行为设置进去 for (AppPolicyCfg policy : ipLists) { + for (Map logTotal : logTotals) { + if(policy.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + policy.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } if (policy.getBehavCode() == null) continue; for (SpecificServiceCfg secondCfg : secondList) { @@ -1743,7 +1775,7 @@ public class AppCfgController extends BaseController { classMap.put(entity.getMenuNameCode(), AppPolicyCfg.class); classMap.put("NTC_IP", IpPortCfg.class); classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class); - String cfgIndexInfoNoExport = ",encrypted_tunnel_behavior,basic_protocol,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",do_blacklist,encrypted_tunnel_behavior,basic_protocol,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator" + ",config_time,editor,edit_time,auditor,audit_time" + ",letter,whether_area_block,classification,attribute,label" diff --git a/src/main/java/com/nis/web/controller/configuration/BasicProtocolController.java b/src/main/java/com/nis/web/controller/configuration/BasicProtocolController.java index 8a4456ec6..7c42deb20 100644 --- a/src/main/java/com/nis/web/controller/configuration/BasicProtocolController.java +++ b/src/main/java/com/nis/web/controller/configuration/BasicProtocolController.java @@ -1,10 +1,15 @@ package com.nis.web.controller.configuration; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -24,15 +29,21 @@ import com.nis.domain.configuration.BaseStringCfg; import com.nis.domain.configuration.CfgIndexInfo; import com.nis.domain.configuration.IpPortCfg; import com.nis.domain.configuration.NtcSubscribeIdCfg; +import com.nis.domain.report.NtcPzReport; import com.nis.domain.specific.ConfigGroupInfo; import com.nis.domain.specific.SpecificServiceCfg; import com.nis.exceptions.CallExternalProceduresException; import com.nis.exceptions.MaatConvertException; +import com.nis.util.ConfigServiceUtil; import com.nis.util.Constants; import com.nis.util.StringUtil; import com.nis.web.controller.BaseController; import com.nis.web.security.UserUtils; +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; +import net.sf.json.JsonConfig; + /** * 基础协议控制类 * @@ -283,20 +294,46 @@ public class BasicProtocolController extends BaseController { Page page = appCfgService.findAppPolicyList(pageInfo, entity); ipLists = page.getList(); } + + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids for (AppPolicyCfg policy : ipLists) { + if(policy.getIsAudit()!=0){ + set.add(policy.getServiceId()); + compileIds.append(policy.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", policy.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } SpecificServiceCfg app = specificServiceCfgService.getBySpecServiceId(policy.getSpecServiceId()); if (app != null) { policy.setAppName(app.getSpecServiceName()); } } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } titleList.add(entity.getMenuNameCode()); titleList.add("NTC_IP"); titleList.add("NTC_SUBSCRIBE_ID"); classMap.put(entity.getMenuNameCode(), AppPolicyCfg.class); classMap.put("NTC_IP", IpPortCfg.class); classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class); - String cfgIndexInfoNoExport = ",encrypted_tunnel_behavior,behaviour_type,social_app,behaviour_type,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",do_blacklist,encrypted_tunnel_behavior,behaviour_type,social_app,behaviour_type,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator" + ",config_time,editor,edit_time,auditor,audit_time" + ",letter,whether_area_block,classification,attribute,label" @@ -326,6 +363,12 @@ public class BasicProtocolController extends BaseController { List ipList = new ArrayList(); List subscribeInfoList = new ArrayList(); for (AppPolicyCfg cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } AppPolicyCfg cfgIndexInfo = appCfgService.exportIpInfo(cfg); ipList.addAll(cfgIndexInfo.getIpPortList()); subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList()); @@ -353,5 +396,5 @@ public class BasicProtocolController extends BaseController { // return "redirect:" + adminPath // +"/ntc/iplist/list?functionId="+entity.getFunctionId(); } - + } diff --git a/src/main/java/com/nis/web/controller/configuration/EncryptedTunnelBehaviorController.java b/src/main/java/com/nis/web/controller/configuration/EncryptedTunnelBehaviorController.java index 27b5b6e4f..8c2666dfa 100644 --- a/src/main/java/com/nis/web/controller/configuration/EncryptedTunnelBehaviorController.java +++ b/src/main/java/com/nis/web/controller/configuration/EncryptedTunnelBehaviorController.java @@ -3,8 +3,10 @@ package com.nis.web.controller.configuration; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -307,12 +309,37 @@ public class EncryptedTunnelBehaviorController extends BaseController { Page page = appCfgService.findAppPolicyList(pageInfo, entity); ipLists = page.getList(); } + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids for (AppPolicyCfg policy : ipLists) { + if(policy.getIsAudit()!=0){ + set.add(policy.getServiceId()); + compileIds.append(policy.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", policy.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } SpecificServiceCfg app = specificServiceCfgService.getBySpecServiceId(policy.getSpecServiceId()); if (app != null) { policy.setBehaviorName(app.getSpecServiceName()); } } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } // 查找社交应用的所有有效二级特定服务 SpecificServiceCfg second = new SpecificServiceCfg(); for (SysDataDictionaryItem dict : DictUtils.getDictList("SPECIFIC_SERVICE_CFG_TYPE")) { @@ -343,7 +370,7 @@ public class EncryptedTunnelBehaviorController extends BaseController { classMap.put(entity.getMenuNameCode(), AppPolicyCfg.class); classMap.put("NTC_IP", IpPortCfg.class); classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class); - String cfgIndexInfoNoExport = ",social_app,basic_protocol,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",do_blacklist,social_app,basic_protocol,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator" + ",config_time,editor,edit_time,auditor,audit_time" + ",letter,whether_area_block,classification,attribute,label" @@ -373,6 +400,12 @@ public class EncryptedTunnelBehaviorController extends BaseController { List ipList = new ArrayList(); List subscribeInfoList = new ArrayList(); for (AppPolicyCfg cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } AppPolicyCfg cfgIndexInfo = appCfgService.exportIpInfo(cfg); ipList.addAll(cfgIndexInfo.getIpPortList()); subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList()); diff --git a/src/main/java/com/nis/web/controller/configuration/LogSearchController.java b/src/main/java/com/nis/web/controller/configuration/LogSearchController.java index 32ecb96fc..3866b4bce 100644 --- a/src/main/java/com/nis/web/controller/configuration/LogSearchController.java +++ b/src/main/java/com/nis/web/controller/configuration/LogSearchController.java @@ -1,14 +1,32 @@ package com.nis.web.controller.configuration; +import java.net.URISyntaxException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - +import org.apache.http.client.utils.URIBuilder; import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.mvc.support.RedirectAttributes; - +import com.beust.jcommander.internal.Maps; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.reflect.TypeToken; import com.nis.domain.log.BaseLogEntity; +import com.nis.util.Constants; +import com.nis.util.StringUtil; +import com.nis.util.httpclient.HttpClientUtil; import com.nis.web.controller.BaseController; +import net.sf.json.JSONObject; @Controller @RequestMapping("${adminPath}/toLogSearch") @@ -36,4 +54,99 @@ public class LogSearchController extends BaseController{ attr.addAttribute("isLogTotalSearch", entity.getIsLogTotalSearch()); return "redirect:"+adminPath+logUrl; } + + + @RequestMapping(value = {"logTrend"}) + public String logTrend(Model model,BaseLogEntity entity,String cfgId,String serviceId,RedirectAttributes attr, HttpServletRequest request, + HttpServletResponse response) { + Calendar cal = Calendar. getInstance (); + cal.setTime(new Date()); + String now = new SimpleDateFormat( "yyyy-MM-dd HH:mm:00" ).format(cal.getTime());//获取到完整的时间 + cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1); + String oneHoursAgo = new SimpleDateFormat( "yyyy-MM-dd HH:mm:00" ).format(cal.getTime()); + model.addAttribute("beginDate", oneHoursAgo); + model.addAttribute("endDate", now); + model.addAttribute("cfgId", cfgId); + model.addAttribute("serviceId", serviceId); + return "/cfg/logCfgTrendList"; + } + + @RequestMapping(value="actionLogTrend") + @ResponseBody + public List actionTrans(String cfgId,String beginDate,String endDate,String serviceId){ + Map fromJsonList = new HashMap(); + List resultList = new ArrayList(); + String url = Constants.LOG_BASE_URL+Constants.NTC_PZ_REPORT; + url=url+"?searchBusinessType=2&searchCfgId="+cfgId; + if(!StringUtil.isEmpty(serviceId)){ + url=url+"&searchService="+serviceId; + } + try { + //String url="http://192.168.10.204:9999/galaxy-service/service/log/v1/ntcPzReport?searchBusinessType=2&searchReportStartTime=2018-12-29%2000:00:00&searchReportEndTime=2018-12-30%2000:00:00"; + url = urlAddDate(url,beginDate,endDate); + //String json=ConfigServiceUtil.getReport(url.toString(), null); + String json = HttpClientUtil.get(url); + Gson gson = new GsonBuilder().create(); + fromJsonList = gson.fromJson(json, new TypeToken(){}.getType()); + fromJsonList=(Map) fromJsonList.get("data"); + logger.debug("日志趋势数据"+fromJsonList); + JSONObject obj=JSONObject.fromObject(json); + resultList =getList(fromJsonList); + + } catch (Exception e) { + e.printStackTrace(); + resultList.add(Maps.newHashMap("error","request_service_failed")); + } + return resultList; + } + + public List getList(Map dateList){ + List> resultList = new ArrayList>(); + try { + List> mapList=(List>) dateList.get("list"); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Map maps=new HashMap(); + List list=new ArrayList(); + Double total=0.0; + for (Map map : mapList) { + Double[] logs=new Double[2]; + Double sum=Double.valueOf(String.valueOf(map.get("sum"))); + Double date=Double.valueOf(sdf.parse(String.valueOf(map.get("reportTime"))).getTime()); + total+=sum; + logs[0]=date; + logs[1]=sum; + list.add(logs); + } + maps.put("sum",total); + maps.put("result", list); + resultList.add(maps); + } catch (Exception e) { + e.printStackTrace(); + } + return resultList; + } + + /** + * + * + * url路径时间参数格式化 + * @param url + * @param beginDate + * @param endDate + * @return + * @throws URISyntaxException + */ + public String urlAddDate(String url,String beginDate,String endDate) throws URISyntaxException{ + if(StringUtil.isBlank(beginDate)||StringUtil.isBlank(endDate)){ + Calendar cal = Calendar. getInstance (); + cal.setTime(new Date()); + endDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:00" ).format(cal.getTime());//获取到完整的时间 + cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1); + beginDate = new SimpleDateFormat( "yyyy-MM-dd HH:mm:00" ).format(cal.getTime()); + } + URIBuilder uriBuilder = new URIBuilder(url); + uriBuilder.addParameter("searchReportStartTime",beginDate); + uriBuilder.addParameter("searchReportEndTime",endDate); + return uriBuilder.toString(); + } } diff --git a/src/main/java/com/nis/web/controller/configuration/maintenance/DnsResStrategyController.java b/src/main/java/com/nis/web/controller/configuration/maintenance/DnsResStrategyController.java index c87146bdd..b47a850f1 100644 --- a/src/main/java/com/nis/web/controller/configuration/maintenance/DnsResStrategyController.java +++ b/src/main/java/com/nis/web/controller/configuration/maintenance/DnsResStrategyController.java @@ -194,7 +194,7 @@ public class DnsResStrategyController extends BaseController { } titleList.add(entity.getMenuNameCode()); classMap.put(entity.getMenuNameCode(), DnsResStrategy.class); - String cfgIndexInfoNoExport = ",cfg_id,valid_identifier,do_log,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,&config_describe:policy_name-"; + String cfgIndexInfoNoExport = ",cfg_id,do_log,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,&config_describe:policy_name-"; // 时间过滤 if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) { diff --git a/src/main/java/com/nis/web/controller/configuration/manipulation/DdosCfgController.java b/src/main/java/com/nis/web/controller/configuration/manipulation/DdosCfgController.java index 465a92917..73df9f61b 100644 --- a/src/main/java/com/nis/web/controller/configuration/manipulation/DdosCfgController.java +++ b/src/main/java/com/nis/web/controller/configuration/manipulation/DdosCfgController.java @@ -3,8 +3,10 @@ package com.nis.web.controller.configuration.manipulation; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -159,6 +161,35 @@ public class DdosCfgController extends BaseController { Page page = ddosCfgService.findPage(pageInfo, entity); ipLists = page.getList(); } + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (DdosIpCfg cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!com.nis.util.StringUtils.isBlank(serviceIdsStr)&&!com.nis.util.StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } + /* * //导出选中记录 if(!StringUtil.isEmpty(ids)){ for(String * id:ids.split(",")){ Long.parseLong(id); } //List @@ -169,7 +200,7 @@ public class DdosCfgController extends BaseController { titleList.add(entity.getMenuNameCode()); classMap.put(entity.getMenuNameCode(), DdosIpCfg.class); - String cfgIndexInfoNoExport = ",do_log,client_ip,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",client_ip,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; // 时间过滤 if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) { @@ -186,6 +217,15 @@ public class DdosCfgController extends BaseController { } noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport); + + for (DdosIpCfg cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } + } dataMap.put(entity.getMenuNameCode(), ipLists); String timeRange = initTimeMap(entity); diff --git a/src/main/java/com/nis/web/controller/configuration/manipulation/IpMultiplexController.java b/src/main/java/com/nis/web/controller/configuration/manipulation/IpMultiplexController.java index df8f9a255..ba21d0979 100644 --- a/src/main/java/com/nis/web/controller/configuration/manipulation/IpMultiplexController.java +++ b/src/main/java/com/nis/web/controller/configuration/manipulation/IpMultiplexController.java @@ -11,13 +11,16 @@ package com.nis.web.controller.configuration.manipulation; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; 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.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -451,6 +454,33 @@ public class IpMultiplexController extends CommonController { Page page = ipMultiplexService.findPage(pageInfo,entity); ipLists = page.getList(); } + //日志总量 + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (IpReusePolicyCfg cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } List addrPools = ipAddrPoolCfgService.getEffectiveAddrPool(); for (IpReusePolicyCfg ipReusePolicyCfg : ipLists) { if(ipReusePolicyCfg.getAddrPoolId()!=null){ @@ -487,6 +517,14 @@ public class IpMultiplexController extends CommonController { } noExportMap.put(entity.getMenuNameCode(), snatNoExport); + for (IpReusePolicyCfg cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } + } dataMap.put(entity.getMenuNameCode(), ipLists); String timeRange = initTimeMap(entity); @@ -528,7 +566,34 @@ public class IpMultiplexController extends CommonController { Page page = ipMultiplexService.findPageDnat(pageInfo, entity); ipLists = page.getList(); } - + + //日志总量 + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (BaseIpCfg cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } titleList.add(entity.getMenuNameCode()); classMap.put(entity.getMenuNameCode(), IpReuseDnatPolicyCfg.class); String snatNoExport = ",group_name,block_type,direction,client_ip,ip_type,ip_pattern,port_pattern,client_port,ir_type,do_log,whether_area_block,userregion1,userregion2,userregion3,userregion4,userregion5,"; @@ -548,6 +613,14 @@ public class IpMultiplexController extends CommonController { } noExportMap.put(entity.getMenuNameCode(), snatNoExport); + for (BaseIpCfg cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } + } dataMap.put(entity.getMenuNameCode(),ipLists); String timeRange = initTimeMap(entity); diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/AvContentController.java b/src/main/java/com/nis/web/controller/configuration/ntc/AvContentController.java index baf8f5bf4..66f128f2c 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/AvContentController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/AvContentController.java @@ -3,9 +3,11 @@ package com.nis.web.controller.configuration.ntc; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -934,6 +936,35 @@ public class AvContentController extends BaseController { Page page = avContentCfgService.findPage(pageInfo, entity); ipLists = page.getList(); } + + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } titleList.add(entity.getMenuNameCode()); titleList.add("NTC_UNIVERSAL_IP"); titleList.add("NTC_STREAMING_MEDIA_URL"); @@ -979,6 +1010,12 @@ public class AvContentController extends BaseController { List subscribeInfoList = new ArrayList(); List streamurlList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } Map maps = avContentCfgService.exportstream(cfg); ipList.addAll(maps.get("NTC_UNIVERSAL_IP")); streamurlList.addAll(maps.get("NTC_STREAMING_MEDIA_URL")); @@ -1032,7 +1069,35 @@ public class AvContentController extends BaseController { entity); ipLists = page.getList(); } - + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } + titleList.add(entity.getMenuNameCode()); titleList.add("NTC_UNIVERSAL_IP"); titleList.add("NTC_VOIP_ACCOUNT"); @@ -1078,6 +1143,12 @@ public class AvContentController extends BaseController { List subscribeInfoList = new ArrayList(); List countlList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } Map maps = avContentCfgService.exportvoip(cfg); ipList.addAll(maps.get("NTC_UNIVERSAL_IP")); countlList.addAll(maps.get("NTC_VOIP_ACCOUNT")); diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/AvController.java b/src/main/java/com/nis/web/controller/configuration/ntc/AvController.java index 32baf47df..c353daa68 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/AvController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/AvController.java @@ -8,9 +8,11 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; import java.util.UUID; import javax.servlet.http.HttpServletRequest; @@ -598,11 +600,41 @@ public class AvController extends BaseController { Page page = avCfgService.getAvFileSampleList(pageInfo, entity); ipLists = page.getList(); } - // 条件导出数据大于最大导出数,只导出最大导出条数 + //日志总量 + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (AvFileSampleCfg cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } + + // 条件导出数据大于最大导出数,只导出最大导出条数 titleList.add(entity.getMenuNameCode()); classMap.put(entity.getMenuNameCode(), AvFileSampleCfg.class); - String cfgIndexInfoNoExport = ",group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",do_log,whether_area_block,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; // 时间过滤 if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) { @@ -619,6 +651,14 @@ public class AvController extends BaseController { } noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport); + for (AvFileSampleCfg cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } + } dataMap.put(entity.getMenuNameCode(), ipLists); String timeRange = initTimeMap(entity); diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/BgpCfgController.java b/src/main/java/com/nis/web/controller/configuration/ntc/BgpCfgController.java index e7326b2f7..1f8bc8129 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/BgpCfgController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/BgpCfgController.java @@ -1,10 +1,13 @@ package com.nis.web.controller.configuration.ntc; import java.util.ArrayList; +import java.util.Collections; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -198,6 +201,36 @@ public class BgpCfgController extends BaseController { Page page = bgpCfgService.getBgpList(pageInfo, entity); ipLists = page.getList(); } + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } + + titleList.add(entity.getMenuNameCode()); titleList.add("NTC_IP"); titleList.add("NTC_BGP_AS"); @@ -206,7 +239,7 @@ public class BgpCfgController extends BaseController { classMap.put("NTC_IP", IpPortCfg.class); classMap.put("NTC_BGP_AS", BaseStringCfg.class); // classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class); - String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",do_blacklist,policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator" + ",config_time,editor,edit_time,auditor,audit_time" + ",letter,whether_area_block,classification,attribute,label" @@ -243,6 +276,12 @@ public class BgpCfgController extends BaseController { // ArrayList(); List asInfoList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } CfgIndexInfo cfgIndexInfo = bgpCfgService.exportbgp(cfg); ipList.addAll(cfgIndexInfo.getIpPortList()); // subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList()); diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/FileTransferCfgController.java b/src/main/java/com/nis/web/controller/configuration/ntc/FileTransferCfgController.java index 98d141c71..36311bd3e 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/FileTransferCfgController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/FileTransferCfgController.java @@ -6,8 +6,10 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.UUID; import javax.servlet.http.HttpServletRequest; @@ -624,6 +626,34 @@ public class FileTransferCfgController extends BaseController { ipLists = page.getList(); } + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } titleList.add(entity.getMenuNameCode()); titleList.add("NTC_UNIVERSAL_IP"); titleList.add("NTC_FTP_URL"); @@ -673,6 +703,12 @@ public class FileTransferCfgController extends BaseController { List ftpkeyList = new ArrayList(); List ftpurlList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } Map maps = fileTransferCfgService.exportftp(cfg); ftpkeyList.addAll(maps.get("NTC_FTP_CONTENT")); ftpurlList.addAll(maps.get("NTC_FTP_URL")); @@ -730,6 +766,34 @@ public class FileTransferCfgController extends BaseController { ipLists = page.getList(); } + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } titleList.add(entity.getMenuNameCode()); titleList.add("NTC_UNIVERSAL_IP"); titleList.add("NTC_P2P_KEYWORDS"); @@ -783,6 +847,12 @@ public class FileTransferCfgController extends BaseController { List hashList = new ArrayList(); List keywordList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } Map maps = fileTransferCfgService.exportp2p(cfg); keywordList.addAll(maps.get("NTC_P2P_KEYWORDS")); hashList.addAll(maps.get("NTC_P2P_HASH_BIN")); @@ -838,9 +908,39 @@ public class FileTransferCfgController extends BaseController { ipLists = page.getList(); } + //日志总量 + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (FileDigestCfg cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } + titleList.add(entity.getMenuNameCode()); classMap.put(entity.getMenuNameCode(), FileDigestCfg.class); - String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",do_log,policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; // 时间过滤 if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) { @@ -856,7 +956,15 @@ public class FileTransferCfgController extends BaseController { cfgIndexInfoNoExport = "," + entity.gethColumns() + "," + cfgIndexInfoNoExport; } - noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport); + noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport); + for (FileDigestCfg cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } + } dataMap.put(entity.getMenuNameCode(), ipLists); /* } */ diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/MailCfgController.java b/src/main/java/com/nis/web/controller/configuration/ntc/MailCfgController.java index 2b4d20635..1cfd0cb4a 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/MailCfgController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/MailCfgController.java @@ -5,8 +5,10 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.UUID; import javax.servlet.http.HttpServletRequest; @@ -249,7 +251,34 @@ public class MailCfgController extends BaseController { Page page = mailCfgService.getMailList(pageInfo, entity); ipLists = page.getList(); } - + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } titleList.add(entity.getMenuNameCode()); String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator" @@ -305,6 +334,12 @@ public class MailCfgController extends BaseController { List mailBodyList = new ArrayList(); List mailReqHdrList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } Map maps = mailCfgService.exportmail(cfg); mailReqHdrList.addAll(maps.get("NTC_MAIL_HDR")); mailBodyList.addAll(maps.get("NTC_MAIL_BODY")); diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java b/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java index 6ab6a5608..fa02a7b73 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java @@ -3,9 +3,11 @@ package com.nis.web.controller.configuration.ntc; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -626,6 +628,35 @@ public class WebsiteController extends BaseController { Page page = httpRedirectCfgService.getHttpRedirectList(pageInfo, entity); ipLists = page.getList(); } + + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } // 条件导出数据大于最大导出数,只导出最大导出条数 String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; @@ -680,6 +711,12 @@ public class WebsiteController extends BaseController { List ipPortList = new ArrayList<>(); List subscribeIdList = new ArrayList<>(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } Map maps = websiteCfgService.exportHttpCfg(cfg); httpUrlList.addAll(maps.get("NTC_HTTP_URL")); httpReqHdrList.addAll(maps.get("NTC_HTTP_REQ_HDR")); @@ -774,8 +811,19 @@ public class WebsiteController extends BaseController { Page page = websiteCfgService.getWebsiteList(pageInfo, entity); ipLists = page.getList(); } - + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids for (int i = 0; i < ipLists.size(); i++) { + if(ipLists.get(i).getIsAudit()!=0){ + set.add(ipLists.get(i).getServiceId()); + compileIds.append(ipLists.get(i).getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", ipLists.get(i).getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } if (ipLists.get(i).getDnsStrategyId() != null && ipLists.get(i).getDnsStrategyId() != 0) { List resStrategys = dnsResStrategyService .findDnsResStrategys(ipLists.get(i).getDnsStrategyId(), 1, 1); @@ -793,6 +841,20 @@ public class WebsiteController extends BaseController { ipLists.get(i).setDnsStrategyName(msgProp.getProperty("no_strategy")); } } + + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } titleList.add(entity.getMenuNameCode()); titleList.add("NTC_IP"); titleList.add("NTC_DNS_REGION"); @@ -801,7 +863,7 @@ public class WebsiteController extends BaseController { classMap.put("NTC_IP", IpPortCfg.class); classMap.put("NTC_DNS_REGION", ComplexkeywordCfg.class); classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class); - String cfgIndexInfoNoExport = ",group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",do_blacklist,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator" + ",config_time,editor,edit_time,auditor,audit_time" + ",letter,whether_area_block,classification,attribute,label" @@ -837,6 +899,12 @@ public class WebsiteController extends BaseController { List subscribeInfoList = new ArrayList(); List regionInfoList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } CfgIndexInfo cfgIndexInfo = websiteCfgService.exportdns(cfg); ipList.addAll(cfgIndexInfo.getIpPortList()); subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList()); @@ -892,7 +960,33 @@ public class WebsiteController extends BaseController { Page page = websiteCfgService.getWebsiteList(pageInfo, entity); ipLists = page.getList(); } - + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } titleList.add(entity.getMenuNameCode()); titleList.add("NTC_UNIVERSAL_IP"); titleList.add("NTC_SSL_SNI"); @@ -946,6 +1040,12 @@ public class WebsiteController extends BaseController { List ipPortList = new ArrayList<>(); List subscribeIdList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } Map maps = websiteCfgService.exportssl(cfg); sslSniList.addAll(maps.get("NTC_SSL_SNI")); sslSnaList.addAll(maps.get("NTC_SSL_SAN")); diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java b/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java index 0f26c49db..6a8fb2863 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java @@ -3,8 +3,10 @@ package com.nis.web.controller.configuration.ntc; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -367,11 +369,42 @@ public class WhiteListController extends CommonController { Page page = ipCfgService.getIpCfgList(pageInfo, entity); ipLists = page.getList(); } + + //日志总量 + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + if(serviceIds.length()>1&&compileIds.length()>1){ + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } + titleList.add(entity.getMenuNameCode()); titleList.add("NTC_IP"); classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class); classMap.put("NTC_IP", IpPortCfg.class); - String cfgIndexInfoNoExport = ",policy_name,do_log,letter,whether_area_block,classification,attribute,label,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",policy_name,letter,whether_area_block,classification,attribute,label,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; String ipPortInfoNoExport = ",protocol,direction,do_log,action,config_describe,valid_identifier,is_audit,creator,creator" + ",config_time,editor,edit_time,auditor,audit_time" + ",letter,whether_area_block,classification,attribute,label" @@ -395,6 +428,12 @@ public class WhiteListController extends CommonController { noExportMap.put("NTC_IP", ipPortInfoNoExport); List ipList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } CfgIndexInfo cfgIndexInfo = ipCfgService.exportIpInfo(cfg); ipList.addAll(cfgIndexInfo.getIpPortList()); } @@ -442,7 +481,32 @@ public class WhiteListController extends CommonController { Page page = domainService.getDomainList(pageInfo, entity); ipLists = page.getList(); } - + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + for (CfgIndexInfo cfg : ipLists) { + if(cfg.getIsAudit()!=0){ + set.add(cfg.getServiceId()); + compileIds.append(cfg.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", cfg.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + + } + StringBuilder serviceIds=new StringBuilder(","); + for (Integer id : set) { + serviceIds.append(id+","); + } + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + //获取日志总量 + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } titleList.add(entity.getMenuNameCode()); titleList.add("NTC_HTTP_URL"); classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class); @@ -471,6 +535,12 @@ public class WhiteListController extends CommonController { noExportMap.put("NTC_HTTP_URL", httpUrlInfoNoExport); List httpurlList = new ArrayList(); for (CfgIndexInfo cfg : ipLists) { + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } CfgIndexInfo cfgIndexInfo = domainService.exportDomainInfo(cfg); httpurlList.addAll(cfgIndexInfo.getHttpUrlList()); } diff --git a/src/main/java/com/nis/web/controller/configuration/proxy/HttpRedirectPolicyController.java b/src/main/java/com/nis/web/controller/configuration/proxy/HttpRedirectPolicyController.java index 7dd206a95..0f9630db6 100644 --- a/src/main/java/com/nis/web/controller/configuration/proxy/HttpRedirectPolicyController.java +++ b/src/main/java/com/nis/web/controller/configuration/proxy/HttpRedirectPolicyController.java @@ -3,9 +3,11 @@ package com.nis.web.controller.configuration.proxy; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -295,9 +297,27 @@ public class HttpRedirectPolicyController extends BaseController { Page page = httpRedirectCfgService.getHttpRedirectList(pageInfo, entity); ipLists = page.getList(); } - + + + //日志总量 + List> logTotals=new ArrayList>(); + StringBuilder compileIds=new StringBuilder(",");//配置ids + Set set=new HashSet();//服务ids + + Properties prop = getMsgProp(); for (CfgIndexInfo str : ipLists) { + + if(str.getIsAudit()!=0){ + set.add(str.getServiceId()); + compileIds.append(str.getCompileId()+","); + }else{ + Map logTotal=new HashMap(); + logTotal.put("compileId", str.getCompileId()+""); + logTotal.put("sum",0L); + logTotals.add(logTotal); + } + if (entity.getFunctionId() != 210 && entity.getFunctionId() != 211) { String type = "RESPONSE_CODE"; if (entity.getFunctionId() == 207) { @@ -324,6 +344,21 @@ public class HttpRedirectPolicyController extends BaseController { } } } + + //获取日志总量 + StringBuilder serviceIds=new StringBuilder(","); + if(set.size()>0) { + for (Integer id : set) { + serviceIds.append(id+","); + } + String serviceIdsStr=serviceIds.toString().substring(1, serviceIds.length()-1); + String compileIdsStr=compileIds.toString().substring(1, compileIds.length()-1); + if(!StringUtils.isBlank(serviceIdsStr)&&!StringUtils.isBlank(compileIdsStr)){ + List> logs = getLogTotal( null,serviceIdsStr,compileIdsStr); + logTotals.addAll(logs); + } + } + String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; if (entity.getFunctionId() == 207) { cfgIndexInfoNoExport = ",policy_name,group_name,userregion3,userregion4,userregion5,&userregion1:response_code-userregion2:response_content-"; @@ -393,6 +428,14 @@ public class HttpRedirectPolicyController extends BaseController { httpResBodyList.addAll(maps.get("NTC_HTTP_RES_BODY")); ipPortList.addAll(maps.get("NTC_UNIVERSAL_IP")); subscribeIdList.addAll(maps.get("NTC_SUBSCRIBE_ID")); + + for (Map logTotal : logTotals) { + if(cfg.getCompileId().equals(Integer.parseInt((String) logTotal.get("compileId")))){ + cfg.setTotalLogs((Long)logTotal.get("sum")); + break; + } + } + } httpUrlList = BaseStringCfg.replaceBaseKeyList(httpUrlList); httpReqHdrList = ComplexkeywordCfg.replaceComplexKeyList(httpReqHdrList); diff --git a/src/main/java/com/nis/web/controller/configuration/proxy/InterceptController.java b/src/main/java/com/nis/web/controller/configuration/proxy/InterceptController.java index cec2841c1..c3f01a4e5 100644 --- a/src/main/java/com/nis/web/controller/configuration/proxy/InterceptController.java +++ b/src/main/java/com/nis/web/controller/configuration/proxy/InterceptController.java @@ -329,6 +329,18 @@ public class InterceptController extends CommonController { httpUrlList.addAll(maps.get("NTC_HTTP_URL")); ipList.addAll(maps.get("PXY_INTERCEPT_IP")); pktBinList.addAll(maps.get("PXY_INTERCEPT_PKT_BIN")); + if (entity.getFunctionId() == 200){ + Properties msgProp = getMsgProp(); + if(cfg.getAction().equals(1)) { + cfg.setUserRegion5(msgProp.getProperty("intercept")); + }else if(cfg.getAction().equals(48)) { + cfg.setUserRegion5(msgProp.getProperty("action_spoofing")); + }else if(cfg.getAction().equals(128)) { + cfg.setUserRegion5(msgProp.getProperty("bypass")); + }else { + cfg.setUserRegion5(msgProp.getProperty(DictUtils.getDictLabels("SERVICE_ACTION", cfg.getAction().toString(), cfg.getAction().toString()))); + } + } } pktBinList = BaseStringCfg.replaceBaseKeyList(pktBinList); httpUrlList = BaseStringCfg.baseHexList(httpUrlList); @@ -344,7 +356,7 @@ public class InterceptController extends CommonController { dataMap.put("PXY_INTERCEPT_IP", ipList); dataMap.put("PXY_INTERCEPT_PKT_BIN", pktBinList); } else if (entity.getFunctionId() == 200) {// IP拦截 - cfgIndexInfoNoExport = ",policy_name,group_name,userregion3,userregion4,userregion5,userregion2,&userregion1:intercept_file_strategy-"; + cfgIndexInfoNoExport = ",policy_name,group_name,userregion3,userregion4,block_type,&userregion1:intercept_file_strategy-userregion2:ratelimit-userregion5:block_type"; titleList.add("PXY_INTERCEPT_IP"); classMap.put("PXY_INTERCEPT_IP", IpPortCfg.class); noExportMap.put("PXY_INTERCEPT_IP", ipPortInfoNoExport); diff --git a/src/main/java/com/nis/web/controller/configuration/proxy/PxyObjKeyringController.java b/src/main/java/com/nis/web/controller/configuration/proxy/PxyObjKeyringController.java index 531c5fc9f..29829d2d1 100644 --- a/src/main/java/com/nis/web/controller/configuration/proxy/PxyObjKeyringController.java +++ b/src/main/java/com/nis/web/controller/configuration/proxy/PxyObjKeyringController.java @@ -420,7 +420,7 @@ public class PxyObjKeyringController extends BaseController { } titleList.add(entity.getMenuNameCode()); classMap.put(entity.getMenuNameCode(), PxyObjKeyring.class); - String cfgIndexInfoNoExport = ",config_describe,whether_area_block,block_type,valid_identifier,do_log,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; + String cfgIndexInfoNoExport = ",config_describe,whether_area_block,block_type,do_log,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,"; // 时间过滤 if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) { @@ -485,7 +485,7 @@ public class PxyObjKeyringController extends BaseController { } titleList.add(entity.getMenuNameCode()); classMap.put(entity.getMenuNameCode(), PxyObjTrustedCaCert.class); - String cfgIndexInfoNoExport = ",whether_area_block,block_type,valid_identifier,do_log,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,&config_describe:cert_name-"; + String cfgIndexInfoNoExport = ",whether_area_block,block_type,do_log,client_port,ir_type,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,&config_describe:cert_name-"; // 时间过滤 if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) { diff --git a/src/main/java/com/nis/web/controller/dashboard/TrafficStatisticsInfoController.java b/src/main/java/com/nis/web/controller/dashboard/TrafficStatisticsInfoController.java index 96cbdc1ed..8a1b1f156 100644 --- a/src/main/java/com/nis/web/controller/dashboard/TrafficStatisticsInfoController.java +++ b/src/main/java/com/nis/web/controller/dashboard/TrafficStatisticsInfoController.java @@ -525,7 +525,7 @@ public class TrafficStatisticsInfoController extends BaseController { Calendar cal = Calendar. getInstance (); cal.setTime(new Date()); String now = new SimpleDateFormat( "yyyy-MM-dd HH:mm:00" ).format(cal.getTime());//获取到完整的时间 - cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 12); + cal.set(Calendar.HOUR_OF_DAY, cal.get(Calendar.HOUR_OF_DAY) - 1); String oneHoursAgo = new SimpleDateFormat( "yyyy-MM-dd HH:mm:00" ).format(cal.getTime()); List domainList = appCfgService.getDomainDict(new WebsiteDomainTopic());// domain 域名 model.addAttribute("domainList", domainList); diff --git a/src/main/java/com/nis/web/controller/log/ntc/MailRecordLogController.java b/src/main/java/com/nis/web/controller/log/ntc/MailRecordLogController.java new file mode 100644 index 000000000..e9f077f8c --- /dev/null +++ b/src/main/java/com/nis/web/controller/log/ntc/MailRecordLogController.java @@ -0,0 +1,171 @@ +package com.nis.web.controller.log.ntc; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringEscapeUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +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.servlet.mvc.support.RedirectAttributes; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.reflect.TypeToken; +import com.nis.domain.FunctionServiceDict; +import com.nis.domain.Page; +import com.nis.domain.PageLog; +import com.nis.domain.SysUser; +import com.nis.domain.log.NtcIpLog; +import com.nis.domain.log.NtcMailLog; +import com.nis.domain.log.NtcMailLog; +import com.nis.domain.maat.LogRecvData; +import com.nis.util.Constants; +import com.nis.util.DictUtils; +import com.nis.util.httpclient.HttpClientUtil; +import com.nis.web.controller.BaseController; +import com.nis.web.security.UserUtils; + +@Controller +@RequestMapping("${adminPath}/log/ntc/mailRecord") +public class MailRecordLogController extends BaseController { + + @RequestMapping(value = { "list", "" }) + public String list(@ModelAttribute("log") NtcMailLog log, Model model, HttpServletRequest request, + HttpServletResponse response) { + try { + PageLog page = new PageLog(request, response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + initLogSearchValue(log, params); + + // 增加收/发件人、邮件主题查询 + if (StringUtils.isNotBlank(log.getMailTo())) { + params.put("searchMailTo", StringEscapeUtils.unescapeHtml(log.getMailTo())); + } + if (StringUtils.isNotBlank(log.getMailFrom())) { + params.put("searchMailFrom", StringEscapeUtils.unescapeHtml(log.getMailFrom())); + } + if (StringUtils.isNotBlank(log.getSubject())) { + params.put("searchSubject", StringEscapeUtils.unescapeHtml(log.getSubject())); + } + + params.put("searchCfgId", "0");// 邮件泛收 cfg_id=0 + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_MAIL_LOG; + String recv = HttpClientUtil.getMsg(url, params, request); + + if (StringUtils.isNotBlank(recv)) { + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { + Page data = fromJson.getData(); + page.setCount(data.getCount()); + page.setLast(data.getLast()); + page.setList(data.getList()); + List list = page.getList(); + for (NtcMailLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + model.addAttribute("page", page); + } + } + } catch (Exception e) { + logger.error("查询失败", e); + addMessageLog(model, e.getMessage()); + } + + return "/log/ntc/mailRecordList"; + } + + // Mail泛收导出 + @RequestMapping(value = "exportMail") + public void exportMail(@ModelAttribute("log") NtcMailLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了Mail泛收"); + try { + // export data info + List titleList = new ArrayList(); + Map> classMap = new HashMap>(); + Map dataMap = new HashMap(); + Map noExportMap = new HashMap(); + // --------------------------- + PageLog page = new PageLog(request, response); + page.setPageNo(1); + page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + initLogSearchValue(log, params); + + // 增加收/发件人、邮件主题查询 + if (StringUtils.isNotBlank(log.getMailTo())) { + params.put("searchMailTo", StringEscapeUtils.unescapeHtml(log.getMailTo())); + } + if (StringUtils.isNotBlank(log.getMailFrom())) { + params.put("searchMailFrom", StringEscapeUtils.unescapeHtml(log.getMailFrom())); + } + if (StringUtils.isNotBlank(log.getSubject())) { + params.put("searchSubject", StringEscapeUtils.unescapeHtml(log.getSubject())); + } + + params.put("searchCfgId", "0");// 邮件泛收 cfg_id=0 + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_MAIL_LOG; + String recv = HttpClientUtil.getMsg(url, params, request); + List list = new ArrayList(); + if (StringUtils.isNotBlank(recv)) { + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { + Page data = fromJson.getData(); + list = data.getList(); + } + } + for (NtcMailLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("mail_record"); + classMap.put("mail_record", NtcMailLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("mail_record", cfgIndexInfoNoExport); + dataMap.put("mail_record", list); + String timeRange = initLogMap(log, "mail_record"); + noExportMap.put("timeRange", timeRange); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "mail_record", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "mail_record", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("mail_record export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } +} diff --git a/src/main/java/com/nis/web/controller/log/ntc/SslRecordLogController.java b/src/main/java/com/nis/web/controller/log/ntc/SslRecordLogController.java new file mode 100644 index 000000000..f2b9d7b44 --- /dev/null +++ b/src/main/java/com/nis/web/controller/log/ntc/SslRecordLogController.java @@ -0,0 +1,158 @@ +package com.nis.web.controller.log.ntc; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.beans.BeanUtils; +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.servlet.mvc.support.RedirectAttributes; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonSyntaxException; +import com.google.gson.reflect.TypeToken; +import com.nis.domain.FunctionServiceDict; +import com.nis.domain.Page; +import com.nis.domain.PageLog; +import com.nis.domain.SysUser; +import com.nis.domain.log.NtcSslRecordLog; +import com.nis.domain.log.NtcSshLog; +import com.nis.domain.log.NtcSslRecordLog; +import com.nis.domain.maat.LogRecvData; +import com.nis.util.Constants; +import com.nis.util.DictUtils; +import com.nis.util.StringUtils; +import com.nis.util.httpclient.HttpClientUtil; +import com.nis.web.controller.BaseController; +import com.nis.web.security.UserUtils; + +@Controller +@RequestMapping("${adminPath}/log/ntc/sslRecord") +@SuppressWarnings("all") +public class SslRecordLogController extends BaseController { + + @RequestMapping(value = { "list", "" }) + public String list(HttpServletRequest request, HttpServletResponse response, Model model, + @ModelAttribute("log") NtcSslRecordLog NtcSslRecordLog) { + + PageLog page = new PageLog(request, response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + + // 请求参数判断 + initLogSearchValue(NtcSslRecordLog, params); + if (StringUtils.isNotBlank(NtcSslRecordLog.getSni())) { + params.put("SearchSni", NtcSslRecordLog.getSni()); + } + + List serviceList = DictUtils.getFunctionServiceDictList(NtcSslRecordLog.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + try { + // 请求接口 + String url = Constants.LOG_BASE_URL + Constants.NTC_SSL_RECORD_LOG; + String resJson = HttpClientUtil.getMsg(url, params, request); + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(resJson, + new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { + Page data = fromJson.getData(); + page.setCount(data.getCount()); + page.setLast(data.getLast()); + page.setList(data.getList()); + List list = page.getList(); + for (NtcSslRecordLog log : list) { + log.setFunctionId(NtcSslRecordLog.getFunctionId()); + setLogAction(log, serviceList); + } + model.addAttribute("page", page); + } + } catch (Exception e) { + logger.error("SSL泛收日志查询失败", e); + addMessageLog(model, e.getMessage()); + } + + return "/log/ntc/sslRecordLogList"; + } + + // Ssl泛收配置导出 + @RequestMapping(value = "exportSsl") + public void exportSsl(@ModelAttribute("log") NtcSslRecordLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了ssl泛收"); + try { + // export data info + List titleList = new ArrayList(); + Map> classMap = new HashMap>(); + Map dataMap = new HashMap(); + Map noExportMap = new HashMap(); + PageLog page = new PageLog(request, response); + List list = new ArrayList(); + page.setPageNo(1); + page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE); + // --------------------------- + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + // 请求参数判断 + initLogSearchValue(log, params); + if (StringUtils.isNotBlank(log.getSni())) { + params.put("SearchSni", log.getSni()); + } + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_SSL_RECORD_LOG; + String recv = HttpClientUtil.getMsg(url, params, request); + if (StringUtils.isNotBlank(recv)) { + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(recv, + new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { + Page data = fromJson.getData(); + list = data.getList(); + } + } + for (NtcSslRecordLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("ssl_record"); + classMap.put("ssl_record", NtcSslRecordLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("ssl_record", cfgIndexInfoNoExport); + dataMap.put("ssl_record", list); + String timeRange = initLogMap(log, "ssl_record"); + noExportMap.put("timeRange", timeRange); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "ssl_record", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "ssl_record", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("ssl_record export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } +} diff --git a/src/main/java/com/nis/web/controller/report/NtcEventBlockController.java b/src/main/java/com/nis/web/controller/report/NtcEventBlockController.java index 70990a7df..fed932e83 100644 --- a/src/main/java/com/nis/web/controller/report/NtcEventBlockController.java +++ b/src/main/java/com/nis/web/controller/report/NtcEventBlockController.java @@ -395,7 +395,32 @@ public class NtcEventBlockController extends BaseController { list = data.getList(); } } - + //计算合计,并添加在集合的最后位置 + Properties msgProp = getMsgProp(); + NtcEventMonitorOrBlockReport ntcEventMonitorOrBlockReport = new NtcEventMonitorOrBlockReport(); + long ipNum = 0; + long httpNum = 0; + long mailNum = 0; + long vedioNum = 0; + long agentNum = 0; + for (NtcEventMonitorOrBlockReport entity : list) { + ipNum += entity.getIpNum(); + httpNum += entity.getHttpNum(); + mailNum += entity.getMailNum(); + vedioNum += entity.getVedioNum(); + agentNum += entity.getAgentNum(); + } + String report_total = msgProp.getProperty("report_total"); + ntcEventMonitorOrBlockReport.setIpNum(ipNum); + ntcEventMonitorOrBlockReport.setHttpNum(httpNum); + ntcEventMonitorOrBlockReport.setMailNum(mailNum); + ntcEventMonitorOrBlockReport.setVedioNum(vedioNum); + ntcEventMonitorOrBlockReport.setAgentNum(agentNum); + ntcEventMonitorOrBlockReport.setTaskIds(report_total); + ntcEventMonitorOrBlockReport.setTaskName("    一   "); + ntcEventMonitorOrBlockReport.setTaskTime("    一   "); + ntcEventMonitorOrBlockReport.setReportTime("    一   "); + list.add(ntcEventMonitorOrBlockReport); return list; } catch (Exception e) { logger.error("ntc_event_block_report print failed", e); diff --git a/src/main/java/com/nis/web/controller/report/NtcEventKeyProtectionController.java b/src/main/java/com/nis/web/controller/report/NtcEventKeyProtectionController.java index b770b667e..36ee299d3 100644 --- a/src/main/java/com/nis/web/controller/report/NtcEventKeyProtectionController.java +++ b/src/main/java/com/nis/web/controller/report/NtcEventKeyProtectionController.java @@ -386,6 +386,30 @@ public class NtcEventKeyProtectionController extends BaseController { list = data.getList(); } } + //计算合计,并填加到集合最后 + Properties msgProp = getMsgProp(); + NtcEventKeyProtectionReport ntcEventKey=new NtcEventKeyProtectionReport(); + long letterNum=0; + long configNum=0; + long monitorNum=0; + long controlNum=0; + for (NtcEventKeyProtectionReport entity : list) { + letterNum += entity.getLetterNum(); + configNum += entity.getConfigNum(); + monitorNum += entity.getMonitorNum(); + controlNum += entity.getControlNum(); + } + String report_total=msgProp.getProperty("report_total"); + ntcEventKey.setLetterNum(letterNum); + ntcEventKey.setConfigNum(configNum); + ntcEventKey.setMonitorNum(monitorNum); + ntcEventKey.setControlNum(controlNum); + ntcEventKey.setTaskIds(report_total); + ntcEventKey.setTaskName("    一   "); + ntcEventKey.setTaskTime("    一   "); + ntcEventKey.setReportTime("    一   "); + list.add(ntcEventKey); + return list; } catch (Exception e) { logger.error("ntc_event_key_protection_report print failed", e); diff --git a/src/main/java/com/nis/web/controller/report/NtcEventMonitorController.java b/src/main/java/com/nis/web/controller/report/NtcEventMonitorController.java index 5f4d29f2e..591e315f7 100644 --- a/src/main/java/com/nis/web/controller/report/NtcEventMonitorController.java +++ b/src/main/java/com/nis/web/controller/report/NtcEventMonitorController.java @@ -393,6 +393,32 @@ public class NtcEventMonitorController extends BaseController { list = data.getList(); } } + //计算合计,并添加到集合的最后 + Properties msgProp = getMsgProp(); + NtcEventMonitorOrBlockReport ntcEventMonitorOrBlockReport = new NtcEventMonitorOrBlockReport(); + long ipNum = 0; + long httpNum = 0; + long mailNum = 0; + long vedioNum = 0; + long agentNum = 0; + for (NtcEventMonitorOrBlockReport entity : list) { + ipNum += entity.getIpNum(); + httpNum += entity.getHttpNum(); + mailNum += entity.getMailNum(); + vedioNum += entity.getVedioNum(); + agentNum += entity.getAgentNum(); + } + String report_total = msgProp.getProperty("report_total"); + ntcEventMonitorOrBlockReport.setIpNum(ipNum); + ntcEventMonitorOrBlockReport.setHttpNum(httpNum); + ntcEventMonitorOrBlockReport.setMailNum(mailNum); + ntcEventMonitorOrBlockReport.setVedioNum(vedioNum); + ntcEventMonitorOrBlockReport.setAgentNum(agentNum); + ntcEventMonitorOrBlockReport.setTaskIds(report_total); + ntcEventMonitorOrBlockReport.setTaskName("    一   "); + ntcEventMonitorOrBlockReport.setTaskTime("    一   "); + ntcEventMonitorOrBlockReport.setReportTime("    一   "); + list.add(ntcEventMonitorOrBlockReport); return list; } catch (Exception e) { logger.error("ntc_event_monitor_report print failed", e); diff --git a/src/main/java/com/nis/web/controller/report/ReportController.java b/src/main/java/com/nis/web/controller/report/ReportController.java index b761321fa..df6f44659 100644 --- a/src/main/java/com/nis/web/controller/report/ReportController.java +++ b/src/main/java/com/nis/web/controller/report/ReportController.java @@ -613,6 +613,23 @@ public class ReportController extends BaseController { list = data.getList(); } } + Properties msgProp = getMsgProp(); + NtcAsnRecord ntcAsnRecord = new NtcAsnRecord(); + double pps = 0; + double bps = 0; + for (NtcAsnRecord entity : list) { + if (null != entity.getBps() && !"".equals(entity.getBps())) { + bps += Double.valueOf(entity.getBps()); + } + if (null != entity.getPps() && !"".equals(entity.getPps())) { + pps += Double.valueOf(entity.getPps()); + } + } + String report_total = msgProp.getProperty("report_total"); + ntcAsnRecord.setAsn(report_total); + ntcAsnRecord.setBps(String.format("%.2f", bps)); + ntcAsnRecord.setPps(String.format("%.2f", pps)); + list.add(ntcAsnRecord); return list; } catch (Exception e) { logger.error("Ntc_Asn_Record print failed", e); @@ -664,6 +681,19 @@ public class ReportController extends BaseController { list = data.getList(); } } + Properties msgProp = getMsgProp(); + NtcURLReport ntcURLReport = new NtcURLReport(); + long ipCount=0; + long connCount=0; + for (NtcURLReport entity : list) { + ipCount += entity.getIpCount(); + connCount += entity.getConnCount(); + } + String report_total = msgProp.getProperty("report_total"); + ntcURLReport.setIpCount(ipCount); + ntcURLReport.setConnCount(connCount); + ntcURLReport.setUrl(report_total); + list.add(ntcURLReport); return list; } catch (Exception e) { logger.error("Ntc_HTTPS_Report print failed", e); diff --git a/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.java b/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.java index 9d5dd3bb2..ce497c857 100644 --- a/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.java +++ b/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.java @@ -29,4 +29,7 @@ public interface AsnGroupInfoDao extends CrudDao { List findAsnGroupInfos(); Long getCount(); void modifyIssuedIp(AsnGroupInfo info); + List findAsnGroupInfoByAsnGroup(AsnGroupInfo asnGroupInfo); + void updateIsUsedAndIsValid(@Param("asnNos")List asnNos,@Param("isUsed")Integer isUsed,@Param("isValid")Integer isValid); + List findAsnGroupInfoByAsnNos(@Param("asnNos")List asnNos,@Param("isUsed")Integer isUsed); } \ No newline at end of file diff --git a/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.xml b/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.xml index 2536d0e20..ff55e5c6f 100644 --- a/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.xml +++ b/src/main/java/com/nis/web/dao/basics/AsnGroupInfoDao.xml @@ -15,10 +15,12 @@ + + r.id,r.group_id,r.compile_id,r.organization,r.country,r.detail,r.is_valid,r.create_time,r.edit_time, - r.creator_id,r.editor_id,r.asn_id,r.issued_ips + r.creator_id,r.editor_id,r.asn_id,r.issued_ips,r.is_used,r.region_id @@ -79,7 +81,7 @@ - insert into asn_group_info(group_id,compile_id,organization,country,detail,is_valid,creator_id,create_time,editor_id,edit_time,asn_id + insert into asn_group_info( + group_id, + compile_id, + organization, + country, + detail, + is_valid, + creator_id, + create_time, + editor_id, + edit_time, + asn_id, + is_used, + region_id )values ( #{groupId,jdbcType=INTEGER}, #{compileId,jdbcType=INTEGER}, @@ -99,7 +114,9 @@ #{createTime,jdbcType=TIMESTAMP}, #{editorId,jdbcType=INTEGER}, #{editTime,jdbcType=TIMESTAMP}, - #{asnId,jdbcType=INTEGER} + #{asnId,jdbcType=INTEGER}, + #{isUsed,jdbcType=INTEGER}, + #{regionId,jdbcType=INTEGER} ) @@ -137,6 +154,12 @@ edit_time = #{editTime,jdbcType=TIMESTAMP}, + + is_used = #{isUsed,jdbcType=INTEGER}, + + + region_id = #{regionId,jdbcType=INTEGER}, + @@ -147,6 +170,28 @@ + + update asn_group_info + + + is_used = #{isUsed,jdbcType=INTEGER}, + + + is_valid = #{isValid,jdbcType=INTEGER}, + + + + + and asn_id in + + #{asnId} + + + + and is_valid != #{isValid,jdbcType=INTEGER} + + + update asn_group_info @@ -205,7 +250,7 @@ + + + \ No newline at end of file diff --git a/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.java b/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.java index 2782dfa2e..785ee0cf3 100644 --- a/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.java +++ b/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.java @@ -4,6 +4,7 @@ import java.util.List; import org.apache.ibatis.annotations.Param; +import com.nis.domain.basics.AsnGroupInfo; import com.nis.domain.basics.AsnIpCfg; import com.nis.domain.basics.Varibles; import com.nis.web.dao.CrudDao; @@ -20,6 +21,7 @@ public interface AsnIpCfgDao extends CrudDao{ public List hasASNIds(@Param("ids")String ids); public List hasASNIpAddrs(@Param("ids")String ids); public List findAllList(AsnIpCfg cfg); + public List findAllListByAsnGroup(@Param("entity")AsnIpCfg entity,@Param("asnGroups")List asnGroups,@Param("asnIds")String asnIds); // public List findPolicyGroupInfosByType(@Param("groupId")Integer groupId); public List findOtherIps(@Param("groupId")Integer groupId,@Param("cfgId")Integer cfgId); public List countValidIPs(@Param("groups")String groups,@Param("ids")String ids); @@ -32,4 +34,5 @@ public interface AsnIpCfgDao extends CrudDao{ public int hasValidAsnIp(@Param("asnId")Long asnNo); public AsnIpCfg getOne(AsnIpCfg cfg); public void updateAsn(@Param("asnId")String asnNo,@Param("organization")String organization,@Param("country")String country,@Param("detail")String detail); + public void updateAsnIpByAsnGroups(@Param("entity")AsnIpCfg entity,@Param("asnGroups")List asnGroups,@Param("asnIds")String asnIds); } diff --git a/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.xml b/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.xml index 49825a600..2071ab66d 100644 --- a/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.xml +++ b/src/main/java/com/nis/web/dao/basics/AsnIpCfgDao.xml @@ -308,6 +308,26 @@ AND r.asn_ip_group =#{asnIpGroup} + - + + update asn_ip_cfg set + + is_valid=#{entity.isValid} , + is_audit=#{entity.isAudit}, + + AUDITOR_ID = #{entity.auditorId,jdbcType=INTEGER} + ,AUDIT_TIME = #{entity.auditTime,jdbcType=TIMESTAMP} + + + and user_region1 in + + #{asnGroup.asnId,jdbcType=INTEGER} + + + + and user_region1 in (select asn_id from asn_group_info where asn_id in(${asnIds}) and is_used=0) + + + + \ No newline at end of file diff --git a/src/main/java/com/nis/web/dao/configuration/AppMultiFeatureCfgDao.xml b/src/main/java/com/nis/web/dao/configuration/AppMultiFeatureCfgDao.xml index 0997b2ee1..5d77ae0f7 100644 --- a/src/main/java/com/nis/web/dao/configuration/AppMultiFeatureCfgDao.xml +++ b/src/main/java/com/nis/web/dao/configuration/AppMultiFeatureCfgDao.xml @@ -115,6 +115,9 @@ + + + @@ -204,7 +207,7 @@ r.ATTRIBUTE,r.LABLE,r.AREA_EFFECTIVE_IDS,r.FUNCTION_ID,r.CFG_TYPE,r.CFG_REGION_CODE, r.DISTRICT,r.CFG_KEYWORDS,r.EXPR_TYPE,r.MATCH_METHOD,r.IS_HEXBIN,r.DO_LOG, r.ver,r.ihl,r.tos,r.total_length,r.flags,r.fragment_offset,r.protocol,r.icmp_type,r.icmp_code,r.icmp_identifier, - r.header_type + r.header_type,r.payload_offset,r.payload_size,r.payload_packet_direction @@ -540,7 +543,8 @@ SERVICE_ID,REQUEST_ID,COMPILE_ID,IS_AREA_EFFECTIVE,CLASSIFY, ATTRIBUTE,LABLE,AREA_EFFECTIVE_IDS,FUNCTION_ID,CFG_TYPE,CFG_REGION_CODE, DISTRICT,CFG_KEYWORDS,EXPR_TYPE,MATCH_METHOD,IS_HEXBIN,DO_LOG,user_region1,user_region2,user_region3,user_region4,user_region5, - ver,ihl,tos,total_length,flags,fragment_offset,protocol,icmp_type,icmp_code,icmp_identifier,header_type + ver,ihl,tos,total_length,flags,fragment_offset,protocol,icmp_type,icmp_code,icmp_identifier,header_type, + payload_offset,payload_size,payload_packet_direction )values ( , #{cfgType,jdbcType=VARCHAR},#{cfgRegionCode,jdbcType=INTEGER}, @@ -550,7 +554,8 @@ #{userRegion3,jdbcType=VARCHAR},#{userRegion4,jdbcType=VARCHAR},#{userRegion5,jdbcType=VARCHAR}, #{ver,jdbcType=VARCHAR},#{ihl,jdbcType=VARCHAR},#{tos,jdbcType=VARCHAR},#{totalLength,jdbcType=VARCHAR}, #{flags,jdbcType=VARCHAR},#{fragmentOffset,jdbcType=VARCHAR},#{protocol,jdbcType=VARCHAR},#{icmpType,jdbcType=VARCHAR}, - #{icmpCode,jdbcType=VARCHAR},#{icmpIdentifier,jdbcType=VARCHAR},#{headerType,jdbcType=VARCHAR} + #{icmpCode,jdbcType=VARCHAR},#{icmpIdentifier,jdbcType=VARCHAR},#{headerType,jdbcType=VARCHAR}, + #{payloadOffset,jdbcType=INTEGER},#{payloadSize,jdbcType=INTEGER},#{payloadPacketDirection,jdbcType=VARCHAR} ) @@ -562,7 +567,8 @@ SERVICE_ID,REQUEST_ID,COMPILE_ID,IS_AREA_EFFECTIVE,CLASSIFY, ATTRIBUTE,LABLE,AREA_EFFECTIVE_IDS,FUNCTION_ID,CFG_TYPE,CFG_REGION_CODE, DISTRICT,CFG_KEYWORDS,EXPR_TYPE,MATCH_METHOD,IS_HEXBIN,DO_LOG,user_region1,user_region2,user_region3,user_region4,user_region5, - ver,ihl,tos,total_length,flags,fragment_offset,protocol,icmp_type,icmp_code,icmp_identifier,header_type + ver,ihl,tos,total_length,flags,fragment_offset,protocol,icmp_type,icmp_code,icmp_identifier,header_type, + payload_offset,payload_size,payload_packet_direction )values ( , #{cfgType,jdbcType=VARCHAR},#{cfgRegionCode,jdbcType=INTEGER}, @@ -572,7 +578,8 @@ #{userRegion3,jdbcType=VARCHAR},#{userRegion4,jdbcType=VARCHAR},#{userRegion5,jdbcType=VARCHAR}, #{ver,jdbcType=VARCHAR},#{ihl,jdbcType=VARCHAR},#{tos,jdbcType=VARCHAR},#{totalLength,jdbcType=VARCHAR}, #{flags,jdbcType=VARCHAR},#{fragmentOffset,jdbcType=VARCHAR},#{protocol,jdbcType=VARCHAR},#{icmpType,jdbcType=VARCHAR}, - #{icmpCode,jdbcType=VARCHAR},#{icmpIdentifier,jdbcType=VARCHAR},#{headerType,jdbcType=VARCHAR} + #{icmpCode,jdbcType=VARCHAR},#{icmpIdentifier,jdbcType=VARCHAR},#{headerType,jdbcType=VARCHAR}, + #{payloadOffset,jdbcType=INTEGER},#{payloadSize,jdbcType=INTEGER},#{payloadPacketDirection,jdbcType=VARCHAR} ) diff --git a/src/main/java/com/nis/web/dao/configuration/DnsIpCfgDao.xml b/src/main/java/com/nis/web/dao/configuration/DnsIpCfgDao.xml index a536c558c..2146cf3f7 100644 --- a/src/main/java/com/nis/web/dao/configuration/DnsIpCfgDao.xml +++ b/src/main/java/com/nis/web/dao/configuration/DnsIpCfgDao.xml @@ -36,6 +36,7 @@ + @@ -44,7 +45,7 @@ ,r.is_valid,r.is_audit,r.creator_id,r.create_time,r.editor_id ,r.edit_time,r.auditor_id,r.audit_time,r.service_id,r.request_id, r.compile_id,r.is_area_effective,r.classify,r.attribute,r.lable - ,r.area_effective_ids,r.function_id,r.cfg_region_code,r.dns_strategy_id + ,r.area_effective_ids,r.function_id,r.cfg_region_code,r.dns_strategy_id,r.do_log select @@ -43,14 +44,14 @@ - insert into config_group_info (id,group_id,group_name,is_issued,insert_time,group_type,compile_id,asn_id) - values(#{id},#{groupId},#{groupName},#{isIssued},now(),#{groupType},#{compileId},#{asnId}) + insert into config_group_info (id,group_id,group_name,is_issued,insert_time,group_type,compile_id,asn_id,is_audit_all,is_used) + values(#{id},#{groupId},#{groupName},#{isIssued},now(),#{groupType},#{compileId},#{asnId},#{isAuditAll},#{isUsed}) - insert into config_group_info (id,group_id,group_name,is_issued,insert_time,group_type,compile_id,asn_id) + insert into config_group_info (id,group_id,group_name,is_issued,insert_time,group_type,compile_id,asn_id,is_audit_all,is_used) values - (#{info.id},#{info.groupId},#{info.groupName},#{info.isIssued},now(),#{info.groupType},#{info.compileId},#{info.asnId}) + (#{info.id},#{info.groupId},#{info.groupName},#{info.isIssued},now(),#{info.groupType},#{info.compileId},#{info.asnId},#{info.isAuditAll},#{info.isUsed}) @@ -62,16 +63,16 @@ where group_id = #{groupId}
+ + + @@ -135,7 +138,7 @@ $(function(){
- + readonly="readonly"/>
diff --git a/src/main/webapp/WEB-INF/views/cfg/app/appCommonFeature.jsp b/src/main/webapp/WEB-INF/views/cfg/app/appCommonFeature.jsp new file mode 100644 index 000000000..a67c1ec60 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/cfg/app/appCommonFeature.jsp @@ -0,0 +1,490 @@ +<%@ page contentType="text/html;charset=UTF-8"%> +<%@ include file="/WEB-INF/include/taglib.jsp"%> + + + + + +<%-- + --%> + + + + + + +<%-- + --%> + +
+
+ +
+
+
+ +
+
+
+ +
+ + +
+
+
+
+
+
+
+
+ +
+
+ +
+ +
+
+
+
+
+
+
+ + + + +
+ +
+
+ + +
+ + domainCheck + " + type="text" + name="${cfgName}.cfgKeywords" + value="${cfg.cfgKeywords}"> +
+
+ +
+
+
+ + + + + + + +
+ + <%-- --%> + <%-- --%> + +
+
+ +
+ + <%-- --%> + + + + + +
+
+
+
+ + +
+ + + + + --%> + + checked + + > + + + + + + + + + + + + + +
+
+ +
+
+ +
+
+ +
+ +
+
+
+
+
+
hidden"> + +
+
+ +
+ + + +
+
+
+
+
+
+ +
+ + +
+
+
+
+
+ +
+
+ +
+ +
+
+
+
+
+
+ +
+ +
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/cfg/app/appIpCfgForm.jsp b/src/main/webapp/WEB-INF/views/cfg/app/appIpCfgForm.jsp index f12fd6669..5dde687e4 100644 --- a/src/main/webapp/WEB-INF/views/cfg/app/appIpCfgForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/app/appIpCfgForm.jsp @@ -228,6 +228,7 @@ $(function(){ + @@ -407,7 +456,7 @@ var delContent = function(contentClassName, addBtnClassName) {
- <%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%> + <%@include file="/WEB-INF/views/cfg/app/appCommonFeature.jsp"%> @@ -421,7 +470,7 @@ var delContent = function(contentClassName, addBtnClassName) { @@ -434,7 +483,7 @@ var delContent = function(contentClassName, addBtnClassName) { - <%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%> + <%@include file="/WEB-INF/views/cfg/app/appCommonFeature.jsp"%>
diff --git a/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgForm.jsp b/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgForm.jsp index d87764e0d..9c977be73 100644 --- a/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgForm.jsp @@ -296,7 +296,14 @@ var delContent = function(contentClassName, addBtnClassName) { checked> - + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgList.jsp b/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgList.jsp index ee76ee2d5..3e99e112a 100644 --- a/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgList.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/app/appPolicyCfgList.jsp @@ -423,7 +423,14 @@ - + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/cfg/app/appSubFeatureList.jsp b/src/main/webapp/WEB-INF/views/cfg/app/appSubFeatureList.jsp index bee4cc0c3..2c94ed0fe 100644 --- a/src/main/webapp/WEB-INF/views/cfg/app/appSubFeatureList.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/app/appSubFeatureList.jsp @@ -257,9 +257,9 @@ - +
-
+ <%--
@@ -268,7 +268,7 @@
-
+
--%>
@@ -283,24 +283,24 @@
- +
- +
- +
- +
@@ -319,11 +319,20 @@
- +
- +
@@ -333,26 +342,38 @@
- +
-
-
-
- - +
+
+
+ + +
-
+ +
+
+
+ + ${cfg.payloadOffset } +
+
+
+
diff --git a/src/main/webapp/WEB-INF/views/cfg/app/appTopicDomainCfgForm.jsp b/src/main/webapp/WEB-INF/views/cfg/app/appTopicDomainCfgForm.jsp index 90a523796..888c217cf 100644 --- a/src/main/webapp/WEB-INF/views/cfg/app/appTopicDomainCfgForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/app/appTopicDomainCfgForm.jsp @@ -216,9 +216,10 @@ $(function(){ varStatus="satus">
-
-
+
+
diff --git a/src/main/webapp/WEB-INF/views/cfg/av/fileSampleForm.jsp b/src/main/webapp/WEB-INF/views/cfg/av/fileSampleForm.jsp index 8d7ff244e..d1e23bdc7 100644 --- a/src/main/webapp/WEB-INF/views/cfg/av/fileSampleForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/av/fileSampleForm.jsp @@ -363,9 +363,10 @@ function sampleFileValidate(fileType,fileName){ varStatus="satus">
+
@@ -453,11 +455,6 @@ function sampleFileValidate(fileType,fileName){
- -
- -
-
<%--
@@ -496,7 +493,38 @@ function sampleFileValidate(fileType,fileName){
+ +
+ +
+
+
+ + + + + + + + + + + +
+
+
+
+ +
+ +
+
+
<%--
@@ -521,6 +549,10 @@ function sampleFileValidate(fileType,fileName){
--%> <%-- <%@include file="/WEB-INF/include/form/areaInfo.jsp" %> --%> + + + + <%@include file="/WEB-INF/include/form/basicInfo.jsp" %>
diff --git a/src/main/webapp/WEB-INF/views/cfg/av/switchSignSample.jsp b/src/main/webapp/WEB-INF/views/cfg/av/switchSignSample.jsp index f924e40e9..f75be364f 100644 --- a/src/main/webapp/WEB-INF/views/cfg/av/switchSignSample.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/av/switchSignSample.jsp @@ -168,6 +168,7 @@ $(function(){ checked> @@ -183,6 +184,31 @@ $(function(){
+ + +
+
+
+ + + + + + + + + + + +
+
+
+ +
diff --git a/src/main/webapp/WEB-INF/views/cfg/av/voip/voipForm.jsp b/src/main/webapp/WEB-INF/views/cfg/av/voip/voipForm.jsp index fef644d19..e3a580387 100644 --- a/src/main/webapp/WEB-INF/views/cfg/av/voip/voipForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/av/voip/voipForm.jsp @@ -13,9 +13,9 @@ $(document) .ready( function() { - if($("input[name='compileId']").val()==null||$("input[name='compileId']").val()==''){ + /* if($("input[name='compileId']").val()==null||$("input[name='compileId']").val()==''){ $("input[name=doLog][value=1]").prop("checked",true); - } + } */ $(".glyphicon-plus").first().click(); /* $("#cancel").on("click", function() { window.history.back(); @@ -217,8 +217,8 @@
-
-
+
+
diff --git a/src/main/webapp/WEB-INF/views/cfg/basicprotocol/form.jsp b/src/main/webapp/WEB-INF/views/cfg/basicprotocol/form.jsp index 9a3360851..e5a078a4d 100644 --- a/src/main/webapp/WEB-INF/views/cfg/basicprotocol/form.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/basicprotocol/form.jsp @@ -250,7 +250,14 @@ var switchRateLimitType=function(){ checked> - + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/cfg/basicprotocol/list.jsp b/src/main/webapp/WEB-INF/views/cfg/basicprotocol/list.jsp index 58bb67dc9..5858baaef 100644 --- a/src/main/webapp/WEB-INF/views/cfg/basicprotocol/list.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/basicprotocol/list.jsp @@ -425,7 +425,14 @@ - + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgForm.jsp b/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgForm.jsp index e986383f3..598256c1f 100644 --- a/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgForm.jsp @@ -148,6 +148,7 @@ $(function(){ serviceId="${service.serviceId }" protocolId="${service.protocolId }" regionCode="${service.regionCode }" + configDoLog="${service.configDoLog }" value="${service.action }" class="required action" checked> diff --git a/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgList.jsp b/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgList.jsp index 309d2d8aa..ffa09a39c 100644 --- a/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgList.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/ddosIpCfgList.jsp @@ -390,7 +390,7 @@ - + diff --git a/src/main/webapp/WEB-INF/views/cfg/dnsIpCfgForm.jsp b/src/main/webapp/WEB-INF/views/cfg/dnsIpCfgForm.jsp index 64569672d..16add00e9 100644 --- a/src/main/webapp/WEB-INF/views/cfg/dnsIpCfgForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/dnsIpCfgForm.jsp @@ -104,10 +104,11 @@ $(function(){ varStatus="satus">
+ + + + + <%-- <%@include file="/WEB-INF/include/form/complexIpInfo.jsp" %> --%>
diff --git a/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/form.jsp b/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/form.jsp index 93237770e..ca66ac2d9 100644 --- a/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/form.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/form.jsp @@ -278,7 +278,14 @@ var switchRateLimitType=function(){ checked> - + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/list.jsp b/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/list.jsp index 5d58920d4..f81660b64 100644 --- a/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/list.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/encryptedtunnelbehav/list.jsp @@ -423,7 +423,14 @@ - + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/cfg/fileTransfer/fileDigestForm.jsp b/src/main/webapp/WEB-INF/views/cfg/fileTransfer/fileDigestForm.jsp index e8c47ee3e..a1f7c8cbb 100644 --- a/src/main/webapp/WEB-INF/views/cfg/fileTransfer/fileDigestForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/fileTransfer/fileDigestForm.jsp @@ -209,9 +209,10 @@ varStatus="satus">
- <%--
- + + diff --git a/src/main/webapp/WEB-INF/views/cfg/intercept/interceptForm.jsp b/src/main/webapp/WEB-INF/views/cfg/intercept/interceptForm.jsp index e4f89d8ff..8b93723ca 100644 --- a/src/main/webapp/WEB-INF/views/cfg/intercept/interceptForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/intercept/interceptForm.jsp @@ -507,7 +507,7 @@ varStatus="satus">
+ + + + +
diff --git a/src/main/webapp/WEB-INF/views/cfg/intercept/strateagy/trustedCertForm.jsp b/src/main/webapp/WEB-INF/views/cfg/intercept/strateagy/trustedCertForm.jsp index ef5666540..3cebfb2ff 100644 --- a/src/main/webapp/WEB-INF/views/cfg/intercept/strateagy/trustedCertForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/intercept/strateagy/trustedCertForm.jsp @@ -118,9 +118,10 @@ function certFileValidate(){ varStatus="satus">
+ + + + + +
diff --git a/src/main/webapp/WEB-INF/views/cfg/logCfgTrendList.jsp b/src/main/webapp/WEB-INF/views/cfg/logCfgTrendList.jsp new file mode 100644 index 000000000..1f3719932 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/cfg/logCfgTrendList.jsp @@ -0,0 +1,410 @@ +<%@ page contentType="text/html;charset=UTF-8"%> +<%@ include file="/WEB-INF/include/taglib.jsp"%> + + + + <spring:message code="log"/><spring:message code="trend"/> + + + + + +
+ <%-- --%> + +
+
+ + +
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+ +
+ + +
+
+ +
+
+ +
+ + <%-- --%> + + + + + +
+ + +<%-- --%> + +<%-- --%> + + + + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/cfg/maintenance/dnsResStrategy/form.jsp b/src/main/webapp/WEB-INF/views/cfg/maintenance/dnsResStrategy/form.jsp index 0e28b3ec0..e98604a07 100644 --- a/src/main/webapp/WEB-INF/views/cfg/maintenance/dnsResStrategy/form.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/maintenance/dnsResStrategy/form.jsp @@ -146,9 +146,10 @@ $(function(){ varStatus="satus">
+ + + + + + +
diff --git a/src/main/webapp/WEB-INF/views/cfg/proxy/cache/form.jsp b/src/main/webapp/WEB-INF/views/cfg/proxy/cache/form.jsp index 0cc340f2c..207032874 100644 --- a/src/main/webapp/WEB-INF/views/cfg/proxy/cache/form.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/proxy/cache/form.jsp @@ -362,10 +362,11 @@ varStatus="satus">
- <%--
+
@@ -404,7 +405,7 @@
-
--%> +

diff --git a/src/main/webapp/WEB-INF/views/cfg/proxy/cache/list.jsp b/src/main/webapp/WEB-INF/views/cfg/proxy/cache/list.jsp index a7b70a08a..a3151175a 100644 --- a/src/main/webapp/WEB-INF/views/cfg/proxy/cache/list.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/proxy/cache/list.jsp @@ -355,7 +355,7 @@ - + diff --git a/src/main/webapp/WEB-INF/views/cfg/proxy/control/httpRedirectForm.jsp b/src/main/webapp/WEB-INF/views/cfg/proxy/control/httpRedirectForm.jsp index db03e6c6c..98339270d 100644 --- a/src/main/webapp/WEB-INF/views/cfg/proxy/control/httpRedirectForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/proxy/control/httpRedirectForm.jsp @@ -171,9 +171,10 @@

+ value="" onclick="WdatePicker({onpicked:function(){this.onchange()},dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,maxDate:'#F{\'new Date()\'}'});" onchange="setStartTime('#beginDate','#endDate',1,'d','yyyy-MM-dd hh:mm:ss',false)"/>
@@ -87,7 +87,7 @@ code="end_date" />
+ value="" onclick="WdatePicker({onpicked:function(){this.onchange()},dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,maxDate:'#F{\'new Date()\'}'});" onchange="setEndTime('#beginDate','#endDate',1,'d','yyyy-MM-dd hh:mm:ss',false)"/>
@@ -223,6 +223,7 @@ }); // 改变排序字段 function changeOrderby(searchQuota) { + loading(); appTop100List($("#beginDate").val(),$("#endDate").val(),$("#appType").val(),$("#entranceId").val(),searchQuota); } function searchList1() { diff --git a/src/main/webapp/WEB-INF/views/dashboard/trafficAppTypeList.jsp b/src/main/webapp/WEB-INF/views/dashboard/trafficAppTypeList.jsp index 9f8f21808..dd4b361ec 100644 --- a/src/main/webapp/WEB-INF/views/dashboard/trafficAppTypeList.jsp +++ b/src/main/webapp/WEB-INF/views/dashboard/trafficAppTypeList.jsp @@ -43,7 +43,7 @@
+ value="" onclick="WdatePicker({onpicked:function(){this.onchange()},dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,maxDate:'#F{\'new Date()\'}'});" onchange="setStartTime('#beginDate','#endDate',1,'d','yyyy-MM-dd hh:mm:ss',false)"/>
@@ -52,7 +52,7 @@
+ value="" onclick="WdatePicker({onpicked:function(){this.onchange()},dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,maxDate:'#F{\'new Date()\'}'});" onchange="setEndTime('#beginDate','#endDate',1,'d','yyyy-MM-dd hh:mm:ss',false)"/>
@@ -212,11 +212,25 @@ function ajaxAppList(start,end,entranceId){ //打印列表 function doPrint() { getPageData(1,999999);// 设置打印条数 + //统计数据 + var tb=document.getElementById("contentTable"); + var rows=tb.rows; + $("#contentTable tbody tr").removeClass("hidden"); + //为某一列或者 某一行 添加样式 + addPrintTableCss(rows.length-1,0,"contentTable","print-title"); + + var title='

'; + title+='
:'+$("#beginDate").val(); + title+='    '; + title+=':'+$("#endDate").val()+'
'; + $('.tr-total').addClass("tc"); $("#contentTable").print({ globalStyles: true, iframe: true, - append: null + append: null, + prepend: title }); + $('.tr-total').addClass("hidden"); getPageData(1,10); pageJuan(10);//初始化分页 } @@ -343,6 +357,7 @@ function htmlData(fileDataS){ if(index==fileDataS.length-1){ html+="" html+= ""+""+""; + html+= "" +"--"+"" html+= ""+totalLink+""; html+= "" +"100%"+""; html+= ""+Math.round(totalPackets*100)/100+""; diff --git a/src/main/webapp/WEB-INF/views/dashboard/trafficHttpStatisticList.jsp b/src/main/webapp/WEB-INF/views/dashboard/trafficHttpStatisticList.jsp index 4cda0d06a..c2a569e15 100644 --- a/src/main/webapp/WEB-INF/views/dashboard/trafficHttpStatisticList.jsp +++ b/src/main/webapp/WEB-INF/views/dashboard/trafficHttpStatisticList.jsp @@ -173,11 +173,25 @@ function ajaxProtocolList(start,end){ //打印列表 function doPrint() { getPageData(1,999999);// 设置打印条数 + //统计数据 + var tb=document.getElementById("contentTable"); + var rows=tb.rows; + $("#contentTable tbody tr").removeClass("hidden"); + //为某一列或者 某一行 添加样式 + addPrintTableCss(rows.length-1,0,"contentTable","print-title"); + + var title='

'; + title+='
:'+$("#beginDate").val(); + title+='    '; + title+=':'+$("#endDate").val()+'
'; + $('.tr-total').addClass("tc"); $("#contentTable").print({ globalStyles: true, iframe: true, - append: null + append: null, + prepend: title }); + $('.tr-total').addClass("hidden"); getPageData(1,10); pageJuan(10);//初始化分页 } diff --git a/src/main/webapp/WEB-INF/views/dashboard/trafficIpActiveList.jsp b/src/main/webapp/WEB-INF/views/dashboard/trafficIpActiveList.jsp index fe7090a1d..fa791acf9 100644 --- a/src/main/webapp/WEB-INF/views/dashboard/trafficIpActiveList.jsp +++ b/src/main/webapp/WEB-INF/views/dashboard/trafficIpActiveList.jsp @@ -150,11 +150,24 @@ $(document).ready(function(){ }); //打印列表 function doPrint() { + //统计数据 + var tb=document.getElementById("contentTable"); + var rows=tb.rows; + $("#contentTable tbody tr").removeClass("hidden"); + //为某一列或者 某一行 添加样式 + addPrintTableCss(rows.length-1,0,"contentTable","print-title"); + + var title='

'; + title+='
:'+$("#beginDate").val(); + title+='    '; + title+=':'+$("#endDate").val()+'
'; $("#contentTable").print({ globalStyles: true, iframe: true, - append: null - }); + append: null, + prepend: title + }); + $('.tr-total').addClass("hidden"); } //导出列表 $(".export-btn").click(function(){ diff --git a/src/main/webapp/WEB-INF/views/dashboard/trafficProtocolTypeList.jsp b/src/main/webapp/WEB-INF/views/dashboard/trafficProtocolTypeList.jsp index 72c1e5e4b..4311e068f 100644 --- a/src/main/webapp/WEB-INF/views/dashboard/trafficProtocolTypeList.jsp +++ b/src/main/webapp/WEB-INF/views/dashboard/trafficProtocolTypeList.jsp @@ -203,11 +203,25 @@ function ajaxProtocolList(start,end,entranceId){ //打印列表 function doPrint() { getPageData(1,999999);// 设置打印条数 + //统计数据 + var tb=document.getElementById("contentTable"); + var rows=tb.rows; + $("#contentTable tbody tr").removeClass("hidden"); + //为某一列或者 某一行 添加样式 + addPrintTableCss(rows.length-1,0,"contentTable","print-title"); + + var title='

'; + title+='
:'+$("#beginDate").val(); + title+='    '; + title+=':'+$("#endDate").val()+'
'; + $('.tr-total').addClass("tc"); $("#contentTable").print({ globalStyles: true, iframe: true, - append: null + append: null, + prepend: title }); + $('.tr-total').addClass("hidden"); getPageData(1,10); pageJuan(10);//初始化分页 } diff --git a/src/main/webapp/WEB-INF/views/dashboard/trafficWebTypeList.jsp b/src/main/webapp/WEB-INF/views/dashboard/trafficWebTypeList.jsp index 54d542844..ffe66034f 100644 --- a/src/main/webapp/WEB-INF/views/dashboard/trafficWebTypeList.jsp +++ b/src/main/webapp/WEB-INF/views/dashboard/trafficWebTypeList.jsp @@ -72,7 +72,9 @@
@@ -142,7 +144,7 @@ - + () @@ -253,11 +255,25 @@ //打印列表 function doPrint() { getPageData(1,999999);// 设置打印条数 + //统计数据 + var tb=document.getElementById("contentTable"); + var rows=tb.rows; + $("#contentTable tbody tr").removeClass("hidden"); + //为某一列或者 某一行 添加样式 + addPrintTableCss(rows.length-1,0,"contentTable","print-title"); + + var title='

'; + title+='
:'+$("#beginDate").val(); + title+='    '; + title+=':'+$("#endDate").val()+'
'; + $('.tr-total').addClass("tc"); $("#contentTable").print({ globalStyles: true, iframe: true, - append: null + append: null, + prepend: title }); + $('.tr-total').addClass("hidden"); getPageData(1,10); pageJuan(10);//初始化分页 } @@ -386,11 +402,12 @@ if(index==fileDataS.length-1){ html+="" html+= ""+""+""; + html+= "" +"--"+"" html+= ""+totalunique+""; html+= "" +"--"+""; - html+= ""+totalPackets+""; + html+= ""+parseInt(totalPackets).toFixed(2)+""; html+= ""+"100%"+""; - html+= ""+totalGbyte+""; + html+= ""+parseInt(totalGbyte).toFixed(2)+""; html+= ""+"100%"+""; html+="" } diff --git a/src/main/webapp/WEB-INF/views/help.jsp b/src/main/webapp/WEB-INF/views/help.jsp index 7faea12a9..cd35fa574 100644 --- a/src/main/webapp/WEB-INF/views/help.jsp +++ b/src/main/webapp/WEB-INF/views/help.jsp @@ -60,16 +60,12 @@ function showHelp(helpHref) {
-
-
+
-
+
- - -
diff --git a/src/main/webapp/WEB-INF/views/home.jsp b/src/main/webapp/WEB-INF/views/home.jsp index 1df800b3a..28ceed752 100644 --- a/src/main/webapp/WEB-INF/views/home.jsp +++ b/src/main/webapp/WEB-INF/views/home.jsp @@ -343,6 +343,7 @@ background:#3d3d3d; +
+
+
+
+ + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/log/ntc/sslRecordLogList.jsp b/src/main/webapp/WEB-INF/views/log/ntc/sslRecordLogList.jsp new file mode 100644 index 000000000..93671ebed --- /dev/null +++ b/src/main/webapp/WEB-INF/views/log/ntc/sslRecordLogList.jsp @@ -0,0 +1,412 @@ +<%@ page contentType="text/html;charset=UTF-8"%> +<%@ include file="/WEB-INF/include/taglib.jsp"%> + + + + + + + + + +
+ +

+ +

+ +
+
+ +
+ +
+ + + + + + + + + +
+
+ + + + + + + + + + +
+
+
+
+ SNI +
+ +
+
+
+
+
+ +
+ <%-- --%> + +
+
+
+
+
+ +
+ <%-- --%> + +
+
+
+ + + +
+ +
+
+ + +
+ href="javascript:;"> + + +
+
+ + + +
+
+
+
+ + + + + + + +
+
+ +
+
+ + +
+
+ +
+
+ + + + + + + +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+ + <%--
+
+ + + + + + + +
+
--%> +
+
+
+
+ + +
+
+
+
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%-- --%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <%-- --%> + + + + +
SNISANCN
+<%-- --%> + + ${log.cfgId } + ${log.action } + + + ${dict.itemValue} + + + + ${log.foundTime }${log.recvTime } + ${log.entranceId } + + + ${dic.itemValue} + + + + ${log.version }${log.sni }${log.san }${log.cn }${log.capIp} + ${log.transProto } + + + ${dic.itemValue} + + + + + ${log.addrType } + + + ${dic.itemValue} + + + + ${log.dIp}${log.sIp}${log.dPort }${log.sPort } + ${log.deviceId } + + + ${device.itemValue} + + + + + ${log.linkId } + + + ${link.itemValue} + + + + + ${log.encapType } + + + ${encapType.itemValue} + + + + + ${log.direction } + + + ${direction.itemValue} + + + + ${log.innerSmac }${log.innerDmac } + ${log.streamDir } + + + ${streamType.itemValue} + + + + ${log.addrList }${log.serverLocate}${log.clientLocate}${log.sAsn}${log.dAsn}${log.sSubscribeId}${log.dSubscribeId}${log.userRegion}${log.sceneFile}
${page}
+
+
+
+
+
+ + diff --git a/src/main/webapp/WEB-INF/views/login.jsp b/src/main/webapp/WEB-INF/views/login.jsp index 60312e902..49acd702c 100644 --- a/src/main/webapp/WEB-INF/views/login.jsp +++ b/src/main/webapp/WEB-INF/views/login.jsp @@ -192,7 +192,7 @@ }); // 如果在框架或在对话框中,则弹出提示并跳转到首页 - if(self.frameElement && self.frameElement.tagName == "IFRAME" || $('#left').length > 0 || $('.jbox').length > 0){ + /* if(self.frameElement && self.frameElement.tagName == "IFRAME" || $('#left').length > 0 || $('.jbox').length > 0){ top.$.jBox.confirm("","",function(v,h,f){ if(v=="ok"){ @@ -202,9 +202,16 @@ } },{buttonsFocus:1}); top.$('.jbox-body .jbox-icon').css('top','55px'); + } */ + if(self.frameElement && self.frameElement.tagName == "IFRAME" || $('#left').length > 0 || $('.jbox').length > 0){ + top.$.jBox.prompt("", "", 'info', { + closed: function () { + top.location = "${pageContext.request.contextPath }"; + } + }); + top.$('.jbox-body .jbox-icon').css('top','55px'); } - });