Merge branch 'develop' of https://git.mesalab.cn/K18_NTCS_WEB/NTC.git into develop
This commit is contained in:
@@ -167,7 +167,7 @@ public class SysUser extends BaseEntity<SysUser> {
|
||||
}
|
||||
|
||||
public static boolean isAdmin(String loginId){
|
||||
return loginId != null && "admin".equals(loginId);
|
||||
return loginId != null && "ceiec".equals(loginId);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -52,6 +52,9 @@ public class PxyObjSpoofingIpPool extends BaseIpCfg{
|
||||
this.ipAddress = ipAddress;
|
||||
}
|
||||
public Integer getGroupId() {
|
||||
if((groupId==null || groupId==0) && cfgId!=null){
|
||||
groupId=cfgId.intValue();
|
||||
}
|
||||
return groupId;
|
||||
}
|
||||
public void setGroupId(Integer groupId) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1042,7 +1042,7 @@ public class ExportExcel {
|
||||
//expr type
|
||||
if("key_word".equals(headerStr)){
|
||||
if(!StringUtil.isEmpty(region.getConfigMultiKeywords())){
|
||||
if(region.getConfigMultiKeywords().equals(1)){//多关键字输入TODO
|
||||
if(region.getConfigMultiKeywords().equals("1")){//多关键字输入TODO
|
||||
commentStr=commentStr+msgProp.getProperty("rule_desc_tip")+":\n";
|
||||
index++;
|
||||
//允许输入多关键字,多个关键字用换行表示
|
||||
|
||||
@@ -77,7 +77,8 @@ public class TaskInfoController extends BaseController{
|
||||
}else{
|
||||
if (!"true".equals(checkTaskName(taskInfo.getTaskName()))){
|
||||
logger.info(taskInfo.getTaskName()+"重复数据");
|
||||
addMessage("error",model,"save_failed");
|
||||
Properties props=this.getMsgProp();
|
||||
addMessage("error",model,props.getProperty("duplicate", "Duplicate")+" "+props.getProperty("task_name", "Task Name"));
|
||||
return form(taskInfo, model);
|
||||
}
|
||||
// 保存用户信息
|
||||
|
||||
@@ -83,7 +83,8 @@ public class RequestInfoController extends BaseController{
|
||||
}else{
|
||||
if (!"true".equals(checkRequestNumber(requestInfo.getRequestNumber()))){
|
||||
logger.info(requestInfo.getRequestNumber()+"重复数据");
|
||||
addMessage("error",model,"save_failed");
|
||||
Properties props=this.getMsgProp();
|
||||
addMessage("error",model,props.getProperty("duplicate", "Duplicate")+" "+props.getProperty("title", "Title"));
|
||||
return form(requestInfo, model);
|
||||
}
|
||||
// 保存用户信息
|
||||
|
||||
@@ -300,11 +300,16 @@ public class IpController extends BaseController{
|
||||
,FunctionServiceDict serviceDict
|
||||
,Integer requestId) throws Exception{
|
||||
Properties pro=getMsgProp();
|
||||
//String serviceName=pro.getProperty(serviceDict.getServiceName());
|
||||
String regionName=pro.getProperty(regionDict.getConfigRegionValue());
|
||||
//serviceName=StringUtil.isEmpty(serviceName) ?serviceDict.getServiceName():serviceName;
|
||||
regionName=StringUtil.isEmpty(regionName) ?regionDict.getConfigRegionValue():regionName;
|
||||
String fileName = regionName+"_Template.xlsx";
|
||||
String menuCode = menuService.getMenuCodeByFunctionId(serviceDict.getFunctionId());
|
||||
String menuName = pro.getProperty(menuCode);
|
||||
String regionName = pro.getProperty(regionDict.getConfigRegionValue());
|
||||
menuName = StringUtil.isEmpty(menuName) ? menuCode : menuName;
|
||||
regionName = StringUtil.isEmpty(regionName) ? regionDict.getConfigRegionValue() : regionName;
|
||||
|
||||
String fileName = regionName + "_Template.xlsx";
|
||||
if(!menuName.equalsIgnoreCase(regionName)) {
|
||||
fileName = menuName +"_"+ fileName;
|
||||
}
|
||||
//ip类模板
|
||||
if(regionDict.getRegionType().equals(1)){
|
||||
if(regionDict.getFunctionId().equals(5)){// IP Address
|
||||
|
||||
@@ -26,6 +26,7 @@ import com.nis.domain.configuration.HttpUrlCfg;
|
||||
import com.nis.domain.configuration.InterceptPktBin;
|
||||
import com.nis.domain.configuration.IpPortCfg;
|
||||
import com.nis.domain.configuration.PxyObjKeyring;
|
||||
import com.nis.domain.configuration.PxyObjSpoofingIpPool;
|
||||
import com.nis.exceptions.MaatConvertException;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.DictUtils;
|
||||
@@ -60,9 +61,18 @@ public class InterceptController extends CommonController {
|
||||
certificateList = pxyObjKeyringService.findPxyObjKeyrings(null, 1, 1, "domain");
|
||||
}
|
||||
model.addAttribute("certificateList", certificateList);
|
||||
// IP地址仿冒策略使用策略组
|
||||
List<PolicyGroupInfo> policyGroups = policyGroupInfoService.findPolicyGroupInfosByType(6);
|
||||
model.addAttribute("policyGroups", policyGroups);
|
||||
/*if(cfg.getFunctionId().equals(214)){
|
||||
// IP地址仿冒策略使用策略组
|
||||
//List<PolicyGroupInfo> policyGroups = policyGroupInfoService.findPolicyGroupInfosByType(6);
|
||||
List<CfgIndexInfo> list = page.getList();
|
||||
for(CfgIndexInfo c:list){
|
||||
Long cfgId = Long.parseLong(c.getUserRegion2());//user_region2字段存储的为IP仿冒池的ID信息(策略组ID)
|
||||
PxyObjSpoofingIpPool pool = pxyObjSpoofingIpPoolService.getPxyObjSpoofingIpPool(cfgId);
|
||||
c.setUserRegion2(pool.getGroupName());//将IP仿冒池的策略组名重新赋给user_region2
|
||||
}
|
||||
|
||||
// model.addAttribute("policyGroups", policyGroups);
|
||||
}*/
|
||||
return "/cfg/intercept/interceptList";
|
||||
}
|
||||
|
||||
@@ -86,8 +96,9 @@ public class InterceptController extends CommonController {
|
||||
|
||||
model.addAttribute("_cfg", entity);
|
||||
// IP地址仿冒策略使用策略组
|
||||
List<PolicyGroupInfo> policyGroups = policyGroupInfoService.findPolicyGroupInfosByType(6);
|
||||
model.addAttribute("policyGroups", policyGroups);
|
||||
// List<PolicyGroupInfo> policyGroups = policyGroupInfoService.findPolicyGroupInfosByType(6);
|
||||
// List<PxyObjSpoofingIpPool> pools = pxyObjSpoofingIpPoolService.findPxyObjSpoofingIpPools(new PxyObjSpoofingIpPool());
|
||||
// model.addAttribute("policyGroups", pools);
|
||||
|
||||
return "/cfg/intercept/interceptForm";
|
||||
}
|
||||
|
||||
@@ -89,7 +89,7 @@ public class PxyObjSpoofingIpPoolController extends BaseController {
|
||||
model.addAttribute("isAdd", true);
|
||||
}
|
||||
|
||||
List<PolicyGroupInfo> groups=policyGroupInfoService.findPolicyGroupInfosByType(6);
|
||||
/*List<PolicyGroupInfo> groups=policyGroupInfoService.findPolicyGroupInfosByType(6);
|
||||
List<PolicyGroupInfo> policyGroups = new ArrayList();
|
||||
//解决目前一个分组只能有一个生效IP
|
||||
for(PolicyGroupInfo group:groups){
|
||||
@@ -101,7 +101,7 @@ public class PxyObjSpoofingIpPoolController extends BaseController {
|
||||
policyGroups.add(group);
|
||||
}
|
||||
}
|
||||
model.addAttribute("policyGroups", policyGroups);
|
||||
model.addAttribute("policyGroups", policyGroups);*/
|
||||
model.addAttribute("_cfg", cfg);
|
||||
return "/cfg/proxy/spoofingIpPool/form";
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
@@ -133,4 +134,61 @@ public class ConfigureStatisticsController extends BaseController{
|
||||
map.put("ruleLimit", ruleLimit);
|
||||
return map;
|
||||
}
|
||||
|
||||
//configureStateStatisticsPrint
|
||||
@ResponseBody
|
||||
@RequestMapping(value = {"/configureStateStatisticsPrint"})
|
||||
public Map configureStateStatisticsPrint(Model model,HttpServletRequest request
|
||||
,HttpServletResponse response
|
||||
,RedirectAttributes redirectAttributes){
|
||||
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
/****************************Request Info Statistics*****************************/
|
||||
//1、查询所有有效的service
|
||||
List<FunctionServiceDict> serviceDictList = DictUtils.getFunctionServiceDictList();
|
||||
//2、查询所有菜单
|
||||
List<SysMenu> menuList = UserUtils.getMenuCfgList();
|
||||
//3、根据来函分页
|
||||
RequestInfo requestInfo=new RequestInfo();
|
||||
requestInfo.setIsAudit(1);
|
||||
requestInfo.setIsValid(1);
|
||||
Page page = new Page(request, response,"r");
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
Page requestPage = requestInfoService.findRequestInfo(page,requestInfo);
|
||||
List<RequestInfo> requestInfos=requestPage.getList();
|
||||
//4、根据当前页的requestInfo信息查询request统计信息
|
||||
List<Object[]> requestStatisticList=new ArrayList<Object[]>();
|
||||
if(!StringUtil.isEmpty(requestInfos)){
|
||||
Date requestStatisticTime=configureStatisticsService.getRequestStatisticTime();
|
||||
String requestStatisticTimeStr="";
|
||||
if(!StringUtil.isEmpty(requestStatisticTime)){
|
||||
requestStatisticTimeStr=sdf.format(requestStatisticTime);
|
||||
}
|
||||
requestStatisticList=configureStatisticsService.getRequestStateStatistics(requestInfos,menuList,requestStatisticTimeStr);
|
||||
if(!StringUtil.isEmpty(requestStatisticList)){
|
||||
for (Iterator iterator = requestStatisticList.iterator(); iterator.hasNext();) {
|
||||
Map map = (Map) iterator.next();
|
||||
for (RequestInfo requestInfoO : requestInfos) {
|
||||
if(requestInfoO.getId().toString().equals(map.get("request").toString())){
|
||||
map.put("request", requestInfoO.getRequestTitle());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
model.addAttribute("requestStatisticTime", requestStatisticTimeStr);
|
||||
}
|
||||
Properties msgProp = getMsgProp();
|
||||
for (int i = 0; i < menuList.size(); i++) {
|
||||
String property = msgProp.getProperty(menuList.get(i).getCode(), menuList.get(i).getCode());
|
||||
menuList.get(i).setCode(property);
|
||||
}
|
||||
requestPage.setList(requestStatisticList);
|
||||
model.addAttribute("requestInfos", requestInfos);
|
||||
model.addAttribute("serviceList", serviceDictList);
|
||||
model.addAttribute("page", requestPage);
|
||||
Map<String,Object> maps=new HashMap<String,Object>();
|
||||
maps.put("menuList", menuList);
|
||||
maps.put("requestStatisticList", requestStatisticList);
|
||||
return maps;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,7 +71,7 @@ public class TrafficStatisticsInfoController extends BaseController {
|
||||
Double dropConnNum=0d;
|
||||
Double monitorNum=0d;
|
||||
Double loopConnNum=0d;
|
||||
Double liveConnNum=0d;
|
||||
Double closeConnNum=0d;
|
||||
Double newUniConnNum=0d;
|
||||
Double inoctetsNum=0d;
|
||||
Double outoctetsNum=0d;
|
||||
@@ -86,7 +86,7 @@ public class TrafficStatisticsInfoController extends BaseController {
|
||||
monitorNum = (Double) map.get("monitorNum");
|
||||
dropConnNum = (Double) map.get("dropConnNum");
|
||||
loopConnNum = (Double) map.get("loopConnNum");
|
||||
liveConnNum = (Double) map.get("liveConnNum");
|
||||
closeConnNum = (Double) map.get("closeConnNum");
|
||||
newUniConnNum = (Double) map.get("newUniConnNum");
|
||||
inoctetsNum = (Double) map.get("inoctets");
|
||||
outoctetsNum = (Double) map.get("outoctets");
|
||||
@@ -100,7 +100,7 @@ public class TrafficStatisticsInfoController extends BaseController {
|
||||
m.put("monitorNum", monitorNum);
|
||||
m.put("loopConnNum", loopConnNum);
|
||||
m.put("dropConnNum", dropConnNum);
|
||||
m.put("liveConnNum", liveConnNum);
|
||||
m.put("closeConnNum", closeConnNum);
|
||||
m.put("newUniConnNum", newUniConnNum);
|
||||
|
||||
m.put("bandwidth", bandwidth);
|
||||
@@ -681,7 +681,7 @@ public class TrafficStatisticsInfoController extends BaseController {
|
||||
if("new_link".equals(searchAction)){
|
||||
url=url+"&searchBusinessType="+3;
|
||||
}
|
||||
if("active_link".equals(searchAction)){
|
||||
if("close_link".equals(searchAction)){
|
||||
url=url+"&searchBusinessType="+4;
|
||||
}
|
||||
if("pass".equals(searchAction)){
|
||||
|
||||
@@ -34,6 +34,7 @@ import com.nis.domain.log.BaseLogEntity;
|
||||
import com.nis.domain.maat.LogRecvData;
|
||||
import com.nis.domain.report.NtcAsnRecord;
|
||||
import com.nis.domain.report.NtcIpRangeReport;
|
||||
import com.nis.util.Configurations;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.DateUtils;
|
||||
import com.nis.util.StringUtil;
|
||||
@@ -69,7 +70,7 @@ public class TrafficStatisticsReportController extends BaseController {
|
||||
if ("3".endsWith(searchBusinessType)) {
|
||||
model.addAttribute("searchBusinessType", 3);// IP查询
|
||||
}
|
||||
String url = Constants.DASHBOARD_URL + Constants.NTC_RADIUS_REPORT;
|
||||
String url = Configurations.getStringProperty("dashboardUrlV2","dashboardUrlV2") + Constants.NTC_RADIUS_REPORT;
|
||||
String statTime = bean.getSearchFoundStartTime();
|
||||
String endTime = bean.getSearchFoundEndTime();
|
||||
String account = bean.getAccount();
|
||||
@@ -221,7 +222,7 @@ public class TrafficStatisticsReportController extends BaseController {
|
||||
if ("3".endsWith(searchBusinessType)) {
|
||||
model.addAttribute("searchBusinessType", 3);// IP查询
|
||||
}
|
||||
String url = Constants.DASHBOARD_URL + Constants.NTC_RADIUS_REPORT;
|
||||
String url = Configurations.getStringProperty("dashboardUrlV2","dashboardUrlV2")+ Constants.NTC_RADIUS_REPORT;
|
||||
String statTime = bean.getSearchFoundStartTime();
|
||||
String endTime = bean.getSearchFoundEndTime();
|
||||
String account = bean.getAccount();
|
||||
|
||||
@@ -21,6 +21,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.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
@@ -35,16 +36,16 @@ import com.nis.util.Constants;
|
||||
import com.nis.util.TimeConstants;
|
||||
import com.nis.util.httpclient.HttpClientUtil;
|
||||
import com.nis.web.controller.BaseController;
|
||||
import com.nis.web.service.basics.TaskInfoService;
|
||||
import com.nis.web.service.configuration.RequestInfoService;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("${adminPath}/eventBlock")
|
||||
public class NtcEventBlockController extends BaseController {
|
||||
|
||||
protected static Logger logger = LoggerFactory.getLogger(NtcEventBlockController.class);
|
||||
|
||||
|
||||
@Autowired
|
||||
private TaskInfoService taskInfoService;
|
||||
private RequestInfoService requestInfoService;
|
||||
|
||||
/**
|
||||
* EventBlock
|
||||
@@ -89,15 +90,20 @@ public class NtcEventBlockController extends BaseController {
|
||||
params.put("searchTaskStartTime", searchTaskStartTime);
|
||||
params.put("searchTaskEndTime", searchTaskEndTime);
|
||||
|
||||
|
||||
if (StringUtils.isNotBlank(log.getTaskIds())) {
|
||||
params.put("taskIds", log.getTaskIds());
|
||||
}
|
||||
|
||||
log.setSearchReportStartTime(searchReportStartTime);
|
||||
log.setSearchReportEndTime(searchReportEndTime);
|
||||
log.setSearchTaskStartTime(searchTaskStartTime);
|
||||
log.setSearchTaskEndTime(searchTaskEndTime);
|
||||
|
||||
params.put("reportType", 1);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_MONITOR_OR_BLOCK_Report;
|
||||
// String url = "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
@@ -111,7 +117,7 @@ public class NtcEventBlockController extends BaseController {
|
||||
page.setList(data.getList());
|
||||
model.addAttribute("page", page);
|
||||
// 获取专项列表
|
||||
List<TaskInfo> taskList = taskInfoService.findTaskInfo(new TaskInfo());
|
||||
List<TaskInfo> taskList = requestInfoService.showTask(new TaskInfo());
|
||||
model.addAttribute("taskList", taskList);
|
||||
}
|
||||
}
|
||||
@@ -142,7 +148,6 @@ public class NtcEventBlockController extends BaseController {
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
|
||||
|
||||
// 判断请求参数
|
||||
String searchReportStartTime = null;
|
||||
String searchReportEndTime = null;
|
||||
@@ -167,7 +172,6 @@ public class NtcEventBlockController extends BaseController {
|
||||
params.put("searchReportEndTime", searchReportEndTime);
|
||||
params.put("searchTaskStartTime", searchTaskStartTime);
|
||||
params.put("searchTaskEndTime", searchTaskEndTime);
|
||||
|
||||
|
||||
if (StringUtils.isNotBlank(log.getTaskIds())) {
|
||||
params.put("taskIds", log.getTaskIds());
|
||||
@@ -177,11 +181,12 @@ public class NtcEventBlockController extends BaseController {
|
||||
log.setSearchReportEndTime(searchReportEndTime);
|
||||
log.setSearchTaskStartTime(searchTaskStartTime);
|
||||
log.setSearchTaskEndTime(searchTaskEndTime);
|
||||
|
||||
|
||||
params.put("reportType", 1);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_MONITOR_OR_BLOCK_Report;
|
||||
// String url = "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcEventMonitorOrBlockReport> list = new ArrayList<>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
@@ -199,7 +204,7 @@ public class NtcEventBlockController extends BaseController {
|
||||
titleList.add("ntc_event_block_report");
|
||||
classMap.put("ntc_event_block_report", NtcEventMonitorOrBlockReport.class);
|
||||
|
||||
String cfgIndexInfoNoExport = "";
|
||||
String cfgIndexInfoNoExport = "," + hColumns + ",";
|
||||
noExportMap.put("ntc_event_block_report", cfgIndexInfoNoExport);
|
||||
|
||||
Properties msgProp = getMsgProp();
|
||||
@@ -327,4 +332,75 @@ public class NtcEventBlockController extends BaseController {
|
||||
|
||||
return dateTime.toString(TimeConstants.YYYY_MM_DD_HH24_MM_SS);
|
||||
}
|
||||
|
||||
// eventBlockPrint
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "eventBlockPrint")
|
||||
public List<NtcEventMonitorOrBlockReport> eventBlockPrint(@ModelAttribute("log") NtcEventMonitorOrBlockReport log,
|
||||
Model model, HttpServletRequest request, HttpServletResponse response,
|
||||
RedirectAttributes redirectAttributes) {
|
||||
try {
|
||||
PageLog<NtcEventMonitorOrBlockReport> page = new PageLog<NtcEventMonitorOrBlockReport>(request, response);
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
// 判断请求参数
|
||||
String searchReportStartTime = null;
|
||||
String searchReportEndTime = null;
|
||||
String searchTaskStartTime = null;
|
||||
String searchTaskEndTime = null;
|
||||
/**
|
||||
* 对统计时间参数进行处理 开始-结束(一周内[7天])
|
||||
*/
|
||||
String[] serachReportTimes = getSerachTimes(log.getSearchReportStartTime(), log.getSearchReportEndTime());
|
||||
searchReportStartTime = serachReportTimes[0];
|
||||
searchReportEndTime = serachReportTimes[1];
|
||||
/**
|
||||
* 对报送时间参数进行处理 开始-结束(一周内[7天])
|
||||
*/
|
||||
String[] serachTaskTimes = getSerachTimes(log.getSearchTaskStartTime(), log.getSearchTaskEndTime());
|
||||
searchTaskStartTime = serachTaskTimes[0];
|
||||
searchTaskEndTime = serachTaskTimes[1];
|
||||
|
||||
params.put("searchReportStartTime", searchReportStartTime);
|
||||
params.put("searchReportEndTime", searchReportEndTime);
|
||||
params.put("searchTaskStartTime", searchTaskStartTime);
|
||||
params.put("searchTaskEndTime", searchTaskEndTime);
|
||||
|
||||
if (StringUtils.isNotBlank(log.getTaskIds())) {
|
||||
params.put("taskIds", log.getTaskIds());
|
||||
}
|
||||
|
||||
log.setSearchReportStartTime(searchReportStartTime);
|
||||
log.setSearchReportEndTime(searchReportEndTime);
|
||||
log.setSearchTaskStartTime(searchTaskStartTime);
|
||||
log.setSearchTaskEndTime(searchTaskEndTime);
|
||||
|
||||
params.put("reportType", 1);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_MONITOR_OR_BLOCK_Report;
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcEventMonitorOrBlockReport> list = new ArrayList<>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
LogRecvData<NtcEventMonitorOrBlockReport> fromJson = gson.fromJson(recv,
|
||||
new TypeToken<LogRecvData<NtcEventMonitorOrBlockReport>>() {
|
||||
}.getType());
|
||||
if (fromJson.getStatus().intValue() == 200) {
|
||||
Page<NtcEventMonitorOrBlockReport> data = fromJson.getData();
|
||||
list = data.getList();
|
||||
}
|
||||
}
|
||||
|
||||
return list;
|
||||
} catch (Exception e) {
|
||||
logger.error("ntc_event_block_report print failed", e);
|
||||
addMessage(redirectAttributes, "error", "print_failed");
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,6 +21,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.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
@@ -31,12 +32,11 @@ import com.nis.domain.PageLog;
|
||||
import com.nis.domain.configuration.TaskInfo;
|
||||
import com.nis.domain.maat.LogRecvData;
|
||||
import com.nis.domain.report.NtcEventKeyProtectionReport;
|
||||
import com.nis.domain.report.NtcEventMonitorOrBlockReport;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.TimeConstants;
|
||||
import com.nis.util.httpclient.HttpClientUtil;
|
||||
import com.nis.web.controller.BaseController;
|
||||
import com.nis.web.service.basics.TaskInfoService;
|
||||
import com.nis.web.service.configuration.RequestInfoService;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("${adminPath}/eventKeyProtection")
|
||||
@@ -45,7 +45,7 @@ public class NtcEventKeyProtectionController extends BaseController {
|
||||
protected static Logger logger = LoggerFactory.getLogger(NtcEventKeyProtectionController.class);
|
||||
|
||||
@Autowired
|
||||
private TaskInfoService taskInfoService;
|
||||
private RequestInfoService requestInfoService;
|
||||
|
||||
/**
|
||||
* EventBlock
|
||||
@@ -94,6 +94,11 @@ public class NtcEventKeyProtectionController extends BaseController {
|
||||
params.put("taskIds", log.getTaskIds());
|
||||
}
|
||||
|
||||
log.setSearchReportStartTime(searchReportStartTime);
|
||||
log.setSearchReportEndTime(searchReportEndTime);
|
||||
log.setSearchTaskStartTime(searchTaskStartTime);
|
||||
log.setSearchTaskEndTime(searchTaskEndTime);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_KEYPROTECTION_Report;
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventKeyProtection";
|
||||
@@ -110,7 +115,7 @@ public class NtcEventKeyProtectionController extends BaseController {
|
||||
page.setList(data.getList());
|
||||
model.addAttribute("page", page);
|
||||
// 获取专项列表
|
||||
List<TaskInfo> taskList = taskInfoService.findTaskInfo(new TaskInfo());
|
||||
List<TaskInfo> taskList = requestInfoService.showTask(new TaskInfo());
|
||||
model.addAttribute("taskList", taskList);
|
||||
}
|
||||
}
|
||||
@@ -195,7 +200,7 @@ public class NtcEventKeyProtectionController extends BaseController {
|
||||
titleList.add("ntc_event_key_protection_report");
|
||||
classMap.put("ntc_event_key_protection_report", NtcEventKeyProtectionReport.class);
|
||||
|
||||
String cfgIndexInfoNoExport = "";
|
||||
String cfgIndexInfoNoExport = "," + hColumns + ",";
|
||||
noExportMap.put("ntc_event_key_protection_report", cfgIndexInfoNoExport);
|
||||
|
||||
Properties msgProp = getMsgProp();
|
||||
@@ -320,4 +325,72 @@ public class NtcEventKeyProtectionController extends BaseController {
|
||||
|
||||
return dateTime.toString(TimeConstants.YYYY_MM_DD_HH24_MM_SS);
|
||||
}
|
||||
|
||||
//eventKeyProtectionPrint
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "eventKeyProtectionPrint")
|
||||
public List<NtcEventKeyProtectionReport> eventKeyProtectionPrint(@ModelAttribute("log") NtcEventKeyProtectionReport log, Model model,
|
||||
HttpServletRequest request, HttpServletResponse response,RedirectAttributes redirectAttributes) {
|
||||
try {
|
||||
PageLog<NtcEventKeyProtectionReport> page = new PageLog<NtcEventKeyProtectionReport>(request, response);
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
|
||||
// 判断请求参数
|
||||
String searchReportStartTime = null;
|
||||
String searchReportEndTime = null;
|
||||
String searchTaskStartTime = null;
|
||||
String searchTaskEndTime = null;
|
||||
|
||||
/**
|
||||
* 对统计时间参数进行处理 开始-结束(一周内[7天])
|
||||
*/
|
||||
String[] serachReportTimes = getSerachTimes(log.getSearchReportStartTime(), log.getSearchReportEndTime());
|
||||
searchReportStartTime = serachReportTimes[0];
|
||||
searchReportEndTime = serachReportTimes[1];
|
||||
|
||||
/**
|
||||
* 对报送时间参数进行处理 开始-结束(一周内[7天])
|
||||
*/
|
||||
String[] serachTaskTimes = getSerachTimes(log.getSearchTaskStartTime(), log.getSearchTaskEndTime());
|
||||
searchTaskStartTime = serachTaskTimes[0];
|
||||
searchTaskEndTime = serachTaskTimes[1];
|
||||
|
||||
params.put("searchReportStartTime", searchReportStartTime);
|
||||
params.put("searchReportEndTime", searchReportEndTime);
|
||||
params.put("searchTaskStartTime", searchTaskStartTime);
|
||||
params.put("searchTaskEndTime", searchTaskEndTime);
|
||||
|
||||
if (StringUtils.isNotBlank(log.getTaskIds())) {
|
||||
params.put("taskIds", log.getTaskIds());
|
||||
}
|
||||
|
||||
log.setSearchReportStartTime(searchReportStartTime);
|
||||
log.setSearchReportEndTime(searchReportEndTime);
|
||||
log.setSearchTaskStartTime(searchTaskStartTime);
|
||||
log.setSearchTaskEndTime(searchTaskEndTime);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_KEYPROTECTION_Report;
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcEventKeyProtectionReport> list = new ArrayList<>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
LogRecvData<NtcEventKeyProtectionReport> fromJson = gson.fromJson(recv,
|
||||
new TypeToken<LogRecvData<NtcEventKeyProtectionReport>>() {
|
||||
}.getType());
|
||||
if (fromJson.getStatus().intValue() == 200) {
|
||||
Page<NtcEventKeyProtectionReport> data = fromJson.getData();
|
||||
list = data.getList();
|
||||
}
|
||||
}
|
||||
return list;
|
||||
} catch (Exception e) {
|
||||
logger.error("ntc_event_key_protection_report print failed", e);
|
||||
addMessage(redirectAttributes, "error", "print_failed");
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,9 +2,7 @@ package com.nis.web.controller.report;
|
||||
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@@ -23,6 +21,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.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
@@ -32,15 +31,12 @@ import com.nis.domain.Page;
|
||||
import com.nis.domain.PageLog;
|
||||
import com.nis.domain.configuration.TaskInfo;
|
||||
import com.nis.domain.maat.LogRecvData;
|
||||
import com.nis.domain.report.BaseReport;
|
||||
import com.nis.domain.report.NtcEventMonitorOrBlockReport;
|
||||
import com.nis.domain.report.NtcURLReport;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.DateUtils;
|
||||
import com.nis.util.TimeConstants;
|
||||
import com.nis.util.httpclient.HttpClientUtil;
|
||||
import com.nis.web.controller.BaseController;
|
||||
import com.nis.web.service.basics.TaskInfoService;
|
||||
import com.nis.web.service.configuration.RequestInfoService;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("${adminPath}/eventMonitor")
|
||||
@@ -49,7 +45,7 @@ public class NtcEventMonitorController extends BaseController {
|
||||
protected static Logger logger = LoggerFactory.getLogger(NtcEventMonitorController.class);
|
||||
|
||||
@Autowired
|
||||
private TaskInfoService taskInfoService;
|
||||
private RequestInfoService requestInfoService;
|
||||
|
||||
/**
|
||||
* EventMonitor
|
||||
@@ -98,11 +94,16 @@ public class NtcEventMonitorController extends BaseController {
|
||||
params.put("taskIds", log.getTaskIds());
|
||||
}
|
||||
|
||||
log.setSearchReportStartTime(searchReportStartTime);
|
||||
log.setSearchReportEndTime(searchReportEndTime);
|
||||
log.setSearchTaskStartTime(searchTaskStartTime);
|
||||
log.setSearchTaskEndTime(searchTaskEndTime);
|
||||
|
||||
params.put("reportType", 2);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_MONITOR_OR_BLOCK_Report;
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
@@ -115,8 +116,7 @@ public class NtcEventMonitorController extends BaseController {
|
||||
page.setLast(data.getLast());
|
||||
page.setList(data.getList());
|
||||
model.addAttribute("page", page);
|
||||
// 获取专项列表
|
||||
List<TaskInfo> taskList = taskInfoService.findTaskInfo(new TaskInfo());
|
||||
List<TaskInfo> taskList = requestInfoService.showTask(new TaskInfo());
|
||||
model.addAttribute("taskList", taskList);
|
||||
}
|
||||
}
|
||||
@@ -184,8 +184,8 @@ public class NtcEventMonitorController extends BaseController {
|
||||
params.put("reportType", 2);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_MONITOR_OR_BLOCK_Report;
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
// String url =
|
||||
// "http://192.168.11.56:8888/galaxy-service/service/log/v1/ntcEventsMonitorOrBlock";
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcEventMonitorOrBlockReport> list = new ArrayList<>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
@@ -202,7 +202,7 @@ public class NtcEventMonitorController extends BaseController {
|
||||
titleList.add("ntc_event_monitor_report");
|
||||
classMap.put("ntc_event_monitor_report", NtcEventMonitorOrBlockReport.class);
|
||||
|
||||
String cfgIndexInfoNoExport = "";
|
||||
String cfgIndexInfoNoExport = "," + hColumns + ",";
|
||||
noExportMap.put("ntc_event_monitor_report", cfgIndexInfoNoExport);
|
||||
|
||||
Properties msgProp = getMsgProp();
|
||||
@@ -330,4 +330,74 @@ public class NtcEventMonitorController extends BaseController {
|
||||
|
||||
return dateTime.toString(TimeConstants.YYYY_MM_DD_HH24_MM_SS);
|
||||
}
|
||||
|
||||
// eventMonitorPrint
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "eventMonitorPrint")
|
||||
public List<NtcEventMonitorOrBlockReport> eventMonitorPrint(@ModelAttribute("log") NtcEventMonitorOrBlockReport log, Model model,
|
||||
HttpServletRequest request, HttpServletResponse response,RedirectAttributes redirectAttributes) {
|
||||
try {
|
||||
PageLog<NtcEventMonitorOrBlockReport> page = new PageLog<NtcEventMonitorOrBlockReport>(request, response);
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
|
||||
// 判断请求参数
|
||||
String searchReportStartTime = null;
|
||||
String searchReportEndTime = null;
|
||||
String searchTaskStartTime = null;
|
||||
String searchTaskEndTime = null;
|
||||
|
||||
/**
|
||||
* 对统计时间参数进行处理 开始-结束(一周内[7天])
|
||||
*/
|
||||
String[] serachReportTimes = getSerachTimes(log.getSearchReportStartTime(), log.getSearchReportEndTime());
|
||||
searchReportStartTime = serachReportTimes[0];
|
||||
searchReportEndTime = serachReportTimes[1];
|
||||
|
||||
/**
|
||||
* 对报送时间参数进行处理 开始-结束(一周内[7天])
|
||||
*/
|
||||
String[] serachTaskTimes = getSerachTimes(log.getSearchTaskStartTime(), log.getSearchTaskEndTime());
|
||||
searchTaskStartTime = serachTaskTimes[0];
|
||||
searchTaskEndTime = serachTaskTimes[1];
|
||||
|
||||
params.put("searchReportStartTime", searchReportStartTime);
|
||||
params.put("searchReportEndTime", searchReportEndTime);
|
||||
params.put("searchTaskStartTime", searchTaskStartTime);
|
||||
params.put("searchTaskEndTime", searchTaskEndTime);
|
||||
|
||||
if (StringUtils.isNotBlank(log.getTaskIds())) {
|
||||
params.put("taskIds", log.getTaskIds());
|
||||
}
|
||||
|
||||
log.setSearchReportStartTime(searchReportStartTime);
|
||||
log.setSearchReportEndTime(searchReportEndTime);
|
||||
log.setSearchTaskStartTime(searchTaskStartTime);
|
||||
log.setSearchTaskEndTime(searchTaskEndTime);
|
||||
|
||||
params.put("reportType", 2);
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_EVENT_MONITOR_OR_BLOCK_Report;
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcEventMonitorOrBlockReport> list = new ArrayList<>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
LogRecvData<NtcEventMonitorOrBlockReport> fromJson = gson.fromJson(recv,
|
||||
new TypeToken<LogRecvData<NtcEventMonitorOrBlockReport>>() {
|
||||
}.getType());
|
||||
if (fromJson.getStatus().intValue() == 200) {
|
||||
Page<NtcEventMonitorOrBlockReport> data = fromJson.getData();
|
||||
list = data.getList();
|
||||
}
|
||||
}
|
||||
return list;
|
||||
} catch (Exception e) {
|
||||
logger.error("ntc_event_monitor_report print failed", e);
|
||||
addMessage(redirectAttributes, "error", "print_failed");
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,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.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
@@ -567,4 +568,158 @@ public class ReportController extends BaseController {
|
||||
addMessage(redirectAttributes, "error", "export_failed");
|
||||
}
|
||||
}
|
||||
// asnPrint
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "asnPrint")
|
||||
public List<NtcAsnRecord> asnPrint(@ModelAttribute("log") NtcAsnRecord log, Model model,
|
||||
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
|
||||
try {
|
||||
PageLog<NtcAsnRecord> page = new PageLog<NtcAsnRecord>(request, response);
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
// 判断请求参数
|
||||
if (StringUtils.isNotEmpty(log.getSearchAsnType())) {
|
||||
params.put("searchAsnType", log.getSearchAsnType());
|
||||
} else {
|
||||
params.put("searchAsnType", 1);
|
||||
}
|
||||
if (StringUtils.isNotBlank(log.getSearchFoundStartTime())
|
||||
&& StringUtils.isNotBlank(log.getSearchFoundEndTime())) {
|
||||
params.put("searchFoundStartTime", log.getSearchFoundStartTime());
|
||||
params.put("searchFoundEndTime", log.getSearchFoundEndTime());
|
||||
} else {
|
||||
Calendar time = Calendar.getInstance();
|
||||
String searchEndTime = DateUtils.formatDateTime(time.getTime());
|
||||
time.add(Calendar.HOUR_OF_DAY, -1);
|
||||
String searchStartTime = DateUtils.formatDateTime(time.getTime());
|
||||
|
||||
params.put("searchFoundStartTime", searchStartTime);
|
||||
params.put("searchFoundEndTime", searchEndTime);
|
||||
log.setSearchFoundStartTime(searchStartTime);
|
||||
log.setSearchFoundEndTime(searchEndTime);
|
||||
}
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_ASN_RECORD;
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcAsnRecord> list = new ArrayList<NtcAsnRecord>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
LogRecvData<NtcAsnRecord> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcAsnRecord>>() {
|
||||
}.getType());
|
||||
if (fromJson.getStatus().intValue() == 200) {
|
||||
Page<NtcAsnRecord> data = fromJson.getData();
|
||||
list = data.getList();
|
||||
}
|
||||
}
|
||||
return list;
|
||||
} catch (Exception e) {
|
||||
logger.error("Ntc_Asn_Record print failed", e);
|
||||
addMessage(redirectAttributes, "error", "print_failed");
|
||||
}
|
||||
return null;
|
||||
}
|
||||
// httpsPrint
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "httpsPrint")
|
||||
public List<NtcURLReport> httpsPrint(@ModelAttribute("log") NtcURLReport log, Model model,
|
||||
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
|
||||
try {
|
||||
PageLog<NtcURLReport> page = new PageLog<NtcURLReport>(request, response);
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
// 判断请求参数
|
||||
if (StringUtils.isNotBlank(log.getSearchReportStartTime())
|
||||
&& StringUtils.isNotBlank(log.getSearchReportEndTime())) {
|
||||
params.put("searchReportStartTime", log.getSearchReportStartTime());
|
||||
params.put("searchReportEndTime", log.getSearchReportEndTime());
|
||||
} else {
|
||||
Calendar time = Calendar.getInstance();
|
||||
String searchEndTime = DateUtils.formatDateTime(time.getTime());
|
||||
time.add(Calendar.HOUR_OF_DAY, -1);
|
||||
String searchStartTime = DateUtils.formatDateTime(time.getTime());
|
||||
|
||||
params.put("searchReportStartTime", searchStartTime);
|
||||
params.put("searchReportEndTime", searchEndTime);
|
||||
log.setSearchReportStartTime(searchStartTime);
|
||||
log.setSearchReportEndTime(searchEndTime);
|
||||
}
|
||||
// url参数
|
||||
if (StringUtils.isNotBlank(log.getSearchUrl())) {
|
||||
params.put("searchUrl", log.getSearchUrl());
|
||||
}
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_URL_REPORT;
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcURLReport> list = new ArrayList<NtcURLReport>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
LogRecvData<NtcURLReport> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcURLReport>>() {
|
||||
}.getType());
|
||||
if (fromJson.getStatus().intValue() == 200) {
|
||||
Page<NtcURLReport> data = fromJson.getData();
|
||||
list = data.getList();
|
||||
}
|
||||
}
|
||||
return list;
|
||||
} catch (Exception e) {
|
||||
logger.error("Ntc_HTTPS_Report print failed", e);
|
||||
addMessage(redirectAttributes, "error", "print_failed");
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
// ipRangePrint
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "ipRangePrint")
|
||||
public List<NtcIpRangeReport> ipRangePrint(@ModelAttribute("log") NtcIpRangeReport log, Model model,
|
||||
HttpServletRequest request, HttpServletResponse response, String seType,RedirectAttributes redirectAttributes) {
|
||||
try {
|
||||
PageLog<NtcIpRangeReport> page = new PageLog<NtcIpRangeReport>(request, response);
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
log.setSearchAreaType(seType);
|
||||
// 判断请求参数
|
||||
// 查询国家
|
||||
if (StringUtils.isNotBlank(log.getSearchCountry())) {
|
||||
params.put("searchCountry", log.getSearchCountry());
|
||||
}
|
||||
// 查询开始IP
|
||||
if (StringUtils.isNotBlank(log.getSearchStartIp())) {
|
||||
params.put("searchIp", log.getSearchIp());
|
||||
}
|
||||
//
|
||||
if (StringUtils.isNotBlank(log.getSearchAreaType())) {
|
||||
params.put("searchType", log.getSearchAreaType());
|
||||
}
|
||||
if (StringUtils.isNotBlank(log.getSearchAreaType())) {
|
||||
params.put("searchDesc", log.getSearchDesc());
|
||||
}
|
||||
|
||||
String url = Constants.LOG_BASE_URL + Constants.NTC_IP_RANGE_REPORT;
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
List<NtcIpRangeReport> list = new ArrayList<NtcIpRangeReport>();
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
LogRecvData<NtcIpRangeReport> fromJson = gson.fromJson(recv,
|
||||
new TypeToken<LogRecvData<NtcIpRangeReport>>() {
|
||||
}.getType());
|
||||
if (fromJson.getStatus().intValue() == 200) {
|
||||
Page<NtcIpRangeReport> data = fromJson.getData();
|
||||
list = data.getList();
|
||||
}
|
||||
}
|
||||
return list;
|
||||
} catch (Exception e) {
|
||||
logger.error("Ntc_Ip_Range_Report print failed", e);
|
||||
addMessage(redirectAttributes, "error", "print_failed");
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,5 +25,7 @@ public interface SysMenuDao extends CrudDao<SysMenu>{
|
||||
Integer getServiceId(@Param("functionId")Integer functionId, @Param("action")Integer action);
|
||||
|
||||
List<SysMenu> findAllCfgList(@Param("policiesMenuId")String policiesMenuId);
|
||||
|
||||
String getMenuCodeByFunctionId(@Param("functionId")Integer functionId, @Param("parentId")String id);
|
||||
|
||||
}
|
||||
@@ -218,4 +218,13 @@
|
||||
WHERE
|
||||
s.function_id = #{functionId} AND s.action = #{action} AND s.is_valid = 1
|
||||
</select>
|
||||
|
||||
<select id="getMenuCodeByFunctionId" resultType="java.lang.String">
|
||||
SELECT
|
||||
m.code
|
||||
FROM
|
||||
sys_menu m
|
||||
WHERE
|
||||
m.function_id = #{functionId} AND m.parent_ids LIKE concat(concat('%',#{parentId,jdbcType=VARCHAR}),'%') AND del_flag = 1
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -138,7 +138,7 @@
|
||||
<select id="findList" resultMap="PxyObjSpoofingPoolMap" parameterType="com.nis.domain.configuration.PxyObjSpoofingIpPool">
|
||||
SELECT
|
||||
<include refid="PxyObjSpoofingIpPoolColumns"/>
|
||||
FROM pxy_obj_spoofing_ip_pool r where (r.is_valid!=-1 and r.is_audit!=3) AND r.group_id =#{groupId,jdbcType=INTEGER}
|
||||
FROM pxy_obj_spoofing_ip_pool r where r.is_valid=1 and r.is_audit=1
|
||||
<if test="cfgId != null">
|
||||
AND r.CFG_ID!=#{cfgId,jdbcType=BIGINT}
|
||||
</if>
|
||||
@@ -146,7 +146,9 @@
|
||||
|
||||
<insert id="insert" parameterType="com.nis.domain.configuration.PxyObjSpoofingIpPool" >
|
||||
insert into pxy_obj_spoofing_ip_pool (
|
||||
CFG_ID,
|
||||
<selectKey resultType="java.lang.Long" order="AFTER" keyProperty="cfgId">
|
||||
SELECT LAST_INSERT_ID()
|
||||
</selectKey>
|
||||
CFG_DESC,
|
||||
ACTION,
|
||||
IS_VALID,
|
||||
@@ -176,7 +178,6 @@
|
||||
user_region,
|
||||
port
|
||||
)values (
|
||||
#{cfgId,jdbcType=VARCHAR},
|
||||
#{cfgDesc,jdbcType=VARCHAR},
|
||||
#{action,jdbcType=INTEGER},
|
||||
0,
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
select
|
||||
<include refid="Base_Column_List" />
|
||||
from request_info
|
||||
where request_number = #{requestNumber,jdbcType=VARCHAR}
|
||||
where request_number = #{requestNumber,jdbcType=VARCHAR} and is_valid !=-1
|
||||
</select>
|
||||
<!-- 根据来id查询 -->
|
||||
<select id="getRequestInfoById" parameterType="java.lang.Long" resultMap="BaseResultMap">
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
select
|
||||
<include refid="Base_Column_List" />
|
||||
from task_info
|
||||
where task_name = #{taskName,jdbcType=VARCHAR}
|
||||
where task_name = #{taskName,jdbcType=VARCHAR} and is_valid !=-1
|
||||
</select>
|
||||
<!-- 根据来id查询 -->
|
||||
<select id="getTaskInfoById" parameterType="java.lang.Long" resultMap="BaseResultMap">
|
||||
|
||||
@@ -2123,6 +2123,22 @@ public abstract class BaseService {
|
||||
umap.put("bps_threadshold", _cfg.getBpsThreadshold());
|
||||
umap.put("pps_threadshold", _cfg.getPpsThreadshold());
|
||||
maatCfg.setUserRegion(new Gson().toJson(umap));
|
||||
}else if(regionDict.getFunctionId()==200) {// IP Intercept
|
||||
maatCfg.setUserRegion(Constants.USER_REGION_PLACEHOLDER);
|
||||
if(_cfg.getAction().equals(Constants.MONIT_ACTION)) {
|
||||
maatCfg.setUserRegion(Constants.INTERCEPT_IP_MONIT_USER_REGION_KEY+"="+Constants.USER_REGION_PLACEHOLDER);
|
||||
}
|
||||
}else if(regionDict.getFunctionId()==207 || regionDict.getFunctionId()==208 || regionDict.getFunctionId()==209) {// HTTP(s)阻断、重定向、替换
|
||||
String userRegion = Constants.USER_REGION_PLACEHOLDER;
|
||||
if(_cfg.getAction().equals(Constants.REJECT_ACTION)) {// 阻断
|
||||
userRegion = Constants.REDIRECT_RESPONSE_CODE_KEY+"="+_cfg.getUserRegion1()+";"+Constants.REDIRECT_CONTENT_KEY+"="+_cfg.getUserRegion2();
|
||||
}else if(_cfg.getAction().equals(48)) {// 重定向
|
||||
userRegion = Constants.REDIRECT_RESPONSE_CODE_KEY+"="+_cfg.getUserRegion1()+";"+Constants.REDIRECT_URL_KEY+"="+_cfg.getUserRegion2();;
|
||||
}else if(_cfg.getAction().equals(Constants.REPLACE_ACTION)) {// 替换
|
||||
String substitute = "/"+_cfg.getUserRegion2()+"/"+_cfg.getUserRegion3();
|
||||
userRegion = Constants.REPLACE_ZONE_KEY+"="+_cfg.getUserRegion1()+";"+Constants.REPLACE_SUBSTITUTE_KEY+"="+substitute;
|
||||
}
|
||||
maatCfg.setUserRegion(userRegion);
|
||||
}
|
||||
|
||||
configCompileList.add(maatCfg);
|
||||
@@ -2214,6 +2230,25 @@ public abstract class BaseService {
|
||||
}
|
||||
}else if(regionDict.getDictId()==159) {
|
||||
maatCfg.setUserRegion(Constants.P2P_HASH_TYPE_USER_REGION_KEY+"="+_cfg.getUserRegion1());
|
||||
}else if(regionDict.getFunctionId()==201) {// Domain Intercept
|
||||
String userRegion = Constants.USERREGION_DOMAIN_ID+"="+_cfg.getCompileId()+";"+Constants.USERREGION_DOMAIN_STR+"="+_cfg.getCfgKeywords();
|
||||
if(_cfg.getAction().equals(Constants.MONIT_ACTION)) {// 监测 需要发keyring_id、拦截强度
|
||||
userRegion = Constants.INTERCEPT_IP_MONIT_USER_REGION_KEY+"=0"+";"+Constants.INTERCEPT_DOMAN_INTENSITY_USER_REGION_KEY+"="+_cfg.getUserRegion5()+";" + userRegion;
|
||||
}else if(_cfg.getAction().equals(Constants.RATELIMIT_ACTION)) {// 限速 需要发Droprate
|
||||
userRegion = Constants.INTERCEPT_IP_RATELIMIT_DROPRATE_USER_REGION_KEY+"="+_cfg.getUserRegion2()+";" + userRegion;
|
||||
}
|
||||
maatCfg.setUserRegion(userRegion);
|
||||
}else if(regionDict.getFunctionId()==207 || regionDict.getFunctionId()==208 || regionDict.getFunctionId()==209) {// HTTP(s)阻断、重定向、替换
|
||||
String userRegion = Constants.USER_REGION_PLACEHOLDER;
|
||||
if(_cfg.getAction().equals(Constants.REJECT_ACTION)) {// 阻断
|
||||
userRegion = Constants.REDIRECT_RESPONSE_CODE_KEY+"="+_cfg.getUserRegion1()+";"+Constants.REDIRECT_CONTENT_KEY+"="+_cfg.getUserRegion2();
|
||||
}else if(_cfg.getAction().equals(48)) {// 重定向
|
||||
userRegion = Constants.REDIRECT_RESPONSE_CODE_KEY+"="+_cfg.getUserRegion1()+";"+Constants.REDIRECT_URL_KEY+"="+_cfg.getUserRegion2();;
|
||||
}else if(_cfg.getAction().equals(Constants.REPLACE_ACTION)) {// 替换
|
||||
String substitute = "/"+_cfg.getUserRegion2()+"/"+_cfg.getUserRegion3();
|
||||
userRegion = Constants.REPLACE_ZONE_KEY+"="+_cfg.getUserRegion1()+";"+Constants.REPLACE_SUBSTITUTE_KEY+"="+substitute;
|
||||
}
|
||||
maatCfg.setUserRegion(userRegion);
|
||||
}
|
||||
configCompileList.add(maatCfg);
|
||||
}
|
||||
@@ -2294,6 +2329,17 @@ public abstract class BaseService {
|
||||
if(StringUtil.isEmpty(dictValue) || dictValue.equals("默认")){
|
||||
maatCfg.setUserRegion(Constants.HTTP_HEADER_USER_REGION_KEY+"="+cfg.getDistrict());
|
||||
}
|
||||
}else if(regionDict.getFunctionId()==207 || regionDict.getFunctionId()==208 || regionDict.getFunctionId()==209) {// HTTP(s)阻断、重定向、替换
|
||||
String userRegion = Constants.USER_REGION_PLACEHOLDER;
|
||||
if(cfg.getAction().equals(Constants.REJECT_ACTION)) {// 阻断
|
||||
userRegion = Constants.REDIRECT_RESPONSE_CODE_KEY+"="+cfg.getUserRegion1()+";"+Constants.REDIRECT_CONTENT_KEY+"="+cfg.getUserRegion2();
|
||||
}else if(cfg.getAction().equals(48)) {// 重定向
|
||||
userRegion = Constants.REDIRECT_RESPONSE_CODE_KEY+"="+cfg.getUserRegion1()+";"+Constants.REDIRECT_URL_KEY+"="+cfg.getUserRegion2();;
|
||||
}else if(cfg.getAction().equals(Constants.REPLACE_ACTION)) {// 替换
|
||||
String substitute = "/"+cfg.getUserRegion2()+"/"+cfg.getUserRegion3();
|
||||
userRegion = Constants.REPLACE_ZONE_KEY+"="+cfg.getUserRegion1()+";"+Constants.REPLACE_SUBSTITUTE_KEY+"="+substitute;
|
||||
}
|
||||
maatCfg.setUserRegion(userRegion);
|
||||
}
|
||||
configCompileList.add(maatCfg);
|
||||
}
|
||||
|
||||
@@ -15,27 +15,24 @@ public class LogService extends CrudService<SysLogDao, SysLog> {
|
||||
@Autowired
|
||||
protected SysLogDao sysLogDao;
|
||||
public Page<SysLog> findPage(Page<SysLog> page, SysLog sysLog) {
|
||||
|
||||
// 设置默认时间范围,默认当前月
|
||||
if (sysLog.getBeginDate() == null){
|
||||
sysLog.setBeginDate(DateUtils.setDays(DateUtils.parseDate(DateUtils.getDate()), 1));
|
||||
}
|
||||
if (sysLog.getEndDate() == null){
|
||||
sysLog.setEndDate(DateUtils.addMonths(sysLog.getBeginDate(), 1));
|
||||
sysLog.setEndDate(DateUtils.parseDate(DateUtils.getDate()));
|
||||
}
|
||||
if (sysLog.getBeginDate() == null){
|
||||
sysLog.setBeginDate(DateUtils.addMonths(sysLog.getEndDate(), -1));
|
||||
}
|
||||
|
||||
return super.findPage(page, sysLog);
|
||||
|
||||
}
|
||||
|
||||
public Page<SysLog> findCfgOperationLogPage(Page<SysLog> page, SysLog sysLog) {
|
||||
|
||||
// 设置默认时间范围,默认当前月
|
||||
if (sysLog.getBeginDate() == null){
|
||||
sysLog.setBeginDate(DateUtils.setDays(DateUtils.parseDate(DateUtils.getDate()), 1));
|
||||
}
|
||||
if (sysLog.getEndDate() == null){
|
||||
sysLog.setEndDate(DateUtils.addMonths(sysLog.getBeginDate(), 1));
|
||||
sysLog.setEndDate(DateUtils.parseDate(DateUtils.getDate()));
|
||||
}
|
||||
if (sysLog.getBeginDate() == null){
|
||||
sysLog.setBeginDate(DateUtils.addMonths(sysLog.getEndDate(), -1));
|
||||
}
|
||||
sysLog.setPage(page);
|
||||
List<SysLog> list = sysLogDao.findCfgOperationLogList(sysLog);
|
||||
|
||||
@@ -107,5 +107,9 @@ public class MenuService extends BaseService {
|
||||
public Integer getServiceId(Integer functionId, Integer action) {
|
||||
return menuDao.getServiceId(functionId,action);
|
||||
}
|
||||
|
||||
|
||||
// 获取菜单code
|
||||
public String getMenuCodeByFunctionId(Integer functionId) {
|
||||
return menuDao.getMenuCodeByFunctionId(functionId,",86,");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1025,7 +1025,7 @@ public class AppCfgService extends BaseService {
|
||||
if(StringUtil.isEmpty(entity.getUserRegion4())){
|
||||
userRegion+=Constants.USER_REGION_SPLIT +Constants.APP_VIGNORE_USER_REGION_KEY+"=1";
|
||||
}
|
||||
|
||||
userRegion+=Constants.USER_REGION_SPLIT+"config_id="+entity.getCompileId();
|
||||
maatCfg.setUserRegion(userRegion);
|
||||
configCompileList.add(maatCfg);
|
||||
maatBean.setConfigCompileList(configCompileList);
|
||||
|
||||
@@ -18,6 +18,7 @@ import com.nis.domain.configuration.CfgIndexInfo;
|
||||
import com.nis.domain.configuration.HttpUrlCfg;
|
||||
import com.nis.domain.configuration.InterceptPktBin;
|
||||
import com.nis.domain.configuration.IpPortCfg;
|
||||
import com.nis.domain.configuration.PxyObjSpoofingIpPool;
|
||||
import com.nis.domain.maat.MaatCfg;
|
||||
import com.nis.domain.maat.MaatCfg.NumBoundaryCfg;
|
||||
import com.nis.domain.maat.ToMaatBean;
|
||||
@@ -33,6 +34,7 @@ import com.nis.util.Constants;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.web.dao.configuration.AreaIpCfgDao;
|
||||
import com.nis.web.dao.configuration.InterceptCfgDao;
|
||||
import com.nis.web.dao.configuration.PxyObjSpoofingIpPoolDao;
|
||||
import com.nis.web.dao.configuration.WebsiteCfgDao;
|
||||
import com.nis.web.security.UserUtils;
|
||||
import com.nis.web.service.BaseService;
|
||||
@@ -51,6 +53,8 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
|
||||
protected InterceptCfgDao interceptCfgDao;
|
||||
@Autowired
|
||||
protected AreaIpCfgDao areaIpCfgDao;
|
||||
@Autowired
|
||||
protected PxyObjSpoofingIpPoolDao pxyObjSpoofingIpPoolDao;
|
||||
|
||||
public CfgIndexInfo getInterceptCfg(Long cfgId,Integer compileId){
|
||||
CfgIndexInfo entity = websiteCfgDao.getCfgIndexInfo(cfgId,compileId);
|
||||
@@ -107,20 +111,57 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
|
||||
setAreaEffectiveIds(entity);
|
||||
if(entity.getCfgId()==null){
|
||||
Integer compileId = 0;
|
||||
Integer spoofingPoolId = 0 ;
|
||||
try {
|
||||
List<Integer> idList = ConfigServiceUtil.getId(1, 1);
|
||||
if(idList!=null && idList.size()>0){
|
||||
List<Integer> idList = new ArrayList();
|
||||
if(entity.getServiceId().equals(518)){//ip仿冒策略
|
||||
idList= ConfigServiceUtil.getId(1, 2);
|
||||
compileId = idList.get(0);
|
||||
}
|
||||
spoofingPoolId = idList.get(1);
|
||||
}else{
|
||||
idList= ConfigServiceUtil.getId(1, 1);
|
||||
compileId = idList.get(0);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
logger.info("获取编译ID出错");
|
||||
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
|
||||
}
|
||||
if(entity.getServiceId().equals(518)){//ip仿冒策略
|
||||
//保存IP仿冒池
|
||||
PxyObjSpoofingIpPool spoofingPool = new PxyObjSpoofingIpPool();
|
||||
spoofingPool.setIpType(4);//ipv4
|
||||
spoofingPool.setIpAddress(entity.getUserRegion2());//仿冒IP
|
||||
spoofingPool.setProtocol(0);
|
||||
if("dnat".equals(entity.getUserRegion1().toLowerCase())){//spoofing server ip->dnat
|
||||
spoofingPool.setDirection(1);
|
||||
}else{
|
||||
spoofingPool.setDirection(2);//spoofing client ip->snat
|
||||
}
|
||||
|
||||
spoofingPool.setPort("0");
|
||||
spoofingPool.setUserRegion("0");
|
||||
spoofingPool.setLocation(0);
|
||||
spoofingPool.setServiceId(642);
|
||||
spoofingPool.setAreaEffectiveIds("0");
|
||||
spoofingPool.setIsAreaEffective(0);
|
||||
spoofingPool.setCreateTime(new Date());
|
||||
spoofingPool.setCreatorId(UserUtils.getUser().getId());
|
||||
spoofingPool.setCompileId(spoofingPoolId);
|
||||
spoofingPool.setAction(1);
|
||||
spoofingPool.setFunctionId(666);
|
||||
spoofingPool.setRequestId(0);
|
||||
pxyObjSpoofingIpPoolDao.insert(spoofingPool);//保存仿冒IP池配置
|
||||
|
||||
entity.setUserRegion3(String.valueOf(spoofingPool.getCfgId()));//将仿冒IP池配置ID作为策略组ID
|
||||
|
||||
}
|
||||
|
||||
entity.setCompileId(compileId);
|
||||
entity.setCreateTime(new Date());
|
||||
entity.setCreatorId(entity.getCurrentUser().getId());
|
||||
websiteCfgDao.saveCfgIndex(entity);
|
||||
|
||||
if(entity.getIpPortList()!=null){
|
||||
for(IpPortCfg cfg:entity.getIpPortList()){
|
||||
BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"});
|
||||
@@ -155,6 +196,30 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
|
||||
|
||||
|
||||
}else{
|
||||
if(entity.getServiceId().equals(518)){//ip仿冒策略
|
||||
//保存IP仿冒池
|
||||
Long cfgId = Long.parseLong(entity.getUserRegion3());
|
||||
PxyObjSpoofingIpPool spoofingPool = pxyObjSpoofingIpPoolDao.getPxyObjSpoofingIpPool(cfgId);
|
||||
spoofingPool.setIpType(4);//ipv4
|
||||
spoofingPool.setIpAddress(entity.getUserRegion2());//仿冒IP
|
||||
spoofingPool.setProtocol(0);
|
||||
if("dnat".equals(entity.getUserRegion1())){//spoofing server ip->dnat
|
||||
spoofingPool.setDirection(1);
|
||||
}else{
|
||||
spoofingPool.setDirection(2);//spoofing client ip->snat
|
||||
}
|
||||
|
||||
spoofingPool.setPort("0");
|
||||
spoofingPool.setUserRegion("0");
|
||||
spoofingPool.setLocation(0);
|
||||
spoofingPool.setServiceId(642);
|
||||
spoofingPool.setAreaEffectiveIds("0");
|
||||
spoofingPool.setIsAreaEffective(0);
|
||||
spoofingPool.setEditTime(new Date());
|
||||
spoofingPool.setEditorId(UserUtils.getUser().getId());
|
||||
pxyObjSpoofingIpPoolDao.update(spoofingPool);//保存仿冒IP池配置
|
||||
|
||||
}
|
||||
entity.setEditTime(new Date());
|
||||
entity.setEditorId(entity.getCurrentUser().getId());
|
||||
|
||||
@@ -220,6 +285,20 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
|
||||
websiteCfgDao.updateCfgValid(entity);
|
||||
//查询子配置
|
||||
entity = this.getInterceptCfg(Long.parseLong(id),entity.getCompileId());
|
||||
|
||||
//IP仿冒策略下的仿冒IP池也失效
|
||||
if(entity.getServiceId().equals(518)){
|
||||
PxyObjSpoofingIpPool pool = new PxyObjSpoofingIpPool();
|
||||
if(StringUtils.isNotEmpty(entity.getUserRegion3())){
|
||||
pool.setCfgId(Long.parseLong(entity.getUserRegion3()));
|
||||
pool.setIsValid(isValid);
|
||||
pool.setIsAudit(entity.getIsAudit());
|
||||
pool.setEditTime(new Date());
|
||||
pool.setEditorId(UserUtils.getUser().getId());
|
||||
pxyObjSpoofingIpPoolDao.update(pool);
|
||||
}
|
||||
}
|
||||
|
||||
if(entity.getIpPortList()!=null && entity.getIpPortList().size()>0){
|
||||
IpPortCfg cfg = new IpPortCfg();
|
||||
BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"});
|
||||
@@ -274,6 +353,56 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
|
||||
|
||||
//查询子配置并修改审核状态
|
||||
entity = this.getInterceptCfg(entity.getCfgId(),entity.getCompileId());
|
||||
if(entity.getServiceId().equals(518)){//IP仿冒策略
|
||||
//仿冒IP池配置匹配下发或者取消
|
||||
PxyObjSpoofingIpPool pool=new PxyObjSpoofingIpPool();
|
||||
pool.setCfgId(Long.valueOf(entity.getUserRegion3()));
|
||||
pool.setIsValid(entity.getIsValid());
|
||||
pool.setIsAudit(isAudit);
|
||||
pool.setAuditorId(UserUtils.getUser().getId());
|
||||
pool.setAuditTime(new Date());
|
||||
pxyObjSpoofingIpPoolDao.update(pool);
|
||||
pool = pxyObjSpoofingIpPoolDao.getPxyObjSpoofingIpPool(pool.getCfgId());
|
||||
List<PxyObjSpoofingIpPool> list = new ArrayList<PxyObjSpoofingIpPool>();
|
||||
String json="";
|
||||
String areaEffectiveIds="0";
|
||||
if(entity.getIsAudit()==1){
|
||||
pool.setAreaEffectiveIds(areaEffectiveIds);
|
||||
pool.setGroupId(pool.getCfgId().intValue());//界面端的配置ID作为策略分组ID
|
||||
list.add(pool);
|
||||
//调用服务接口下发配置数据
|
||||
json=gsonToJson(list);
|
||||
logger.info("欺骗IP池配置下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
try {
|
||||
ToMaatResult result = ConfigServiceUtil.postCallbackCfg(json);
|
||||
if(result!=null){
|
||||
logger.info("欺骗IP池配置下发响应信息:"+result.getMsg());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
logger.error("欺骗IP池配置配置下发失败",e);
|
||||
throw e;
|
||||
}
|
||||
}else if(entity.getIsAudit()==3){
|
||||
PxyObjSpoofingIpPool cfg = new PxyObjSpoofingIpPool();
|
||||
cfg.setIsValid(0);
|
||||
cfg.setCompileId(pool.getCompileId());
|
||||
cfg.setServiceId(pool.getServiceId());
|
||||
list.add(cfg);
|
||||
//调用服务接口取消配置
|
||||
json=gsonToJson(list);
|
||||
logger.info("欺骗IP池配置配置参数:"+json);
|
||||
//调用服务接口取消配置
|
||||
try {
|
||||
ToMaatResult result = ConfigServiceUtil.put(json, 2);
|
||||
logger.info("欺骗IP池配置响应信息:"+result.getMsg());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
logger.info("欺骗IP池配置配置失败");
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(entity.getIpPortList()!=null && entity.getIpPortList().size()>0){
|
||||
IpPortCfg cfg = new IpPortCfg();
|
||||
BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"});
|
||||
@@ -357,7 +486,7 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
|
||||
entity.setUserRegion1(StringUtil.isEmpty(entity.getUserRegion1()) ? "0":entity.getUserRegion1());
|
||||
maatCfg.setUserRegion(Constants.INTERCEPT_IP_MONIT_USER_REGION_KEY+"="+entity.getUserRegion1());
|
||||
//监测的域名需下发拦截强度
|
||||
if(entity.getFunctionId().equals(201)){
|
||||
if(entity.getFunctionId().equals(200)){
|
||||
entity.setUserRegion5(StringUtil.isEmpty(entity.getUserRegion5()) ? "1":entity.getUserRegion5());
|
||||
if(StringUtil.isEmpty(maatCfg.getUserRegion())) {
|
||||
maatCfg.setUserRegion(Constants.INTERCEPT_DOMAN_INTENSITY_USER_REGION_KEY+"="+entity.getUserRegion5());
|
||||
@@ -398,7 +527,7 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
|
||||
if(entity.getAction().equals(48)){
|
||||
//HTTP replace: replace type is not null ;find is not null;replace with is not null(userRegion is not null)
|
||||
userRegion="nat_type="+entity.getUserRegion1();
|
||||
userRegion+=";spoofing_ip_pool="+entity.getUserRegion2();
|
||||
userRegion+=";spoofing_ip_pool="+entity.getUserRegion3();
|
||||
maatCfg.setUserRegion(userRegion);
|
||||
}
|
||||
|
||||
|
||||
@@ -165,6 +165,7 @@ public class PxyObjSpoofingIpPoolService extends BaseService{
|
||||
areaEffectiveIds = this.setEffectiveRange(entity.getAreaEffectiveIds());
|
||||
}
|
||||
entity.setAreaEffectiveIds(areaEffectiveIds);
|
||||
entity.setGroupId(entity.getCfgId().intValue());//界面的配置ID作为策略分组ID
|
||||
list.add(entity);
|
||||
//调用服务接口下发配置数据
|
||||
json=gsonToJson(list);
|
||||
|
||||
@@ -1432,4 +1432,7 @@ control_num=CONTROL
|
||||
contains_non_hex_char=Contains non-hexadecimal characters
|
||||
max_length=Maximum Length
|
||||
min_length=Minimum Length
|
||||
length_error=Length Error
|
||||
length_error=Length Error
|
||||
duplicate=Duplicate
|
||||
print=Print
|
||||
traffic_connect_log=Traffic Log
|
||||
@@ -1359,56 +1359,56 @@ translated_dest_ip=\u041f\u0435\u0440\u0435\u0432\u0435\u0434\u0435\u043d\u043d\
|
||||
translated_dest_port=\u041f\u0435\u0440\u0435\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0439 \u041f\u043e\u0440\u0442 \u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f
|
||||
show_ips=\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0412\u0441\u0435 IP
|
||||
show_available_ips=\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 IP
|
||||
radius_log=Radius Identify
|
||||
message_type=Code
|
||||
nas_ip=NAS IP Address
|
||||
framed_ip=Framed IP Address
|
||||
log_user_name=User Name
|
||||
av_tips=\u041a\u043e\u0433\u0434\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0430 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0443\u0434\u0438\u043e \u0438 \u0432\u0438\u0434\u0435\u043e \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0446\u0435 \u0444\u0430\u0439\u043b\u0430 \u0438\u043b\u0438 \u0432\u0438\u0434\u0435\u043e \u0441 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0431\u043e\u043b\u0435\u0435 1080p.\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f.
|
||||
asn_ip_group_delete=\uff08IP configuration under this ASN group will also be deleted.)
|
||||
keyword_log_tips=\u041a\u043e\u0433\u0434\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043f\u043b\u043e\u0445\u0438\u043c, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0434\u0435\u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0434\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \ufffd\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 URL\ufffd \u0434\u043b\u044f \u043f\u043e\u0434\u0430\u0432\u0448\u0435\u0433\u043e \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0430.
|
||||
conn_record=Connection Records
|
||||
radius_log=Radius \u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c
|
||||
message_type=\u041a\u043e\u0434
|
||||
nas_ip=NAS IP-\u0430\u0434\u0440\u0435\u0441
|
||||
framed_ip=Framed IP-\u0430\u0434\u0440\u0435\u0441
|
||||
log_user_name=\u0418\u043c\u044f \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f
|
||||
av_tips=\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0438\u043d\u0434\u0435\u043a\u0441\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0430\u0443\u0434\u0438\u043e \u0438 \u0432\u0438\u0434\u0435\u043e \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u0445\u0432\u043e\u0441\u0442\u0435 \u0430\u0443\u0434\u0438\u043e \u0438 \u0432\u0438\u0434\u0435\u043e \u0444\u0430\u0439\u043b\u043e\u0432. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0432\u0438\u0434\u0435\u043e \u0441 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c \u0432\u044b\u0448\u0435 1080P.
|
||||
asn_ip_group_delete=\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f IP \u0432 \u044d\u0442\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 ASN \u0442\u0430\u043a\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u0430.
|
||||
keyword_log_tips=\u041a\u043e\u0433\u0434\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043f\u043b\u043e\u0445\u0438\u043c, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0434\u0435\u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0434\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u7395u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 URL\ufffd \u0434\u043b\u044f \u043f\u043e\u0434\u0430\u0432\u0448\u0435\u0433\u043e \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0430.
|
||||
conn_record=\u0417\u0430\u043f\u0438\u0441\u0438 \u041f\u043e\u0434\u043a\u044e\u0447\u0435\u043d\u0438\u0439
|
||||
bps=Gbps
|
||||
bps_percent=Bps Percent
|
||||
pps=PPS
|
||||
pps_percent=pps Percent
|
||||
spoofing_ip_object=Spoofing IP Pool
|
||||
spoofing_ip_policy=IP Spoofing
|
||||
action_spoofing=Spoofing
|
||||
spoofing=spoofing
|
||||
spoofing_ip_object=\u041f\u0443\u043b IP \u0421\u043f\u0443\u0444\u0438\u043d\u0433
|
||||
spoofing_ip_policy=IP \u0421\u043f\u0443\u0444\u0438\u043d\u0433
|
||||
action_spoofing=\u0421\u043f\u0443\u0444\u0438\u043d\u0433
|
||||
spoofing=\u0421\u043f\u0443\u0444\u0438\u043d\u0433
|
||||
service=\u0421\u0435\u0440\u0432\u0438\u0441
|
||||
s_asn=SASN
|
||||
d_asn=DASN
|
||||
asn_conn_report=ASN Statistics
|
||||
https_url_report=Http(s) URL Statistics
|
||||
asn_conn_report=\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 ASN
|
||||
https_url_report=\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 Http(s) URL
|
||||
url=URL
|
||||
sum=SUM
|
||||
url_count=URL Count
|
||||
ip_range_report=IN/EX Host Identity
|
||||
ip_start=Start IP
|
||||
ip_end=End IP
|
||||
url_count=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e URL
|
||||
ip_range_report=\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u0425\u043e\u0441\u0442\u043e\u0432 \u0432 \u0433\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u0438 \u0437\u0430 \u0433\u0440\u0430\u043d\u0438\u0446\u0435\u0439
|
||||
ip_start=\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 IP
|
||||
ip_end=\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 IP
|
||||
ip_start_num=IP Start Num
|
||||
ip_end_num=IP End Num
|
||||
ip_sub=IP Subnet
|
||||
start_ip=Start IP
|
||||
end_ip=End IP
|
||||
action_detail=Action Detail
|
||||
ip_sub=IP-\u043f\u043e\u0434\u0441\u0435\u0442\u044c
|
||||
start_ip=\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 IP
|
||||
end_ip=\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 IP
|
||||
action_detail=\u0414\u0435\u0442\u0430\u043b\u044c \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f
|
||||
pass=\u041f\u0430\u0441
|
||||
live_link=\u0410\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u0421\u0441\u044b\u043b\u043a\u0430
|
||||
area_type=Area Type
|
||||
dns_group_manage=DNS Group Manage
|
||||
asn_group_manage=ASN Group Manage
|
||||
ip_group_manage=IP Group Manage
|
||||
ip_spoofing_group_manage=IP Spoofing Group Manage
|
||||
min_tcp=Min
|
||||
max_tcp=Max
|
||||
APP_TCP_SESSION_BYTE=Session
|
||||
ip_count=Unique IP Count
|
||||
counnection_count=Connection Count
|
||||
area_type=\u0422\u0438\u043f \u0417\u043e\u043d\u044b
|
||||
dns_group_manage=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 DNS \u0433\u0440\u0443\u043f\u043f\u043e\u0439
|
||||
asn_group_manage=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 ASN \u0433\u0440\u0443\u043f\u043f\u043e\u0439
|
||||
ip_group_manage=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 IP \u0433\u0440\u0443\u043f\u043f\u043e\u0439
|
||||
ip_spoofing_group_manage=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u041f\u0443\u043b\u043e\u043c IP \u0421\u043f\u0443\u0444\u0438\u043d\u0433
|
||||
min_tcp=\u041c\u0438\u043d.
|
||||
max_tcp=\u041c\u0430\u043a\u0441.
|
||||
APP_TCP_SESSION_BYTE=\u0421\u0435\u0430\u043d\u0441
|
||||
ip_count=Uniq-IP
|
||||
counnection_count=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439
|
||||
asn=ASN
|
||||
Unique_num=Unique
|
||||
ip=IP
|
||||
country=Country
|
||||
country=\u0421\u0442\u0440\u0430\u043d\u0430
|
||||
desc=Desc
|
||||
unique_num=Unique
|
||||
import_limit_is=The maximum import size is
|
||||
@@ -1436,4 +1436,7 @@ control_num=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0423\
|
||||
contains_non_hex_char=Contains non-hexadecimal characters
|
||||
max_length=Maximum Length
|
||||
min_length=Minimum Length
|
||||
length_error=Length Error
|
||||
length_error=Length Error
|
||||
duplicate=Duplicate
|
||||
print=Print
|
||||
traffic_connect_log=\u041B\u043E\u0433 \u0422\u0440\u0430\u0444\u0438\u043A\u0430
|
||||
@@ -1430,6 +1430,9 @@ config_num=\u914d\u7f6e\u603b\u6570
|
||||
monitor_num=\u76d1\u6d4b\u6570\u91cf
|
||||
control_num=\u7ba1\u63a7\u6570\u91cf
|
||||
contains_non_hex_char=\u5305\u542b\u975e\u5341\u516d\u8fdb\u5236\u5b57\u7b26
|
||||
max_length=\u6700\u5927\u957F\u5EA6
|
||||
min_length=\u6700\u5C0F\u957F\u5EA6
|
||||
length_error=\u957F\u5EA6\u9519\u8BEF
|
||||
max_length=\u6700\u5927\u957f\u5ea6
|
||||
min_length=\u6700\u5c0f\u957f\u5ea6
|
||||
length_error=\u957f\u5ea6\u9519\u8bef
|
||||
duplicate=\u91cd\u590d\u7684
|
||||
print=\u6253\u5370
|
||||
traffic_connect_log=\u9646\u826F\u65E5\u5FD7
|
||||
@@ -219,14 +219,14 @@ clusterBStartTime=1503504000725
|
||||
isCommit=true
|
||||
############################################################################################################################################
|
||||
############################################################################################################################################
|
||||
httpUrl=http://192.168.10.204:9999/galaxy-service/service/cfg/v1/
|
||||
httpUrl=http://10.0.7.14:9999/galaxy-service/service/cfg/v1/
|
||||
maatCfg=configSources
|
||||
fileUploadCfg=fileUploadSources
|
||||
callbackCfg=commonSources
|
||||
fileDigestCfg=fileDigestSources
|
||||
configIdSources=configPzIdSources
|
||||
#logBaseUrl=http://10.0.6.242:8080/galaxy-service/service/log/v1/
|
||||
logBaseUrl=http://192.168.10.204:9999/galaxy-service/service/log/v1/
|
||||
logBaseUrl=http://10.0.7.14:9999/galaxy-service/service/log/v1/
|
||||
ntcPzReport=ntcPzReport
|
||||
ntcServiceReport=ntcServiceReport
|
||||
ntcTagReport=ntcTagReport
|
||||
@@ -273,7 +273,7 @@ logServiceTopn=logServiceTopn
|
||||
blockAndDropStat=blockAndDropStat
|
||||
########################################
|
||||
#\u5927\u5c4f\u56fe\u8868\u5c55\u793a\u670d\u52a1\u63a5\u53e3
|
||||
dashboardUrl=http://192.168.10.204:9999/galaxy-service/service/log/v1/
|
||||
dashboardUrl=http://10.0.7.14:9999/galaxy-service/service/log/v1/
|
||||
trafficIpActive=trafficIpActive
|
||||
trafficProtocol=trafficProtocol
|
||||
trafficApp=trafficApp
|
||||
@@ -568,7 +568,7 @@ userPasswordSet=UserPasswordSet
|
||||
userDelete=UserDelete
|
||||
userGet=UserGet
|
||||
userList=UserList
|
||||
ip_reuse_call_cgi_url=http://192.168.11.137:8090/command
|
||||
ip_reuse_call_cgi_url=http://10.4.10.32:8090/command
|
||||
ipNumGet=IpNumGet
|
||||
allIpGet=AllIpGet
|
||||
#\u6d41\u91cf\u7edf\u8ba1\u5e26\u5bbd\u8be6\u60c5
|
||||
@@ -580,7 +580,7 @@ trafficBandwidthTrans=trafficBandwidthTrans
|
||||
trafficProtocolList=trafficProtocolList
|
||||
trafficAppList=trafficAppList
|
||||
ntcActionEntranceReport=ntcActionEntranceReport
|
||||
redis.host=192.168.10.192:6379
|
||||
redis.host=10.0.4.2:6379
|
||||
redis.expire=1800
|
||||
redis.timeout=10000
|
||||
dns_spoofing_ip_desc=Default Spoofing IP
|
||||
@@ -608,4 +608,5 @@ trendTotalReport=trendTotalReport
|
||||
#\u4e8b\u4ef6\u76d1\u6d4b/\u5c01\u5835
|
||||
ntcEventsMonitorOrBlock=ntcEventsMonitorOrBlock
|
||||
#\u91cd\u70b9\u4fdd\u969c\u4e8b\u4ef6
|
||||
ntcEventKeyProtection=ntcEventKeyProtection
|
||||
ntcEventKeyProtection=ntcEventKeyProtection
|
||||
dashboardUrlV2=http://10.0.7.14:9999/galaxy-service/service/log/v2/
|
||||
@@ -304,6 +304,7 @@
|
||||
<userRegion regionKey="APP_ID" regionColumn="appCode" userRegionPosition="1"></userRegion>
|
||||
<userRegion regionKey="BEHAV_ID" regionColumn="behavCode" userRegionPosition="1"></userRegion>
|
||||
<userRegion regionKey="Droprate" regionColumn="userRegion2" userRegionPosition="1"></userRegion>
|
||||
<userRegion regionKey="config_id" regionColumn="compileId" userRegionPosition="0"></userRegion>
|
||||
</service>
|
||||
<service id="1028" functionId="405" serviceType="1" cfgType="1" tableName="app_ip_cfg" className="AppIpCfg" desc="APP IP特征">
|
||||
<userRegion regionKey="APP_ID" regionColumn="appCode" userRegionPosition="1"></userRegion>
|
||||
|
||||
4
src/main/resources/sql/20181228/add_sys_user
Normal file
4
src/main/resources/sql/20181228/add_sys_user
Normal file
@@ -0,0 +1,4 @@
|
||||
-- 修改admin账号ID
|
||||
UPDATE `sys_user` SET `ID`='6' WHERE (`ID`='1');
|
||||
-- 新增管理员账号为ceiec,密码为admin!@#
|
||||
INSERT INTO `sys_user` (`ID`, `photo`, `LOGIN_ID`, `NAME`, `EMAIL`, `IDENTITY`, `PASSWORD`, `CREATE_TIME`, `STATUS`, `COMPANY_ID`, `ENTITY_ID`, `OFFICE_ID`) VALUES ('1', '', 'ceiec', 'ceiec', '0', '1', '0793d0c8f2e5187b9cb415baf1ac9a1c58d32dd47cfbc534d260f60c', '2018-12-28 16:49:13', '1', '0', '0', '0');
|
||||
78
src/main/resources/sql/20181228/sys_menu_icons.sql
Normal file
78
src/main/resources/sql/20181228/sys_menu_icons.sql
Normal file
@@ -0,0 +1,78 @@
|
||||
update sys_menu set icon='fa fa-sticky-note-o' where id=639;
|
||||
update sys_menu set icon='fa fa-sticky-note-o' where id=606;
|
||||
update sys_menu set icon='fa fa-sticky-note-o' where id=807;
|
||||
update sys_menu set icon='fa fa-globe' where id=1166;
|
||||
update sys_menu set icon='icon-user' where id=20;
|
||||
update sys_menu set icon='icon-user' where id=29;
|
||||
update sys_menu set icon='icon-user-md' where id=28;
|
||||
update sys_menu set icon='icon-lock' where id=30;
|
||||
update sys_menu set icon='fa fa-users' where id=1156;
|
||||
update sys_menu set icon='fa fa-exclamation-triangle' where id=801;
|
||||
update sys_menu set icon='fa fa-exclamation-triangle' where id=759;
|
||||
update sys_menu set icon='fa fa-exclamation-triangle' where id=887;
|
||||
update sys_menu set icon='fa fa-exclamation-triangle' where id=861;
|
||||
update sys_menu set icon='fa fa-exclamation-triangle' where id=731;
|
||||
update sys_menu set icon='icon-pencil' where id=43;
|
||||
update sys_menu set icon='icon-list-alt' where id=42;
|
||||
update sys_menu set icon='icon-cogs' where id=2;
|
||||
update sys_menu set icon='icon-check ' where id=3;
|
||||
update sys_menu set icon='fa fa-exchange' where id=933;
|
||||
update sys_menu set icon='fa fa-exchange' where id=1133;
|
||||
update sys_menu set icon='fa fa-exchange' where id=936;
|
||||
update sys_menu set icon='fa fa-exchange' where id=930;
|
||||
update sys_menu set icon='fa fa-exchange' where id=1130;
|
||||
update sys_menu set icon='fa fa-server' where id=207;
|
||||
update sys_menu set icon='fa fa-tasks' where id=112;
|
||||
update sys_menu set icon='icon-lock' where id=7;
|
||||
update sys_menu set icon='icon-envelope-open' where id=85;
|
||||
update sys_menu set icon='fa fa-institution' where id=850;
|
||||
update sys_menu set icon='fa fa-institution' where id=719;
|
||||
update sys_menu set icon='fa fa-institution' where id=951;
|
||||
update sys_menu set icon='fa fa-institution' where id=956;
|
||||
update sys_menu set icon='fa fa-institution' where id=748;
|
||||
update sys_menu set icon='fa fa-inbox' where id=931;
|
||||
update sys_menu set icon='fa fa-inbox' where id=934;
|
||||
update sys_menu set icon='fa fa-inbox' where id=937;
|
||||
update sys_menu set icon='fa fa-inbox' where id=1131;
|
||||
update sys_menu set icon='fa fa-inbox' where id=1134;
|
||||
update sys_menu set icon='icon-tablet' where id=27;
|
||||
update sys_menu set icon='fa fa-th' where id=1096;
|
||||
update sys_menu set icon='fa fa-th' where id=1098;
|
||||
update sys_menu set icon='fa fa-th' where id=1097;
|
||||
update sys_menu set icon='fa fa-th' where id=943;
|
||||
update sys_menu set icon='fa fa-th' where id=940;
|
||||
update sys_menu set icon='icon-th-large' where id=17;
|
||||
update sys_menu set icon='fa fa-television' where id=945;
|
||||
update sys_menu set icon='fa fa-television' where id=942;
|
||||
update sys_menu set icon='fa fa-television' where id=938;
|
||||
update sys_menu set icon='fa fa-television' where id=932;
|
||||
update sys_menu set icon='fa fa-television' where id=935;
|
||||
update sys_menu set icon='icon-list-alt' where id=4;
|
||||
update sys_menu set icon='fa fa-cubes' where id=750;
|
||||
update sys_menu set icon='fa fa-cubes' where id=865;
|
||||
update sys_menu set icon='fa fa-cubes' where id=717;
|
||||
update sys_menu set icon='icon-tag' where id=113;
|
||||
update sys_menu set icon='icon-globe' where id=182;
|
||||
update sys_menu set icon='fa fa-gear' where id=1203;
|
||||
update sys_menu set icon='fa fa-sitemap' where id=117;
|
||||
update sys_menu set icon='fa fa-clone' where id=973;
|
||||
update sys_menu set icon='fa fa-clone' where id=972;
|
||||
update sys_menu set icon='fa fa-clone' where id=948;
|
||||
update sys_menu set icon='fa fa-indent' where id=1184;
|
||||
update sys_menu set icon='fa fa-tasks' where id=1205;
|
||||
update sys_menu set icon='fa fa-reorder' where id=1183;
|
||||
update sys_menu set icon='fa fa-link' where id=1198;
|
||||
update sys_menu set icon='icon-question' where id=23;
|
||||
update sys_menu set icon='fa fa-th-large' where id=716;
|
||||
update sys_menu set icon='icon-th-list' where id=10;
|
||||
update sys_menu set icon='fa fa-dashboard' where id=875;
|
||||
update sys_menu set icon='fa fa-calculator' where id=1155;
|
||||
update sys_menu set icon='fa fa-map' where id=1185;
|
||||
update sys_menu set icon='fa fa-delicious' where id=111;
|
||||
update sys_menu set icon='icon-wrench' where id=13;
|
||||
update sys_menu set icon='fa fa-soccer-ball-o' where id=181;
|
||||
update sys_menu set icon='fa fa-industry' where id=1039;
|
||||
update sys_menu set icon='fa fa-sitemap' where id=1197;
|
||||
update sys_menu set icon='fa fa-random' where id=1182;
|
||||
update sys_menu set icon='icon-pointer' where id=115;
|
||||
update sys_menu set icon='fa fa-map' where id=1136;
|
||||
@@ -0,0 +1,22 @@
|
||||
UPDATE `function_service_dict` SET `dict_id`='63', `function_id`='200', `protocol_id`='0', `action`='1', `action_code`='monit', `service_id`='512', `service_name`='ip_intercepter_monit', `service_desc`='', `is_valid`='1', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `region_code`='1,2', `is_import`='0', `sort`='2' WHERE (`dict_id`='63');
|
||||
UPDATE `function_service_dict` SET `dict_id`='64', `function_id`='200', `protocol_id`='0', `action`='1', `action_code`='monit', `service_id`='512', `service_name`='domain_monit', `service_desc`='', `is_valid`='0', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `region_code`='', `is_import`='0', `sort`='2' WHERE (`dict_id`='64');
|
||||
UPDATE `function_service_dict` SET `dict_id`='99', `function_id`='200', `protocol_id`='0', `action`='128', `action_code`='whitelist', `service_id`='521', `service_name`='ip_intercepter_whitelist', `service_desc`='', `is_valid`='1', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `region_code`='1,2', `is_import`='0', `sort`='1' WHERE (`dict_id`='99');
|
||||
UPDATE `function_service_dict` SET `dict_id`='100', `function_id`='200', `protocol_id`='0', `action`='128', `action_code`='whitelist', `service_id`='521', `service_name`='domain_whitelist', `service_desc`='', `is_valid`='0', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `region_code`='', `is_import`='0', `sort`='1' WHERE (`dict_id`='100');
|
||||
UPDATE `function_service_dict` SET `dict_id`='108', `function_id`='200', `protocol_id`='0', `action`='64', `action_code`='ratelimit', `service_id`='514', `service_name`='ip_intercepter_ratelimit', `service_desc`='', `is_valid`='1', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `region_code`='1,2', `is_import`='1', `sort`='3' WHERE (`dict_id`='108');
|
||||
UPDATE `function_service_dict` SET `dict_id`='109', `function_id`='200', `protocol_id`='0', `action`='64', `action_code`='ratelimit', `service_id`='515', `service_name`='domain_intercepter_ratelimit', `service_desc`='', `is_valid`='0', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `region_code`='', `is_import`='0', `sort`='3' WHERE (`dict_id`='109');
|
||||
|
||||
|
||||
UPDATE `function_region_dict` SET `dict_id`='53', `function_id`='200', `config_district`='', `config_region_code`='1', `config_region_value`='PXY_INTERCEPT_IP', `config_desc`='PXY拦截IP', `is_valid`='1', `is_maat`='1', `region_type`='1', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `config_service_type`='intercept_ratelimit_ip', `config_expr_type`='', `config_match_method`='', `config_ip_type`='4,6', `config_hex`='', `config_multi_keywords`='', `config_ip_pattern`='1,2,3', `config_port_pattern`='1,2', `config_direction`='0', `config_protocol`='6,17', `config_ip_port_show`='1,2,3,4', `config_region_sort`='1', `is_import`='0' WHERE (`dict_id`='53');
|
||||
UPDATE `function_region_dict` SET `dict_id`='56', `function_id`='200', `config_district`='', `config_region_code`='2', `config_region_value`='PXY_INTERCEPT_DOMAIN', `config_desc`='PXY拦截域名', `is_valid`='1', `is_maat`='1', `region_type`='2', `creator_id`=NULL, `create_time`='0000-00-00 00:00:00', `editor_id`=NULL, `edit_time`='0000-00-00 00:00:00', `config_service_type`='intercept_domain', `config_expr_type`='0', `config_match_method`='1', `config_ip_type`='', `config_hex`='2', `config_multi_keywords`='0', `config_ip_pattern`='', `config_port_pattern`='', `config_direction`='', `config_protocol`='', `config_ip_port_show`='', `config_region_sort`='1', `is_import`='0' WHERE (`dict_id`='56');
|
||||
|
||||
|
||||
|
||||
UPDATE `sys_menu` SET `id`='721', `parent_id`='719', `parent_ids`='0,1,86,719,', `code`='intercept_policy', `name`='拦截策略', `sort`='30', `href`='', `target`='', `icon`='', `is_show`='0', `permission`='', `create_by`='1', `create_date`='2018-06-19 17:29:52', `update_by`='1', `update_date`='2018-12-28 14:21:42', `remarks`='', `del_flag`='1', `menu_bg`='/online-help/proxy/intercept_policy', `quick_action`='0', `is_top`='0', `function_id`='0' WHERE (`id`='721');
|
||||
UPDATE `sys_menu` SET `id`='722', `parent_id`='719', `parent_ids`='0,1,86,719,', `code`='intercept_policy', `name`='拦截策略', `sort`='30', `href`='/proxy/intercept/ip/list?cfgName=ip_intercept', `target`='', `icon`='', `is_show`='1', `permission`='intercept:ip:config', `create_by`='1', `create_date`='2018-06-19 17:38:06', `update_by`='1', `update_date`='2018-12-28 14:26:45', `remarks`='', `del_flag`='1', `menu_bg`=NULL, `quick_action`='0', `is_top`='0', `function_id`='200' WHERE (`id`='722');
|
||||
UPDATE `sys_menu` SET `id`='756', `parent_id`='748', `parent_ids`='0,1,150,748,', `code`='intercept_policy', `name`='拦截策略', `sort`='30', `href`='', `target`='', `icon`='', `is_show`='0', `permission`='', `create_by`='1', `create_date`='2018-06-19 17:29:52', `update_by`='1', `update_date`='2018-12-28 14:21:07', `remarks`='', `del_flag`='1', `menu_bg`='', `quick_action`='0', `is_top`='0', `function_id`=NULL WHERE (`id`='756');
|
||||
UPDATE `sys_menu` SET `id`='768', `parent_id`='748', `parent_ids`='0,1,150,748,', `code`='intercept_policy', `name`='拦截策略', `sort`='30', `href`='/proxy/intercept/ip/list?cfgName=ip_intercept', `target`='', `icon`='', `is_show`='1', `permission`='intercept:ip:confirm', `create_by`='1', `create_date`='2018-07-04 10:16:24', `update_by`='1', `update_date`='2018-12-28 14:19:04', `remarks`='', `del_flag`='1', `menu_bg`=NULL, `quick_action`='0', `is_top`='0', `function_id`='200' WHERE (`id`='768');
|
||||
UPDATE `sys_menu` SET `id`='851', `parent_id`='850', `parent_ids`='0,1,151,850,', `code`='intercept_policy', `name`='拦截策略', `sort`='30', `href`='', `target`='', `icon`='', `is_show`='0', `permission`='', `create_by`='1', `create_date`='2018-07-13 16:27:49', `update_by`='1', `update_date`='2018-12-28 14:21:27', `remarks`='', `del_flag`='1', `menu_bg`=NULL, `quick_action`='0', `is_top`='0', `function_id`=NULL WHERE (`id`='851');
|
||||
UPDATE `sys_menu` SET `id`='853', `parent_id`='850', `parent_ids`='0,1,151,850,', `code`='intercept_policy', `name`='拦截策略', `sort`='30', `href`='/proxy/intercept/ip/list?cfgName=ip_intercept', `target`='', `icon`='', `is_show`='1', `permission`='intercept:ip:audit', `create_by`='1', `create_date`='2018-07-13 16:29:26', `update_by`='1', `update_date`='2018-12-28 14:20:02', `remarks`='', `del_flag`='1', `menu_bg`=NULL, `quick_action`='0', `is_top`='0', `function_id`='200' WHERE (`id`='853');
|
||||
UPDATE `sys_menu` SET `id`='1187', `parent_id`='717', `parent_ids`='0,1,86,717,', `code`='spoofing_ip_object', `name`='Spoofing IP Object', `sort`='5030', `href`='/proxy/spoofing/pool/list', `target`='', `icon`='', `is_show`='0', `permission`='proxy:spoofing:pool:config', `create_by`='1', `create_date`='2018-12-16 11:21:04', `update_by`='1', `update_date`='2018-12-27 20:25:31', `remarks`='', `del_flag`='1', `menu_bg`=NULL, `quick_action`='0', `is_top`='0', `function_id`='666' WHERE (`id`='1187');
|
||||
UPDATE `sys_menu` SET `id`='1189', `parent_id`='750', `parent_ids`='0,1,150,750,', `code`='spoofing_ip_object', `name`='Spoofing IP Object', `sort`='450', `href`='/proxy/spoofing/pool/list', `target`='', `icon`='', `is_show`='0', `permission`='proxy:spoofing:pool:confirm', `create_by`='1', `create_date`='2018-12-16 15:16:44', `update_by`='1', `update_date`='2018-12-27 20:25:50', `remarks`='', `del_flag`='1', `menu_bg`=NULL, `quick_action`='0', `is_top`='0', `function_id`='666' WHERE (`id`='1189');
|
||||
UPDATE `sys_menu` SET `id`='1190', `parent_id`='865', `parent_ids`='0,1,151,865,', `code`='spoofing_ip_object', `name`='Spoofing IP Object', `sort`='450', `href`='/proxy/spoofing/pool/list', `target`='', `icon`='', `is_show`='0', `permission`='', `create_by`='1', `create_date`='2018-12-16 15:16:44', `update_by`='1', `update_date`='2018-12-27 20:27:12', `remarks`='', `del_flag`='1', `menu_bg`='', `quick_action`='0', `is_top`='0', `function_id`='666' WHERE (`id`='1190');
|
||||
@@ -65,7 +65,7 @@
|
||||
if(cked.prop("placeholder")!=1){
|
||||
confirmx("<spring:message code='confirm_message'/>", url+"&sysDictId="+cked.val());
|
||||
}else{
|
||||
if(${fns:getUser().loginId=='admin'}){
|
||||
if(${fns:getUser().isAdmin()}){
|
||||
confirmx("<spring:message code='confirm_message'/>", url+"&sysDictId="+cked.val());
|
||||
}else{
|
||||
top.$.jBox.tip("<spring:message code='initial_data_is_not_allowed_to_edit.'/>", "<spring:message code='info'/>");
|
||||
|
||||
@@ -267,7 +267,7 @@ var delContent = function(contentClassName, addBtnClassName) {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<c:if test="${fns:getUser().loginId eq 'admin' or fns:getUser().loginId eq 'appUser' }">
|
||||
<c:if test="${fns:getUser().isAdmin() or fns:getUser().loginId eq 'appUser' }">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
|
||||
@@ -116,6 +116,26 @@
|
||||
onClick="javascript:window.location='${ctx}/app/feature/multiFeatureCfgForm?functionId=${cfg.functionId}'">
|
||||
<i class="fa fa-plus"></i>
|
||||
<spring:message code="add"></spring:message></button>
|
||||
|
||||
|
||||
<c:set var="serviceImport" value="false"></c:set>
|
||||
<c:set var="regionImport" value="false"></c:set>
|
||||
<c:forEach items="${serviceList}" var="service" >
|
||||
<c:if test="${(cfg.functionId eq service.functionId) && service.isImport eq 1}">
|
||||
<c:set var="serviceImport" value="true"></c:set>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<c:forEach items="${regionList}" var="region" >
|
||||
<c:if test="${(cfg.functionId eq region.functionId) && region.isImport eq 1}">
|
||||
<c:set var="regionImport" value="true"></c:set>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<c:if test="${serviceImport eq 'true' && regionImport eq 'true'}">
|
||||
<button type="button" class="btn btn-primary import" >
|
||||
<i class="fa fa-plus"></i>
|
||||
<spring:message code="import"></spring:message></button>
|
||||
</c:if>
|
||||
|
||||
</shiro:hasPermission>
|
||||
</div>
|
||||
|
||||
@@ -420,6 +440,8 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<c:set var="importPath" value="/ntc/website/dnsList?functionId=${cfg.functionId}"/>
|
||||
<!-- 模板导入,start -->
|
||||
<%@include file="/WEB-INF/include/excel/importModal.jsp" %>
|
||||
</body>
|
||||
</html>
|
||||
@@ -26,6 +26,27 @@
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<!-- 域名拦截增加拦截强度 -->
|
||||
<c:if test="${_cfg.functionId eq 200}">
|
||||
<div class="row hidden intensity">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
<spring:message code="intercept_intensity" />
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<select name="userRegion5"
|
||||
class="selectpicker show-tick form-control required">
|
||||
<c:forEach items="${fns:getDictList('INTERCEPT_DOMAIN_INTENSITY')}" var="intensityC">
|
||||
<option value="${intensityC.itemCode}" <c:if test="${_cfg.userRegion5==intensityC.itemCode || (empty _cfg.userRegion5 && intensityC.itemCode eq 1)}">selected</c:if>><spring:message code="${intensityC.itemValue}"/></option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</div>
|
||||
<div for="userRegion5"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${!empty region.configDistrict }">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
@@ -85,7 +106,7 @@
|
||||
<!-- 此配置的关键词可以输入多个关键词 -->
|
||||
<c:if test="${region.configMultiKeywords eq 1}">
|
||||
<div class="col-md-6">
|
||||
<input class="form-control required tags" type="text" id="tags_${tabName}"
|
||||
<input class="form-control required tags" type="text" id="tags_${tabName}${status.index}"
|
||||
name="${cfgName}.cfgKeywords"
|
||||
value="${cfg.cfgKeywords}">
|
||||
</div>
|
||||
|
||||
@@ -317,6 +317,7 @@
|
||||
$(".replaceAction").addClass("hidden");
|
||||
$(".whiteListAction").addClass("hidden");
|
||||
$(".spoofingAction").addClass("hidden");
|
||||
$(".intensity").removeClass("hidden");//域名关联度
|
||||
if(interceptRatelimitIp == 'intercept_ratelimit_ip'){
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").find("option").remove();
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").selectpicker("refresh");
|
||||
@@ -336,6 +337,7 @@
|
||||
$(".replaceAction").addClass("hidden");
|
||||
$(".whiteListAction").addClass("hidden");
|
||||
$(".spoofingAction").addClass("hidden");
|
||||
$(".intensity").addClass("hidden");//域名关联度
|
||||
if(interceptRatelimitIp == 'intercept_ratelimit_ip'){
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").find("option").remove();
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").selectpicker("refresh");
|
||||
@@ -356,6 +358,7 @@
|
||||
$(".replaceAction").removeClass("hidden");
|
||||
$(".whiteListAction").addClass("hidden");
|
||||
$(".spoofingAction").addClass("hidden");
|
||||
$(".intensity").addClass("hidden");//域名关联度
|
||||
if(interceptRatelimitIp == 'intercept_ratelimit_ip'){
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").find("option").remove();
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").selectpicker("refresh");
|
||||
@@ -373,6 +376,7 @@
|
||||
$(".replaceAction").addClass("hidden");
|
||||
$(".whiteListAction").removeClass("hidden");
|
||||
$(".spoofingAction").addClass("hidden");
|
||||
$(".intensity").addClass("hidden");//域名关联度
|
||||
if(interceptRatelimitIp == 'intercept_ratelimit_ip'){
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").find("option").remove();
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").selectpicker("refresh");
|
||||
@@ -392,6 +396,7 @@
|
||||
$(".replaceAction").addClass("hidden");
|
||||
$(".whiteListAction").addClass("hidden");
|
||||
$(".spoofingAction").removeClass("hidden");
|
||||
$(".intensity").addClass("hidden");//域名关联度
|
||||
if(interceptRatelimitIp == 'intercept_ratelimit_ip'){
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").find("option").remove();
|
||||
$("select[name='"+protocolNamePrefix+"protocol']").selectpicker("refresh");
|
||||
@@ -410,10 +415,13 @@
|
||||
</head>
|
||||
<body>
|
||||
<!-- fucntion_ID 200-IP 201-DOMAIN -->
|
||||
<c:if test="${_cfg.functionId eq 200 or _cfg.functionId eq 214}">
|
||||
<c:if test="${_cfg.functionId eq 214}">
|
||||
<c:set var="interceptType" value="Ip"/>
|
||||
</c:if>
|
||||
<c:if test="${_cfg.functionId eq 201}">
|
||||
<c:if test="${_cfg.functionId eq 200}">
|
||||
<c:set var="interceptType" value="Ip"/>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 201}">
|
||||
<c:set var="interceptType" value="Domain"/>
|
||||
</c:if>
|
||||
<c:if test="${_cfg.functionId eq 212}">
|
||||
@@ -532,25 +540,6 @@
|
||||
<spring:message code="action_region" />
|
||||
<small></small>
|
||||
</h4>
|
||||
<!-- 域名拦截增加拦截强度 -->
|
||||
<c:if test="${_cfg.functionId eq 201}">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
<spring:message code="intercept_intensity" />
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<select name="userRegion5"
|
||||
class="selectpicker show-tick form-control required">
|
||||
<c:forEach items="${fns:getDictList('INTERCEPT_DOMAIN_INTENSITY')}" var="intensityC">
|
||||
<option value="${intensityC.itemCode}" <c:if test="${_cfg.userRegion5==intensityC.itemCode || (empty _cfg.userRegion5 && intensityC.itemCode eq 1)}">selected</c:if>><spring:message code="${intensityC.itemValue}"/></option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</div>
|
||||
<div for="userRegion5"></div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label class="control-label col-md-3"><spring:message
|
||||
@@ -696,7 +685,7 @@
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
<spring:message code="Spoofing" />
|
||||
<spring:message code="spoofing" />
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<select name="userRegion1"
|
||||
@@ -714,12 +703,14 @@
|
||||
<label class="control-label col-md-3"><font color="red">*</font>
|
||||
<spring:message code="With" /></label>
|
||||
<div class="col-md-6">
|
||||
<select name="userRegion2" class="selectpicker show-tick form-control required">
|
||||
<input class="form-control required ip" type="text" name="userRegion2" value="${_cfg.userRegion2}">
|
||||
<input class="form-control" type="hidden" name="userRegion3" value="${_cfg.userRegion3}">
|
||||
<%-- <select name="userRegion2" class="selectpicker show-tick form-control required">
|
||||
<option value="" ><spring:message code="select"/></option>
|
||||
<c:forEach items="${policyGroups }" var="policyGroup">
|
||||
<option value="${policyGroup.groupId}" <c:if test="${_cfg.userRegion2==policyGroup.groupId }">selected</c:if>><spring:message code="${policyGroup.groupName}"/></option>
|
||||
<option value="${policyGroup.cfgId}" <c:if test="${_cfg.userRegion2==policyGroup.cfgId }">selected</c:if>><spring:message code="${policyGroup.groupName}"/></option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</select> --%>
|
||||
</div>
|
||||
<div for="userRegion2"></div>
|
||||
</div>
|
||||
@@ -742,7 +733,7 @@
|
||||
</div> --%>
|
||||
</div>
|
||||
<%-- action 为128 白名单时 --%>
|
||||
<c:if test="${_cfg.functionId eq 201}">
|
||||
<c:if test="${_cfg.functionId eq 200}">
|
||||
<div class="row whiteListAction hidden">
|
||||
<%-- <h4 class="form-section">
|
||||
<spring:message code="action_region" />
|
||||
|
||||
@@ -95,7 +95,10 @@
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<c:if test="${cfg.functionId eq 200 or cfg.functionId eq 214}">
|
||||
<c:if test="${cfg.functionId eq 214}">
|
||||
<c:set var="interceptType" value="Ip"/>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 200}">
|
||||
<c:set var="interceptType" value="Ip"/>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 201}">
|
||||
@@ -382,27 +385,28 @@
|
||||
<th column="cfg_id" class="sort-column a.compile_id" style="display: none"><spring:message code="cfg_id"/></th>
|
||||
<th column="config_describe" class="sort-column a.cfg_desc cfgDesc"><spring:message code="config_describe"/></th>
|
||||
<th column="block_type" class="sort-column a.action"><spring:message code="block_type"/></th>
|
||||
<c:if test="${cfg.functionId eq 201 }">
|
||||
<c:if test="${cfg.functionId eq 200 }">
|
||||
<th column="userregion2" ><spring:message code="ratelimit"/></th>
|
||||
<%-- <th column="bandwith" ><spring:message code="bandwith"/></th> --%>
|
||||
<th column="userregion1" ><spring:message code="intercept_file_strategy"/></th>
|
||||
<th column="userregion5" ><spring:message code="intercept_intensity"/></th>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 200 }">
|
||||
<%-- <th column="bandwith" ><spring:message code="bandwith"/></th> --%>
|
||||
<%-- <c:if test="${cfg.functionId eq 200 }">
|
||||
<th column="bandwith" ><spring:message code="bandwith"/></th>
|
||||
<th column="userRegion1" ><spring:message code="intercept_file_strategy"/></th>
|
||||
</c:if>
|
||||
</c:if> --%>
|
||||
<c:if test="${cfg.functionId eq 212 }">
|
||||
<th column="userregion1" ><spring:message code="replace_zone"/></th>
|
||||
<th column="userregion2" ><spring:message code="replaced_content"/></th>
|
||||
<th column="userregion3" ><spring:message code="replace_content"/></th>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 214 }">
|
||||
<th column="userregion1" ><spring:message code="Spoofing"/></th>
|
||||
<th column="userregion1" ><spring:message code="spoofing"/></th>
|
||||
<th column="userregion2" ><spring:message code="With"/></th>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 201 }">
|
||||
<%-- <c:if test="${cfg.functionId eq 201 }">
|
||||
<th column="userregion1" ><spring:message code="intercept_intensity"/></th>
|
||||
</c:if>
|
||||
</c:if> --%>
|
||||
<th column="is_audit" ><spring:message code="is_audit"/></th>
|
||||
<%-- <th column="do_log" ><spring:message code="do_log"/></th> --%>
|
||||
<th column="whether_area_block" ><spring:message code="whether_area_block"/></th>
|
||||
@@ -437,7 +441,7 @@
|
||||
<spring:message code="bypass"/>
|
||||
</c:if>
|
||||
<c:if test="${indexCfg.action eq 48}">
|
||||
<spring:message code="Spoofing"/>
|
||||
<spring:message code="spoofing"/>
|
||||
</c:if>
|
||||
<c:if test="${(indexCfg.action ne 1) && (indexCfg.action ne 128) && (indexCfg.action ne 48)}">
|
||||
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">
|
||||
@@ -450,7 +454,7 @@
|
||||
|
||||
</td>
|
||||
|
||||
<c:if test="${cfg.functionId eq 201 }">
|
||||
<c:if test="${cfg.functionId eq 200 }">
|
||||
<td>
|
||||
<c:if test="${indexCfg.action eq 64}">
|
||||
<c:forEach items="${fns:getDictList('RATE_LIMIT')}" var="ratelimitC">
|
||||
@@ -472,13 +476,22 @@
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</td>
|
||||
<td>
|
||||
<c:if test="${indexCfg.action eq 1 }">
|
||||
<c:forEach items="${fns:getDictList('INTERCEPT_DOMAIN_INTENSITY') }" var="intentsityC">
|
||||
<c:if test="${intentsityC.itemCode eq indexCfg.userRegion5 }">
|
||||
<spring:message code="${intentsityC.itemValue }"/>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</td>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 200 }">
|
||||
<%-- <td>
|
||||
<%-- <c:if test="${cfg.functionId eq 200 }">
|
||||
<td>
|
||||
<c:if test="${indexCfg.action eq 64}">
|
||||
${indexCfg.userRegion3 }
|
||||
</c:if>
|
||||
</td> --%>
|
||||
</td>
|
||||
<td>
|
||||
<c:if test="${indexCfg.action eq 1}">
|
||||
<c:forEach items="${certificateList}" var="certificate">
|
||||
@@ -486,7 +499,7 @@
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</td>
|
||||
</c:if>
|
||||
</c:if> --%>
|
||||
<c:if test="${cfg.functionId eq 212 }">
|
||||
<td>
|
||||
<c:forEach items="${fns:getDictList('INTERCEPT_REPLACE_ZONE')}" var="replaceZoneC">
|
||||
@@ -511,14 +524,15 @@
|
||||
</c:forEach>
|
||||
</td>
|
||||
<td>
|
||||
<c:forEach items="${policyGroups}" var="policyGroup">
|
||||
${indexCfg.userRegion2 }
|
||||
<%-- <c:forEach items="${policyGroups}" var="policyGroup">
|
||||
<c:if test="${indexCfg.userRegion2==policyGroup.groupId}">
|
||||
${policyGroup.groupName }
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:forEach> --%>
|
||||
</td>
|
||||
</c:if>
|
||||
<c:if test="${cfg.functionId eq 201 }">
|
||||
<%-- <c:if test="${cfg.functionId eq 201 }">
|
||||
<td>
|
||||
<c:if test="${indexCfg.action eq 1 }">
|
||||
<c:forEach items="${fns:getDictList('INTERCEPT_DOMAIN_INTENSITY') }" var="intentsityC">
|
||||
@@ -528,7 +542,7 @@
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</td>
|
||||
</c:if>
|
||||
</c:if> --%>
|
||||
<td>
|
||||
<c:choose>
|
||||
<c:when test="${indexCfg.isAudit eq '0'}"><span class="label label-danger"><spring:message code="created"></spring:message></span></c:when>
|
||||
|
||||
@@ -89,11 +89,12 @@ $(function(){
|
||||
<div class="form-group">
|
||||
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="group"/></label>
|
||||
<div class="col-md-6">
|
||||
<select name="groupId" id="group" class="selectpicker show-tick form-control required">
|
||||
<input class="form-control required" type="text" name="groupName" value="${_cfg.groupName}">
|
||||
<%-- <select name="groupId" id="group" class="selectpicker show-tick form-control required">
|
||||
<c:forEach items="${policyGroups }" var="policyGroup">
|
||||
<option value="${policyGroup.groupId}" groupType="${policyGroup.asnNo }" <c:if test="${_cfg.groupId==policyGroup.groupId }">selected</c:if>><spring:message code="${policyGroup.groupName}"/></option>
|
||||
</c:forEach>
|
||||
</select>
|
||||
</select> --%>
|
||||
</div>
|
||||
<div for="groupId"></div>
|
||||
</div>
|
||||
|
||||
@@ -25,20 +25,33 @@ body {
|
||||
.fa-arrow-circle-up {
|
||||
color: #001029;
|
||||
background-color: #fe392e;
|
||||
border-radius: 10px;
|
||||
font-size: 13px;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
line-height: 9px !important;
|
||||
/* border-radius: 10px; */
|
||||
/* font-size: 13px; */
|
||||
/* width: 10px; */
|
||||
/* height: 10px; */
|
||||
/* line-height: 9px !important; */
|
||||
border-radius: 12px;
|
||||
font-size: 15px;
|
||||
width: 11px;
|
||||
height: 9px;
|
||||
line-height: 10px !important
|
||||
}
|
||||
.fa-arrow-circle-down {
|
||||
color: #001029;
|
||||
background-color: #009966;
|
||||
border-radius: 10px;
|
||||
font-size: 13px;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
line-height: 9px !important;
|
||||
/* border-radius: 10px; */
|
||||
/* font-size: 13px; */
|
||||
/* width: 10px; */
|
||||
/* height: 10px; */
|
||||
/* line-height: 9px !important; */
|
||||
border-radius: 12px;
|
||||
font-size: 15px;
|
||||
width: 11px;
|
||||
height: 9px;
|
||||
line-height: 10px !important
|
||||
}
|
||||
.tooltip-inner {
|
||||
white-space: nowrap;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
@@ -139,13 +152,13 @@ body {
|
||||
</div>
|
||||
<div class="fr_fc">
|
||||
<div class="fl_visual">
|
||||
<a href="${ctx}/dashboard/traffic/ntcTotalReportDetail?searchAction=active_link"><i class="fa fa-unlink"> </i></a>
|
||||
<a href="${ctx}/dashboard/traffic/ntcTotalReportDetail?searchAction=close_link"><i class="fa fa-unlink"> </i></a>
|
||||
</div>
|
||||
<div class="fl_fc">
|
||||
<p data-original-title="<spring:message code="active_link"/>"
|
||||
<p data-original-title="<spring:message code="active_link"/>"
|
||||
class="tooltips" data-flag="false" data-html="true" data-placement="top">
|
||||
<!-- 活跃链接数 --><spring:message code="active_link"/></p>
|
||||
<a href="${ctx}/dashboard/traffic/ntcTotalReportDetail?searchAction=active_link"><p class="numberRun6">0</p></a>
|
||||
<a href="${ctx}/dashboard/traffic/ntcTotalReportDetail?searchAction=close_link"><p class="numberRun6">0</p></a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -424,7 +437,7 @@ function ajaxinfo(){
|
||||
var monitorNum =data.monitorNum;
|
||||
var dropConnNum =data.dropConnNum;
|
||||
var newUniConnNum=data.newUniConnNum;
|
||||
var liveConnNum=data.liveConnNum;
|
||||
var closeConnNum=data.closeConnNum;
|
||||
|
||||
if(loopConnNum==null||loopConnNum==""){
|
||||
loopConnNum=0;
|
||||
@@ -441,17 +454,17 @@ function ajaxinfo(){
|
||||
if(newUniConnNum==null||newUniConnNum==""){
|
||||
newUniConnNum=0;
|
||||
}
|
||||
if(liveConnNum==null||liveConnNum==""){
|
||||
liveConnNum=0;
|
||||
if(closeConnNum==null||closeConnNum==""){
|
||||
closeConnNum=0;
|
||||
}
|
||||
dataScroll(".numberRun",Math.round(loopConnNum));
|
||||
dataScroll(".numberRun1",Math.round(rejectNum));
|
||||
dataScroll(".numberRun2",Math.round(monitorNum));
|
||||
dataScroll(".numberRun3",Math.round(dropConnNum));
|
||||
dataScroll(".numberRun5",Math.round(newUniConnNum));
|
||||
dataScroll(".numberRun6",Math.round(liveConnNum));
|
||||
dataScroll(".numberRun7",Math.round(newUniConnNum-rejectNum));
|
||||
dataScroll(".numberRun8",Math.round(newUniConnNum-rejectNum-dropConnNum));
|
||||
dataScroll(".numberRun6",Math.round(closeConnNum));
|
||||
dataScroll(".numberRun7",Math.round(newUniConnNum+closeConnNum-rejectNum));
|
||||
dataScroll(".numberRun8",Math.round(newUniConnNum-rejectNum));
|
||||
|
||||
//计算带宽进出口流量百分比
|
||||
|
||||
@@ -610,7 +623,7 @@ function portActiveList(){
|
||||
$("#tbodyDataPort").html("");
|
||||
var n=rs.length;
|
||||
if(rs!=null&&rs.length>0&&rs[0].error!=null){
|
||||
$("#tbodyDataPort").prepend("<tr class='frist rowData'><td></td><td style='color:#fff'><spring:message code='request_service_failed'/></td><td></td></tr>");
|
||||
$("#tbodyDataPort").prepend("<tr class='frist rowData'><td style='color:#fff' colspan='3'><spring:message code='request_service_failed'/></td></tr>");
|
||||
}else{
|
||||
if(n>0){
|
||||
|
||||
@@ -694,7 +707,7 @@ function systemList(){
|
||||
rs.reverse();
|
||||
var n=rs.length;
|
||||
if(rs!=null&&rs.length>0&&rs[0].error!=null){
|
||||
$("#tbodyData1").prepend("<tr class='frist rowData'><td></td><td style='color:#fff'><spring:message code='request_service_failed'/></td><td></td></tr>");
|
||||
$("#tbodyData1").prepend("<tr class='frist rowData'><td style='color:#fff' colspan='3'><spring:message code='request_service_failed'/></td></tr>");
|
||||
}else{
|
||||
if(n>0){
|
||||
|
||||
@@ -807,7 +820,7 @@ function browserList() {
|
||||
rs.reverse();
|
||||
var n=rs.length;
|
||||
if(rs!=null&&rs.length>0&&rs[0].error!=null){
|
||||
$("#tbodyData1").prepend("<tr class='frist rowData'><td></td><td style='color:#fff'><spring:message code='request_service_failed'/></td><td></td></tr>");
|
||||
$("#tbodyData1").prepend("<tr class='frist rowData'><td style='color:#fff' colspan='3'><spring:message code='request_service_failed'/></td></tr>");
|
||||
}else{
|
||||
if(n>0){
|
||||
$(rs).each(function(i, itemObj) {
|
||||
@@ -873,7 +886,7 @@ function websiteList() {
|
||||
$("#tbodyData2").html("");
|
||||
var n=rs.length;
|
||||
if(rs!=null&&rs.length>0&&rs[0].error!=null){
|
||||
$("#tbodyData2").prepend("<tr class='frist rowData'><td></td><td style='color:#fff'><spring:message code='request_service_failed'/></td><td></td></tr>");
|
||||
$("#tbodyData2").prepend("<tr class='frist rowData'><td style='color:#fff' colspan='3'><spring:message code='request_service_failed'/></td></tr>");
|
||||
}else{
|
||||
if(n>0){
|
||||
$(rs).each(function(i, itemObj) {
|
||||
|
||||
@@ -88,6 +88,9 @@
|
||||
<li><a class="btn export-btn" data-type="xlsx" id="export-btn"><i class="fa fa-download"> </i> excel </a><li>
|
||||
<li><a class="btn export-btn" data-type="csv" id="export-btn"><i class="fa fa-download"> </i> csv </a><li>
|
||||
</ul>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
@@ -115,6 +118,7 @@
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/series-label.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/offline-exporting.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/no-data-to-display.js"></script>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
@@ -185,6 +189,17 @@ function ajaxAppList(start,end){
|
||||
}
|
||||
});
|
||||
}
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
getPageData(1,999999);// 设置打印条数
|
||||
$("#contentTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
getPageData(1,10);
|
||||
pageJuan(10);//初始化分页
|
||||
}
|
||||
// 导出列表
|
||||
$(".export-btn").click(function(){
|
||||
var nowDate=new Date();
|
||||
|
||||
@@ -149,6 +149,7 @@ function showDomainTrans(xData,series){
|
||||
},
|
||||
plotOptions: {
|
||||
series: {
|
||||
lineWidth:1,
|
||||
marker: {
|
||||
radius: 2,
|
||||
hover: {
|
||||
|
||||
@@ -65,6 +65,9 @@
|
||||
<li><a class="btn export-btn" data-type="xlsx" id="export-btn"><i class="fa fa-download"> </i> excel </a><li>
|
||||
<li><a class="btn export-btn" data-type="csv" id="export-btn"><i class="fa fa-download"> </i> csv </a><li>
|
||||
</ul>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
@@ -91,6 +94,7 @@
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/exporting.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/series-label.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/offline-exporting.js"></script>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
loading();
|
||||
@@ -163,6 +167,17 @@ function ajaxProtocolList(start,end){
|
||||
}
|
||||
});
|
||||
}
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
getPageData(1,999999);// 设置打印条数
|
||||
$("#contentTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
getPageData(1,10);
|
||||
pageJuan(10);//初始化分页
|
||||
}
|
||||
// 导出列表
|
||||
$(".export-btn").click(function(){
|
||||
var dataType = $(this).attr("data-type");
|
||||
|
||||
@@ -70,6 +70,9 @@
|
||||
<li><a class="btn export-btn" data-type="xlsx" id="export-btn"><i class="fa fa-download"> </i> excel </a><li>
|
||||
<li><a class="btn export-btn" data-type="csv" id="export-btn"><i class="fa fa-download"> </i> csv </a><li>
|
||||
</ul>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
@@ -110,6 +113,7 @@
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/exporting-data.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/standalone.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/no-data-to-display.js"></script>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
@@ -131,7 +135,14 @@ $(document).ready(function(){
|
||||
$("#searchForm")[0].reset();
|
||||
});
|
||||
});
|
||||
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
$("#contentTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
}
|
||||
//导出列表
|
||||
$(".export-btn").click(function(){
|
||||
var dataType = $(this).attr("data-type");
|
||||
|
||||
@@ -78,6 +78,9 @@
|
||||
<li><a class="btn export-btn" data-type="xlsx" id="export-btn"><i class="fa fa-download"> </i> excel </a><li>
|
||||
<li><a class="btn export-btn" data-type="csv" id="export-btn"><i class="fa fa-download"> </i> csv </a><li>
|
||||
</ul>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
@@ -105,6 +108,7 @@
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/series-label.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/offline-exporting.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/no-data-to-display.js"></script>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
@@ -179,6 +183,17 @@ function ajaxProtocolList(start,end){
|
||||
}
|
||||
});
|
||||
}
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
getPageData(1,999999);// 设置打印条数
|
||||
$("#contentTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
getPageData(1,10);
|
||||
pageJuan(10);//初始化分页
|
||||
}
|
||||
// 导出列表
|
||||
$(".export-btn").click(function(){
|
||||
var nowDate=new Date();
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<head>
|
||||
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/global/css/layout.css" type="text/css" media="screen">
|
||||
<script type="text/javascript" src="${pageContext.request.contextPath}/static/global/plugins/jquery-ui/jquery-ui.min.js"></script>
|
||||
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title><spring:message code="traffic_user_behavior"></spring:message></title>
|
||||
<style>
|
||||
td:hover{
|
||||
@@ -164,7 +164,22 @@
|
||||
var modifyTime=new Date(chooseDate);
|
||||
$('#searchFoundEndTime').val(modifyTime.getFullYear()+"-"+((modifyTime.getMonth()+1)>=10?(modifyTime.getMonth()+1):"0"+(modifyTime.getMonth()+1))+"-"+(modifyTime.getDate()>=10?modifyTime.getDate():'0'+modifyTime.getDate())+' '+(modifyTime.getHours()>=10?modifyTime.getHours():'0'+modifyTime.getHours())+':'+(modifyTime.getMinutes()>=10?modifyTime.getMinutes():'0'+modifyTime.getMinutes())+':'+(modifyTime.getSeconds()>=10?modifyTime.getSeconds():'0'+modifyTime.getSeconds()));
|
||||
}
|
||||
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
if($('.httpResCfg').is(':hidden')){
|
||||
$(".httpReqCfg").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
}else{
|
||||
$(".httpResCfg").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -268,7 +283,9 @@
|
||||
maxRow="10000" label="csv"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top"
|
||||
data-original-title=<spring:message code="custom_columns"/>
|
||||
|
||||
@@ -128,6 +128,9 @@
|
||||
<li><a class="btn export-btn" data-type="xlsx" id="export-btn"><i class="fa fa-download"> </i> excel </a><li>
|
||||
<li><a class="btn export-btn" data-type="csv" id="export-btn"><i class="fa fa-download"> </i> csv </a><li>
|
||||
</ul>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -167,6 +170,7 @@
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/series-label.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/offline-exporting.js"></script>
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/no-data-to-display.js"></script>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
@@ -247,6 +251,17 @@
|
||||
}
|
||||
});
|
||||
}
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
getPageData(1,999999);// 设置打印条数
|
||||
$("#contentTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
getPageData(1,10);
|
||||
pageJuan(10);//初始化分页
|
||||
}
|
||||
// 导出列表
|
||||
$(".export-btn").click(function(){
|
||||
var nowDate=new Date();
|
||||
@@ -367,10 +382,13 @@
|
||||
top: '1%',
|
||||
draggable:false,
|
||||
width: $(document).width()*0.9,
|
||||
height:$(document).height()*0.9,
|
||||
height:$(document).height()*0.8,
|
||||
showScrolling: false, /* 是否显示浏览的滚动条 */
|
||||
iframeScrolling: 'no',
|
||||
buttons: { 'close': true }
|
||||
buttons: { 'close': true },
|
||||
loaded:function(h){
|
||||
$(".jbox-content,top.document").css("overflow-y","hidden")
|
||||
}
|
||||
});
|
||||
}
|
||||
/**
|
||||
|
||||
@@ -268,8 +268,8 @@
|
||||
font-size:18px;
|
||||
color:#ffffff;
|
||||
position: relative;
|
||||
top: 2.2%;
|
||||
left: 35%;
|
||||
top: 2.45%;
|
||||
left: 33%;
|
||||
font-size: 24px;
|
||||
}
|
||||
/* #dataNumsStr span{
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/data_text.css">
|
||||
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/dashboard.css">
|
||||
<script src="${pageContext.request.contextPath}/static/pages/scripts/dashboard.js"></script>
|
||||
|
||||
<!--[if lt IE 9]>
|
||||
<script src="js/html5shiv.min.js"></script>
|
||||
<script src="js/respond.min.js"></script>
|
||||
@@ -265,6 +264,17 @@
|
||||
top: 5%;
|
||||
left: -41%;
|
||||
}
|
||||
#dataNumsStr{
|
||||
font-size:18px;
|
||||
color:#ffffff;
|
||||
position: relative;
|
||||
top: 2.45%;
|
||||
left: 33%;
|
||||
font-size: 24px;
|
||||
}
|
||||
/* #dataNumsStr span{
|
||||
margin-left:-45px;font-size:23px;font-family:arial;font-weight:bold;
|
||||
} */
|
||||
/* 杂质动态 */
|
||||
.zzdt{
|
||||
position: absolute;
|
||||
@@ -344,8 +354,8 @@
|
||||
<!-- 数据流出 -->
|
||||
<div style="margin-left: -187px;margin-top: 11%;">
|
||||
<div id="linesFlow_chu" style="height: 260px;"></div>
|
||||
</div>
|
||||
<div id="dataNums" ></div>
|
||||
</div><div id="dataNums" ></div>
|
||||
<div id="dataNumsStr"></div>
|
||||
</div>
|
||||
<div class="col-sm-3" style="height: 100%">
|
||||
<div class="box_log_bar">
|
||||
@@ -859,6 +869,7 @@
|
||||
},
|
||||
grid:{
|
||||
left: 53,
|
||||
top: '35%',
|
||||
},
|
||||
xAxis: {
|
||||
type: 'time',
|
||||
@@ -875,7 +886,7 @@
|
||||
color: '#fff',
|
||||
fontSize: 12,
|
||||
formatter: function(value) {
|
||||
return echarts.format.formatTime('hh:mm:ss', new Date(value));
|
||||
return echarts.format.formatTime('hh:mm', new Date(value));
|
||||
}
|
||||
},
|
||||
splitLine: {
|
||||
@@ -885,6 +896,10 @@
|
||||
},
|
||||
yAxis: [{
|
||||
type: 'value',
|
||||
name: 'Bps',
|
||||
nameTextStyle:{
|
||||
color:'#ffffff',
|
||||
},
|
||||
min: 0,
|
||||
axisLine: {
|
||||
lineStyle: {
|
||||
@@ -897,14 +912,20 @@
|
||||
color: 'white',
|
||||
fontSize: 12,
|
||||
formatter: function (value, index) {
|
||||
if (value > 1000 && value <= 1000000) {
|
||||
return value/1000 + " K";
|
||||
if (value > 1024 && value <= 1048576) {
|
||||
return Math.round(value/1024) + " K";//Bps
|
||||
}
|
||||
if (value > 10000000 && value <= 1000000000) {
|
||||
return value/1000000 + " M";
|
||||
if (value > 1048576 && value <= 1073741824) {
|
||||
return Math.round(value/1048576) + " M";//Bps
|
||||
}
|
||||
if (value > 100000000) {
|
||||
return value/1000000000 + " B";
|
||||
if (value > 1073741824 && value <= 1099511627776) {
|
||||
return Math.round(value/1073741824) + " G";//Bps
|
||||
}
|
||||
if (value > 1099511627776 && value <= 1125899906842624) {
|
||||
return Math.round(value/1099511627776) + " T";//Bps
|
||||
}
|
||||
if (value > 1125899906842624) {
|
||||
return Math.round(value/1125899906842624) + " P";//Bps
|
||||
}
|
||||
return value;
|
||||
}
|
||||
@@ -1044,16 +1065,19 @@
|
||||
},
|
||||
axisLabel: {
|
||||
formatter: function(value) {
|
||||
if (value > 1000 && value <= 1000000) {
|
||||
return value/1000 + " K";
|
||||
}
|
||||
if (value > 10000000 && value <= 1000000000) {
|
||||
return value/1000000 + " M";
|
||||
}
|
||||
if (value > 100000000) {
|
||||
return value/1000000000 + " B";
|
||||
}
|
||||
return value;
|
||||
if (value > 1000 && value <= 1000000) {
|
||||
return Math.round(value/1000) + " K";
|
||||
}
|
||||
if (value > 1000000 && value <= 1000000000) {
|
||||
return Math.round(value/1000000) + " M";
|
||||
}
|
||||
if (value > 1000000000 && value <= 1000000000000) {
|
||||
return Math.round(value/1000000000) + " T";
|
||||
}
|
||||
if (value > 1000000000000) {
|
||||
return Math.round(value/1000000000000) + " P";
|
||||
}
|
||||
return value;
|
||||
},
|
||||
},
|
||||
splitNumber: 4,
|
||||
@@ -1136,7 +1160,7 @@
|
||||
$.ajax({
|
||||
type:'get',
|
||||
dataType: 'json',
|
||||
url:"${pageContext.request.contextPath}/nis/dynamicpage/indexTraffic?baseNum=" + top.baseNum,
|
||||
url:"${pageContext.request.contextPath}/nis/dynamicpage/indexTraffic?hour=2&baseNum=" + top.baseNum,
|
||||
success:function(res){//处理返回结果
|
||||
if(res) {
|
||||
data = res;
|
||||
@@ -1189,7 +1213,7 @@
|
||||
$.ajax({
|
||||
type:'get',
|
||||
dataType: 'json',
|
||||
url:'${pageContext.request.contextPath}/nis/dynamicpage/indexLog?sid=' + top.indexLogServiceId + "&baseNum=" + top.baseNum,
|
||||
url:'${pageContext.request.contextPath}/nis/dynamicpage/indexLog?hour=24&sid=' + top.indexLogServiceId + "&baseNum=" + top.serviceBaseNum,
|
||||
success:function(res){//处理返回结果
|
||||
logData = res;
|
||||
_logData = logData.shift();
|
||||
@@ -1219,10 +1243,39 @@
|
||||
|
||||
/* 数字特效 */
|
||||
function animalNum(dropNum){
|
||||
//var value = rand(100,999);;
|
||||
var unitStr = "";
|
||||
if (dropNum > 1000 && dropNum <= 1000000) {
|
||||
dropNum = Math.round(dropNum/1000);//K取整
|
||||
//dropNum = (dropNum/1000).toFixed(1);alert(dropNum);
|
||||
unitStr = "K";
|
||||
}
|
||||
if (dropNum > 1000000 && dropNum <= 1000000000) {
|
||||
dropNum = Math.round(dropNum/1000000);//M
|
||||
//dropNum = (dropNum/1000000).toFixed(1);
|
||||
unitStr = "M";
|
||||
}
|
||||
if (dropNum > 1000000000 && dropNum <= 1000000000000) {
|
||||
dropNum = Math.round(dropNum/1000000000);//G
|
||||
//dropNum = (dropNum/1000000000).toFixed(1);
|
||||
unitStr = "G";
|
||||
}
|
||||
if (dropNum > 1000000000000 && dropNum <= 1000000000000000) {
|
||||
dropNum = Math.round(dropNum/1000000000000);//T
|
||||
//dropNum = (dropNum/1000000000000).toFixed(1);
|
||||
unitStr = "T";
|
||||
}
|
||||
if (dropNum > 1000000000000000) {
|
||||
dropNum = Math.round(dropNum/1000000000000000);//P
|
||||
//dropNum = (dropNum/1000000000000000).toFixed(1);
|
||||
unitStr = "P";
|
||||
}
|
||||
//dropNum = rand(100,999);
|
||||
//dropNum= dropNum+"M";
|
||||
$("#dataNums").empty();
|
||||
$("#dataNums").rollNum({
|
||||
deVal:dropNum
|
||||
});
|
||||
$("#dataNumsStr").html("<span>"+unitStr+"</span>");//alert(unitStr);
|
||||
};
|
||||
|
||||
function rand(min,max) {
|
||||
@@ -1240,7 +1293,7 @@
|
||||
$.ajax({
|
||||
type:'get',
|
||||
dataType: 'json',
|
||||
url:'${pageContext.request.contextPath}/nis/dynamicpage/indexDrop' + "?baseNum=" + top.baseNum,
|
||||
url:'${pageContext.request.contextPath}/nis/dynamicpage/indexDrop?hour=24' + "&baseNum=" + top.dropBaseNum,
|
||||
success:function(res){//处理返回结果
|
||||
if(res) {
|
||||
dropData = res;
|
||||
|
||||
@@ -346,7 +346,7 @@ background:#3d3d3d;
|
||||
<!-- BEGIN TOP NAVIGATION MENU -->
|
||||
<div class="top-menu">
|
||||
<ul class="nav navbar-nav pull-right">
|
||||
<c:if test="${fns:getUser().loginId eq 'admin'}">
|
||||
<c:if test="${fns:getUser().isAdmin()}">
|
||||
<li class="dropdown dropdown-user" id="cache">
|
||||
<a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown" >
|
||||
<i class="fa fa-language"></i><span class="username username-hide-on-mobile" id="cache_text"> clear cache </span>
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
<script src="${ctxStatic }/global/plugins/tableExport-3.3.13/xlsx.core.js"></script>
|
||||
<script src="${ctxStatic }/global/plugins/tableExport-3.3.13/FileSaver.js"></script>
|
||||
<script src="${ctxStatic }/global/plugins/tableExport-3.3.13/tableexport.js"></script>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<meta name="format-detection" content="telephone=no,email=no,address=no">
|
||||
<style type="text/css">
|
||||
.statisticsRequest{
|
||||
@@ -178,7 +179,76 @@
|
||||
var currentdate = year+""+ month+""+strDate+""+ hours+""+ minutes+""+seconds;
|
||||
return currentdate;
|
||||
}
|
||||
|
||||
//来函和业务配置统计打印
|
||||
function cfgMenuPrint(){
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
cache:false,
|
||||
url:'${ctx}/configure/statistics/configureStateStatisticsPrint',//
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
if(data !=null){
|
||||
var menu=data.menuList;
|
||||
var dataList=data.requestStatisticList;
|
||||
|
||||
var userTableStr='';
|
||||
userTableStr +='<table class="table table-striped table-bordered table-condensed text-nowrap logTb">';
|
||||
userTableStr += '<thead>';
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="letter"/></th>';
|
||||
for (var i = 0; i < menu.length; i++) {
|
||||
if (menu[i].functionId == 8) {
|
||||
userTableStr += '<th class="sort-column">HTTP '+menu[i].code+'</th>';
|
||||
} else if(menu[i].functionId == 35){
|
||||
userTableStr += '<th class="sort-column">MAIL '+menu[i].code+'</th>';
|
||||
}else {
|
||||
userTableStr += '<th class="sort-column">'+menu[i].code+'</th>';
|
||||
}
|
||||
}
|
||||
userTableStr += '</tr>';
|
||||
userTableStr += '</thead>';
|
||||
userTableStr += '<tbody>';
|
||||
for(var j=0;j<dataList.length;j++){
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += dataList[j].request;
|
||||
userTableStr += '</td>';
|
||||
for (var k = 0; k < menu.length; k++) {
|
||||
userTableStr += '<td>';
|
||||
var sss=menu[k].functionId+'_'+menu[k].functionId;
|
||||
userTableStr += dataList[j][sss];
|
||||
userTableStr += '</td>';
|
||||
}
|
||||
userTableStr += '<tr>';
|
||||
}
|
||||
userTableStr +='</tbody>';
|
||||
userTableStr +='</table>';
|
||||
$("#contentPrintTable").html(userTableStr);
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#contentPrintTable").css('display','block');
|
||||
$("#contentPrintTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
$("#contentPrintTable").css('display','none');
|
||||
/* $(".cfgMenuTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
}); */
|
||||
}
|
||||
//配置业务和状态统计打印
|
||||
function statisticsPrint() {
|
||||
$(".statisticsStatusTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<title>index</title>
|
||||
@@ -206,6 +276,10 @@
|
||||
<li><a href="javascript:;" class="export-btn" data-export-type="csv" data-export-table="cfgMenuTable"><i class="fa fa-download"> <spring:message code="CSV"/></i></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="cfgMenuPrint()" style="margin-top: -5px;">
|
||||
<i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
</div>
|
||||
<h5 class="page-header"></h5>
|
||||
<div class="tableDiv">
|
||||
@@ -251,6 +325,7 @@
|
||||
</div>
|
||||
</form>
|
||||
<div class="page">${page}</div>
|
||||
<div id="contentPrintTable" style="display: none;"></div>
|
||||
</div>
|
||||
<div id="statisticsStatus" class="statisticsStatus">
|
||||
<font size="4">
|
||||
@@ -269,6 +344,10 @@
|
||||
<li><a href="javascript:;" class="export-btn" data-export-type="csv" data-export-table="statisticsStatusTable"><i class="fa fa-download"> <spring:message code="CSV"/></i></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="statisticsPrint()" style="margin-top: -5px;">
|
||||
<i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
</div>
|
||||
<h5 class="page-header"></h5>
|
||||
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap statisticsStatusTable" name="statisticsStatusTable">
|
||||
|
||||
@@ -154,6 +154,9 @@
|
||||
<button type="button" class="btn btn-default" id="filter-btn"> <spring:message code="filter"/><i class="fa fa-angle-double-down"></i></button>
|
||||
</div>
|
||||
<div class="pull-right">
|
||||
<shiro:hasPermission name="whitelist:domain:config">
|
||||
<button type="button" class="btn btn-default fa fa-exchange" id="logToUrl"> <spring:message code="log_to_url"/></button>
|
||||
</shiro:hasPermission>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
|
||||
<i class="fa fa-wrench"></i> <spring:message code="export"></spring:message>
|
||||
|
||||
@@ -527,9 +527,20 @@
|
||||
};
|
||||
lines_Chart_chu.setOption(line_chu_option);
|
||||
|
||||
var url = window.location.href;
|
||||
var parm = parseInt(Math.random() * 10);
|
||||
if (url.lastIndexOf('?') > -1) {
|
||||
url = url + parm;
|
||||
} else {
|
||||
url = url + "?" + parm;
|
||||
}
|
||||
|
||||
$(window).resize(function(){
|
||||
window.location.reload();
|
||||
window.location.href = url;
|
||||
});
|
||||
/* $(window).resize(function(){
|
||||
window.location.reload();
|
||||
}); */
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title>
|
||||
<spring:message code="asn_conn_report"/>
|
||||
</title>
|
||||
@@ -51,7 +52,59 @@
|
||||
var modifyTime=new Date(chooseDate);
|
||||
$('#searchFoundEndTime').val(modifyTime.getFullYear()+"-"+((modifyTime.getMonth()+1)>=10?(modifyTime.getMonth()+1):"0"+(modifyTime.getMonth()+1))+"-"+(modifyTime.getDate()>=10?modifyTime.getDate():'0'+modifyTime.getDate())+' '+(modifyTime.getHours()>=10?modifyTime.getHours():'0'+modifyTime.getHours())+':'+(modifyTime.getMinutes()>=10?modifyTime.getMinutes():'0'+modifyTime.getMinutes())+':'+(modifyTime.getSeconds()>=10?modifyTime.getSeconds():'0'+modifyTime.getSeconds()));
|
||||
}
|
||||
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
cache:false,
|
||||
url:'${ctx}/report/asnPrint',//
|
||||
data:{
|
||||
"searchAsnType":$('[name="searchAsnType"]').val(),
|
||||
"asn":$('[name="asn"]').val(),
|
||||
"searchFoundStartTime":$('[name="searchFoundStartTime"]').val(),
|
||||
"searchFoundEndTime":$('[name="searchFoundEndTime"]').val()
|
||||
},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
if(data !=null){
|
||||
var userTableStr='';
|
||||
userTableStr +='<table class="table table-striped table-bordered table-condensed text-nowrap logTb">';
|
||||
userTableStr += '<thead>';
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<th class="sort-column s_asn"><spring:message code="asn"/></th>';
|
||||
userTableStr += '<th class="sort-column pps"><spring:message code="pps"/></th>';
|
||||
userTableStr += '<th class="sort-column bps"><spring:message code="bps"/></th>';
|
||||
userTableStr += '</tr>';
|
||||
userTableStr += '</thead>';
|
||||
userTableStr += '<tbody>';
|
||||
for(var j=0;j<data.length;j++){
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].asn;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].pps;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].bps;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<tr>';
|
||||
}
|
||||
userTableStr +='</tbody>';
|
||||
userTableStr +='</table>';
|
||||
$("#contentPrintTable").html(userTableStr);
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#contentPrintTable").css('display','block');
|
||||
$("#contentPrintTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
$("#contentPrintTable").css('display','none');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -129,6 +182,9 @@
|
||||
<li><sys:delRow url="${ctx}/report/asnExport?type=csv" searchUrl="${ctx}/report/asnConnList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
|
||||
<i class="icon-wrench"></i>
|
||||
@@ -170,6 +226,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="page">${page}</div>
|
||||
<div id="contentPrintTable" style="display: none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title>
|
||||
<spring:message code="ntc_event_block_report"/>
|
||||
</title>
|
||||
@@ -73,6 +74,75 @@
|
||||
$('.selectpicker').selectpicker('render');
|
||||
}
|
||||
};
|
||||
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
cache:false,
|
||||
url:'${ctx}/eventBlock/eventBlockPrint',//
|
||||
data:{
|
||||
"taskIds":$("#taskIdArray").val(),
|
||||
"searchTaskStartTime":$('[name="searchTaskStartTime"]').val(),
|
||||
"searchTaskEndTime":$('[name="searchTaskEndTime"]').val(),
|
||||
"searchReportStartTime":$('[name="searchReportStartTime"]').val(),
|
||||
"searchReportEndTime":$('[name="searchReportEndTime"]').val()
|
||||
},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
if(data !=null){
|
||||
var userTableStr='';
|
||||
userTableStr +='<table class="table table-striped table-bordered table-condensed text-nowrap logTb">';
|
||||
userTableStr += '<thead>';
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_id"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_name"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="ip_count"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="http_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="mail_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="vedio_count"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="agent_count"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_time"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="stat_time"/></th>';
|
||||
userTableStr += '</tr>';
|
||||
userTableStr += '</thead>';
|
||||
userTableStr += '<tbody>';
|
||||
for(var j=0;j<data.length;j++){
|
||||
userTableStr += '<tr><td>';
|
||||
userTableStr += data[j].taskIds;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].taskName;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].ipNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].httpNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].mailNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].vedioNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].agentNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].taskTime;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].reportTime;
|
||||
userTableStr += '</td><tr>';
|
||||
}
|
||||
userTableStr +='</tbody>';
|
||||
userTableStr +='</table>';
|
||||
$("#contentPrintTable").html(userTableStr);
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#contentPrintTable").css('display','block');
|
||||
$("#contentPrintTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
$("#contentPrintTable").css('display','none');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -126,6 +196,9 @@
|
||||
<li><sys:delRow url="${ctx}/eventBlock/eventBlockExport?type=csv" searchUrl="${ctx}/eventBlock/eventBlockList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
|
||||
<i class="icon-wrench"></i>
|
||||
@@ -201,15 +274,15 @@
|
||||
<th class="sort-column ip_addr" column="ip_addr"><spring:message code="ip_addr"/></th>
|
||||
<th class="sort-column sum" column="sum"><spring:message code="sum"/></th>
|
||||
<th class="sort-column url_count" column="url_count"><spring:message code="url_count"/></th> --%>
|
||||
<th class="sort-column task_id" column="taskIds"><spring:message code="task_id"/></th>
|
||||
<th class="sort-column task_name" column="taskName"><spring:message code="task_name"/></th>
|
||||
<th class="sort-column ip_count" column="ipNum"><spring:message code="ip_count"/></th>
|
||||
<th class="sort-column http_num" column="httpNum"><spring:message code="http_num"/></th>
|
||||
<th class="sort-column mail_num" column="mailNum"><spring:message code="mail_num"/></th>
|
||||
<th class="sort-column vedio_count" column="vedioNum"><spring:message code="vedio_count"/></th>
|
||||
<th class="sort-column agent_count" column="agentNum"><spring:message code="agent_count"/></th>
|
||||
<th class="sort-column task_time" column="taskTime"><spring:message code="task_time"/></th>
|
||||
<th class="sort-column stat_time" column="reportTime"><spring:message code="stat_time"/></th>
|
||||
<th class="sort-column task_id" column="task_id"><spring:message code="task_id"/></th>
|
||||
<th class="sort-column task_name" column="task_name"><spring:message code="task_name"/></th>
|
||||
<th class="sort-column ip_count" column="ip_count"><spring:message code="ip_count"/></th>
|
||||
<th class="sort-column http_num" column="http_num"><spring:message code="http_num"/></th>
|
||||
<th class="sort-column mail_num" column="mail_num"><spring:message code="mail_num"/></th>
|
||||
<th class="sort-column vedio_count" column="vedio_count"><spring:message code="vedio_count"/></th>
|
||||
<th class="sort-column agent_count" column="agent_count"><spring:message code="agent_count"/></th>
|
||||
<th class="sort-column task_time" column="task_time"><spring:message code="task_time"/></th>
|
||||
<th class="sort-column stat_time" column="stat_time"><spring:message code="stat_time"/></th>
|
||||
<%-- <th class="sort-column url_count" column="reportTime"><spring:message code="statistic_time"/></th> --%>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -232,6 +305,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="page">${page}</div>
|
||||
<div id="contentPrintTable" style="display: none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title>
|
||||
<spring:message code="ntc_event_key_protection_report"/>
|
||||
</title>
|
||||
@@ -74,6 +75,72 @@
|
||||
$('.selectpicker').selectpicker('render');
|
||||
}
|
||||
};
|
||||
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
cache:false,
|
||||
url:'${ctx}/eventKeyProtection/eventKeyProtectionPrint',//
|
||||
data:{
|
||||
"taskIds":$("#taskIdArray").val(),
|
||||
"searchTaskStartTime":$('[name="searchTaskStartTime"]').val(),
|
||||
"searchTaskEndTime":$('[name="searchTaskEndTime"]').val(),
|
||||
"searchReportStartTime":$('[name="searchReportStartTime"]').val(),
|
||||
"searchReportEndTime":$('[name="searchReportEndTime"]').val()
|
||||
},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
if(data !=null){
|
||||
var userTableStr='';
|
||||
userTableStr +='<table class="table table-striped table-bordered table-condensed text-nowrap logTb">';
|
||||
userTableStr += '<thead>';
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_id"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_name"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="letter_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="config_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="monitor_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="control_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_time"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="stat_time"/></th>';
|
||||
userTableStr += '</tr>';
|
||||
userTableStr += '</thead>';
|
||||
userTableStr += '<tbody>';
|
||||
for(var j=0;j<data.length;j++){
|
||||
userTableStr += '<tr><td>';
|
||||
userTableStr += data[j].taskIds;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].taskName;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].letterNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].configNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].monitorNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].controlNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].taskTime;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].reportTime;
|
||||
userTableStr += '</td><tr>';
|
||||
}
|
||||
userTableStr +='</tbody>';
|
||||
userTableStr +='</table>';
|
||||
$("#contentPrintTable").html(userTableStr);
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#contentPrintTable").css('display','block');
|
||||
$("#contentPrintTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
$("#contentPrintTable").css('display','none');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -127,6 +194,9 @@
|
||||
<li><sys:delRow url="${ctx}/eventKeyProtection/eventKeyProtectionExport?type=csv" searchUrl="${ctx}/eventKeyProtection/eventKeyProtectionList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
|
||||
<i class="icon-wrench"></i>
|
||||
@@ -201,14 +271,14 @@
|
||||
<th class="sort-column ip_addr" column="ip_addr"><spring:message code="ip_addr"/></th>
|
||||
<th class="sort-column sum" column="sum"><spring:message code="sum"/></th>
|
||||
<th class="sort-column url_count" column="url_count"><spring:message code="url_count"/></th> --%>
|
||||
<th class="sort-column task_id" column="taskIds"><spring:message code="task_id"/></th>
|
||||
<th class="sort-column task_name" column="taskName"><spring:message code="task_name"/></th>
|
||||
<th class="sort-column letter_num" column="letterNum"><spring:message code="letter_num"/></th>
|
||||
<th class="sort-column config_num" column="configNum"><spring:message code="config_num"/></th>
|
||||
<th class="sort-column monitor_num" column="monitorNum"><spring:message code="monitor_num"/></th>
|
||||
<th class="sort-column control_num" column="controlNum"><spring:message code="control_num"/></th>
|
||||
<th class="sort-column task_time" column="taskTime"><spring:message code="task_time"/></th>
|
||||
<th class="sort-column stat_time" column="reportTime"><spring:message code="stat_time"/></th>
|
||||
<th class="sort-column task_id" column="task_id"><spring:message code="task_id"/></th>
|
||||
<th class="sort-column task_name" column="task_name"><spring:message code="task_name"/></th>
|
||||
<th class="sort-column letter_num" column="letter_num"><spring:message code="letter_num"/></th>
|
||||
<th class="sort-column config_num" column="config_num"><spring:message code="config_num"/></th>
|
||||
<th class="sort-column monitor_num" column="monitor_num"><spring:message code="monitor_num"/></th>
|
||||
<th class="sort-column control_num" column="control_num"><spring:message code="control_num"/></th>
|
||||
<th class="sort-column task_time" column="task_time"><spring:message code="task_time"/></th>
|
||||
<th class="sort-column stat_time" column="stat_time"><spring:message code="stat_time"/></th>
|
||||
<%-- <th class="sort-column url_count" column="reportTime"><spring:message code="statistic_time"/></th> --%>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -230,6 +300,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="page">${page}</div>
|
||||
<div id="contentPrintTable" style="display: none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title>
|
||||
<spring:message code="ntc_event_monitor_report"/>
|
||||
</title>
|
||||
@@ -83,6 +84,74 @@
|
||||
}
|
||||
};
|
||||
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
cache:false,
|
||||
url:'${ctx}/eventMonitor/eventMonitorPrint',//
|
||||
data:{
|
||||
"taskIds":$("#taskIdArray").val(),
|
||||
"searchTaskStartTime":$('[name="searchTaskStartTime"]').val(),
|
||||
"searchTaskEndTime":$('[name="searchTaskEndTime"]').val(),
|
||||
"searchReportStartTime":$('[name="searchReportStartTime"]').val(),
|
||||
"searchReportEndTime":$('[name="searchReportEndTime"]').val()
|
||||
},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
if(data !=null){
|
||||
var userTableStr='';
|
||||
userTableStr +='<table class="table table-striped table-bordered table-condensed text-nowrap logTb">';
|
||||
userTableStr += '<thead>';
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_id"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_name"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="ip_count"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="http_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="mail_num"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="vedio_count"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="agent_count"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="task_time"/></th>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="stat_time"/></th>';
|
||||
userTableStr += '</tr>';
|
||||
userTableStr += '</thead>';
|
||||
userTableStr += '<tbody>';
|
||||
for(var j=0;j<data.length;j++){
|
||||
userTableStr += '<tr><td>';
|
||||
userTableStr += data[j].taskIds;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].taskName;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].ipNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].httpNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].mailNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].vedioNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].agentNum;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].taskTime;
|
||||
userTableStr += '</td><td>';
|
||||
userTableStr += data[j].reportTime;
|
||||
userTableStr += '</td><tr>';
|
||||
}
|
||||
userTableStr +='</tbody>';
|
||||
userTableStr +='</table>';
|
||||
$("#contentPrintTable").html(userTableStr);
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#contentPrintTable").css('display','block');
|
||||
$("#contentPrintTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
$("#contentPrintTable").css('display','none');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -136,6 +205,9 @@
|
||||
<li><sys:delRow url="${ctx}/eventMonitor/eventMonitorExport?type=csv" searchUrl="${ctx}/eventMonitor/eventMonitorList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
|
||||
<i class="icon-wrench"></i>
|
||||
@@ -211,15 +283,15 @@
|
||||
<th class="sort-column ip_addr" column="ip_addr"><spring:message code="ip_addr"/></th>
|
||||
<th class="sort-column sum" column="sum"><spring:message code="sum"/></th>
|
||||
<th class="sort-column url_count" column="url_count"><spring:message code="url_count"/></th> --%>
|
||||
<th class="sort-column task_id" column="taskIds"><spring:message code="task_id"/></th>
|
||||
<th class="sort-column task_name" column="taskName"><spring:message code="task_name"/></th>
|
||||
<th class="sort-column ip_count" column="ipNum"><spring:message code="ip_count"/></th>
|
||||
<th class="sort-column http_num" column="httpNum"><spring:message code="http_num"/></th>
|
||||
<th class="sort-column mail_num" column="mailNum"><spring:message code="mail_num"/></th>
|
||||
<th class="sort-column vedio_count" column="vedioNum"><spring:message code="vedio_count"/></th>
|
||||
<th class="sort-column agent_count" column="agentNum"><spring:message code="agent_count"/></th>
|
||||
<th class="sort-column task_time" column="taskTime"><spring:message code="task_time"/></th>
|
||||
<th class="sort-column stat_time" column="reportTime"><spring:message code="stat_time"/></th>
|
||||
<th class="sort-column task_id" column="task_id"><spring:message code="task_id"/></th>
|
||||
<th class="sort-column task_name" column="task_name"><spring:message code="task_name"/></th>
|
||||
<th class="sort-column ip_count" column="ip_count"><spring:message code="ip_count"/></th>
|
||||
<th class="sort-column http_num" column="http_num"><spring:message code="http_num"/></th>
|
||||
<th class="sort-column mail_num" column="mail_num"><spring:message code="mail_num"/></th>
|
||||
<th class="sort-column vedio_count" column="vedio_count"><spring:message code="vedio_count"/></th>
|
||||
<th class="sort-column agent_count" column="agent_count"><spring:message code="agent_count"/></th>
|
||||
<th class="sort-column task_time" column="task_time"><spring:message code="task_time"/></th>
|
||||
<th class="sort-column stat_time" column="stat_time"><spring:message code="stat_time"/></th>
|
||||
<%-- <th class="sort-column url_count" column="reportTime"><spring:message code="statistic_time"/></th> --%>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -242,6 +314,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="page">${page}</div>
|
||||
<div id="contentPrintTable" style="display: none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title>
|
||||
<spring:message code="ip_range_report"/>
|
||||
</title>
|
||||
@@ -34,7 +35,67 @@
|
||||
// });
|
||||
// ajaxConnPercent();
|
||||
});
|
||||
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
cache:false,
|
||||
url:'${ctx}/report/ipRangePrint',//
|
||||
data:{
|
||||
"seType":$('[name="searchAreaType1"]').val(),
|
||||
"searchAreaType":$('[name="searchAreaType"]').val(),
|
||||
"searchCountry":$('[name="searchCountry"]').val(),
|
||||
"searchIp":$('[name="searchIp"]').val()
|
||||
},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
if(data !=null){
|
||||
var userTableStr='';
|
||||
userTableStr +='<table class="table table-striped table-bordered table-condensed text-nowrap">';
|
||||
userTableStr += '<thead>';
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="ip_start"/></td>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="ip_end"/></td>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="ip_sub"/></td>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="country"/></td>';
|
||||
userTableStr += '<th class="sort-column"><spring:message code="desc"/></td>';
|
||||
userTableStr += '</tr>';
|
||||
userTableStr += '</thead>';
|
||||
userTableStr += '<tbody>';
|
||||
for(var j=0;j<data.length;j++){
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].ipStart;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].ipEnd;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].ipSub;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].country;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].desc;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<tr>';
|
||||
}
|
||||
userTableStr +='</tbody>';
|
||||
userTableStr +='</table>';
|
||||
$("#contentPrintTable").html(userTableStr);
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#contentPrintTable").css('display','block');
|
||||
$("#contentPrintTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
$("#contentPrintTable").css('display','none');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -52,7 +113,7 @@
|
||||
<form:form id="searchForm" modelAttribute="log" action="${ctx}/report/ipRangeList" method="post" class="form-search">
|
||||
<input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
|
||||
<input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
|
||||
|
||||
<input id="searchAreaType1" name="searchAreaType1" type="hidden" value="${log.searchAreaType}"/>
|
||||
<div class="col-md-12">
|
||||
<div class="pull-left">
|
||||
<div class="input-group">
|
||||
@@ -106,7 +167,9 @@
|
||||
<li><sys:delRow url="${ctx}/report/ipRangeExport?type=csv&seType=${log.searchAreaType}" searchUrl="${ctx}/report/ipRangeList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
|
||||
<i class="icon-wrench"></i>
|
||||
@@ -151,6 +214,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="page">${page}</div>
|
||||
<div id="contentPrintTable" style="display: none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
<script src="${ctxStatic }/global/plugins/tableExport-3.3.13/xlsx.core.js"></script>
|
||||
<script src="${ctxStatic }/global/plugins/tableExport-3.3.13/FileSaver.js"></script>
|
||||
<script src="${ctxStatic }/global/plugins/tableExport-3.3.13/tableexport.js"></script>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title><spring:message code="${bean.cfgName}"></spring:message></title>
|
||||
<%@ include file="/WEB-INF/include/form/pageGroup.jsp"%>
|
||||
<script>
|
||||
@@ -412,6 +413,32 @@ function customColumnClick(){
|
||||
var lipx=Number(li/6);
|
||||
$(".lireport").css({'width':lipx+'px','text-overflow':'ellipsis','overflow':'hidden'});
|
||||
}
|
||||
//打印
|
||||
function doPrint() {
|
||||
var reportBusinessType=$("#reportBusinessType").val()
|
||||
var tableId="tagTable";
|
||||
if(reportBusinessType=="label_report"){
|
||||
tableId="tagTable";
|
||||
}else if(reportBusinessType=="lwhh_report"){
|
||||
tableId="lwhhTable";
|
||||
}else if(reportBusinessType=="src_ip_report"){
|
||||
tableId="contentTable1";
|
||||
}else if(reportBusinessType=="attr_type_report"){
|
||||
tableId="attrTypeTable";
|
||||
}else if(reportBusinessType=="dest_ip_report"){
|
||||
tableId="destIpTable";
|
||||
}else if(reportBusinessType=="isp_report"){
|
||||
tableId="entranceIdTable";
|
||||
}
|
||||
|
||||
$("#"+tableId+" tbody tr").removeAttr("style");
|
||||
$("#"+tableId).print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
pagination();
|
||||
}
|
||||
</script>
|
||||
<style type="text/css">
|
||||
li{
|
||||
@@ -529,6 +556,9 @@ white-space:nowrap;
|
||||
<li><a href="javascript:;" class="export-btn" data-export-type="csv"><i class="fa fa-download"> <spring:message code="CSV"/></i></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
|
||||
<i class="icon-wrench"></i>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<script src="${ctxStatic }/pages/scripts/jQuery.print.js"></script>
|
||||
<title>
|
||||
<spring:message code="https_url_report"/>
|
||||
</title>
|
||||
@@ -25,10 +26,10 @@
|
||||
// $(this).find("th").eq(0).width=300;
|
||||
if(index > 0 ){
|
||||
var title=$(this).find("td").eq(0).attr("title");
|
||||
console.log(title);
|
||||
// console.log(title);
|
||||
if(title != undefined && title != null){
|
||||
if(title.length > 80){
|
||||
$(this).find("td").eq(0).text(title.substring(0,80));
|
||||
$(this).find("td").eq(0).text(title.substring(0,80)+"...");
|
||||
}else{
|
||||
$(this).find("td").eq(0).text(title);
|
||||
}
|
||||
@@ -56,6 +57,58 @@
|
||||
var modifyTime=new Date(chooseDate);
|
||||
$('#searchReportEndTime').val(modifyTime.getFullYear()+"-"+((modifyTime.getMonth()+1)>=10?(modifyTime.getMonth()+1):"0"+(modifyTime.getMonth()+1))+"-"+(modifyTime.getDate()>=10?modifyTime.getDate():'0'+modifyTime.getDate())+' '+(modifyTime.getHours()>=10?modifyTime.getHours():'0'+modifyTime.getHours())+':'+(modifyTime.getMinutes()>=10?modifyTime.getMinutes():'0'+modifyTime.getMinutes())+':'+(modifyTime.getSeconds()>=10?modifyTime.getSeconds():'0'+modifyTime.getSeconds()));
|
||||
}
|
||||
//打印列表
|
||||
function doPrint() {
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
cache:false,
|
||||
url:'${ctx}/report/httpsPrint',//
|
||||
data:{
|
||||
"searchUrl":$('[name="searchUrl"]').val(),
|
||||
"searchReportStartTime":$('[name="searchReportStartTime"]').val(),
|
||||
"searchReportEndTime":$('[name="searchReportEndTime"]').val()
|
||||
},
|
||||
dataType:"json",
|
||||
success:function(data){
|
||||
if(data !=null){
|
||||
var userTableStr='';
|
||||
userTableStr +='<table style="word-wrap:break-word; word-break:break-all;" class="table table-striped table-bordered table-condensed ">';
|
||||
userTableStr += '<thead>';
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<th class="sort-column "><spring:message code="url"/></td>';
|
||||
userTableStr += '<th class="sort-column "><spring:message code="ip_count"/></td>';
|
||||
userTableStr += '<th class="sort-column "><spring:message code="counnection_count"/></td>';
|
||||
userTableStr += '</tr>';
|
||||
userTableStr += '</thead>';
|
||||
userTableStr += '<tbody>';
|
||||
for(var j=0;j<data.length;j++){
|
||||
userTableStr += '<tr>';
|
||||
userTableStr += '<td style="width:700px;">';
|
||||
userTableStr += data[j].url;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].ipCount;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<td>';
|
||||
userTableStr += data[j].connCount;
|
||||
userTableStr += '</td>';
|
||||
userTableStr += '<tr>';
|
||||
}
|
||||
userTableStr +='</tbody>';
|
||||
userTableStr +='</table>';
|
||||
$("#contentPrintTable").html(userTableStr);
|
||||
}
|
||||
}
|
||||
});
|
||||
$("#contentPrintTable").css('display','block');
|
||||
$("#contentPrintTable").print({
|
||||
globalStyles: true,
|
||||
iframe: true,
|
||||
append: null
|
||||
});
|
||||
$("#contentPrintTable").css('display','none');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -80,7 +133,7 @@
|
||||
<div class="input-group-btn">
|
||||
<span class="selectpicker form-control" ><spring:message code="url"/></span>
|
||||
</div>
|
||||
<input name="searchUrl" type="text" class="form-control input-medium" maxlength="20" value="${log.searchUrl }" />
|
||||
<input name="searchUrl" type="text" class="form-control input-small" maxlength="20" value="${log.searchUrl }" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
@@ -126,6 +179,9 @@
|
||||
<li><sys:delRow url="${ctx}/report/httpsExport?type=csv" searchUrl="${ctx}/report/httpsUrlList" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default css-print" onClick="doPrint()"><i class="fa glyphicon glyphicon-print" style="top:3px;margin-right: 3px;"></i><spring:message code="print"/></button>
|
||||
</div>
|
||||
<a class="btn btn-icon-only btn-default setfields tooltips"
|
||||
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
|
||||
<i class="icon-wrench"></i>
|
||||
@@ -169,6 +225,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="page">${page}</div>
|
||||
<div id="contentPrintTable" style="display: none;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -66,14 +66,14 @@
|
||||
readonly="readonly" maxlength="20"
|
||||
class="form-control Wdate"
|
||||
value="<fmt:formatDate value="${sysLog.beginDate}" pattern="yyyy-MM-dd"/>"
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false});" />
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false,maxDate:'#F{$dp.$D(\'endDate\')}'});" />
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<label><spring:message code="" /> </label> <input
|
||||
id="endDate" name="endDate" type="text" readonly="readonly"
|
||||
maxlength="20" class="form-control Wdate"
|
||||
value="<fmt:formatDate value="${sysLog.endDate}" pattern="yyyy-MM-dd"/>"
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false});" />
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false,minDate:'#F{$dp.$D(\'beginDate\')}',maxDate:'%y-%M-%d'});" />
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<label> </label>
|
||||
|
||||
@@ -55,14 +55,14 @@
|
||||
readonly="readonly" maxlength="20"
|
||||
class="form-control Wdate"
|
||||
value="<fmt:formatDate value="${sysLog.beginDate}" pattern="yyyy-MM-dd"/>"
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false});" />
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false,maxDate:'#F{$dp.$D(\'endDate\')}'});" />
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<label><spring:message code="" /> </label> <input
|
||||
id="endDate" name="endDate" type="text" readonly="readonly"
|
||||
maxlength="20" class="form-control Wdate"
|
||||
value="<fmt:formatDate value="${sysLog.endDate}" pattern="yyyy-MM-dd"/>"
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false});" />
|
||||
onclick="WdatePicker({dateFmt:'yyyy-MM-dd',isShowClear:false,minDate:'#F{$dp.$D(\'beginDate\')}',maxDate:'%y-%M-%d'});" />
|
||||
</div>
|
||||
<div class="pull-left">
|
||||
<label for="exception"><input id="exception" name="exception" type="checkbox" ${sysLog.exception eq '1'?' checked':''} value="1" /> <spring:message code="log_exception" /></label>
|
||||
|
||||
@@ -89,4 +89,9 @@ margin-top: 20px;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD>ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>,<2C><>ӡ<EFBFBD><D3A1>ť<EFBFBD><C5A5><EFBFBD><EFBFBD>ʾ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
.css-print{
|
||||
display: none;
|
||||
}
|
||||
@@ -47,13 +47,14 @@ p{
|
||||
.data_content .data_info .fr_fc .fl_visual{
|
||||
margin-left: 2px;
|
||||
float: left;
|
||||
height: 110px;
|
||||
height: 50px;
|
||||
width: 28%;
|
||||
font-size: 40px;
|
||||
font-size: 25px;
|
||||
/* color: #d9ffff !important; */
|
||||
/* color: linear-gradient(to right, #ffcc99, #77b5dc); */
|
||||
position: relative;
|
||||
margin-top: 25px;
|
||||
/* position: relative; */
|
||||
margin-top: 2px;
|
||||
position: absolute;
|
||||
/*background: -webkit-linear-gradient(left,#d9ffff, #77b5dc);*/
|
||||
/* background: -webkit-linear-gradient(left,#d9ffff,#77b5dc); */
|
||||
|
||||
@@ -90,7 +91,7 @@ p{
|
||||
-webkit-text-fill-color: transparent;
|
||||
} */
|
||||
.data_content .data_info .fr_fc .fl_fc{
|
||||
width: 70%;
|
||||
width: 100%;
|
||||
height: 110px;
|
||||
border-width: 0 1px;
|
||||
margin-left: 0px;
|
||||
@@ -136,111 +137,111 @@ p{
|
||||
}
|
||||
.data_content .data_info .info_2 p:nth-child(1){
|
||||
color:#fff;
|
||||
font-size: 18px;
|
||||
font-size: 16px;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
/* text-overflow: ellipsis; */
|
||||
margin-left: -12px;
|
||||
text-overflow: ellipsis;
|
||||
margin-left: 33px;
|
||||
}
|
||||
.data_content .data_info .info_1 label:nth-child(1){
|
||||
width:100%;
|
||||
width:77%;
|
||||
color:#fff;
|
||||
font-size: 18px;
|
||||
font-size: 16px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
margin: -2px;
|
||||
margin-left: -20px;
|
||||
margin-left: 30px;
|
||||
}
|
||||
.data_content .data_info>div.info_1 p:nth-child(2){
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info .info_2 .fr_fc .numberRun2{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info .info_2 .fr_fc .numberRun3{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info .info_2 .fr_fc .numberRun5{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info .info_2 .fr_fc .numberRun6{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info .info_2 .fr_fc .numberRun7{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info .info_2 .fr_fc .numberRun8{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info .info_2 .fr_fc .numberRun{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 2.1em;
|
||||
margin-top: 2.5em;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info>div.info_1 .fl_fc .numberRun4{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 1px;
|
||||
margin-top: 3px;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info>div.info_1 .fl_fc .numberRun1{
|
||||
width:100%;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
font-size: 14px;
|
||||
/*color:#288dce;*/
|
||||
color:#ffffff;
|
||||
margin-top: 33px;
|
||||
margin-top: 35px;
|
||||
margin-left: 0px;
|
||||
}
|
||||
.data_content .data_info>div.info_1 .fl_fc .numberRun4-unit{
|
||||
@@ -254,7 +255,7 @@ p{
|
||||
font-size: 11px;
|
||||
/*color:#337ab7 !important;*/
|
||||
color:#ffffff !important;
|
||||
margin-top: -6px;
|
||||
margin-top: -3px;
|
||||
text-align: center;
|
||||
margin-left: 1.3px;
|
||||
}
|
||||
|
||||
@@ -1186,29 +1186,38 @@ function echart_topic_domain(rs){
|
||||
var unit="bytes";
|
||||
$(rs).each(function(i,d){
|
||||
var inoctetsNum=d.count;
|
||||
unit=changeUnit(inoctetsNum);
|
||||
inoctetsNum=changeNum(inoctetsNum);
|
||||
data.push({
|
||||
'id': '1.'+d.topicId,
|
||||
'parent': '0.0',
|
||||
'name': d.topic,
|
||||
'value':parseFloat(inoctetsNum)
|
||||
});
|
||||
var inoctetsNumK=inoctetsNum/1024;
|
||||
var inoctetsNumM=inoctetsNumK/1024;
|
||||
var inoctetsNumG=inoctetsNumM/1024;
|
||||
inoctetsNum=inoctetsNumG;
|
||||
inoctetsNum=Math.round(inoctetsNum*100)/100;
|
||||
|
||||
unit="GB";
|
||||
if(inoctetsNum>0){
|
||||
/****主题中的子域名*******/
|
||||
var topicData=0;
|
||||
$(d.domainData).each(function(j,t){
|
||||
var domainNum=t.byteCount;
|
||||
unit=changeUnit(domainNum);
|
||||
domainNum=changeNum(domainNum);
|
||||
if(domainNum>0){
|
||||
var domainNumK=domainNum/1024;
|
||||
var domainNumM=domainNumK/1024;
|
||||
var domainNumG=domainNumM/1024;
|
||||
domainNum=domainNumG;
|
||||
domainNum=Math.round(domainNum*100)/100;
|
||||
topicData=topicData+domainNum;
|
||||
data.push({
|
||||
'id': '2.'+t.webId,
|
||||
'parent': '1.'+d.topicId,
|
||||
'name': t.domain,
|
||||
'value':parseFloat(domainNum)
|
||||
});
|
||||
}
|
||||
})
|
||||
|
||||
data.push({
|
||||
'id': '1.'+d.topicId,
|
||||
'parent': '0.0',
|
||||
'name': d.topic,
|
||||
'value':parseFloat(topicData)
|
||||
});
|
||||
}
|
||||
});
|
||||
Highcharts.getOptions().colors.splice(0, 0, 'transparent');
|
||||
var chart = Highcharts.chart('chart_topic', {
|
||||
|
||||
279
src/main/webapp/static/pages/scripts/jQuery.print.js
Normal file
279
src/main/webapp/static/pages/scripts/jQuery.print.js
Normal file
@@ -0,0 +1,279 @@
|
||||
/* @license
|
||||
* jQuery.print, version 1.6.0
|
||||
* (c) Sathvik Ponangi, Doers' Guild
|
||||
* Licence: CC-By (http://creativecommons.org/licenses/by/3.0/)
|
||||
*--------------------------------------------------------------------------*/
|
||||
(function ($) {
|
||||
"use strict";
|
||||
// A nice closure for our definitions
|
||||
|
||||
function jQueryCloneWithSelectAndTextAreaValues(elmToClone, withDataAndEvents, deepWithDataAndEvents) {
|
||||
// Replacement jQuery clone that also clones the values in selects and textareas as jQuery doesn't for performance reasons - https://stackoverflow.com/questions/742810/clone-isnt-cloning-select-values
|
||||
// Based on https://github.com/spencertipping/jquery.fix.clone
|
||||
var $elmToClone = $(elmToClone),
|
||||
$result = $elmToClone.clone(withDataAndEvents, deepWithDataAndEvents),
|
||||
$myTextareas = $elmToClone.find('textarea').add($elmToClone.filter('textarea')),
|
||||
$resultTextareas = $result.find('textarea').add($result.filter('textarea')),
|
||||
$mySelects = $elmToClone.find('select').add($elmToClone.filter('select')),
|
||||
$resultSelects = $result.find('select').add($result.filter('select')),
|
||||
i, l, j, m;
|
||||
|
||||
for (i = 0, l = $myTextareas.length; i < l; ++i) {
|
||||
$($resultTextareas[i]).val($($myTextareas[i]).val());
|
||||
}
|
||||
for (i = 0, l = $mySelects.length; i < l; ++i) {
|
||||
for (j = 0, m = $mySelects[i].options.length; j < m; ++j) {
|
||||
if ($mySelects[i].options[j].selected === true) {
|
||||
$resultSelects[i].options[j].selected = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
function getjQueryObject(string) {
|
||||
// Make string a vaild jQuery thing
|
||||
var jqObj = $("");
|
||||
try {
|
||||
jqObj = jQueryCloneWithSelectAndTextAreaValues(string);
|
||||
} catch (e) {
|
||||
jqObj = $("<span />")
|
||||
.html(string);
|
||||
}
|
||||
return jqObj;
|
||||
}
|
||||
|
||||
function printFrame(frameWindow, content, options) {
|
||||
// Print the selected window/iframe
|
||||
var def = $.Deferred();
|
||||
try {
|
||||
frameWindow = frameWindow.contentWindow || frameWindow.contentDocument || frameWindow;
|
||||
var wdoc = frameWindow.document || frameWindow.contentDocument || frameWindow;
|
||||
if(options.doctype) {
|
||||
wdoc.write(options.doctype);
|
||||
}
|
||||
wdoc.write(content);
|
||||
wdoc.close();
|
||||
var printed = false,
|
||||
callPrint = function () {
|
||||
if(printed) {
|
||||
return;
|
||||
}
|
||||
// Fix for IE : Allow it to render the iframe
|
||||
frameWindow.focus();
|
||||
try {
|
||||
// Fix for IE11 - printng the whole page instead of the iframe content
|
||||
if (!frameWindow.document.execCommand('print', false, null)) {
|
||||
// document.execCommand returns false if it failed -http://stackoverflow.com/a/21336448/937891
|
||||
frameWindow.print();
|
||||
}
|
||||
// focus body as it is losing focus in iPad and content not getting printed
|
||||
$('body').focus();
|
||||
} catch (e) {
|
||||
frameWindow.print();
|
||||
}
|
||||
frameWindow.close();
|
||||
printed = true;
|
||||
def.resolve();
|
||||
};
|
||||
// Print once the frame window loads - seems to work for the new-window option but unreliable for the iframe
|
||||
$(frameWindow).on("load", callPrint);
|
||||
// Fallback to printing directly if the frame doesn't fire the load event for whatever reason
|
||||
setTimeout(callPrint, options.timeout);
|
||||
} catch (err) {
|
||||
def.reject(err);
|
||||
}
|
||||
return def;
|
||||
}
|
||||
|
||||
function printContentInIFrame(content, options) {
|
||||
var $iframe = $(options.iframe + "");
|
||||
var iframeCount = $iframe.length;
|
||||
if (iframeCount === 0) {
|
||||
// Create a new iFrame if none is given
|
||||
$iframe = $('<iframe height="0" width="0" border="0" wmode="Opaque"/>')
|
||||
.prependTo('body')
|
||||
.css({
|
||||
"position": "absolute",
|
||||
"top": -999,
|
||||
"left": -999
|
||||
});
|
||||
}
|
||||
var frameWindow = $iframe.get(0);
|
||||
return printFrame(frameWindow, content, options)
|
||||
.done(function () {
|
||||
// Success
|
||||
setTimeout(function () {
|
||||
// Wait for IE
|
||||
if (iframeCount === 0) {
|
||||
// Destroy the iframe if created here
|
||||
$iframe.remove();
|
||||
}
|
||||
}, 1000);
|
||||
})
|
||||
.fail(function (err) {
|
||||
// Use the pop-up method if iframe fails for some reason
|
||||
console.error("Failed to print from iframe", err);
|
||||
printContentInNewWindow(content, options);
|
||||
})
|
||||
.always(function () {
|
||||
try {
|
||||
options.deferred.resolve();
|
||||
} catch (err) {
|
||||
console.warn('Error notifying deferred', err);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function printContentInNewWindow(content, options) {
|
||||
// Open a new window and print selected content
|
||||
var frameWindow = window.open();
|
||||
return printFrame(frameWindow, content, options)
|
||||
.always(function () {
|
||||
try {
|
||||
options.deferred.resolve();
|
||||
} catch (err) {
|
||||
console.warn('Error notifying deferred', err);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function isNode(o) {
|
||||
/* http://stackoverflow.com/a/384380/937891 */
|
||||
return !!(typeof Node === "object" ? o instanceof Node : o && typeof o === "object" && typeof o.nodeType === "number" && typeof o.nodeName === "string");
|
||||
}
|
||||
$.print = $.fn.print = function () {
|
||||
// Print a given set of elements
|
||||
var options, $this, self = this;
|
||||
// console.log("Printing", this, arguments);
|
||||
if (self instanceof $) {
|
||||
// Get the node if it is a jQuery object
|
||||
self = self.get(0);
|
||||
}
|
||||
if (isNode(self)) {
|
||||
// If `this` is a HTML element, i.e. for
|
||||
// $(selector).print()
|
||||
$this = $(self);
|
||||
if (arguments.length > 0) {
|
||||
options = arguments[0];
|
||||
}
|
||||
} else {
|
||||
if (arguments.length > 0) {
|
||||
// $.print(selector,options)
|
||||
$this = $(arguments[0]);
|
||||
if (isNode($this[0])) {
|
||||
if (arguments.length > 1) {
|
||||
options = arguments[1];
|
||||
}
|
||||
} else {
|
||||
// $.print(options)
|
||||
options = arguments[0];
|
||||
$this = $("html");
|
||||
}
|
||||
} else {
|
||||
// $.print()
|
||||
$this = $("html");
|
||||
}
|
||||
}
|
||||
// Default options
|
||||
var defaults = {
|
||||
globalStyles: true,
|
||||
mediaPrint: false,
|
||||
stylesheet: null,
|
||||
noPrintSelector: ".no-print",
|
||||
iframe: true,
|
||||
append: null,
|
||||
prepend: null,
|
||||
manuallyCopyFormValues: true,
|
||||
deferred: $.Deferred(),
|
||||
timeout: 750,
|
||||
title: null,
|
||||
doctype: '<!doctype html>'
|
||||
};
|
||||
// Merge with user-options
|
||||
options = $.extend({}, defaults, (options || {}));
|
||||
var $styles = $("");
|
||||
if (options.globalStyles) {
|
||||
// Apply the stlyes from the current sheet to the printed page
|
||||
$styles = $("style, link, meta, base, title");
|
||||
} else if (options.mediaPrint) {
|
||||
// Apply the media-print stylesheet
|
||||
$styles = $("link[media=print]");
|
||||
}
|
||||
if (options.stylesheet) {
|
||||
// Add a custom stylesheet if given
|
||||
$styles = $.merge($styles, $('<link rel="stylesheet" href="' + options.stylesheet + '">'));
|
||||
}
|
||||
// Create a copy of the element to print
|
||||
var copy = jQueryCloneWithSelectAndTextAreaValues($this);
|
||||
// Wrap it in a span to get the HTML markup string
|
||||
copy = $("<span/>")
|
||||
.append(copy);
|
||||
// Remove unwanted elements
|
||||
copy.find(options.noPrintSelector)
|
||||
.remove();
|
||||
// Add in the styles
|
||||
copy.append(jQueryCloneWithSelectAndTextAreaValues($styles));
|
||||
// Update title
|
||||
if (options.title) {
|
||||
var title = $("title", copy);
|
||||
if (title.length === 0) {
|
||||
title = $("<title />");
|
||||
copy.append(title);
|
||||
}
|
||||
title.text(options.title);
|
||||
}
|
||||
// Appedned content
|
||||
copy.append(getjQueryObject(options.append));
|
||||
// Prepended content
|
||||
copy.prepend(getjQueryObject(options.prepend));
|
||||
if (options.manuallyCopyFormValues) {
|
||||
// Manually copy form values into the HTML for printing user-modified input fields
|
||||
// http://stackoverflow.com/a/26707753
|
||||
copy.find("input")
|
||||
.each(function () {
|
||||
var $field = $(this);
|
||||
if ($field.is("[type='radio']") || $field.is("[type='checkbox']")) {
|
||||
if ($field.prop("checked")) {
|
||||
$field.attr("checked", "checked");
|
||||
}
|
||||
} else {
|
||||
$field.attr("value", $field.val());
|
||||
}
|
||||
});
|
||||
copy.find("select").each(function () {
|
||||
var $field = $(this);
|
||||
$field.find(":selected").attr("selected", "selected");
|
||||
});
|
||||
copy.find("textarea").each(function () {
|
||||
// Fix for https://github.com/DoersGuild/jQuery.print/issues/18#issuecomment-96451589
|
||||
var $field = $(this);
|
||||
$field.text($field.val());
|
||||
});
|
||||
}
|
||||
// Get the HTML markup string
|
||||
var content = copy.html();
|
||||
// Notify with generated markup & cloned elements - useful for logging, etc
|
||||
try {
|
||||
options.deferred.notify('generated_markup', content, copy);
|
||||
} catch (err) {
|
||||
console.warn('Error notifying deferred', err);
|
||||
}
|
||||
// Destroy the copy
|
||||
copy.remove();
|
||||
if (options.iframe) {
|
||||
// Use an iframe for printing
|
||||
try {
|
||||
printContentInIFrame(content, options);
|
||||
} catch (e) {
|
||||
// Use the pop-up method if iframe fails for some reason
|
||||
console.error("Failed to print from iframe", e.stack, e.message);
|
||||
printContentInNewWindow(content, options);
|
||||
}
|
||||
} else {
|
||||
// Use a new window for printing
|
||||
printContentInNewWindow(content, options);
|
||||
}
|
||||
return this;
|
||||
};
|
||||
})(jQuery);
|
||||
Reference in New Issue
Block a user