diff --git a/src/main/java/com/nis/domain/log/MmVoipLog.java b/src/main/java/com/nis/domain/log/MmVoipLog.java index f052e1bfd..42f09527b 100644 --- a/src/main/java/com/nis/domain/log/MmVoipLog.java +++ b/src/main/java/com/nis/domain/log/MmVoipLog.java @@ -1,5 +1,6 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; import com.wordnik.swagger.annotations.ApiModelProperty; /** @@ -16,34 +17,62 @@ public class MmVoipLog extends BaseLogEntity { */ private static final long serialVersionUID = -9218072642855154505L; @ApiModelProperty(value="VOIP通话时长(秒)", required=true) + @ExcelField(title="duation",sort=8) private String duation; + @ApiModelProperty(value="VOIP协议", required=true) + @ExcelField(title="voip_protocol",sort=9) private String voipProtocol; + @ApiModelProperty(value="主叫VOIP账号", required=false) + @ExcelField(title="calling_account",sort=10) private String callingAccount; + @ApiModelProperty(value="被叫VOIP账号", required=false) + @ExcelField(title="called_account",sort=11) private String calledAccount; + @ApiModelProperty(value="VOIP主叫电信号码", required=false) + @ExcelField(title="calling_number",sort=12) private String callingNumber; + @ApiModelProperty(value="VOIP被叫电信号码", required=false) + @ExcelField(title="called_number",sort=13) private String calledNumber; + @ApiModelProperty(value="主叫VOIP语音文件存放服务器IP", required=true) + @ExcelField(title="from_to_store_ip",sort=14) private String fromToStoreIp; + @ApiModelProperty(value="主叫VOIP语音文件存放服务器URL", required=true) + @ExcelField(title="from_to_store_url",sort=15) private String fromToStoreUrl; + @ApiModelProperty(value="被叫VOIP语音文件存放服务器IP", required=true) + @ExcelField(title="to_from_store_ip",sort=16) private String toFromStoreIp; + @ApiModelProperty(value="被叫VOIP语音文件存放服务器URL", required=true) + @ExcelField(title="to_from_store_url",sort=17) private String toFromStoreUrl; + @ApiModelProperty(value="节目ID", required=true) + @ExcelField(title="pid",sort=18) private String pid; + @ApiModelProperty(value="封堵现场片段路径", required=false) + @ExcelField(title="log_uri",sort=19) private String logUri; + @ApiModelProperty(value="有害级别", required=false) + @ExcelField(title="harm_level",sort=20) private Integer level; + @ApiModelProperty(value="封堵类型", required=false) + @ExcelField(title="fd_type",sort=21) private Integer fdType; + public String getPid() { return pid; } diff --git a/src/main/java/com/nis/domain/log/NtcBGPLog.java b/src/main/java/com/nis/domain/log/NtcBGPLog.java index 64a1ac784..ed76262b5 100644 --- a/src/main/java/com/nis/domain/log/NtcBGPLog.java +++ b/src/main/java/com/nis/domain/log/NtcBGPLog.java @@ -1,28 +1,39 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + public class NtcBGPLog extends BaseLogEntity { private static final long serialVersionUID = 4597407682545926823L; + @ExcelField(title = "message_type", sort = 78) private Integer type; + @ExcelField(title = "as", sort = 79) private String asNum; + @ExcelField(title = "route", sort = 80) private String route; + public Integer getType() { return type; } + public void setType(Integer type) { this.type = type; } + public String getAsNum() { return asNum; } + public void setAsNum(String asNum) { this.asNum = asNum; } + public String getRoute() { return route; } + public void setRoute(String route) { this.route = route; } - + } diff --git a/src/main/java/com/nis/domain/log/NtcCollectVoipLog.java b/src/main/java/com/nis/domain/log/NtcCollectVoipLog.java index 14f0e42b7..6be1641e3 100644 --- a/src/main/java/com/nis/domain/log/NtcCollectVoipLog.java +++ b/src/main/java/com/nis/domain/log/NtcCollectVoipLog.java @@ -4,6 +4,7 @@ import java.util.Date; import com.fasterxml.jackson.annotation.JsonIgnore; import com.nis.domain.BaseEntity; +import com.nis.util.excel.ExcelField; import com.wordnik.swagger.annotations.ApiModelProperty; /** @@ -19,80 +20,133 @@ public class NtcCollectVoipLog extends BaseEntity { private static final long serialVersionUID = -2189520672838652485L; @ApiModelProperty(value = "节目ID", required = true) + @ExcelField(title = "pid", sort = 8) protected String pid; @ApiModelProperty(value = "发现时间", required = true) + @ExcelField(title = "found_time", sort = 8) protected Date foundTime; + @ApiModelProperty(value = "接收时间", required = true) + @ExcelField(title = "recv_time", sort = 8) protected Date recvTime; + @ApiModelProperty(value = "处理机IP", required = true) + @ExcelField(title = "clj_ip", sort = 8) protected String capIp; + @ApiModelProperty(value = "VOIP协议", required = true) + @ExcelField(title = "voip_protocol", sort = 8) protected String voipProtocol; + @ApiModelProperty(value = "RTP服务端ip地址", required = true) + @ExcelField(title = "rtp_d_ip", sort = 8) protected String rtpDIp; + @ApiModelProperty(value = "RTP客户端ip地址", required = true) + @ExcelField(title = "rtp_s_ip", sort = 8) protected String rtpSIp; + @ApiModelProperty(value = "RTP服务端端口", required = true) + @ExcelField(title = "rtp_d_port", sort = 8) protected Integer rtpDPort; + @ApiModelProperty(value = "RTP客户端端口", required = true) + @ExcelField(title = "rtp_s_port", sort = 8) protected Integer rtpSPort; + @ApiModelProperty(value = "主叫VOIP语音文件存放服务器IP", required = true) + @ExcelField(title = "from_to_store_ip", sort = 8) protected String fromToStoreIp; + @ApiModelProperty(value = "主叫VOIP语音文件存放服务器URL", required = true) + @ExcelField(title = "from_to_store_url", sort = 8) protected String fromToStoreUrl; + @ApiModelProperty(value = "被叫VOIP语音文件存放服务器IP", required = true) + @ExcelField(title = "to_from_store_ip", sort = 8) protected String toFromStoreIp; + @ApiModelProperty(value = "被叫VOIP语音文件存放服务器URL", required = true) + @ExcelField(title = "to_from_store_url", sort = 8) protected String toFromStoreUrl; + @ApiModelProperty(value = "VOIP通话时长(秒)", required = true) + @ExcelField(title = "duation", sort = 8) protected String duation; + @ApiModelProperty(value = "SIP服务端ip地址", required = true) + @ExcelField(title = "sip_d_ip", sort = 8) protected String sipDIp; + @ApiModelProperty(value = "SIP客户端ip地址", required = true) + @ExcelField(title = "sip_s_ip", sort = 8) protected String sipSIp; + @ApiModelProperty(value = "SIP服务端端口", required = true) + @ExcelField(title = "sip_d_port", sort = 8) protected Integer sipDPort; + @ApiModelProperty(value = "SIP客户端端口", required = true) + @ExcelField(title = "sip_s_port", sort = 8) protected Integer sipSPort; + @ApiModelProperty(value = "SIP会话ID", required = true) + @ExcelField(title = "call_id", sort = 8) protected String callId; + @ApiModelProperty(value = "SIP请求URI", required = true) + @ExcelField(title = "request_uri", sort = 8) protected String requestUri; + @ApiModelProperty(value = "SIP主叫VOIP账号", required = true) + @ExcelField(title = "calling_account", sort = 8) protected String callingAccount; + @ApiModelProperty(value = "SIP被叫VOIP账号", required = true) + @ExcelField(title = "called_account", sort = 8) protected String calledAccount; + @ApiModelProperty(value = "SIP相应字段", required = true) + @ExcelField(title = "Contacts", sort = 8) protected String contacts; + @ApiModelProperty(value = "SIP相应字段", required = true) + @ExcelField(title = "Via", sort = 8) protected String via; + @ApiModelProperty(value = "SIP相应字段", required = true) + @ExcelField(title = "Route", sort = 8) protected String route; + @ApiModelProperty(value = "SIP相应字段", required = true) + @ExcelField(title = "Record Route", sort = 8) protected String recordRoute; + @ApiModelProperty(value = "SIP相应字段", required = true) + @ExcelField(title = "User Agent", sort = 8) protected String userAgent; + @ApiModelProperty(value = "SIP相应字段", required = true) + @ExcelField(title = "Server", sort = 8) protected String server; - - + protected Integer functionId; protected Integer action; - - protected String date;//配置界面日志总量查询时间 - protected String isLogTotalSearch;//由配置列表点击日志总量进行查询的标识 - protected String orderBy;//排序参数 - - protected String searchVoipProtocol;//协议类型 - protected String searchRtpDIp;//RTP服务端ip - protected String searchRtpSIp;//RTP客户端ip - protected String searchSipDIp;//SIP服务端ip - protected String searchSipSIp;//SIP客户端ip - protected String searchCapIp;//处理机IP - protected String searchFoundStartTime;//开始发现时间 - protected String searchFoundEndTime;//结束发现时间 - + + protected String date;// 配置界面日志总量查询时间 + protected String isLogTotalSearch;// 由配置列表点击日志总量进行查询的标识 + protected String orderBy;// 排序参数 + + protected String searchVoipProtocol;// 协议类型 + protected String searchRtpDIp;// RTP服务端ip + protected String searchRtpSIp;// RTP客户端ip + protected String searchSipDIp;// SIP服务端ip + protected String searchSipSIp;// SIP客户端ip + protected String searchCapIp;// 处理机IP + protected String searchFoundStartTime;// 开始发现时间 + protected String searchFoundEndTime;// 结束发现时间 + public NtcCollectVoipLog() { super(); // TODO Auto-generated constructor stub @@ -328,6 +382,7 @@ public class NtcCollectVoipLog extends BaseEntity { public void setServer(String server) { this.server = server; } + @JsonIgnore public String getSearchVoipProtocol() { return searchVoipProtocol; @@ -336,6 +391,7 @@ public class NtcCollectVoipLog extends BaseEntity { public void setSearchVoipProtocol(String searchVoipProtocol) { this.searchVoipProtocol = searchVoipProtocol; } + @JsonIgnore public String getSearchRtpDIp() { return searchRtpDIp; @@ -344,6 +400,7 @@ public class NtcCollectVoipLog extends BaseEntity { public void setSearchRtpDIp(String searchRtpDIp) { this.searchRtpDIp = searchRtpDIp; } + @JsonIgnore public String getSearchRtpSIp() { return searchRtpSIp; @@ -352,6 +409,7 @@ public class NtcCollectVoipLog extends BaseEntity { public void setSearchRtpSIp(String searchRtpSIp) { this.searchRtpSIp = searchRtpSIp; } + @JsonIgnore public String getSearchSipDIp() { return searchSipDIp; @@ -360,7 +418,7 @@ public class NtcCollectVoipLog extends BaseEntity { public void setSearchSipDIp(String searchSipDIp) { this.searchSipDIp = searchSipDIp; } - + public String getSearchSipSIp() { return searchSipSIp; } @@ -377,6 +435,7 @@ public class NtcCollectVoipLog extends BaseEntity { public void setSearchCapIp(String searchCapIp) { this.searchCapIp = searchCapIp; } + @JsonIgnore public String getSearchFoundStartTime() { return searchFoundStartTime; @@ -434,5 +493,5 @@ public class NtcCollectVoipLog extends BaseEntity { public void setOrderBy(String orderBy) { this.orderBy = orderBy; } - + } diff --git a/src/main/java/com/nis/domain/log/NtcConnRecordLog.java b/src/main/java/com/nis/domain/log/NtcConnRecordLog.java index 53076b4f7..cb292b588 100644 --- a/src/main/java/com/nis/domain/log/NtcConnRecordLog.java +++ b/src/main/java/com/nis/domain/log/NtcConnRecordLog.java @@ -1,41 +1,61 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + public class NtcConnRecordLog extends BaseLogEntity { private static final long serialVersionUID = -4947912502754359817L; - + @ExcelField(title = "social_app", sort = 8) protected Integer appLabel; + + @ExcelField(title = "c2s_pkt_num", sort = 9) protected String c2sPktNum; + + @ExcelField(title = "s2c_pkt_num", sort = 10) protected String s2cPktNum; + + @ExcelField(title = "c2s_byte_num", sort = 12) protected String c2sByteNum; + + @ExcelField(title = "s2c_byte_num", sort = 13) protected String s2cByteNum; + public Integer getAppLabel() { return appLabel; } + public void setAppLabel(Integer appLabel) { this.appLabel = appLabel; } + public String getC2sPktNum() { return c2sPktNum; } + public void setC2sPktNum(String c2sPktNum) { this.c2sPktNum = c2sPktNum; } + public String getS2cPktNum() { return s2cPktNum; } + public void setS2cPktNum(String s2cPktNum) { this.s2cPktNum = s2cPktNum; } + public String getC2sByteNum() { return c2sByteNum; } + public void setC2sByteNum(String c2sByteNum) { this.c2sByteNum = c2sByteNum; } + public String getS2cByteNum() { return s2cByteNum; } + public void setS2cByteNum(String s2cByteNum) { this.s2cByteNum = s2cByteNum; } diff --git a/src/main/java/com/nis/domain/log/NtcDnsLog.java b/src/main/java/com/nis/domain/log/NtcDnsLog.java index 9b627ae4d..050d02447 100644 --- a/src/main/java/com/nis/domain/log/NtcDnsLog.java +++ b/src/main/java/com/nis/domain/log/NtcDnsLog.java @@ -1,109 +1,157 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + public class NtcDnsLog extends BaseLogEntity { private static final long serialVersionUID = -3763888115864065019L; + @ExcelField(title = "qr", dictType = "DNS_QR", sort = 8) private Integer qr; + + @ExcelField(title = "rd", dictType = "SYS_YES_NO", sort = 9) private Integer rd; + + @ExcelField(title = "ra", dictType = "SYS_YES_NO", sort = 10) private Integer ra; + + @ExcelField(title = "rr", sort = 11) private String rr; + + @ExcelField(title = "qtype", dictType = "DNS_QTYPE", sort = 12) private Integer qType; + + @ExcelField(title = "qclass", dictType = "DNS_QCLASS", sort = 13) private Integer qclass; + + @ExcelField(title = "opcode", dictType = "DNS_OPCODE", sort = 14) private Integer opcode; + + @ExcelField(title = "qname", sort = 15) private String qname; + + @ExcelField(title = "cname", sort = 16) private String cname; + + @ExcelField(title = "dns_sub", dictType = "DNS_SUB", sort = 17) private Integer dnsSub; - - /*以下字段无需反馈到界面*/ + + /* 以下字段无需反馈到界面 */ private String cheatType; private Integer cheatRcode; private String cheatStrategy; private String cheatRr; + public Integer getQr() { return qr; } + public void setQr(Integer qr) { this.qr = qr; } + public Integer getRd() { return rd; } + public void setRd(Integer rd) { this.rd = rd; } + public Integer getRa() { return ra; } + public void setRa(Integer ra) { this.ra = ra; } + public String getRr() { return rr; } + public void setRr(String rr) { this.rr = rr; } + public Integer getqType() { return qType; } + public void setqType(Integer qType) { this.qType = qType; } + public Integer getQclass() { return qclass; } + public void setQclass(Integer qclass) { this.qclass = qclass; } + public Integer getOpcode() { return opcode; } + public void setOpcode(Integer opcode) { this.opcode = opcode; } + public String getQname() { return qname; } + public void setQname(String qname) { this.qname = qname; } + public String getCname() { return cname; } + public void setCname(String cname) { this.cname = cname; } + public Integer getDnsSub() { return dnsSub; } + public void setDnsSub(Integer dnsSub) { this.dnsSub = dnsSub; } + public String getCheatType() { return cheatType; } + public void setCheatType(String cheatType) { this.cheatType = cheatType; } + public Integer getCheatRcode() { return cheatRcode; } + public void setCheatRcode(Integer cheatRcode) { this.cheatRcode = cheatRcode; } + public String getCheatStrategy() { return cheatStrategy; } + public void setCheatStrategy(String cheatStrategy) { this.cheatStrategy = cheatStrategy; } + public String getCheatRr() { return cheatRr; } + public void setCheatRr(String cheatRr) { this.cheatRr = cheatRr; } - - + } diff --git a/src/main/java/com/nis/domain/log/NtcFtpLog.java b/src/main/java/com/nis/domain/log/NtcFtpLog.java index f7497af9d..310916d50 100644 --- a/src/main/java/com/nis/domain/log/NtcFtpLog.java +++ b/src/main/java/com/nis/domain/log/NtcFtpLog.java @@ -1,30 +1,34 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + public class NtcFtpLog extends BaseLogEntity { /** * */ private static final long serialVersionUID = 348767275603485504L; - - private String ftpUrl;//FTP链接 - private String ftpContent;//FTP内容 - + + @ExcelField(title = "ftp_url", sort = 8) + private String ftpUrl;// FTP链接 + + @ExcelField(title = "ftp_content", sort = 9) + private String ftpContent;// FTP内容 + public String getFtpUrl() { return ftpUrl; } + public void setFtpUrl(String ftpUrl) { this.ftpUrl = ftpUrl; } + public String getFtpContent() { return ftpContent; } + public void setFtpContent(String ftpContent) { this.ftpContent = ftpContent; } - - - - } diff --git a/src/main/java/com/nis/domain/log/NtcHttpLog.java b/src/main/java/com/nis/domain/log/NtcHttpLog.java index b7c40a447..0ba256c1f 100644 --- a/src/main/java/com/nis/domain/log/NtcHttpLog.java +++ b/src/main/java/com/nis/domain/log/NtcHttpLog.java @@ -1,22 +1,42 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + public class NtcHttpLog extends BaseLogEntity { private static final long serialVersionUID = -7697668215327123848L; + @ExcelField(title = "URL", sort = 8) private String url; - private String reqHdrKey;//请求头转储文件key + + @ExcelField(title = "req_hdr_key", sort = 9) + private String reqHdrKey;// 请求头转储文件key + + @ExcelField(title = "req_hdr_file", sort = 10) private String reqHdrFile; - private String reqBodyKey;//请求体转储文件key + + @ExcelField(title = "req_body_key", sort = 11) + private String reqBodyKey;// 请求体转储文件key + + @ExcelField(title = "req_body_file", sort = 12) private String reqBodyFile; - private String resHdrKey;//应答头转储文件key + + @ExcelField(title = "res_hdr_key", sort = 13) + private String resHdrKey;// 应答头转储文件key + + @ExcelField(title = "res_hdr_file", sort = 14) private String resHdrFile; - private String resBodyKey;//应答体转储文件key + + @ExcelField(title = "res_body_key", sort = 15) + private String resBodyKey;// 应答体转储文件key + + @ExcelField(title = "res_body_file", sort = 16) private String resBodyFile; - private String website;//域名 - - - /*以下字段无需反馈到界面*/ + + @ExcelField(title = "website", sort = 17) + private String website;// 域名 + + /* 以下字段无需反馈到界面 */ private Integer c2sIsn; private Integer pxyFlag; private Integer httpSeq; @@ -30,143 +50,187 @@ public class NtcHttpLog extends BaseLogEntity { private String contentLen; private String contentType; private String setCookie; - - + public String getReqHdrFile() { return reqHdrFile; } + public void setReqHdrFile(String reqHdrFile) { this.reqHdrFile = reqHdrFile; } + public String getReqBodyFile() { return reqBodyFile; } + public void setReqBodyFile(String reqBodyFile) { this.reqBodyFile = reqBodyFile; } + public String getResHdrFile() { return resHdrFile; } + public void setResHdrFile(String resHdrFile) { this.resHdrFile = resHdrFile; } + public String getResBodyFile() { return resBodyFile; } + public void setResBodyFile(String resBodyFile) { this.resBodyFile = resBodyFile; } + public Integer getPxyFlag() { return pxyFlag; } + public void setPxyFlag(Integer pxyFlag) { this.pxyFlag = pxyFlag; } + public String getCookie() { return cookie; } + public void setCookie(String cookie) { this.cookie = cookie; } + public String getRefefer() { return refefer; } + public void setRefefer(String refefer) { this.refefer = refefer; } + public String getUserAgent() { return userAgent; } + public void setUserAgent(String userAgent) { this.userAgent = userAgent; } + public String getUserDefineKey() { return userDefineKey; } + public void setUserDefineKey(String userDefineKey) { this.userDefineKey = userDefineKey; } + public String getUserDefineValue() { return userDefineValue; } + public void setUserDefineValue(String userDefineValue) { this.userDefineValue = userDefineValue; } + public String getContentLen() { return contentLen; } + public void setContentLen(String contentLen) { this.contentLen = contentLen; } + public String getContentType() { return contentType; } + public void setContentType(String contentType) { this.contentType = contentType; } + public String getSetCookie() { return setCookie; } + public void setSetCookie(String setCookie) { this.setCookie = setCookie; } + public Integer getC2sIsn() { return c2sIsn; } + public void setC2sIsn(Integer c2sIsn) { this.c2sIsn = c2sIsn; } + public Integer getHttpSeq() { return httpSeq; } + public void setHttpSeq(Integer httpSeq) { this.httpSeq = httpSeq; } + public String getUrl() { return url; } + public void setUrl(String url) { this.url = url; } + public String getReqLine() { return reqLine; } + public void setReqLine(String reqLine) { this.reqLine = reqLine; } + public String getResLine() { return resLine; } + public void setResLine(String resLine) { this.resLine = resLine; } + public String getReqHdrKey() { return reqHdrKey; } + public void setReqHdrKey(String reqHdrKey) { this.reqHdrKey = reqHdrKey; } + public String getReqBodyKey() { return reqBodyKey; } + public void setReqBodyKey(String reqBodyKey) { this.reqBodyKey = reqBodyKey; } + public String getResHdrKey() { return resHdrKey; } + public void setResHdrKey(String resHdrKey) { this.resHdrKey = resHdrKey; } + public String getResBodyKey() { return resBodyKey; } + public void setResBodyKey(String resBodyKey) { this.resBodyKey = resBodyKey; } + public String getWebsite() { return website; } + public void setWebsite(String website) { this.website = website; } diff --git a/src/main/java/com/nis/domain/log/NtcKeywordsUrlLog.java b/src/main/java/com/nis/domain/log/NtcKeywordsUrlLog.java index 0ac6de1e4..550a5c4c1 100644 --- a/src/main/java/com/nis/domain/log/NtcKeywordsUrlLog.java +++ b/src/main/java/com/nis/domain/log/NtcKeywordsUrlLog.java @@ -1,22 +1,29 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + public class NtcKeywordsUrlLog extends BaseLogEntity { private static final long serialVersionUID = -7697668215327123848L; + @ExcelField(title = "URL", sort = 8) private String url; - private String website;//域名 + + @ExcelField(title = "website", sort = 9) + private String website;// 域名 public String getUrl() { return url; } + public void setUrl(String url) { this.url = url; } - + public String getWebsite() { return website; } + public void setWebsite(String website) { this.website = website; } diff --git a/src/main/java/com/nis/domain/log/NtcMailLog.java b/src/main/java/com/nis/domain/log/NtcMailLog.java index 5495bc1b5..6959e6b30 100644 --- a/src/main/java/com/nis/domain/log/NtcMailLog.java +++ b/src/main/java/com/nis/domain/log/NtcMailLog.java @@ -1,52 +1,74 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + public class NtcMailLog extends BaseLogEntity { private static final long serialVersionUID = -2848016592975339617L; - - private String mailProto; //邮件协议类型,不可空 SMTP/POP3/IMAP4 + @ExcelField(title = "mail_proto", sort = 8) + private String mailProto; // 邮件协议类型,不可空 SMTP/POP3/IMAP4 + + @ExcelField(title = "mail_from", sort = 9) private String mailFrom; + + @ExcelField(title = "mail_to", sort = 10) private String mailTo; + + @ExcelField(title = "subject", sort = 11) private String subject; + + @ExcelField(title = "eml_file", sort = 12) private String emlFile; + + @ExcelField(title = "eml_key", sort = 13) private String emlKey; - - + public String getEmlKey() { return emlKey; } + public void setEmlKey(String emlKey) { this.emlKey = emlKey; } + public String getMailProto() { return mailProto; } + public void setMailProto(String mailProto) { this.mailProto = mailProto; } + public String getMailFrom() { return mailFrom; } + public void setMailFrom(String mailFrom) { this.mailFrom = mailFrom; } + public String getMailTo() { return mailTo; } + public void setMailTo(String mailTo) { this.mailTo = mailTo; } + public String getSubject() { return subject; } + public void setSubject(String subject) { this.subject = subject; } + public String getEmlFile() { return emlFile; } + public void setEmlFile(String emlFile) { this.emlFile = emlFile; } - + } diff --git a/src/main/java/com/nis/domain/log/NtcP2pLog.java b/src/main/java/com/nis/domain/log/NtcP2pLog.java index 9da477f46..e3cb86abb 100644 --- a/src/main/java/com/nis/domain/log/NtcP2pLog.java +++ b/src/main/java/com/nis/domain/log/NtcP2pLog.java @@ -1,32 +1,45 @@ package com.nis.domain.log; -public class NtcP2pLog extends BaseLogEntity{ +import com.nis.util.excel.ExcelField; + +public class NtcP2pLog extends BaseLogEntity { /** * */ private static final long serialVersionUID = -826089417186930465L; + + @ExcelField(title = "p2p_proto", sort = 8) private String p2pProto; + + @ExcelField(title = "p2p_file_id", sort = 9) private String p2pFileId; + + @ExcelField(title = "p2p_keyword", sort = 10) private String p2pKeyword; - + public String getP2pProto() { return p2pProto; } + public void setP2pProto(String p2pProto) { this.p2pProto = p2pProto; } + public String getP2pFileId() { return p2pFileId; } + public void setP2pFileId(String p2pFileId) { this.p2pFileId = p2pFileId; } + public String getP2pKeyword() { return p2pKeyword; } + public void setP2pKeyword(String p2pKeyword) { this.p2pKeyword = p2pKeyword; } - + } diff --git a/src/main/java/com/nis/domain/log/NtcSslLog.java b/src/main/java/com/nis/domain/log/NtcSslLog.java index 327a3cc1a..9d4d53a0c 100644 --- a/src/main/java/com/nis/domain/log/NtcSslLog.java +++ b/src/main/java/com/nis/domain/log/NtcSslLog.java @@ -1,38 +1,50 @@ package com.nis.domain.log; -public class NtcSslLog extends BaseLogEntity{ - +import com.nis.util.excel.ExcelField; + +public class NtcSslLog extends BaseLogEntity { + private static final long serialVersionUID = 533266057780162781L; - + + @ExcelField(title = "version", sort = 8) private String version;// 版本号 - private String sni;// SNI - private String san;// SAN + @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 - + 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; } - -} +} diff --git a/src/main/java/com/nis/domain/log/NtcStreamMediaLog.java b/src/main/java/com/nis/domain/log/NtcStreamMediaLog.java index ad74410e7..5f59dc916 100644 --- a/src/main/java/com/nis/domain/log/NtcStreamMediaLog.java +++ b/src/main/java/com/nis/domain/log/NtcStreamMediaLog.java @@ -1,5 +1,7 @@ package com.nis.domain.log; +import com.nis.util.excel.ExcelField; + /** * @ClassName:NtcStreamMediaLog * @Description:TODO(这里用一句话描述这个类的作用) @@ -10,7 +12,11 @@ package com.nis.domain.log; public class NtcStreamMediaLog extends BaseLogEntity { private static final long serialVersionUID = 1446933545638550170L; + + @ExcelField(title="access_url",sort=8) protected String url; + + @ExcelField(title="stream_media_protocol",sort=9) protected String protocol; public String getUrl() { return url; diff --git a/src/main/java/com/nis/util/Reflections.java b/src/main/java/com/nis/util/Reflections.java index 075420c9a..3a91b4844 100644 --- a/src/main/java/com/nis/util/Reflections.java +++ b/src/main/java/com/nis/util/Reflections.java @@ -57,6 +57,8 @@ public class Reflections { getName="sSubscribeId"; }else if(getName.equals("DSubscribeId")){ getName="dSubscribeId"; + }else if(getName.equals("QType")){ + getName="qType"; } String getterMethodName = GETTER_PREFIX + getName; object = invokeMethod(object, getterMethodName, new Class[] {}, new Object[] {}); diff --git a/src/main/java/com/nis/web/controller/log/ntc/BgpLogController.java b/src/main/java/com/nis/web/controller/log/ntc/BgpLogController.java index d66b07bed..670c9367e 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/BgpLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/BgpLogController.java @@ -1,5 +1,6 @@ package com.nis.web.controller.log.ntc; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -13,6 +14,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -20,20 +22,24 @@ 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.NtcAppLog; import com.nis.domain.log.NtcBGPLog; +import com.nis.domain.log.NtcCollectRadiusLog; 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/other/bgpLogs") public class BgpLogController extends BaseController { - - @RequestMapping(value = {"list", ""}) - public String list(@ModelAttribute("log") NtcBGPLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + + @RequestMapping(value = { "list", "" }) + public String list(@ModelAttribute("log") NtcBGPLog log, Model model, HttpServletRequest request, + HttpServletResponse response) { try { PageLog page = new PageLog(request, response); Map params = new HashMap(); @@ -43,22 +49,23 @@ public class BgpLogController extends BaseController { List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); model.addAttribute("serviceList", serviceList); - + String url = Constants.LOG_BASE_URL + Constants.NTC_BGP_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()); + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>() { + }.getType()); if (fromJson.getStatus().intValue() == 200) { - Page data=fromJson.getData(); + Page data = fromJson.getData(); page.setCount(data.getCount()); page.setLast(data.getLast()); page.setList(data.getList()); List list = page.getList(); for (NtcBGPLog l : list) { l.setFunctionId(log.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); } @@ -67,8 +74,67 @@ public class BgpLogController extends BaseController { logger.error("查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/bgpList"; } - + + // radius配置导出 + @RequestMapping(value = "exportBgp") + public void exportBgp(@ModelAttribute("log") NtcBGPLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了bgp"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_BGP_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(); + } + } + titleList.add("bgp_control"); + classMap.put("bgp_control", NtcBGPLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("bgp_control", cfgIndexInfoNoExport); + dataMap.put("bgp_control", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "bgp_control", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "bgp_control", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("bgp_control export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } } diff --git a/src/main/java/com/nis/web/controller/log/ntc/CollectVoipLogController.java b/src/main/java/com/nis/web/controller/log/ntc/CollectVoipLogController.java index d311a3784..4d249630d 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/CollectVoipLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/CollectVoipLogController.java @@ -1,6 +1,7 @@ package com.nis.web.controller.log.ntc; import java.io.IOException; +import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; @@ -17,6 +18,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -28,7 +30,11 @@ 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.NtcBGPLog; +import com.nis.domain.log.NtcCollectRadiusLog; +import com.nis.domain.log.NtcCollectVoipLog; +import com.nis.domain.log.NtcCollectVoipLog; import com.nis.domain.log.NtcCollectVoipLog; import com.nis.domain.maat.LogRecvData; import com.nis.util.CodeDicUtils; @@ -38,13 +44,15 @@ import com.nis.util.DictUtils; import com.nis.util.httpclient.HttpClientUtil; import com.nis.web.controller.BaseController; import com.nis.web.dao.dashboard.codedic.CodeResult; +import com.nis.web.security.UserUtils; @Controller @RequestMapping(value = "${adminPath}/log/ntc/ntcCollectVoipLogs") -public class CollectVoipLogController extends BaseController{ +public class CollectVoipLogController extends BaseController { /** * voip泛收日志 + * * @param model * @param entry * @param request @@ -53,16 +61,17 @@ public class CollectVoipLogController extends BaseController{ * @throws ClientProtocolException * @throws IOException */ - @RequestMapping(value={"list",""}) - public String list(Model model,@ModelAttribute("log")NtcCollectVoipLog entry,HttpServletRequest request, HttpServletResponse response) throws ClientProtocolException, IOException { - + @RequestMapping(value = { "list", "" }) + public String list(Model model, @ModelAttribute("log") NtcCollectVoipLog entry, HttpServletRequest request, + HttpServletResponse response) throws ClientProtocolException, IOException { + try { - + PageLog page = new PageLog(request, response); - Map params=new HashMap<>(); + Map params = new HashMap<>(); params.put("pageSize", page.getPageSize()); params.put("pageNo", page.getPageNo()); - //查询值判断 + // 查询值判断 if (StringUtils.isNotBlank(entry.getSearchFoundStartTime()) && StringUtils.isNotBlank(entry.getSearchFoundEndTime())) { params.put("searchFoundStartTime", entry.getSearchFoundStartTime()); @@ -118,19 +127,19 @@ public class CollectVoipLogController extends BaseController{ } List serviceList = DictUtils.getFunctionServiceDictList(entry.getFunctionId()); model.addAttribute("serviceList", serviceList); - - //获取字典信息 - List protocolList=CodeDicUtils.getCodeList("protocolCode"); - List behaviorList=CodeDicUtils.getCodeList("behaviorCode"); - List appList=CodeDicUtils.getCodeList("appCode"); + + // 获取字典信息 + List protocolList = CodeDicUtils.getCodeList("protocolCode"); + List behaviorList = CodeDicUtils.getCodeList("behaviorCode"); + List appList = CodeDicUtils.getCodeList("appCode"); model.addAttribute("protocolList", protocolList); model.addAttribute("behaviorList", behaviorList); model.addAttribute("appList", appList); - + String url = ""; - url = Constants.LOG_BASE_URL+Constants.NTC_COLLECT_VOIP_LOG; - String jsonString = HttpClientUtil.getMsg(url,params,request); - + url = Constants.LOG_BASE_URL + Constants.NTC_COLLECT_VOIP_LOG; + String jsonString = HttpClientUtil.getMsg(url, params, request); + GsonBuilder builder = new GsonBuilder(); builder.registerTypeAdapter(Date.class, new JsonDeserializer() { @@ -140,9 +149,11 @@ public class CollectVoipLogController extends BaseController{ } }); Gson gson = builder.setDateFormat("yyyy-MM-dd HH:mm:ss").create(); - //gson泛型支持 - LogRecvData fromJson = gson.fromJson(jsonString, new TypeToken>(){}.getType()); - + // gson泛型支持 + LogRecvData fromJson = gson.fromJson(jsonString, + new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -157,5 +168,151 @@ public class CollectVoipLogController extends BaseController{ } return "/log/ntc/collectVoipList"; } - + + // VoipCollect配置导出 + @RequestMapping(value = "exportVoipCollect") + public void exportVoipCollect(@ModelAttribute("log") NtcCollectVoipLog entry, Model model, String hColumns, + String type, HttpServletRequest request, HttpServletResponse response, + RedirectAttributes redirectAttributes) { + try { + PageLog page = new PageLog(request, response); + Map params = new HashMap<>(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + // 查询值判断 + List list = new ArrayList(); + if (StringUtils.isNotBlank(entry.getSearchFoundStartTime()) + && StringUtils.isNotBlank(entry.getSearchFoundEndTime())) { + params.put("searchFoundStartTime", entry.getSearchFoundStartTime()); + params.put("searchFoundEndTime", entry.getSearchFoundEndTime()); + } else { + // 判断是否是从配置界面过来的日志查询 + if (StringUtils.isNotBlank(entry.getIsLogTotalSearch())) { + Calendar time = Calendar.getInstance(); + time.add(Calendar.MINUTE, -5); + String searchEndTime = DateUtils.formatDateTime(time.getTime()); + params.put("searchFoundEndTime", searchEndTime); + entry.setSearchFoundEndTime(searchEndTime); + + time.add(Calendar.MINUTE, -5); + String searchStartTime = DateUtils.formatDateTime(time.getTime()); + params.put("searchFoundStartTime", searchStartTime); + entry.setSearchFoundStartTime(searchStartTime); + + } else { + // 设置默认查询当前时间及前五分钟 + String endTime = DateUtils.getDateTime(); + Date dateStart = new Date(new Date().getTime() - Constants.LOG_TIME_INTERVAL); + String startTime = DateUtils.formatDateTime(dateStart); + params.put("searchFoundStartTime", startTime); + params.put("searchFoundEndTime", endTime); + entry.setSearchFoundStartTime(startTime); + entry.setSearchFoundEndTime(endTime); + } + logger.info("searchFoundStartTime:" + params.get("searchFoundStartTime")); + logger.info("searchFoundEndTime:" + params.get("searchFoundEndTime")); + } + + if (StringUtils.isNotBlank(entry.getVoipProtocol())) { + params.put("searchVoipProtocol", entry.getVoipProtocol()); + } + if (StringUtils.isNotBlank(entry.getRtpDIp())) { + params.put("searchRtpDIp", entry.getRtpDIp()); + } + if (StringUtils.isNotBlank(entry.getCapIp())) { + params.put("searchCapIp", entry.getCapIp()); + } + if (StringUtils.isNotBlank(entry.getRtpSIp())) { + params.put("searchRtpSIp", entry.getRtpSIp()); + } + if (StringUtils.isNotBlank(entry.getSipDIp())) { + params.put("searchSipDIp", entry.getSipDIp()); + } + if (StringUtils.isNotBlank(entry.getSipSIp())) { + params.put("searchSipSIp", entry.getSipSIp()); + } + if (StringUtils.isNotBlank(entry.getOrderBy())) { + params.put("orderBy", entry.getOrderBy()); + } + List serviceList = DictUtils.getFunctionServiceDictList(entry.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + // 获取字典信息 + List protocolList = CodeDicUtils.getCodeList("protocolCode"); + List behaviorList = CodeDicUtils.getCodeList("behaviorCode"); + List appList = CodeDicUtils.getCodeList("appCode"); + String url = ""; + url = Constants.LOG_BASE_URL + Constants.NTC_COLLECT_VOIP_LOG; + String jsonString = HttpClientUtil.getMsg(url, params, request); + + GsonBuilder builder = new GsonBuilder(); + builder.registerTypeAdapter(Date.class, new JsonDeserializer() { + + public Date deserialize(JsonElement json, java.lang.reflect.Type typeOfT, + JsonDeserializationContext context) throws JsonParseException { + return new Date(json.getAsJsonPrimitive().getAsLong()); + } + }); + Gson gson = builder.setDateFormat("yyyy-MM-dd HH:mm:ss").create(); + // gson泛型支持 + LogRecvData fromJson = gson.fromJson(jsonString, + new TypeToken>() { + }.getType()); + + if (fromJson.getStatus().intValue() == 200) { + Page data = fromJson.getData(); + list = data.getList(); +// list = getList(); + } + + List titleList = new ArrayList(); + Map> classMap = new HashMap>(); + Map dataMap = new HashMap(); + Map noExportMap = new HashMap(); + + titleList.add("collect_voip"); + classMap.put("collect_voip", NtcCollectVoipLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = ",cfg_id,action," + hColumns; + noExportMap.put("collect_voip", cfgIndexInfoNoExport); + dataMap.put("collect_voip", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "collect_voip", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "collect_voip", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("collect_voip export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } + + public List getList() { + List list = new ArrayList(); + for (int i = 0; i < 100; i++) { + NtcCollectVoipLog ntcCollectVoipLog = new NtcCollectVoipLog(); + ntcCollectVoipLog.setAction(i); + ntcCollectVoipLog.setCalledAccount("-" + i); + ntcCollectVoipLog.setCallId("11" + i); + ntcCollectVoipLog.setDate(new Date().toString()); + ntcCollectVoipLog.setId(1L); + ntcCollectVoipLog.setSearchRtpDIp("123"); + ntcCollectVoipLog.setCallId("199199"); + ntcCollectVoipLog.setAction(1); + ntcCollectVoipLog.setCapIp("11"); + ntcCollectVoipLog.setContacts("aa"); + ntcCollectVoipLog.setFromToStoreUrl("tocal"); + list.add(ntcCollectVoipLog); + } + return list; + } + } diff --git a/src/main/java/com/nis/web/controller/log/ntc/DnsLogController.java b/src/main/java/com/nis/web/controller/log/ntc/DnsLogController.java index 697263600..e58745d36 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/DnsLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/DnsLogController.java @@ -1,5 +1,6 @@ package com.nis.web.controller.log.ntc; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -13,6 +14,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -21,20 +23,23 @@ 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.log.NtcDdosLog; +import com.nis.domain.SysUser; +import com.nis.domain.log.NtcCollectRadiusLog; import com.nis.domain.log.NtcDnsLog; 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/dns") public class DnsLogController extends BaseController { - + @RequestMapping("list") - public String list(@ModelAttribute("log") NtcDnsLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + public String list(@ModelAttribute("log") NtcDnsLog log, Model model, HttpServletRequest request, + HttpServletResponse response) { try { PageLog page = new PageLog(request, response); Map params = new HashMap(); @@ -44,16 +49,17 @@ public class DnsLogController extends BaseController { params.put("searchQname", log.getQname()); } initLogSearchValue(log, params); - + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); model.addAttribute("serviceList", serviceList); - + String url = Constants.LOG_BASE_URL + Constants.NTC_DNS_LOG; String recv = HttpClientUtil.getMsg(url, params, request); - + Gson gson = new GsonBuilder().create(); - - LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); + + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>() { + }.getType()); if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -62,7 +68,7 @@ public class DnsLogController extends BaseController { List list = page.getList(); for (NtcDnsLog l : list) { l.setFunctionId(log.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); } @@ -70,7 +76,71 @@ public class DnsLogController extends BaseController { logger.error("查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/dnsList"; } + + // Dns配置导出 + @RequestMapping(value = "exportDns") + public void exportDns(@ModelAttribute("log") NtcDnsLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了dns"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_DNS_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 (NtcDnsLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("DNS"); + classMap.put("DNS", NtcDnsLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("DNS", cfgIndexInfoNoExport); + dataMap.put("DNS", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "DNS", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "DNS", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("DNS export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } } diff --git a/src/main/java/com/nis/web/controller/log/ntc/FtpLogController.java b/src/main/java/com/nis/web/controller/log/ntc/FtpLogController.java index f7339d512..533f495a3 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/FtpLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/FtpLogController.java @@ -1,6 +1,7 @@ package com.nis.web.controller.log.ntc; import java.io.IOException; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -8,12 +9,14 @@ import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.lang3.StringUtils; import org.apache.http.client.ClientProtocolException; 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; @@ -21,18 +24,21 @@ 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.NtcDnsLog; import com.nis.domain.log.NtcFtpLog; +import com.nis.domain.log.NtcFtpLog; import com.nis.domain.log.NtcOpenVpnLog; 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(value = "${adminPath}/log/ntc/NtcFtpLogs") -public class FtpLogController extends BaseController{ +public class FtpLogController extends BaseController { /** * @param model @@ -43,29 +49,31 @@ public class FtpLogController extends BaseController{ * @throws ClientProtocolException * @throws IOException */ - @RequestMapping(value={"list",""}) - public String list(Model model,@ModelAttribute("log")NtcFtpLog entry,HttpServletRequest request, HttpServletResponse response) throws ClientProtocolException, IOException { - + @RequestMapping(value = { "list", "" }) + public String list(Model model, @ModelAttribute("log") NtcFtpLog entry, HttpServletRequest request, + HttpServletResponse response) throws ClientProtocolException, IOException { + try { - + PageLog page = new PageLog(request, response); - Map params=new HashMap<>(); + Map params = new HashMap<>(); params.put("pageSize", page.getPageSize()); params.put("pageNo", page.getPageNo()); - //查询值判断 - initLogSearchValue(entry,params); - + // 查询值判断 + initLogSearchValue(entry, params); + List serviceList = DictUtils.getFunctionServiceDictList(entry.getFunctionId()); model.addAttribute("serviceList", serviceList); - + String url = ""; - url = Constants.LOG_BASE_URL+Constants.NTC_FTP_LOG; - String jsonString = HttpClientUtil.getMsg(url,params,request); - + url = Constants.LOG_BASE_URL + Constants.NTC_FTP_LOG; + String jsonString = HttpClientUtil.getMsg(url, params, request); + Gson gson = new GsonBuilder().create(); - //gson泛型支持 - LogRecvData fromJson = gson.fromJson(jsonString, new TypeToken>(){}.getType()); - + // gson泛型支持 + LogRecvData fromJson = gson.fromJson(jsonString, new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -74,7 +82,7 @@ public class FtpLogController extends BaseController{ List list = page.getList(); for (NtcFtpLog l : list) { l.setFunctionId(entry.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); logger.info("查询Ftp日志成功"); @@ -85,5 +93,68 @@ public class FtpLogController extends BaseController{ } return "/log/ntc/ftpList"; } - + + // ftp配置导出 + @RequestMapping(value = "exportFtp") + public void exportFtp(@ModelAttribute("log") NtcFtpLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了Ftp"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_FTP_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 (NtcFtpLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("ftp_control"); + classMap.put("ftp_control", NtcFtpLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("ftp_control", cfgIndexInfoNoExport); + dataMap.put("ftp_control", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "ftp_control", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "ftp_control", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("ftp_control export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } } diff --git a/src/main/java/com/nis/web/controller/log/ntc/HttpKeyLogController.java b/src/main/java/com/nis/web/controller/log/ntc/HttpKeyLogController.java index c2d35b195..b5ff8cd77 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/HttpKeyLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/HttpKeyLogController.java @@ -1,5 +1,6 @@ package com.nis.web.controller.log.ntc; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -13,6 +14,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -20,21 +22,24 @@ 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.NtcFtpLog; -import com.nis.domain.log.NtcHttpLog; +import com.nis.domain.log.NtcKeywordsUrlLog; import com.nis.domain.log.NtcKeywordsUrlLog; 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/httpkey") public class HttpKeyLogController extends BaseController { - + @RequestMapping("list") - public String list(@ModelAttribute("log") NtcKeywordsUrlLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + public String list(@ModelAttribute("log") NtcKeywordsUrlLog log, Model model, HttpServletRequest request, + HttpServletResponse response) { try { PageLog page = new PageLog(request, response); Map params = new HashMap(); @@ -44,16 +49,18 @@ public class HttpKeyLogController extends BaseController { params.put("searchUrl", log.getUrl()); } initLogSearchValue(log, params); - + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); model.addAttribute("serviceList", serviceList); - + String url = Constants.LOG_BASE_URL + Constants.NTC_KEYWORDS_URL_LOG; String recv = HttpClientUtil.getMsg(url, params, request); - + Gson gson = new GsonBuilder().create(); - - LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); + + LogRecvData fromJson = gson.fromJson(recv, + new TypeToken>() { + }.getType()); if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -62,7 +69,7 @@ public class HttpKeyLogController extends BaseController { List list = page.getList(); for (NtcKeywordsUrlLog l : list) { l.setFunctionId(log.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); } @@ -70,7 +77,72 @@ public class HttpKeyLogController extends BaseController { logger.error("查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/httpKeyList"; } + + // httpKey配置导出 + @RequestMapping(value = "exportHttpKey") + public void exportHttpKey(@ModelAttribute("log") NtcKeywordsUrlLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了httpKey"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_KEYWORDS_URL_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 (NtcKeywordsUrlLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("http_keyword"); + classMap.put("http_keyword", NtcKeywordsUrlLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("http_keyword", cfgIndexInfoNoExport); + dataMap.put("http_keyword", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "http_keyword", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "http_keyword", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("http_keyword export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } } diff --git a/src/main/java/com/nis/web/controller/log/ntc/HttpLogController.java b/src/main/java/com/nis/web/controller/log/ntc/HttpLogController.java index ef260f6e4..e41572844 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/HttpLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/HttpLogController.java @@ -1,5 +1,6 @@ package com.nis.web.controller.log.ntc; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -12,6 +13,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -19,19 +21,23 @@ 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.NtcHttpLog; import com.nis.domain.log.NtcHttpLog; 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/http") public class HttpLogController extends BaseController { - + @RequestMapping("list") - public String list(@ModelAttribute("log") NtcHttpLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + public String list(@ModelAttribute("log") NtcHttpLog log, Model model, HttpServletRequest request, + HttpServletResponse response) { try { PageLog page = new PageLog(request, response); Map params = new HashMap(); @@ -41,32 +47,33 @@ public class HttpLogController extends BaseController { params.put("searchUrl", log.getUrl()); } initLogSearchValue(log, params); - + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); serviceList.addAll(DictUtils.getFunctionServiceDictList(635)); for (FunctionServiceDict serviceDict : serviceList) { - if(serviceDict.getFunctionId() == log.getFunctionId()){ - if(serviceDict.getAction() == Constants.MONIT_ACTION){ + if (serviceDict.getFunctionId() == log.getFunctionId()) { + if (serviceDict.getAction() == Constants.MONIT_ACTION) { serviceDict.setActionCode("log_search_http_monit"); - }else if(serviceDict.getAction() == Constants.REJECT_ACTION){ + } else if (serviceDict.getAction() == Constants.REJECT_ACTION) { serviceDict.setActionCode("log_search_http_reject"); } - }else{ - if(serviceDict.getAction() == Constants.MONIT_ACTION){ + } else { + if (serviceDict.getAction() == Constants.MONIT_ACTION) { serviceDict.setActionCode("log_search_keyword_monit"); - }else if(serviceDict.getAction() == Constants.REJECT_ACTION){ + } else if (serviceDict.getAction() == Constants.REJECT_ACTION) { serviceDict.setActionCode("log_search_keyword_reject"); } } } model.addAttribute("serviceList", serviceList); - + String url = Constants.LOG_BASE_URL + Constants.NTC_HTTP_LOG; String recv = HttpClientUtil.getMsg(url, params, request); - + Gson gson = new GsonBuilder().create(); - - LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); + + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>() { + }.getType()); if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -75,7 +82,7 @@ public class HttpLogController extends BaseController { List list = page.getList(); for (NtcHttpLog l : list) { l.setFunctionId(log.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); } @@ -83,7 +90,71 @@ public class HttpLogController extends BaseController { logger.error("查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/httpList"; } + + // http配置导出 + @RequestMapping(value = "exportHttp") + public void exportHttp(@ModelAttribute("log") NtcHttpLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了http"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_HTTP_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 (NtcHttpLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("HTTP"); + classMap.put("HTTP", NtcHttpLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("HTTP", cfgIndexInfoNoExport); + dataMap.put("HTTP", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "HTTP", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "HTTP", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("HTTP export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } } diff --git a/src/main/java/com/nis/web/controller/log/ntc/MailLogController.java b/src/main/java/com/nis/web/controller/log/ntc/MailLogController.java index 436d9abbb..8f14dc0ec 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/MailLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/MailLogController.java @@ -1,5 +1,6 @@ package com.nis.web.controller.log.ntc; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -14,6 +15,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -21,27 +23,31 @@ 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/mail") public class MailLogController extends BaseController { - + @RequestMapping("list") - public String list(@ModelAttribute("log") NtcMailLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + 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())); @@ -52,16 +58,17 @@ public class MailLogController extends BaseController { if (StringUtils.isNotBlank(log.getSubject())) { params.put("searchSubject", StringEscapeUtils.unescapeHtml(log.getSubject())); } - + 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()); + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>() { + }.getType()); if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -70,7 +77,7 @@ public class MailLogController extends BaseController { List list = page.getList(); for (NtcMailLog l : list) { l.setFunctionId(log.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); } @@ -79,7 +86,71 @@ public class MailLogController extends BaseController { logger.error("查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/mailList"; } + + // 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); + + 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_control"); + classMap.put("mail_control", NtcMailLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("mail_control", cfgIndexInfoNoExport); + dataMap.put("mail_control", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "mail_control", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "mail_control", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("mail_control export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } } diff --git a/src/main/java/com/nis/web/controller/log/ntc/MmAvUrlLogController.java b/src/main/java/com/nis/web/controller/log/ntc/MmAvUrlLogController.java index 2a9705cc2..688e8dbaf 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/MmAvUrlLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/MmAvUrlLogController.java @@ -1,6 +1,7 @@ package com.nis.web.controller.log.ntc; import java.io.IOException; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -8,12 +9,14 @@ import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.lang3.StringUtils; import org.apache.http.client.ClientProtocolException; 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; @@ -21,20 +24,24 @@ 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.MmAvIpLog; import com.nis.domain.log.NtcStreamMediaLog; +import com.nis.domain.log.NtcStreamMediaLog; 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(value = "${adminPath}/log/ntc/mmAvUrlLogs") -public class MmAvUrlLogController extends BaseController{ +public class MmAvUrlLogController extends BaseController { /** * 音视频url日志 + * * @param model * @param entry * @param request @@ -43,29 +50,32 @@ public class MmAvUrlLogController extends BaseController{ * @throws ClientProtocolException * @throws IOException */ - @RequestMapping(value={"list",""}) - public String list(Model model,@ModelAttribute("log")NtcStreamMediaLog entry,HttpServletRequest request, HttpServletResponse response) throws ClientProtocolException, IOException { - + @RequestMapping(value = { "list", "" }) + public String list(Model model, @ModelAttribute("log") NtcStreamMediaLog entry, HttpServletRequest request, + HttpServletResponse response) throws ClientProtocolException, IOException { + try { - + PageLog page = new PageLog(request, response); - Map params=new HashMap<>(); + Map params = new HashMap<>(); params.put("pageSize", page.getPageSize()); params.put("pageNo", page.getPageNo()); - //查询值判断 - initLogSearchValue(entry,params); - + // 查询值判断 + initLogSearchValue(entry, params); + List serviceList = DictUtils.getFunctionServiceDictList(entry.getFunctionId()); model.addAttribute("serviceList", serviceList); - + String url = ""; - url = Constants.LOG_BASE_URL+Constants.NTC_STREAMMEDIA_LOG; - String jsonString = HttpClientUtil.getMsg(url,params,request); - + url = Constants.LOG_BASE_URL + Constants.NTC_STREAMMEDIA_LOG; + String jsonString = HttpClientUtil.getMsg(url, params, request); + Gson gson = new GsonBuilder().create(); - //gson泛型支持 - LogRecvData fromJson = gson.fromJson(jsonString, new TypeToken>(){}.getType()); - + // gson泛型支持 + LogRecvData fromJson = gson.fromJson(jsonString, + new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -74,7 +84,7 @@ public class MmAvUrlLogController extends BaseController{ List list = page.getList(); for (NtcStreamMediaLog l : list) { l.setFunctionId(entry.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); logger.info("查询音视频url日志成功"); @@ -85,5 +95,70 @@ public class MmAvUrlLogController extends BaseController{ } return "/log/ntc/ntcStreamMedia"; } - + + // AvUrl配置导出 + @RequestMapping(value = "exportAvUrl") + public void exportAvUrl(@ModelAttribute("log") NtcStreamMediaLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了AvUrl"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_STREAMMEDIA_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 (NtcStreamMediaLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("streaming_media"); + classMap.put("streaming_media", NtcStreamMediaLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("streaming_media", cfgIndexInfoNoExport); + dataMap.put("streaming_media", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "streaming_media", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "streaming_media", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("streaming_media export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } + } diff --git a/src/main/java/com/nis/web/controller/log/ntc/MmVoipIpLogController.java b/src/main/java/com/nis/web/controller/log/ntc/MmVoipIpLogController.java index 7a6c0bf26..84000937c 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/MmVoipIpLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/MmVoipIpLogController.java @@ -1,6 +1,7 @@ package com.nis.web.controller.log.ntc; import java.io.IOException; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -8,12 +9,14 @@ import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.lang3.StringUtils; import org.apache.http.client.ClientProtocolException; 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; @@ -21,16 +24,19 @@ 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.MmVoipLog; import com.nis.domain.log.MmVoipLog; 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(value = "${adminPath}/log/ntc/mmVoipIpLogs") -public class MmVoipIpLogController extends BaseController{ +public class MmVoipIpLogController extends BaseController { /** * @param model @@ -41,29 +47,31 @@ public class MmVoipIpLogController extends BaseController{ * @throws ClientProtocolException * @throws IOException */ - @RequestMapping(value={"list",""}) - public String list(Model model,@ModelAttribute("log")MmVoipLog entry,HttpServletRequest request, HttpServletResponse response) throws ClientProtocolException, IOException { - + @RequestMapping(value = { "list", "" }) + public String list(Model model, @ModelAttribute("log") MmVoipLog entry, HttpServletRequest request, + HttpServletResponse response) throws ClientProtocolException, IOException { + try { - + PageLog page = new PageLog(request, response); - Map params=new HashMap<>(); + Map params = new HashMap<>(); params.put("pageSize", page.getPageSize()); params.put("pageNo", page.getPageNo()); - //查询值判断 - initLogSearchValue(entry,params); - + // 查询值判断 + initLogSearchValue(entry, params); + List serviceList = DictUtils.getFunctionServiceDictList(entry.getFunctionId()); model.addAttribute("serviceList", serviceList); - + String url = ""; - url = Constants.LOG_BASE_URL+Constants.NTC_MMVOIP_LOG; - String jsonString = HttpClientUtil.getMsg(url,params,request); - + url = Constants.LOG_BASE_URL + Constants.NTC_MMVOIP_LOG; + String jsonString = HttpClientUtil.getMsg(url, params, request); + Gson gson = new GsonBuilder().create(); - //gson泛型支持 - LogRecvData fromJson = gson.fromJson(jsonString, new TypeToken>(){}.getType()); - + // gson泛型支持 + LogRecvData fromJson = gson.fromJson(jsonString, new TypeToken>() { + }.getType()); + if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -72,7 +80,7 @@ public class MmVoipIpLogController extends BaseController{ List list = page.getList(); for (MmVoipLog l : list) { l.setFunctionId(entry.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); logger.info("查询Voip日志成功"); @@ -83,5 +91,69 @@ public class MmVoipIpLogController extends BaseController{ } return "/log/ntc/mmVoipIpList"; } - + + // Voip配置导出 + @RequestMapping(value = "exportVoip") + public void exportVoip(@ModelAttribute("log") MmVoipLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了Voip"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_MMVOIP_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 (MmVoipLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("av_voip_control"); + classMap.put("av_voip_control", MmVoipLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",duation,from_to_store_ip,from_to_store_url,to_from_store_ip,to_from_store_url,log_uri,direction,scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("av_voip_control", cfgIndexInfoNoExport); + dataMap.put("av_voip_control", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "av_voip_control", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "av_voip_control", titleList, classMap, + dataMap, noExportMap); + } + } catch (Exception e) { + logger.error("av_voip_control export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } + } diff --git a/src/main/java/com/nis/web/controller/log/ntc/NtcConnRecordLogController.java b/src/main/java/com/nis/web/controller/log/ntc/NtcConnRecordLogController.java index a9cb9f65d..4496b11ba 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/NtcConnRecordLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/NtcConnRecordLogController.java @@ -18,6 +18,7 @@ import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -26,10 +27,12 @@ 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.IrDnatLog; import com.nis.domain.log.IrSnatLog; import com.nis.domain.log.NtcCollectRadiusLog; import com.nis.domain.log.NtcConnRecordLog; +import com.nis.domain.log.NtcConnRecordLog; import com.nis.domain.log.SearchReport; import com.nis.domain.maat.LogRecvData; import com.nis.domain.report.NtcServiceReport; @@ -42,43 +45,48 @@ import com.nis.util.StringUtil; import com.nis.util.httpclient.HttpClientUtil; import com.nis.web.controller.BaseController; import com.nis.web.dao.dashboard.codedic.CodeResult; +import com.nis.web.security.UserUtils; import net.sf.json.JSONObject; @Controller @RequestMapping("${adminPath}/log/ntc/connRecordLogs") public class NtcConnRecordLogController extends BaseController { - - @RequestMapping(value = {"/list", ""}) - public String connRecordLogs(@ModelAttribute("log") NtcConnRecordLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + + @RequestMapping(value = { "/list", "" }) + public String connRecordLogs(@ModelAttribute("log") NtcConnRecordLog 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); - + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); model.addAttribute("serviceList", serviceList); - List appList=CodeDicUtils.getCodeList("appCode"); + List appList = CodeDicUtils.getCodeList("appCode"); model.addAttribute("appList", appList); - - String url =Constants.LOG_BASE_URL + Constants.NTC_CONN_RECORD_LOG; + + String url = Constants.LOG_BASE_URL + Constants.NTC_CONN_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()); + 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 (NtcConnRecordLog l : list) { - l.setFunctionId(log.getFunctionId()); - setLogAction(l,serviceList); - }*/ + /* + * List list = page.getList(); for + * (NtcConnRecordLog l : list) { + * l.setFunctionId(log.getFunctionId()); + * setLogAction(l,serviceList); } + */ model.addAttribute("page", page); } } @@ -86,41 +94,102 @@ public class NtcConnRecordLogController extends BaseController { logger.error("查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/connRecordLogList"; } - - + @RequestMapping("/ajaxConnRecordPercent") @ResponseBody - public JSONObject ajaxConnRecordPercent(String searchFoundStartTime, - String searchFoundEndTime, - String searchStreamDir, - HttpServletRequest request, - HttpServletResponse response) { - JSONObject resultAllJson=new JSONObject(); - JSONObject result=new JSONObject(); - Map params=new HashMap<>(); + public JSONObject ajaxConnRecordPercent(String searchFoundStartTime, String searchFoundEndTime, + String searchStreamDir, HttpServletRequest request, HttpServletResponse response) { + JSONObject resultAllJson = new JSONObject(); + JSONObject result = new JSONObject(); + Map params = new HashMap<>(); try { params.put("searchFoundStartTime", searchFoundStartTime); params.put("searchFoundEndTime", searchFoundEndTime); - StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_CONN_RECORD_PERCENT); - String json=HttpClientUtil.getMsg(url.toString(), params,request); - if(!StringUtil.isEmpty(json)) { - resultAllJson=JSONObject.fromObject(json); - if(!StringUtil.isEmpty(resultAllJson)) { - result=(JSONObject) resultAllJson.get("data"); + StringBuffer url = new StringBuffer(Constants.LOG_BASE_URL + Constants.NTC_CONN_RECORD_PERCENT); + String json = HttpClientUtil.getMsg(url.toString(), params, request); + if (!StringUtil.isEmpty(json)) { + resultAllJson = JSONObject.fromObject(json); + if (!StringUtil.isEmpty(resultAllJson)) { + result = (JSONObject) resultAllJson.get("data"); } } - result.put("success","success"); + result.put("success", "success"); } catch (MaatConvertException e) { - logger.error("ajaxConnRecordPercent检索失败",e); - result.put("error",getMsgProp().get("request_service_failed")); - }catch (Exception e) { - logger.error("ajaxConnRecordPercent检索失败",e); - result.put("error",getMsgProp().get("search_error")); - } + logger.error("ajaxConnRecordPercent检索失败", e); + result.put("error", getMsgProp().get("request_service_failed")); + } catch (Exception e) { + logger.error("ajaxConnRecordPercent检索失败", e); + result.put("error", getMsgProp().get("search_error")); + } return result; } - + + // ConnRecord配置导出 + @RequestMapping(value = "exportConnRecord") + public void exportConnRecord(@ModelAttribute("log") NtcConnRecordLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了ConnRecord"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_CONN_RECORD_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 (NtcConnRecordLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("conn_record"); + classMap.put("conn_record", NtcConnRecordLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("conn_record", cfgIndexInfoNoExport); + dataMap.put("conn_record", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "conn_record", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "conn_record", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("conn_record export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } + } diff --git a/src/main/java/com/nis/web/controller/log/ntc/P2pLogController.java b/src/main/java/com/nis/web/controller/log/ntc/P2pLogController.java index bad42ada8..16483b582 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/P2pLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/P2pLogController.java @@ -1,5 +1,6 @@ package com.nis.web.controller.log.ntc; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -13,6 +14,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -20,6 +22,8 @@ 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.NtcP2pLog; import com.nis.domain.log.NtcOpenVpnLog; import com.nis.domain.log.NtcP2pLog; import com.nis.domain.maat.LogRecvData; @@ -27,13 +31,15 @@ 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/p2pLogs") public class P2pLogController extends BaseController { - - @RequestMapping(value = {"list", ""}) - public String list(@ModelAttribute("log") NtcP2pLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + + @RequestMapping(value = { "list", "" }) + public String list(@ModelAttribute("log") NtcP2pLog log, Model model, HttpServletRequest request, + HttpServletResponse response) { try { PageLog page = new PageLog(request, response); Map params = new HashMap(); @@ -43,13 +49,14 @@ public class P2pLogController extends BaseController { List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); model.addAttribute("serviceList", serviceList); - + String url = Constants.LOG_BASE_URL + Constants.NTC_P2P_LOG; - String recv = HttpClientUtil.getMsg(url, params, request); + String recv = HttpClientUtil.getMsg(url, params, request); logger.error("查询结果:" + recv); if (StringUtils.isNotBlank(recv)) { Gson gson = new GsonBuilder().create(); - LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>() { + }.getType()); if (fromJson.getStatus().intValue() == 200) { Page data = fromJson.getData(); page.setCount(data.getCount()); @@ -58,7 +65,7 @@ public class P2pLogController extends BaseController { List list = page.getList(); for (NtcP2pLog l : list) { l.setFunctionId(log.getFunctionId()); - setLogAction(l,serviceList); + setLogAction(l, serviceList); } model.addAttribute("page", page); } @@ -67,8 +74,72 @@ public class P2pLogController extends BaseController { logger.error("查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/p2pList"; } - + + // p2p配置导出 + @RequestMapping(value = "exportP2p") + public void exportP2p(@ModelAttribute("log") NtcP2pLog log, Model model, String hColumns, String type, + HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) { + System.out.println("进来了P2p"); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_P2P_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 (NtcP2pLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("p2p_control"); + classMap.put("p2p_control", NtcP2pLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("p2p_control", cfgIndexInfoNoExport); + dataMap.put("p2p_control", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "p2p_control", titleList, classMap, + dataMap, noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "p2p_control", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("p2p_control export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } + } diff --git a/src/main/java/com/nis/web/controller/log/ntc/SslLogController.java b/src/main/java/com/nis/web/controller/log/ntc/SslLogController.java index 60cb6ee2f..3ee8920f9 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/SslLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/SslLogController.java @@ -1,5 +1,6 @@ package com.nis.web.controller.log.ntc; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -12,6 +13,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -20,6 +22,8 @@ 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.NtcSslLog; import com.nis.domain.log.NtcSshLog; import com.nis.domain.log.NtcSslLog; import com.nis.domain.maat.LogRecvData; @@ -28,35 +32,39 @@ 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/sslLogs") +@SuppressWarnings("all") public class SslLogController extends BaseController { - @RequestMapping(value = {"/list"}) - public String list(HttpServletRequest request, HttpServletResponse response, Model model, @ModelAttribute("log")NtcSslLog ntcSslLog) { - - PageLog page = new PageLog(request,response); - Map params = new HashMap(); + @RequestMapping(value = { "/list" }) + public String list(HttpServletRequest request, HttpServletResponse response, Model model, + @ModelAttribute("log") NtcSslLog ntcSslLog) { + + PageLog page = new PageLog(request, response); + Map params = new HashMap(); params.put("pageSize", page.getPageSize()); params.put("pageNo", page.getPageNo()); - + // 请求参数判断 initLogSearchValue(ntcSslLog, params); - if(StringUtils.isNotBlank(ntcSslLog.getSni())) { + if (StringUtils.isNotBlank(ntcSslLog.getSni())) { params.put("SearchSni", ntcSslLog.getSni()); - } - + } + List serviceList = DictUtils.getFunctionServiceDictList(ntcSslLog.getFunctionId()); model.addAttribute("serviceList", serviceList); - + try { // 请求接口 String url = Constants.LOG_BASE_URL + Constants.NTC_SSL_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) { + 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()); @@ -64,7 +72,7 @@ public class SslLogController extends BaseController { List list = page.getList(); for (NtcSslLog log : list) { log.setFunctionId(ntcSslLog.getFunctionId()); - setLogAction(log,serviceList); + setLogAction(log, serviceList); } model.addAttribute("page", page); } @@ -72,7 +80,71 @@ public class SslLogController extends BaseController { logger.error("SSL日志查询失败", e); addMessageLog(model, e.getMessage()); } - + return "/log/ntc/sslLogList"; } + + // Ssl配置导出 + @RequestMapping(value = "exportSsl") + public void exportSsl(@ModelAttribute("log") NtcSslLog 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); + 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); + + List serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId()); + model.addAttribute("serviceList", serviceList); + + String url = Constants.LOG_BASE_URL + Constants.NTC_SSL_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 (NtcSslLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l, serviceList); + } + titleList.add("ssl_control"); + classMap.put("ssl_control", NtcSslLog.class); + SysUser user = UserUtils.getUser(); + if (!user.isAdmin()) { + hColumns += ",scene_file,"; + } else { + hColumns += ","; + } + String cfgIndexInfoNoExport = "," + hColumns; + noExportMap.put("ssl_control", cfgIndexInfoNoExport); + dataMap.put("ssl_control", list); + /* } */ + if ("csv".equals(type)) { + this._exportCsv(model, request, response, redirectAttributes, "ssl_control", titleList, classMap, dataMap, + noExportMap); + } else { + this._export(model, request, response, redirectAttributes, "ssl_control", titleList, classMap, dataMap, + noExportMap); + } + } catch (Exception e) { + logger.error("ssl_control export failed", e); + addMessage(redirectAttributes, "error", "export_failed"); + } + } } diff --git a/src/main/webapp/WEB-INF/views/log/ntc/bgpList.jsp b/src/main/webapp/WEB-INF/views/log/ntc/bgpList.jsp index 539bab8d8..cc5cf8108 100644 --- a/src/main/webapp/WEB-INF/views/log/ntc/bgpList.jsp +++ b/src/main/webapp/WEB-INF/views/log/ntc/bgpList.jsp @@ -127,6 +127,16 @@ - +
+
+ + +
+ href="javascript:;"> + + +
@@ -141,36 +151,36 @@ $(document).ready(function(){ - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - Contacts - Via - Route - Record Route - User Agent - Server + Contacts + Via + Route + Record Route + User Agent + Server diff --git a/src/main/webapp/WEB-INF/views/log/ntc/connRecordLogList.jsp b/src/main/webapp/WEB-INF/views/log/ntc/connRecordLogList.jsp index 93986e79f..fe2bab624 100644 --- a/src/main/webapp/WEB-INF/views/log/ntc/connRecordLogList.jsp +++ b/src/main/webapp/WEB-INF/views/log/ntc/connRecordLogList.jsp @@ -141,12 +141,22 @@ - +
+
+ + +
+ href="javascript:;"> + + +
@@ -229,42 +239,44 @@ <%-- --%> - - - + + + - - - - Total Pkt - - - Total Byte - - - - - - - - - - - - - - + + + + Total Pkt + + + Total Byte - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/log/ntc/dnsList.jsp b/src/main/webapp/WEB-INF/views/log/ntc/dnsList.jsp index ea7b20916..b80380308 100644 --- a/src/main/webapp/WEB-INF/views/log/ntc/dnsList.jsp +++ b/src/main/webapp/WEB-INF/views/log/ntc/dnsList.jsp @@ -128,6 +128,16 @@ - +
+
+ + +
+ href="javascript:;"> + + +
@@ -212,40 +222,40 @@ $(document).ready(function(){ - - - - - + + + + + - - - + + - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/log/ntc/httpKeyList.jsp b/src/main/webapp/WEB-INF/views/log/ntc/httpKeyList.jsp index 3c1115c31..f80f80425 100644 --- a/src/main/webapp/WEB-INF/views/log/ntc/httpKeyList.jsp +++ b/src/main/webapp/WEB-INF/views/log/ntc/httpKeyList.jsp @@ -154,9 +154,16 @@ - +
+
+ + +
+ href="javascript:;"> + + +
@@ -210,54 +220,55 @@ $(document).ready(function(){ - - - - + + + + + - - - - - - - - + + + + + + - - - - + + + + - - - - + + + + - - - - - - - - - - - - - - + + + + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/log/ntc/ntcStreamMedia.jsp b/src/main/webapp/WEB-INF/views/log/ntc/ntcStreamMedia.jsp index e8f93d40a..876bece24 100644 --- a/src/main/webapp/WEB-INF/views/log/ntc/ntcStreamMedia.jsp +++ b/src/main/webapp/WEB-INF/views/log/ntc/ntcStreamMedia.jsp @@ -130,12 +130,22 @@ $(document).ready(function(){ - +
+
+ + +
+ href="javascript:;"> + + +
@@ -209,38 +219,40 @@ $(document).ready(function(){ - - - - + + + + + - - - - - - - - - - - - - - - - - + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/log/ntc/p2pList.jsp b/src/main/webapp/WEB-INF/views/log/ntc/p2pList.jsp index 228e654c4..ca795e7b7 100644 --- a/src/main/webapp/WEB-INF/views/log/ntc/p2pList.jsp +++ b/src/main/webapp/WEB-INF/views/log/ntc/p2pList.jsp @@ -127,6 +127,16 @@ +
+ + +
+ href="javascript:;"> + + + @@ -224,41 +233,43 @@ - - - - + + + + + - + + SNI + SAN + CN - - SNI - SAN - CN - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + +