diff --git a/src/main/java/com/nis/domain/basics/PolicyGroupInfo.java b/src/main/java/com/nis/domain/basics/PolicyGroupInfo.java new file mode 100644 index 000000000..ac0069e82 --- /dev/null +++ b/src/main/java/com/nis/domain/basics/PolicyGroupInfo.java @@ -0,0 +1,54 @@ +package com.nis.domain.basics; + +import java.io.Serializable; +import java.util.Date; + +import com.nis.domain.configuration.BaseCfg; +import com.nis.domain.configuration.CfgIndexInfo; + +/** + * @ClassName: PolicyGroupInfo.java + * @Description: 策略分组 + * @version V1.0 + */ +public class PolicyGroupInfo extends BaseCfg implements Serializable{ + /** + * + */ + private static final long serialVersionUID = 7931466570918016654L; + + private Integer groupId; + private String groupName; + private Integer groupType; + + public Integer getGroupId() { + return groupId; + } + public void setGroupId(Integer groupId) { + this.groupId = groupId; + } + public String getGroupName() { + return groupName; + } + public void setGroupName(String groupName) { + this.groupName = groupName; + } + public Date getCreateTime() { + return createTime; + } + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + public Date getEditTime() { + return editTime; + } + public void setEditTime(Date editTime) { + this.editTime = editTime; + } + public Integer getGroupType() { + return groupType; + } + public void setGroupType(Integer groupType) { + this.groupType = groupType; + } +} diff --git a/src/main/java/com/nis/domain/log/NtcDnsLog.java b/src/main/java/com/nis/domain/log/NtcDnsLog.java new file mode 100644 index 000000000..41ab67a49 --- /dev/null +++ b/src/main/java/com/nis/domain/log/NtcDnsLog.java @@ -0,0 +1,109 @@ +package com.nis.domain.log; + +public class NtcDnsLog extends BaseLogEntity { + + private static final long serialVersionUID = -3763888115864065019L; + + private Integer qr; + private Integer rd; + private Integer ra; + private String rr; + private Integer qType; + private Integer qClass; + private Integer opCode; + private String qName; + private String cName; + private Integer dnsSub; + + /*以下字段无需反馈到界面*/ + private String cheatType; + private Integer cheatRcode; + private String cheatStrategy; + private String cheatRr; + + + 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; + } + 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; + } +} diff --git a/src/main/java/com/nis/domain/log/NtcHttpLog.java b/src/main/java/com/nis/domain/log/NtcHttpLog.java new file mode 100644 index 000000000..ae2e84674 --- /dev/null +++ b/src/main/java/com/nis/domain/log/NtcHttpLog.java @@ -0,0 +1,137 @@ +package com.nis.domain.log; + +public class NtcHttpLog extends BaseLogEntity { + + private static final long serialVersionUID = -7697668215327123848L; + + private String url; + private String reqHdrFile; + private String reqBodyFile; + private String resHdrFile; + private String resBodyFile; + + /*以下字段无需反馈到界面*/ + private Integer c2sIsn; + private Integer pxyFlag; + private Integer httpSeq; + private String reqLine; + private String resLine; + private String cookie; + private String refefer; + private String userAgent; + private String userDefineKey; + private String userDefineValue; + 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; + } +} diff --git a/src/main/java/com/nis/domain/log/NtcL2tpLog.java b/src/main/java/com/nis/domain/log/NtcL2tpLog.java new file mode 100644 index 000000000..46df0b17a --- /dev/null +++ b/src/main/java/com/nis/domain/log/NtcL2tpLog.java @@ -0,0 +1,30 @@ +package com.nis.domain.log; + +public class NtcL2tpLog extends BaseLogEntity { + + private static final long serialVersionUID = -3547128625966615793L; + + private Integer tunnelType;// 通道类型 + private Integer encryptMode;// 加密方式 + private String chapName; // 用户名称 + + public String getChapName() { + return chapName; + } + public void setChapName(String chapName) { + this.chapName = chapName; + } + public Integer getTunnelType() { + return tunnelType; + } + public void setTunnelType(Integer tunnelType) { + this.tunnelType = tunnelType; + } + public Integer getEncryptMode() { + return encryptMode; + } + public void setEncryptMode(Integer encryptMode) { + this.encryptMode = encryptMode; + } + +} diff --git a/src/main/java/com/nis/domain/log/NtcPptpLog.java b/src/main/java/com/nis/domain/log/NtcPptpLog.java new file mode 100644 index 000000000..afdafc7d8 --- /dev/null +++ b/src/main/java/com/nis/domain/log/NtcPptpLog.java @@ -0,0 +1,23 @@ +package com.nis.domain.log; + +public class NtcPptpLog extends BaseLogEntity { + + private static final long serialVersionUID = 6527360739786343374L; + + private Integer tunnelType;// 通道类型 + private Integer encryptMode;// 加密方式 + + public Integer getTunnelType() { + return tunnelType; + } + public void setTunnelType(Integer tunnelType) { + this.tunnelType = tunnelType; + } + public Integer getEncryptMode() { + return encryptMode; + } + public void setEncryptMode(Integer encryptMode) { + this.encryptMode = encryptMode; + } + +} diff --git a/src/main/java/com/nis/domain/log/NtcSslLog.java b/src/main/java/com/nis/domain/log/NtcSslLog.java new file mode 100644 index 000000000..16a2480ec --- /dev/null +++ b/src/main/java/com/nis/domain/log/NtcSslLog.java @@ -0,0 +1,37 @@ +package com.nis.domain.log; + +public class NtcSslLog extends BaseLogEntity{ + + private static final long serialVersionUID = 533266057780162781L; + + private String version;// 版本号 + private String sni;// SNI + private String san;// SAN + private String ca;// CA + + 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 getCa() { + return ca; + } + public void setCa(String ca) { + this.ca = ca; + } +} + diff --git a/src/main/java/com/nis/util/httpclient/HttpClientUtil.java b/src/main/java/com/nis/util/httpclient/HttpClientUtil.java index a29129d92..b27d47323 100644 --- a/src/main/java/com/nis/util/httpclient/HttpClientUtil.java +++ b/src/main/java/com/nis/util/httpclient/HttpClientUtil.java @@ -9,12 +9,15 @@ package com.nis.util.httpclient; import java.io.IOException; +import java.net.SocketTimeoutException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; +import javax.servlet.http.HttpServletRequest; + import org.apache.http.HttpStatus; import org.apache.http.NameValuePair; import org.apache.http.client.ClientProtocolException; @@ -24,6 +27,7 @@ import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.client.utils.URIBuilder; +import org.apache.http.conn.ConnectTimeoutException; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.DefaultHttpRequestRetryHandler; import org.apache.http.impl.client.HttpClients; @@ -31,6 +35,9 @@ import org.apache.http.impl.conn.PoolingHttpClientConnectionManager; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; import org.apache.log4j.Logger; +import org.springframework.web.servlet.support.RequestContext; + +import com.nis.exceptions.MaatConvertException; /** * @ClassName: HttpClientBean.java @@ -118,7 +125,9 @@ public class HttpClientUtil { * @param params 参数列表 * @return 查询结果数据json */ - public static String getMsg(String destUrl, Map params) { + public static String getMsg(String destUrl, Map params, HttpServletRequest req) { + RequestContext requestContext = new RequestContext(req); + CloseableHttpResponse response = null; String result = null; try { @@ -134,10 +143,20 @@ public class HttpClientUtil { if (status == HttpStatus.SC_OK) { result = EntityUtils.toString(response.getEntity()); logger.debug("获取消息成功,相应内容如下: " + result); - } + } else { + throw new MaatConvertException(requestContext.getMessage("request_service_failed") + ":" + status); + } + } catch (SocketTimeoutException e) { + logger.error("获取消息失败 ", e); + throw new MaatConvertException(requestContext.getMessage("request_service_failed") + ":timeout"); + } catch (MaatConvertException e) { + throw e; + } catch (ConnectTimeoutException e) { + logger.error("获取消息失败 ", e); + throw new MaatConvertException(requestContext.getMessage("request_service_failed") + ":timeout"); } catch (Exception e) { - e.printStackTrace(); - logger.debug("获取消息失败,相应内容如下: " + e); + logger.error("获取消息失败 ", e); + throw new MaatConvertException(requestContext.getMessage("request_service_failed")); } finally { try { if (response != null) { diff --git a/src/main/java/com/nis/web/controller/basics/PolicyGroupController.java b/src/main/java/com/nis/web/controller/basics/PolicyGroupController.java new file mode 100644 index 000000000..dcbdbfb14 --- /dev/null +++ b/src/main/java/com/nis/web/controller/basics/PolicyGroupController.java @@ -0,0 +1,115 @@ +package com.nis.web.controller.basics; + +import java.util.Collections; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.shiro.authz.annotation.Logical; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; + +import com.google.common.collect.Lists; +import com.google.common.collect.Maps; +import com.nis.domain.Page; +import com.nis.domain.basics.PolicyGroupInfo; +import com.nis.domain.basics.ServiceDictInfo; +import com.nis.util.ConfigDictUtils; +import com.nis.util.Configurations; +import com.nis.util.StringUtil; +import com.nis.util.StringUtils; +import com.nis.web.controller.BaseController; +/** + * 协议分组 + * @author dell + * + */ +@Controller +@RequestMapping(value = "${adminPath}/basics/policyGroup") +public class PolicyGroupController extends BaseController { + + //@RequiresPermissions(value={"basics:policyGroup:view"},logical=Logical.OR) + @RequestMapping(value = {"/policyGroupList", ""}) + public String policyGroupList(PolicyGroupInfo cfg,HttpServletRequest request, HttpServletResponse response, Model model) { + if(cfg == null)cfg=new PolicyGroupInfo(); + Page pageCondition = new Page(request, response,"r"); + + Page page = policyGroupInfoService.findPolicyGroupInfoList(pageCondition,cfg); + + model.addAttribute("cfg", cfg); + model.addAttribute("page", page); + return "/basics/policyGroupList"; + } + + + /** + * 进入添加或修改页面 + * @param serviceDictInfo + * @param model + * @return + */ + //@RequiresPermissions(value={"basics:classification:add","basics:attribute:add","basics:label:add","basics:classification:edit","basics:attribute:edit","basics:label:edit","basics:classification:view","basics:attribute:view","basics:label:view"},logical=Logical.OR) + @RequestMapping(value={"/policyGroupForm"}) + public String form(String ids,Model model,String doAction) { + PolicyGroupInfo policyGroup=new PolicyGroupInfo(); + if(!StringUtil.isEmpty(ids)){ + policyGroup=policyGroupInfoService.getById(Integer.parseInt(ids)); + } + model.addAttribute("_cfg", policyGroup); + return "/basics/policyGroupForm"; + } + /** + * 新增或修改 + * @return + */ + //@RequiresPermissions(value={"basics:classification:add","basics:attribute:add","basics:label:add","basics:classification:edit","basics:attribute:edit","basics:label:edit"},logical=Logical.OR) + @RequestMapping(value = "saveOrUpdate") + public String saveOrUpdate(PolicyGroupInfo cfg,Model model, RedirectAttributes redirectAttributes,String itType) { + + try { + policyGroupInfoService.saveOrUpdate(cfg); + if(!StringUtil.isEmpty(cfg.getGroupId())){ + addMessage(redirectAttributes, "save_success"); + }else{ + addMessage(redirectAttributes, "update_success"); + } + } catch (Exception e) { + e.printStackTrace(); + if(!StringUtil.isEmpty(cfg.getGroupId())){ + addMessage(redirectAttributes, "save_failed"); + }else{ + addMessage(redirectAttributes, "update_failed"); + } + } + + return "redirect:" + adminPath + "/basics/policyGroup/policyGroupList"; + + + } + + + /** + * 删除 + * @return + */ + //@RequiresPermissions(value={"basics:classification:del","basics:attribute:del","basics:label:del"},logical=Logical.OR) + @RequestMapping(value={"delete"}) + public String delete(RedirectAttributes redirectAttributes, String ids,int isValid) { + try { + policyGroupInfoService.deldete(ids,isValid); + addMessage(redirectAttributes, "delete_success"); + } catch (Exception e) { + e.printStackTrace(); + addMessage(redirectAttributes, "delete_failed"); + } + return "redirect:" + adminPath + "/basics/policyGroup/policyGroupList"; + } + +} 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 new file mode 100644 index 000000000..8b7450e1d --- /dev/null +++ b/src/main/java/com/nis/web/controller/log/ntc/DnsLogController.java @@ -0,0 +1,67 @@ +package com.nis.web.controller.log.ntc; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonSyntaxException; +import com.google.gson.reflect.TypeToken; +import com.nis.domain.Page; +import com.nis.domain.log.NtcDnsLog; +import com.nis.domain.maat.LogRecvData; +import com.nis.util.Constants; +import com.nis.util.httpclient.HttpClientUtil; +import com.nis.web.controller.BaseController; + +@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) { + try { + Page page = new Page(request, response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + if (StringUtils.isNotBlank(log.getqName())) { + params.put("searchQName", log.getqName()); + } + initLogSearchValue(log, params); + + String url = Constants.LOG_BASE_URL + Constants.NTC_DNS_LOG; + String recv = HttpClientUtil.getMsg(url, params, request); + logger.info("查询结果:" + recv); + + Gson gson = new GsonBuilder().create(); + + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); + if (fromJson.getStatus().intValue() == 200) { + BeanUtils.copyProperties(fromJson.getData(), page); + List list = page.getList(); + for (NtcDnsLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l); + } + model.addAttribute("page", page); + } + } catch (Exception e) { + logger.error("查询失败", e); + addMessage(model, e.getMessage()); + } + + return "/log/ntc/dnsList"; + } +} 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 new file mode 100644 index 000000000..6909193b9 --- /dev/null +++ b/src/main/java/com/nis/web/controller/log/ntc/HttpLogController.java @@ -0,0 +1,67 @@ +package com.nis.web.controller.log.ntc; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonSyntaxException; +import com.google.gson.reflect.TypeToken; +import com.nis.domain.Page; +import com.nis.domain.log.NtcHttpLog; +import com.nis.domain.maat.LogRecvData; +import com.nis.util.Constants; +import com.nis.util.httpclient.HttpClientUtil; +import com.nis.web.controller.BaseController; + +@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) { + try { + Page page = new Page(request, response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + if (StringUtils.isNotBlank(log.getUrl())) { + params.put("searchUrl", log.getUrl()); + } + initLogSearchValue(log, params); + + String url = Constants.LOG_BASE_URL + Constants.NTC_HTTP_LOG; + String recv = HttpClientUtil.getMsg(url, params, request); + logger.info("查询结果:" + recv); + + Gson gson = new GsonBuilder().create(); + + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); + if (fromJson.getStatus().intValue() == 200) { + BeanUtils.copyProperties(fromJson.getData(), page); + List list = page.getList(); + for (NtcHttpLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l); + } + model.addAttribute("page", page); + } + } catch (Exception e) { + logger.error("查询失败", e); + addMessage(model, e.getMessage()); + } + + return "/log/ntc/httpList"; + } +} diff --git a/src/main/java/com/nis/web/controller/log/ntc/IpLogController.java b/src/main/java/com/nis/web/controller/log/ntc/IpLogController.java index 9133298c6..8796b850d 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/IpLogController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/IpLogController.java @@ -9,20 +9,22 @@ import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.lang3.StringUtils; import org.aspectj.util.FileUtil; 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.bind.annotation.ResponseBody; import com.google.gson.Gson; import com.google.gson.GsonBuilder; -import com.google.gson.JsonSyntaxException; import com.google.gson.reflect.TypeToken; import com.nis.domain.Page; import com.nis.domain.log.NtcIpLog; import com.nis.domain.maat.LogRecvData; +import com.nis.exceptions.MaatConvertException; import com.nis.util.Constants; import com.nis.util.httpclient.HttpClientUtil; import com.nis.web.controller.BaseController; @@ -33,25 +35,53 @@ public class IpLogController extends BaseController { @RequestMapping("list") public String list(@ModelAttribute("log") NtcIpLog log, Model model, HttpServletRequest request, HttpServletResponse response) { + try { + Page page = new Page(request, response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + initLogSearchValue(log, params); + + String url = Constants.LOG_BASE_URL + Constants.NTC_IP_LOG; + String recv = HttpClientUtil.getMsg(url, params, request); + + logger.info("查询结果:" + recv); + if (StringUtils.isNotBlank(recv)) { + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); + if (fromJson.getStatus().intValue() == 200) { + BeanUtils.copyProperties(fromJson.getData(), page); + List list = page.getList(); + for (NtcIpLog l : list) { + l.setFunctionId(log.getFunctionId()); + setLogAction(l); + } + model.addAttribute("page", page); + } + } + } catch (Exception e) { + logger.error("查询失败", e); + addMessage(model, e.getMessage()); + } + + return "/log/ntc/ipList"; + } + + @RequestMapping("testlist") + public String testlist(@ModelAttribute("log") NtcIpLog log, Model model, HttpServletRequest request, HttpServletResponse response) { Page page = new Page(request, response); Map params = new HashMap(); params.put("pageSize", page.getPageSize()); params.put("pageNo", page.getPageNo()); initLogSearchValue(log, params); - String url = Constants.LOG_BASE_URL + Constants.NTC_IP_LOG; - String recv = HttpClientUtil.getMsg(url, params); - -// try { -// String path = request.getClass().getClassLoader().getResource("").getPath(); -// recv = FileUtil.readAsString(new File(path + "com/nis/web/test/logTest.txt")); -// } catch (IOException e) { -// e.printStackTrace(); -// } - - Gson gson = new GsonBuilder().create(); - + String url = "http://10.0.6.121:8080/gwall/test/logTest"; try { + String recv = HttpClientUtil.getMsg(url, params, request); + logger.info("查询结果:" + recv); + + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(recv, new TypeToken>(){}.getType()); if (fromJson.getStatus().intValue() == 200) { BeanUtils.copyProperties(fromJson.getData(), page); @@ -62,16 +92,12 @@ public class IpLogController extends BaseController { } model.addAttribute("page", page); } - } catch (JsonSyntaxException e) { - logger.info("查询失败"); - e.printStackTrace(); + } catch (Exception e) { + logger.error("查询失败", e); + addMessage(model, e.getMessage()); } return "/log/ntc/ipList"; } - @RequestMapping("form") - public String form() { - return ""; - } } diff --git a/src/main/java/com/nis/web/controller/log/ntc/IpsecController.java b/src/main/java/com/nis/web/controller/log/ntc/IpsecController.java index 91518547b..e8ab8a476 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/IpsecController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/IpsecController.java @@ -53,7 +53,7 @@ public class IpsecController extends BaseController{ String url = ""; url = Constants.LOG_BASE_URL+Constants.NTC_IPSEC_LOG; - String jsonString = HttpClientUtil.getMsg(url,params); + String jsonString = HttpClientUtil.getMsg(url,params,request); Gson gson = new GsonBuilder().create(); //gson泛型支持 @@ -70,8 +70,8 @@ public class IpsecController extends BaseController{ logger.info("查询Ipsec日志成功"); } } catch (Exception e) { - logger.info("查询Ipsec日志失败"); - e.printStackTrace(); + logger.info("查询Ipsec日志失败", e); + addMessage(model, e.getMessage()); } return "/log/ntc/ipsecList"; } diff --git a/src/main/java/com/nis/web/controller/log/ntc/L2tpLogController.java b/src/main/java/com/nis/web/controller/log/ntc/L2tpLogController.java new file mode 100644 index 000000000..fbc08d972 --- /dev/null +++ b/src/main/java/com/nis/web/controller/log/ntc/L2tpLogController.java @@ -0,0 +1,65 @@ +package com.nis.web.controller.log.ntc; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonSyntaxException; +import com.google.gson.reflect.TypeToken; +import com.nis.domain.Page; +import com.nis.domain.log.NtcL2tpLog; +import com.nis.domain.maat.LogRecvData; +import com.nis.util.Constants; +import com.nis.util.httpclient.HttpClientUtil; +import com.nis.web.controller.BaseController; + +@Controller +@RequestMapping("${adminPath}/log/ntc/l2tpLogs") +public class L2tpLogController extends BaseController { + + @RequestMapping(value = {"/list"}) + public String list(HttpServletRequest request, HttpServletResponse response, Model model, @ModelAttribute("log")NtcL2tpLog ntcL2tpLog) { + + Page page = new Page(request,response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + + // 请求参数判断 + initLogSearchValue(ntcL2tpLog, params); + + try { + // 请求接口 + String url = Constants.LOG_BASE_URL + Constants.NTC_L2TP_LOG; + String resJson = HttpClientUtil.getMsg(url, params, request); + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(resJson, new TypeToken>() {}.getType()); + if(fromJson.getStatus().intValue() == 200) { + Page fromPage = fromJson.getData(); + BeanUtils.copyProperties(fromPage, page); + List list = fromPage.getList(); + for (NtcL2tpLog log : list) { + log.setFunctionId(ntcL2tpLog.getFunctionId()); + setLogAction(log); + } + model.addAttribute("page", page); + } + } catch (Exception e) { + logger.info("L2TP日志查询失败", e); + addMessage(model, e.getMessage()); + } + + return "/log/ntc/l2tpLogList"; + } +} diff --git a/src/main/java/com/nis/web/controller/log/ntc/OpenVpnController.java b/src/main/java/com/nis/web/controller/log/ntc/OpenVpnController.java index 39958659f..4bfa47265 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/OpenVpnController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/OpenVpnController.java @@ -53,7 +53,7 @@ public class OpenVpnController extends BaseController{ String url = ""; url = Constants.LOG_BASE_URL+Constants.NTC_OPENVPN_LOG; - String jsonString = HttpClientUtil.getMsg(url,params); + String jsonString = HttpClientUtil.getMsg(url,params,request); Gson gson = new GsonBuilder().create(); //gson泛型支持 @@ -70,8 +70,8 @@ public class OpenVpnController extends BaseController{ logger.info("查询OpenVpn日志成功"); } } catch (Exception e) { - logger.info("查询OpenVpn日志失败"); - e.printStackTrace(); + logger.info("查询OpenVpn日志失败", e); + addMessage(model, e.getMessage()); } return "/log/ntc/openVpnList"; } diff --git a/src/main/java/com/nis/web/controller/log/ntc/PptpLogController.java b/src/main/java/com/nis/web/controller/log/ntc/PptpLogController.java new file mode 100644 index 000000000..bacb3e822 --- /dev/null +++ b/src/main/java/com/nis/web/controller/log/ntc/PptpLogController.java @@ -0,0 +1,65 @@ +package com.nis.web.controller.log.ntc; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonSyntaxException; +import com.google.gson.reflect.TypeToken; +import com.nis.domain.Page; +import com.nis.domain.log.NtcPptpLog; +import com.nis.domain.maat.LogRecvData; +import com.nis.util.Constants; +import com.nis.util.httpclient.HttpClientUtil; +import com.nis.web.controller.BaseController; + +@Controller +@RequestMapping("${adminPath}/log/ntc/pptpLogs") +public class PptpLogController extends BaseController { + + @RequestMapping(value = {"/list"}) + public String list(HttpServletRequest request, HttpServletResponse response, Model model, @ModelAttribute("log")NtcPptpLog ntcPptpLog) { + + Page page = new Page(request,response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + + // 请求参数判断 + initLogSearchValue(ntcPptpLog, params); + + try { + // 请求接口 + String url = Constants.LOG_BASE_URL + Constants.NTC_PPTP_LOG; + String resJson = HttpClientUtil.getMsg(url, params, request); + Gson gson = new GsonBuilder().create(); + LogRecvData fromJson = gson.fromJson(resJson, new TypeToken>() {}.getType()); + if(fromJson.getStatus().intValue() == 200) { + Page fromPage = fromJson.getData(); + BeanUtils.copyProperties(fromPage, page); + List list = fromPage.getList(); + for (NtcPptpLog log : list) { + log.setFunctionId(ntcPptpLog.getFunctionId()); + setLogAction(log); + } + model.addAttribute("page", page); + } + } catch (JsonSyntaxException e) { + logger.info("PPTP日志查询失败", e); + addMessage(model, e.getMessage()); + } + + return "/log/ntc/pptpLogList"; + } +} diff --git a/src/main/java/com/nis/web/controller/log/ntc/SshController.java b/src/main/java/com/nis/web/controller/log/ntc/SshController.java index 08efe07d9..f42004fdc 100644 --- a/src/main/java/com/nis/web/controller/log/ntc/SshController.java +++ b/src/main/java/com/nis/web/controller/log/ntc/SshController.java @@ -53,7 +53,7 @@ public class SshController extends BaseController{ String url = ""; url = Constants.LOG_BASE_URL+Constants.NTC_SSH_LOG; - String jsonString = HttpClientUtil.getMsg(url,params); + String jsonString = HttpClientUtil.getMsg(url,params,request); Gson gson = new GsonBuilder().create(); //gson泛型支持 @@ -70,8 +70,8 @@ public class SshController extends BaseController{ logger.info("查询Ssh日志成功"); } } catch (Exception e) { - logger.info("查询Ssh日志失败"); - e.printStackTrace(); + logger.info("查询Ssh日志失败", e); + addMessage(model, e.getMessage()); } return "/log/ntc/sshList"; } 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 new file mode 100644 index 000000000..46adbd575 --- /dev/null +++ b/src/main/java/com/nis/web/controller/log/ntc/SslLogController.java @@ -0,0 +1,68 @@ +package com.nis.web.controller.log.ntc; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.google.gson.JsonSyntaxException; +import com.google.gson.reflect.TypeToken; +import com.nis.domain.Page; +import com.nis.domain.log.NtcSslLog; +import com.nis.domain.maat.LogRecvData; +import com.nis.util.Constants; +import com.nis.util.StringUtils; +import com.nis.util.httpclient.HttpClientUtil; +import com.nis.web.controller.BaseController; + +@Controller +@RequestMapping("${adminPath}/log/ntc/sslLogs") +public class SslLogController extends BaseController { + + @RequestMapping(value = {"/list"}) + public String list(HttpServletRequest request, HttpServletResponse response, Model model, @ModelAttribute("log")NtcSslLog ntcSslLog) { + + Page page = new Page(request,response); + Map params = new HashMap(); + params.put("pageSize", page.getPageSize()); + params.put("pageNo", page.getPageNo()); + + // 请求参数判断 + initLogSearchValue(ntcSslLog, params); + if(StringUtils.isNotBlank(ntcSslLog.getSni())) { + params.put("SearchSni", ntcSslLog.getSni()); + } + 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) { + Page fromPage = fromJson.getData(); + BeanUtils.copyProperties(fromPage, page); + List list = fromPage.getList(); + for (NtcSslLog log : list) { + log.setFunctionId(ntcSslLog.getFunctionId()); + setLogAction(log); + } + model.addAttribute("page", page); + } + } catch (Exception e) { + logger.info("SSL日志查询失败", e); + addMessage(model, e.getMessage()); + } + + return "/log/ntc/sslLogList"; + } +} diff --git a/src/main/java/com/nis/web/dao/basics/PolicyGroupInfoDao.java b/src/main/java/com/nis/web/dao/basics/PolicyGroupInfoDao.java new file mode 100644 index 000000000..1ab29ce6a --- /dev/null +++ b/src/main/java/com/nis/web/dao/basics/PolicyGroupInfoDao.java @@ -0,0 +1,15 @@ +package com.nis.web.dao.basics; + +import java.util.List; + + +import com.nis.domain.basics.PolicyGroupInfo; +import com.nis.web.dao.CrudDao; +import com.nis.web.dao.MyBatisDao; + +@MyBatisDao +public interface PolicyGroupInfoDao extends CrudDao { + List findPolicyGroupInfoList(PolicyGroupInfo policyGroupInfo); + PolicyGroupInfo getById(int id); + +} \ No newline at end of file diff --git a/src/main/java/com/nis/web/dao/basics/PolicyGroupInfoDao.xml b/src/main/java/com/nis/web/dao/basics/PolicyGroupInfoDao.xml new file mode 100644 index 000000000..700b33383 --- /dev/null +++ b/src/main/java/com/nis/web/dao/basics/PolicyGroupInfoDao.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + r.group_id,r.group_name,r.group_type,r.is_valid, + r.create_time,r.edit_time,r.creator_id,r.editor_id + + + + + + insert into policy_group_info( + IS_VALID, + CREATOR_ID, + CREATE_TIME, + GROUP_NAME, + GROUP_TYPE + )values ( + 1, + #{creatorId,jdbcType=INTEGER}, + #{createTime,jdbcType=TIMESTAMP}, + #{groupName,jdbcType=VARCHAR}, + #{groupType,jdbcType=INTEGER} + ) + + + update policy_group_info + + + + group_name = #{groupName,jdbcType=VARCHAR}, + + + group_type = #{groupType,jdbcType=INTEGER}, + + + is_valid = #{isValid,jdbcType=INTEGER}, + + + editor_id = #{editorId,jdbcType=INTEGER}, + + + edit_time = #{editTime,jdbcType=TIMESTAMP}, + + + + + + and group_id = #{groupId,jdbcType=INTEGER} + + + + + + \ No newline at end of file diff --git a/src/main/java/com/nis/web/service/basics/PolicyGroupInfoService.java b/src/main/java/com/nis/web/service/basics/PolicyGroupInfoService.java new file mode 100644 index 000000000..08c5e25ad --- /dev/null +++ b/src/main/java/com/nis/web/service/basics/PolicyGroupInfoService.java @@ -0,0 +1,83 @@ +package com.nis.web.service.basics; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.nis.domain.Page; +import com.nis.domain.basics.PolicyGroupInfo; +import com.nis.domain.configuration.AreaIpCfg; +import com.nis.domain.configuration.AvVoipAccountCfg; +import com.nis.domain.configuration.AvVoipIpCfg; +import com.nis.domain.configuration.CfgIndexInfo; +import com.nis.exceptions.MaatConvertException; +import com.nis.util.ConfigServiceUtil; +import com.nis.util.StringUtil; +import com.nis.web.dao.basics.PolicyGroupInfoDao; +import com.nis.web.security.UserUtils; +import com.nis.web.service.BaseService; + +@Service +public class PolicyGroupInfoService extends BaseService{ + + @Autowired + private PolicyGroupInfoDao policyGroupInfoDao; + + /** + * @param page + * @param entity + * @return + */ + public Page findPolicyGroupInfoList(Page page, PolicyGroupInfo entity) { + entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"r")); + entity.setPage(page); + List list=policyGroupInfoDao.findPolicyGroupInfoList(entity); + page.setList(list); + return page; + } + + public PolicyGroupInfo getById(int id) { + PolicyGroupInfo policyGroupInfo=policyGroupInfoDao.getById(id); + return policyGroupInfo; + } + + @Transactional(readOnly=false,rollbackFor=RuntimeException.class) + public void saveOrUpdate(PolicyGroupInfo entity){ + entity.setIsValid(1); + //新增 + if(entity.getGroupId()==null){ + Date createTime=new Date(); + entity.setCreatorId(UserUtils.getUser().getId()); + entity.setCreateTime(createTime); + policyGroupInfoDao.insert(entity); + //修改 + }else{ + Date editTime=new Date(); + entity.setEditorId(UserUtils.getUser().getId()); + entity.setEditTime(editTime); + policyGroupInfoDao.update(entity); + } + } + @Transactional(readOnly=false,rollbackFor=RuntimeException.class) + public void deldete(String ids, int isValid){ + PolicyGroupInfo entity=new PolicyGroupInfo(); + Date editTime=new Date(); + entity.setEditorId(UserUtils.getUser().getId()); + entity.setEditTime(editTime); + entity.setIsValid(isValid); + if(!StringUtil.isEmpty(ids)){ + for (String id : ids.split(",")) { + if(!StringUtil.isEmpty(id)){ + entity.setGroupId(Integer.parseInt(id)); + policyGroupInfoDao.update(entity); + } + } + } + } + +} diff --git a/src/main/java/com/nis/web/test/LogTest.java b/src/main/java/com/nis/web/test/LogTest.java index bd526901a..6f65b9832 100644 --- a/src/main/java/com/nis/web/test/LogTest.java +++ b/src/main/java/com/nis/web/test/LogTest.java @@ -3,7 +3,12 @@ package com.nis.web.test; import java.io.File; import java.io.IOException; +import javax.servlet.http.HttpServletRequest; + import org.aspectj.util.FileUtil; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -12,8 +17,28 @@ import com.nis.domain.Page; import com.nis.domain.log.NtcIpLog; import com.nis.domain.maat.LogRecvData; +@Controller +@RequestMapping("test") public class LogTest { + @ResponseBody + @RequestMapping("logTest") + public String testservice(HttpServletRequest request) { + String recv = ""; + try { + String path = request.getClass().getClassLoader().getResource("").getPath(); + recv = FileUtil.readAsString(new File(path + "com/nis/web/test/logTest.txt")); + } catch (IOException e) { + e.printStackTrace(); + } + try { + Thread.sleep(61000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + return ""; + } + public static void main(String[] args) throws IOException { String readAsString = FileUtil.readAsString(new File("d:/test/logTest.txt")); diff --git a/src/main/java/com/nis/web/test/logTest.txt b/src/main/java/com/nis/web/test/logTest.txt index 63e6403f2..8982b7772 100644 --- a/src/main/java/com/nis/web/test/logTest.txt +++ b/src/main/java/com/nis/web/test/logTest.txt @@ -22,7 +22,7 @@ "serverPort":"8080", "clientPort":"8080", "serviceType":10, - "entranceId":112, + "entranceId":21, "deviceId":2, "direction":1, "streamType":0, diff --git a/src/main/resources/messages/message_en.properties b/src/main/resources/messages/message_en.properties index ac741db94..5d3a33354 100644 --- a/src/main/resources/messages/message_en.properties +++ b/src/main/resources/messages/message_en.properties @@ -658,10 +658,14 @@ data_tunnel=data tunnel contrl_message=contrl message data_message=data message user_name=user name +<<<<<<< HEAD #===========log end ============= #===========policy_group_manage start ============= all_types=all types group_type=group type group_name=group name policy_group_manage=strateagy grouping management -#===========policy_group_manage end ============= \ No newline at end of file +#===========policy_group_manage end ============= +======= +#===========log end ============= +>>>>>>> branch 'develop' of http://10.0.6.99/gwall/gwall.git diff --git a/src/main/resources/messages/message_ru.properties b/src/main/resources/messages/message_ru.properties index 5a038eb3b..a346bcb77 100644 --- a/src/main/resources/messages/message_ru.properties +++ b/src/main/resources/messages/message_ru.properties @@ -484,10 +484,14 @@ data_tunnel=data tunnel contrl_message=contrl message data_message=data message user_name=user name +<<<<<<< HEAD #===========log end ============= #===========policy_group_manage start ============= all_types=all types group_type=group type group_name=group name policy_group_manage=strateagy grouping management -#===========policy_group_manage end ============= \ No newline at end of file +#===========policy_group_manage end ============= +======= +#===========log end ============= +>>>>>>> branch 'develop' of http://10.0.6.99/gwall/gwall.git diff --git a/src/main/resources/messages/message_zh_CN.properties b/src/main/resources/messages/message_zh_CN.properties index 14aec5e42..7ada2db6b 100644 --- a/src/main/resources/messages/message_zh_CN.properties +++ b/src/main/resources/messages/message_zh_CN.properties @@ -606,13 +606,21 @@ action_loop=\u56DE\u6D41 action_forward=\u8F6C\u53D1 action_ratelimit=\u9650\u901F action_replace=\u66FF\u6362 +<<<<<<< HEAD action_whitelist=\u767D\u540D\u5355 +======= +action_whitelist=\u767D\u540D\u5355 +>>>>>>> branch 'develop' of http://10.0.6.99/gwall/gwall.git action_monit=\u76D1\u6D4B file_digest_control=\u6587\u4EF6\u6458\u8981\u7BA1\u63A7 bgp_control=BGP\u7BA1\u63A7 bgp_ip=bgp Ip xmpp_control=XMPP\u7BA1\u63A7 +<<<<<<< HEAD xmpp_ip=xmpp Ip +======= +xmpp_ip=xmpp Ip +>>>>>>> branch 'develop' of http://10.0.6.99/gwall/gwall.git #===============protocol IP Import start================= chooseFile=\u9009\u62E9\u6587\u4EF6 download=\u6A21\u677F\u4E0B\u8F7D @@ -685,10 +693,14 @@ data_tunnel=\u6570\u636E\u901A\u9053 contrl_message=\u63A7\u5236\u62A5\u6587 data_message=\u6570\u636E\u62A5\u6587 user_name=\u7528\u6237\u540D\u79F0 +<<<<<<< HEAD #===========log end ============= #===========policy_group_manage start ============= all_types=\u6240\u6709\u7C7B\u578B group_type=\u5206\u7EC4\u7C7B\u578B group_name=\u5206\u7EC4\u540D\u79F0 policy_group_manage=\u7B56\u7565\u5206\u7EC4\u7BA1\u7406 -#===========policy_group_manage end ============= \ No newline at end of file +#===========policy_group_manage end ============= +======= +#===========log end ============= +>>>>>>> branch 'develop' of http://10.0.6.99/gwall/gwall.git diff --git a/src/main/webapp/WEB-INF/views/basics/policyGroupForm.jsp b/src/main/webapp/WEB-INF/views/basics/policyGroupForm.jsp new file mode 100644 index 000000000..67c186b0c --- /dev/null +++ b/src/main/webapp/WEB-INF/views/basics/policyGroupForm.jsp @@ -0,0 +1,98 @@ +<%@ page contentType="text/html;charset=UTF-8"%> +<%@ include file="/WEB-INF/include/taglib.jsp"%> + + +<spring:message code="${cfgName}"></spring:message> + + + + +
+ + <%--

+ +

--%> + +
+
+
+
+
+ + + +
+
+
+ +
+ +
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+
+
+
+
+ + +
+
+
+
+
+
+
+ +
+
+
+
+
+ + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/basics/policyGroupList.jsp b/src/main/webapp/WEB-INF/views/basics/policyGroupList.jsp new file mode 100644 index 000000000..61a3ab883 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/basics/policyGroupList.jsp @@ -0,0 +1,220 @@ +<%@ page contentType="text/html;charset=UTF-8"%> +<%@ include file="/WEB-INF/include/taglib.jsp"%> + + +<spring:message code="${cfgName}"></spring:message> + + + + +
+ + +

+ +

+ +
+
+
+
+
+ + + + + + + +
+
+ + +
+ +
+ +
+
+ + + + + +
+ + + +
+
+
+ + + +
+ +
+ + + +
+
+
+
+ + +
+
+ +
+
+ + " onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true});"/> + +
+
+ +
+
+ + " onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true});"/> + +
+
+ +
+
+ + " onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true});"/> + +
+
+
+
+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + ${fns:abbr(cfg.groupName,20)} + + + + + + + ${cfg.creatorName }${cfg.editorName }
+
${page}
+
+ +
+
+
+ + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/home.jsp b/src/main/webapp/WEB-INF/views/home.jsp index 3fe3124f2..519b54c39 100644 --- a/src/main/webapp/WEB-INF/views/home.jsp +++ b/src/main/webapp/WEB-INF/views/home.jsp @@ -226,16 +226,16 @@ window.onresize=function(){