首页增加配置统计列表
This commit is contained in:
@@ -202,6 +202,22 @@ public class DictUtils {
|
||||
}
|
||||
return dictList;
|
||||
}
|
||||
/**
|
||||
* 功能业务字典,获取相应功能菜单对应的业务信息
|
||||
* @param functionId
|
||||
* @return
|
||||
*/
|
||||
public static List<FunctionServiceDict> getFunctionServiceDictList(){
|
||||
List<FunctionServiceDict> allDictList = (List<FunctionServiceDict>)CacheUtils.get(Constants.CACHE_FUNCTION_SERVICE_DICT);
|
||||
List<FunctionServiceDict> dictList = new ArrayList();
|
||||
if(StringUtil.isEmpty(allDictList)){
|
||||
FunctionServiceDict entity = new FunctionServiceDict();
|
||||
allDictList = functionServiceDictDao.getList(entity);
|
||||
CacheUtils.put(Constants.CACHE_FUNCTION_SERVICE_DICT, allDictList);
|
||||
}
|
||||
|
||||
return allDictList;
|
||||
}
|
||||
/**
|
||||
* 功能配置域字典,获取相应功能菜单对应的配置域信息
|
||||
* @param functionId
|
||||
|
||||
@@ -85,6 +85,7 @@ import com.nis.web.service.configuration.NumCfgService;
|
||||
import com.nis.web.service.configuration.RequestInfoService;
|
||||
import com.nis.web.service.configuration.WebsiteCfgService;
|
||||
import com.nis.web.service.configuration.XmppCfgService;
|
||||
import com.nis.web.service.configuration.statistics.ConfigureStatisticsService;
|
||||
import com.nis.web.service.specific.SpecificServiceCfgService;
|
||||
import com.nis.web.service.specific.SpecificServiceHostCfgService;
|
||||
import com.nis.web.service.systemService.ServiceConfigInfoService;
|
||||
@@ -179,6 +180,8 @@ public class BaseController {
|
||||
protected DdosCfgService ddosCfgService;
|
||||
@Autowired
|
||||
protected IpMultiplexPoolCfgService ipMultiplexPoolCfgService;
|
||||
@Autowired
|
||||
protected ConfigureStatisticsService configureStatisticsService;
|
||||
/**
|
||||
* 管理基础路径
|
||||
*/
|
||||
@@ -337,6 +340,9 @@ public class BaseController {
|
||||
protected void initReportCondition(Model model,SearchReport report){
|
||||
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(report.getFunctionId());
|
||||
model.addAttribute("serviceList", serviceList);
|
||||
if (StringUtils.isBlank(report.getReportTime())) {
|
||||
report.setReportTime(DateUtils.formatDate(new Date(), "yyyy-MM-dd"));
|
||||
}
|
||||
}
|
||||
protected void initFormCondition(Model model){
|
||||
List<RequestInfo> requestInfos=requestInfoService.getValidRequestInfo();
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.nis.web.controller.configuration.statistics;
|
||||
|
||||
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.nis.domain.FunctionServiceDict;
|
||||
import com.nis.domain.configuration.CfgIndexInfo;
|
||||
import com.nis.util.CacheUtils;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.DictUtils;
|
||||
import com.nis.web.controller.BaseController;
|
||||
import com.nis.web.service.BaseService;
|
||||
import com.nis.web.service.CommonService;
|
||||
|
||||
/**
|
||||
* 配置统计
|
||||
* @author ddm
|
||||
*
|
||||
*/
|
||||
@Controller
|
||||
@RequestMapping("${adminPath}/configure/statistics")
|
||||
public class ConfigureStatisticsController extends BaseController{
|
||||
|
||||
@RequestMapping(value = {"/configureStateStatistics"})
|
||||
public String configStateStatistics(Model model,HttpServletRequest request
|
||||
,HttpServletResponse response
|
||||
,RedirectAttributes redirectAttributes){
|
||||
|
||||
List<FunctionServiceDict> serviceDictList = DictUtils.getFunctionServiceDictList();
|
||||
List<Object[]> list = configureStatisticsService.getConfigStateStatistics();
|
||||
|
||||
model.addAttribute("serviceList", serviceDictList);
|
||||
model.addAttribute("configStatistics", list);
|
||||
return "/index";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.nis.web.dao.configuration.statistics;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import com.nis.domain.configuration.HttpBodyCfg;
|
||||
import com.nis.web.dao.MyBatisDao;
|
||||
|
||||
|
||||
@MyBatisDao
|
||||
public interface ConfigureStatisticsDao {
|
||||
public List<Object[]> getConfigStateStatistics( ) ;
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.nis.web.dao.configuration.statistics.ConfigureStatisticsDao" >
|
||||
|
||||
<select id="getConfigStateStatistics" resultType="map">
|
||||
select service_id service,
|
||||
sum(case when c.cfg_state =1 then 1 else 0 end) as approved,
|
||||
sum(case when c.cfg_state =2 then 1 else 0 end) as unapproved,
|
||||
sum(case when c.cfg_state =3 then 1 else 0 end) as cancle_approved,
|
||||
sum(case when c.cfg_state =0 then 1 else 0 end) as created,
|
||||
sum(case when c.cfg_state =-1 then 1 else 0 end) as deleted
|
||||
from cfg_num_statistics c
|
||||
group by service_id;
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.nis.web.service.configuration.statistics;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.nis.domain.configuration.AreaIpCfg;
|
||||
import com.nis.domain.configuration.BaseIpCfg;
|
||||
import com.nis.domain.configuration.NumBoundaryCfg;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.web.dao.configuration.NumCfgDao;
|
||||
import com.nis.web.dao.configuration.statistics.ConfigureStatisticsDao;
|
||||
import com.nis.web.service.CrudService;
|
||||
|
||||
/**
|
||||
*配置统计service
|
||||
*/
|
||||
@Service
|
||||
public class ConfigureStatisticsService extends CrudService<NumCfgDao,NumBoundaryCfg> {
|
||||
@Autowired
|
||||
protected ConfigureStatisticsDao configureStatisticsDao;
|
||||
|
||||
public List<Object[]> getConfigStateStatistics(){
|
||||
return configureStatisticsDao.getConfigStateStatistics();
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -546,6 +546,7 @@ av_sample_voip_control=VoIP sample control
|
||||
av_sample_audio_porn_control=audio porn sample control
|
||||
av_sample_vedio_porn_control=vedio porn sample control
|
||||
av_sample_control=sample control
|
||||
configure_statistics_info=Configure statistics info
|
||||
harm_level=harm level
|
||||
src_file=src file
|
||||
select_file=please select file
|
||||
@@ -727,4 +728,91 @@ single_file_upload_size_error=The size of the file %s is %s,allowing the maximum
|
||||
total_file_upload_size_error=The total size of uploaded files is %s,allowing the total size of uploaded to be %s !
|
||||
file_upload_type_error=%s file type of error,allowing uploaded file type with %s!
|
||||
file_upload_error=File upload failure !
|
||||
#=============multipart upload error info=================
|
||||
#=============multipart upload error info=================
|
||||
#=============function_service_dict==>service_name=================
|
||||
audio_sample_reject=Audio and video sample control
|
||||
audio_sample_monit=Audio and video sample monitoring
|
||||
video_sample_reject=Video sample control
|
||||
video_sample_monit=Video sample monitoring
|
||||
pic_sample_reject=Picture sample control
|
||||
pic_sample_monit=Picture sample monitoring
|
||||
voip_sample_reject=VoIp sample control
|
||||
voip_sample_monit=VoIp sample monitoring
|
||||
audio_pornography_sample_reject=Audio pornography control
|
||||
audio_pornography_sample_monit=Audio pornography monitoring
|
||||
video_pornography_sample_reject=Video pornography control
|
||||
video_pornography_sample_monit=Video pornography monitoring
|
||||
ip_white_monit=IP address white list monitoring
|
||||
ip_white_reject=IP address white list control
|
||||
ip_white_whitelist=IP address white list
|
||||
av_voip_ip_reject=Audio and video VoIp control
|
||||
av_voip_ip_monit=Audio and video VoIp monitoring
|
||||
website_http_reject=Web site http control
|
||||
website_http_monit=Web site http monitoring
|
||||
domain_white_whitelist=Global domain name white list
|
||||
av_content_ip_reject=Audio and video content IP control
|
||||
av_content_ip_monit=Audio and video content IP monitoring
|
||||
ip_reject=IP configure control
|
||||
ip_monit=IP configure monitoring
|
||||
ip_drop=IP configure drop
|
||||
ssl_monit=SSL monitoring
|
||||
ssl_reject=SSL control
|
||||
av_pic_ip_reject=Audio and video picture IP control
|
||||
av_pic_ip_monit=Audio and video picture IP monitoring
|
||||
av_content_url_reject=Audio and video content url control
|
||||
av_content_url_monit=Audio and video content url monitoring
|
||||
av_pic_url_reject=Audio and video picture url control
|
||||
av_pic_url_monit=Audio and video picture url monitoring
|
||||
ip_loop=IP configure backflow
|
||||
website_dns_reject=Web sit dns control
|
||||
website_dns_monit=Web sit dns monitoring
|
||||
mail_reject=mail control
|
||||
mail_monit=mail monitoring
|
||||
ssh_monit=SSH monitoring
|
||||
ssh_reject=SSH control
|
||||
ftp_monit=FTP monitoring
|
||||
ftp_reject=FTP control
|
||||
openvpn_reject=OpenVPN control
|
||||
openvpn_monit=OpenVPN monitoring
|
||||
l2tp_reject=L2TP control
|
||||
l2tp_monit=L2TP monitoring
|
||||
pptp_reject=PPTP control
|
||||
pptp_monit=PPTP monitoring
|
||||
socks_reject=SOCKS control
|
||||
socks_monit=SOCKS monitoring
|
||||
gre_drop=GRE drop
|
||||
gre_monit=GRE monitoring
|
||||
ike_drop=IKE drop
|
||||
ike_monit=IKE monitoring
|
||||
ipsec_drop=IPSEC drop
|
||||
ipsec_monit=IPSEC monitoring
|
||||
bgp_reject=BGP control
|
||||
bgp_monit=BGP monitoring
|
||||
file_transfer_digest_monit=File transfer summary monitoring
|
||||
file_transfer_digest_reject=File transfer summary control
|
||||
xmpp_monit=XMPP monitoring
|
||||
xmpp_reject=XMPP control
|
||||
ip_intercepter_monit=IP intercepter
|
||||
domain_monit=Domain intercepter
|
||||
dns_strategy_reject=DNS response strategy control
|
||||
proxy_http_req_body_replace=HTTP request content replacement
|
||||
proxy_http_res_body_replace=PXYHTTP response content replacement
|
||||
dns_fake_ip_reject=DNS fake IP control
|
||||
app_strategy_reject=APP strategy control
|
||||
app_strategy_ratelimit=APP strategy speed limit
|
||||
proxy_ip_redirect=IP redirect
|
||||
proxy_ip_forward=IP forward
|
||||
app_protocol_ip_reject=APP protocol IP control
|
||||
app_http_feature_monit=APP HTTP feature monitoring
|
||||
app_domain_feature_monit=APP domain feature monitoring
|
||||
app_byte_feature_monit=APP byte feature monitoring
|
||||
proxy_domain_forward=Domain forward
|
||||
ip_ratelimit=IP speed limit
|
||||
domain_ratelimit=Domain speed limit
|
||||
ip_complex_loop=IP complex
|
||||
http_redirect=HTTP redirect
|
||||
ddos_ip_drop=DDOS IP
|
||||
ip_reuse_adress_pool_loop=IP reuse address pool
|
||||
app_strategy_monit=APP strategy monitoring
|
||||
app_strategy_drop=APP strategy drop
|
||||
#=============function_service_dict==>service_name=================
|
||||
|
||||
@@ -562,6 +562,7 @@ av_sample_voip_control=VoIP\u6837\u4F8B\u7BA1\u63A7
|
||||
av_sample_audio_porn_control=\u97F3\u9891\u8272\u60C5\u6837\u4F8B\u7BA1\u63A7
|
||||
av_sample_vedio_porn_control=\u89C6\u9891\u8272\u60C5\u6837\u4F8B\u7BA1\u63A7
|
||||
av_sample_control=\u6837\u4F8B\u7BA1\u63A7
|
||||
configure_statistics_info=\u914D\u7F6E\u7EDF\u8BA1\u4FE1\u606F
|
||||
harm_level=\u5371\u5BB3\u7A0B\u5EA6
|
||||
src_file=\u6E90\u6587\u4EF6
|
||||
select_file=\u8BF7\u9009\u62E9\u4E0A\u4F20\u6587\u4EF6
|
||||
@@ -772,7 +773,7 @@ not_number=%s\u5FC5\u987B\u4E3A\u6570\u5B57
|
||||
#=============region_value,config form title=================
|
||||
av_sample_audio=\u97F3\u9891\u6837\u4F8B
|
||||
av_sample_vedio=\u89C6\u9891\u6837\u4F8B
|
||||
av_sample_pitrue=\u56FE\u7247\u6837\u4F8B
|
||||
av_sample_picture=\u56FE\u7247\u6837\u4F8B
|
||||
av_sample_voip=voip\u6837\u4F8B
|
||||
av_sample_audio_porn=\u97F3\u9891\u8272\u60C5\u573A\u666F\u6837\u4F8B
|
||||
av_sample_vedio_porn=\u89C6\u9891\u8272\u60C5\u573A\u666F\u6837\u4F8B
|
||||
@@ -844,4 +845,176 @@ single_file_upload_size_error=\u6587\u4EF6%s\u7684\u5927\u5C0F\u4E3A%s\uFF0C\u51
|
||||
total_file_upload_size_error=\u4E0A\u4F20\u6587\u4EF6\u7684\u603B\u5927\u5C0F\u6700\u5927\u4E3A%s\uFF0C\u5141\u8BB8\u4E0A\u4F20\u7684\u6587\u4EF6\u603B\u5927\u5C0F\u4E3A%s\uFF01
|
||||
file_upload_type_error=%s\u6587\u4EF6\u7C7B\u578B\u51FA\u9519\uFF0C\u5141\u8BB8\u4E0A\u4F20\u7684\u6587\u4EF6\u7C7B\u578B\u6709%s\uFF01
|
||||
file_upload_error=\u6587\u4EF6\u4E0A\u4F20\u5931\u8D25\uFF01
|
||||
#=============multipart upload error info=================
|
||||
#=============multipart upload error info=================
|
||||
audio_sample_reject=\u97F3\u9891\u6837\u4F8B\u7BA1\u63A7
|
||||
audio_sample_monit=\u97F3\u9891\u6837\u4F8B\u76D1\u6D4B
|
||||
video_sample_reject=\u89C6\u9891\u6837\u4F8B\u7BA1\u63A7
|
||||
video_sample_monit=\u89C6\u9891\u6837\u4F8B\u76D1\u6D4B
|
||||
pic_sample_reject=\u56FE\u7247\u6837\u4F8B\u7BA1\u63A7
|
||||
pic_sample_monit=\u56FE\u7247\u6837\u4F8B\u76D1\u6D4B
|
||||
voip_sample_reject=VoIP\u6837\u4F8B\u7BA1\u63A7
|
||||
voip_sample_monit=VoIP\u6837\u4F8B\u76D1\u6D4B
|
||||
audio_pornography_sample_reject=\u97F3\u9891\u8272\u60C5\u6837\u4F8B\u7BA1\u63A7
|
||||
audio_pornography_sample_monit=\u97F3\u9891\u8272\u60C5\u6837\u4F8B\u76D1\u6D4B
|
||||
video_pornography_sample_reject=\u89C6\u9891\u8272\u60C5\u6837\u4F8B\u7BA1\u63A7
|
||||
video_pornography_sample_monit=\u89C6\u9891\u8272\u60C5\u6837\u4F8B\u76D1\u6D4B
|
||||
ip_white_monit=IP\u5730\u5740\u767D\u540D\u5355\u76D1\u6D4B
|
||||
ip_white_reject=IP\u5730\u5740\u767D\u540D\u5355\u7BA1\u63A7
|
||||
ip_white_whitelist=IP\u5730\u5740\u767D\u540D\u5355
|
||||
av_voip_ip_reject=\u97F3\u89C6\u9891VoIP IP\u7BA1\u63A7
|
||||
av_voip_ip_monit=\u97F3\u89C6\u9891VoIP IP\u76D1\u6D4B
|
||||
website_http_reject=\u7F51\u7AD9HTTP\u7BA1\u63A7
|
||||
website_http_monit=\u7F51\u7AD9HTTP\u76D1\u6D4B
|
||||
domain_white_whitelist=\u5168\u5C40\u57DF\u540D\u767D\u540D\u5355
|
||||
av_content_ip_reject=\u97F3\u89C6\u9891\u5185\u5BB9IP\u914D\u7F6E\u7BA1\u63A7
|
||||
av_content_ip_monit=\u97F3\u89C6\u9891\u5185\u5BB9IP\u914D\u7F6E\u76D1\u6D4B
|
||||
ip_reject=IP\u914D\u7F6E\u7BA1\u63A7
|
||||
ip_monit=IP\u914D\u7F6E\u76D1\u6D4B
|
||||
ip_drop=IP\u914D\u7F6E\u4E22\u5F03
|
||||
ssl_monit=SSL\u76D1\u6D4B
|
||||
ssl_reject=SSL\u7BA1\u63A7
|
||||
av_pic_ip_reject=\u97F3\u89C6\u9891\u56FE\u7247IP\u914D\u7F6E\u7BA1\u63A7
|
||||
av_pic_ip_monit=\u97F3\u89C6\u9891\u56FE\u7247IP\u914D\u7F6E\u76D1\u6D4B
|
||||
av_content_url_reject=\u97F3\u89C6\u9891\u5185\u5BB9URL\u914D\u7F6E\u7BA1\u63A7
|
||||
av_content_url_monit=\u97F3\u89C6\u9891\u5185\u5BB9URL\u914D\u7F6E\u76D1\u6D4B
|
||||
av_pic_url_reject=\u97F3\u89C6\u9891\u56FE\u7247URL\u914D\u7F6E\u7BA1\u63A7
|
||||
av_pic_url_monit=\u97F3\u89C6\u9891\u56FE\u7247URL\u914D\u7F6E\u76D1\u6D4B
|
||||
ip_loop=IP\u914D\u7F6E\u56DE\u6D41
|
||||
website_dns_reject=\u7F51\u7AD9DNS\u7BA1\u63A7
|
||||
website_dns_monit=\u7F51\u7AD9DNS\u76D1\u6D4B
|
||||
mail_reject=\u90AE\u4EF6\u7BA1\u63A7
|
||||
mail_monit=\u90AE\u4EF6\u76D1\u6D4B
|
||||
ssh_monit=ssh\u76D1\u6D4B
|
||||
ssh_reject=ssh\u7BA1\u63A7
|
||||
ftp_monit=FTP\u76D1\u6D4B
|
||||
ftp_reject=FTP\u7BA1\u63A7
|
||||
openvpn_reject=openvpn\u7BA1\u63A7
|
||||
openvpn_monit=openvpn\u76D1\u6D4B
|
||||
l2tp_reject=l2tp\u7BA1\u63A7
|
||||
l2tp_monit=l2tp\u76D1\u6D4B
|
||||
pptp_reject=pptp\u7BA1\u63A7
|
||||
pptp_monit=pptp\u76D1\u6D4B
|
||||
socks_reject=SOCKS\u7BA1\u63A7
|
||||
socks_monit=socks\u76D1\u6D4B
|
||||
gre_drop=GRE\u4E22\u5F03
|
||||
gre_monit=GRE\u76D1\u6D4B
|
||||
ike_drop=ike\u4E22\u5F03
|
||||
ike_monit=ike\u76D1\u6D4B
|
||||
ipsec_drop=IPSEC\u4E22\u5F03
|
||||
ipsec_monit=IPSEC\u76D1\u6D4B
|
||||
bgp_reject=BGP\u7BA1\u63A7
|
||||
bgp_monit=BGP\u76D1\u6D4B
|
||||
file_transfer_digest_monit=\u6587\u4EF6\u4F20\u8F93\u6458\u8981\u914D\u7F6E\u76D1\u6D4B
|
||||
file_transfer_digest_reject=\u6587\u4EF6\u4F20\u8F93\u6458\u8981\u914D\u7F6E\u7BA1\u63A7
|
||||
xmpp_monit=XMPP\u76D1\u6D4B
|
||||
xmpp_reject=xmpp\u7BA1\u63A7
|
||||
ip_intercepter_monit=IP\u62E6\u622A
|
||||
domain_monit=\u57DF\u540D\u62E6\u622A
|
||||
dns_strategy_reject=DNS\u54CD\u5E94\u7B56\u7565\u7BA1\u63A7
|
||||
proxy_http_req_body_replace=PXY HTTP\u8BF7\u6C42\u5185\u5BB9\u66FF\u6362
|
||||
proxy_http_res_body_replace=PXY HTTP\u54CD\u5E94\u5185\u5BB9\u66FF\u6362
|
||||
dns_fake_ip_reject=DNS\u6B3A\u9A97Ip\u7BA1\u63A7
|
||||
app_strategy_reject=APP\u7B56\u7565\u7BA1\u63A7
|
||||
app_strategy_ratelimit=APP\u7B56\u7565\u9650\u901F
|
||||
proxy_ip_redirect=PXY IP \u91CD\u5B9A\u5411
|
||||
proxy_ip_forward=PXY IP\u8F6C\u53D1
|
||||
app_protocol_ip_reject=APP\u534F\u8BAEIP\u7BA1\u63A7
|
||||
app_http_feature_monit=APP HTTP\u7279\u5F81\u76D1\u6D4B
|
||||
app_domain_feature_monit=APP\u57DF\u540D\u7279\u5F81\u76D1\u6D4B
|
||||
app_byte_feature_monit=APP\u5B57\u8282\u7279\u5F81\u76D1\u6D4B
|
||||
proxy_domain_forward=PXY\u57DF\u540D\u8F6C\u53D1
|
||||
ip_ratelimit=IP\u9650\u6D41
|
||||
domain_ratelimit=\u57DF\u540D\u9650\u6D41
|
||||
ip_complex_loop=IP\u590D\u7528
|
||||
http_redirect=HTTP\u91CD\u5B9A\u5411\u914D\u7F6E
|
||||
ddos_ip_drop=DDOS\u76EE\u6807\u9632\u62A4IP
|
||||
ip_reuse_adress_pool_loop=IP\u590D\u7528\u5730\u5740\u6C60\u914D\u7F6E
|
||||
app_strategy_monit=APP\u7B56\u7565\u76D1\u6D4B
|
||||
app_strategy_drop=APP\u7B56\u7565\u4E22\u5F03
|
||||
#=============function_service_dict==>service_name=================
|
||||
audio_sample_reject=\u97F3\u9891\u6837\u4F8B\u7BA1\u63A7
|
||||
audio_sample_monit=\u97F3\u9891\u6837\u4F8B\u76D1\u6D4B
|
||||
video_sample_reject=\u89C6\u9891\u6837\u4F8B\u7BA1\u63A7
|
||||
video_sample_monit=\u89C6\u9891\u6837\u4F8B\u76D1\u6D4B
|
||||
pic_sample_reject=\u56FE\u7247\u6837\u4F8B\u7BA1\u63A7
|
||||
pic_sample_monit=\u56FE\u7247\u6837\u4F8B\u76D1\u6D4B
|
||||
voip_sample_reject=VoIP\u6837\u4F8B\u7BA1\u63A7
|
||||
voip_sample_monit=VoIP\u6837\u4F8B\u76D1\u6D4B
|
||||
audio_pornography_sample_reject=\u97F3\u9891\u8272\u60C5\u6837\u4F8B\u7BA1\u63A7
|
||||
audio_pornography_sample_monit=\u97F3\u9891\u8272\u60C5\u6837\u4F8B\u76D1\u6D4B
|
||||
video_pornography_sample_reject=\u89C6\u9891\u8272\u60C5\u6837\u4F8B\u7BA1\u63A7
|
||||
video_pornography_sample_monit=\u89C6\u9891\u8272\u60C5\u6837\u4F8B\u76D1\u6D4B
|
||||
ip_white_monit=IP\u5730\u5740\u767D\u540D\u5355\u76D1\u6D4B
|
||||
ip_white_reject=IP\u5730\u5740\u767D\u540D\u5355\u7BA1\u63A7
|
||||
ip_white_whitelist=IP\u5730\u5740\u767D\u540D\u5355
|
||||
av_voip_ip_reject=\u97F3\u89C6\u9891VoIP IP\u7BA1\u63A7
|
||||
av_voip_ip_monit=\u97F3\u89C6\u9891VoIP IP\u76D1\u6D4B
|
||||
website_http_reject=\u7F51\u7AD9HTTP\u7BA1\u63A7
|
||||
website_http_monit=\u7F51\u7AD9HTTP\u76D1\u6D4B
|
||||
domain_white_whitelist=\u5168\u5C40\u57DF\u540D\u767D\u540D\u5355
|
||||
av_content_ip_reject=\u97F3\u89C6\u9891\u5185\u5BB9IP\u914D\u7F6E\u7BA1\u63A7
|
||||
av_content_ip_monit=\u97F3\u89C6\u9891\u5185\u5BB9IP\u914D\u7F6E\u76D1\u6D4B
|
||||
ip_reject=IP\u914D\u7F6E\u7BA1\u63A7
|
||||
ip_monit=IP\u914D\u7F6E\u76D1\u6D4B
|
||||
ip_drop=IP\u914D\u7F6E\u4E22\u5F03
|
||||
ssl_monit=SSL\u76D1\u6D4B
|
||||
ssl_reject=SSL\u7BA1\u63A7
|
||||
av_pic_ip_reject=\u97F3\u89C6\u9891\u56FE\u7247IP\u914D\u7F6E\u7BA1\u63A7
|
||||
av_pic_ip_monit=\u97F3\u89C6\u9891\u56FE\u7247IP\u914D\u7F6E\u76D1\u6D4B
|
||||
av_content_url_reject=\u97F3\u89C6\u9891\u5185\u5BB9URL\u914D\u7F6E\u7BA1\u63A7
|
||||
av_content_url_monit=\u97F3\u89C6\u9891\u5185\u5BB9URL\u914D\u7F6E\u76D1\u6D4B
|
||||
av_pic_url_reject=\u97F3\u89C6\u9891\u56FE\u7247URL\u914D\u7F6E\u7BA1\u63A7
|
||||
av_pic_url_monit=\u97F3\u89C6\u9891\u56FE\u7247URL\u914D\u7F6E\u76D1\u6D4B
|
||||
ip_loop=IP\u914D\u7F6E\u56DE\u6D41
|
||||
website_dns_reject=\u7F51\u7AD9DNS\u7BA1\u63A7
|
||||
website_dns_monit=\u7F51\u7AD9DNS\u76D1\u6D4B
|
||||
mail_reject=\u90AE\u4EF6\u7BA1\u63A7
|
||||
mail_monit=\u90AE\u4EF6\u76D1\u6D4B
|
||||
ssh_monit=ssh\u76D1\u6D4B
|
||||
ssh_reject=ssh\u7BA1\u63A7
|
||||
ftp_monit=FTP\u76D1\u6D4B
|
||||
ftp_reject=FTP\u7BA1\u63A7
|
||||
openvpn_reject=openvpn\u7BA1\u63A7
|
||||
openvpn_monit=openvpn\u76D1\u6D4B
|
||||
l2tp_reject=l2tp\u7BA1\u63A7
|
||||
l2tp_monit=l2tp\u76D1\u6D4B
|
||||
pptp_reject=pptp\u7BA1\u63A7
|
||||
pptp_monit=pptp\u76D1\u6D4B
|
||||
socks_reject=SOCKS\u7BA1\u63A7
|
||||
socks_monit=socks\u76D1\u6D4B
|
||||
gre_drop=GRE\u4E22\u5F03
|
||||
gre_monit=GRE\u76D1\u6D4B
|
||||
ike_drop=ike\u4E22\u5F03
|
||||
ike_monit=ike\u76D1\u6D4B
|
||||
ipsec_drop=IPSEC\u4E22\u5F03
|
||||
ipsec_monit=IPSEC\u76D1\u6D4B
|
||||
bgp_reject=BGP\u7BA1\u63A7
|
||||
bgp_monit=BGP\u76D1\u6D4B
|
||||
file_transfer_digest_monit=\u6587\u4EF6\u4F20\u8F93\u6458\u8981\u914D\u7F6E\u76D1\u6D4B
|
||||
file_transfer_digest_reject=\u6587\u4EF6\u4F20\u8F93\u6458\u8981\u914D\u7F6E\u7BA1\u63A7
|
||||
xmpp_monit=XMPP\u76D1\u6D4B
|
||||
xmpp_reject=xmpp\u7BA1\u63A7
|
||||
ip_intercepter_monit=IP\u62E6\u622A
|
||||
domain_monit=\u57DF\u540D\u62E6\u622A
|
||||
dns_strategy_reject=DNS\u54CD\u5E94\u7B56\u7565\u7BA1\u63A7
|
||||
proxy_http_req_body_replace=PXY HTTP\u8BF7\u6C42\u5185\u5BB9\u66FF\u6362
|
||||
proxy_http_res_body_replace=PXY HTTP\u54CD\u5E94\u5185\u5BB9\u66FF\u6362
|
||||
dns_fake_ip_reject=DNS\u6B3A\u9A97Ip\u7BA1\u63A7
|
||||
app_strategy_reject=APP\u7B56\u7565\u7BA1\u63A7
|
||||
app_strategy_ratelimit=APP\u7B56\u7565\u9650\u901F
|
||||
proxy_ip_redirect=PXY IP \u91CD\u5B9A\u5411
|
||||
proxy_ip_forward=PXY IP\u8F6C\u53D1
|
||||
app_protocol_ip_reject=APP\u534F\u8BAEIP\u7BA1\u63A7
|
||||
app_http_feature_monit=APP HTTP\u7279\u5F81\u76D1\u6D4B
|
||||
app_domain_feature_monit=APP\u57DF\u540D\u7279\u5F81\u76D1\u6D4B
|
||||
app_byte_feature_monit=APP\u5B57\u8282\u7279\u5F81\u76D1\u6D4B
|
||||
proxy_domain_forward=PXY\u57DF\u540D\u8F6C\u53D1
|
||||
ip_ratelimit=IP\u9650\u6D41
|
||||
domain_ratelimit=\u57DF\u540D\u9650\u6D41
|
||||
ip_complex_loop=IP\u590D\u7528
|
||||
http_redirect=HTTP\u91CD\u5B9A\u5411\u914D\u7F6E
|
||||
ddos_ip_drop=DDOS\u76EE\u6807\u9632\u62A4IP
|
||||
ip_reuse_adress_pool_loop=IP\u590D\u7528\u5730\u5740\u6C60\u914D\u7F6E
|
||||
app_strategy_monit=APP\u7B56\u7565\u76D1\u6D4B
|
||||
app_strategy_drop=APP\u7B56\u7565\u4E22\u5F03
|
||||
#=============function_service_dict==>service_name=================
|
||||
|
||||
@@ -59,7 +59,7 @@ $(function(){
|
||||
},
|
||||
errorContainer: "#messageBox",
|
||||
errorPlacement: function(error, element) {
|
||||
$("#messageBox").text("输入有误,请先更正。");
|
||||
$("#messageBox").text("<spring:message code='enter_error'/>");
|
||||
if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
|
||||
error.appendTo(element.parent().parent());
|
||||
} else {
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
|
||||
window.frames['mainFrame'].location="${ctx}/configure/statistics/configureStateStatistics";
|
||||
//国际化切换
|
||||
var lang = "${cookie.Language.value }".toLowerCase();
|
||||
var $obj;
|
||||
@@ -105,7 +105,6 @@ function page_turn(id, functionId,level, name, url,obj){
|
||||
App.scrollTo()
|
||||
|
||||
App.startPageLoading({animate:true});
|
||||
|
||||
//调入页面
|
||||
if(url.indexOf("?")>0){
|
||||
url = url+"&functionId="+functionId;
|
||||
@@ -363,13 +362,24 @@ window.onresize=function(){
|
||||
|
||||
<div class="page-bar">
|
||||
<ul class="page-breadcrumb">
|
||||
<li><a href="index.html"><spring:message code="home"></spring:message></a> <i class="fa fa-circle"></i></li>
|
||||
<li><a href="${ctx}/configure/statistics/configureStateStatistics" target="mainFrame"><spring:message code="home"></spring:message></a> <i class="fa fa-circle"></i></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
<iframe id="mainFrame" name="mainFrame" width="100%" onload="changeFrameHeight()" frameborder="0" srcolling="no">
|
||||
浏览器不支持嵌入式框架或配置为不显示嵌入式框架。
|
||||
<iframe id="mainFrame" name="mainFrame" width="100%" onload="changeFrameHeight()" frameborder="0" srcolling="no">
|
||||
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><input type="checkbox" class="i-checks" id="checkAll"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</iframe>
|
||||
|
||||
|
||||
|
||||
127
src/main/webapp/WEB-INF/views/index.jsp
Normal file
127
src/main/webapp/WEB-INF/views/index.jsp
Normal file
@@ -0,0 +1,127 @@
|
||||
<%@ page contentType="text/html;charset=UTF-8"%>
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<style type="text/css">
|
||||
.table > thead > tr > th {
|
||||
vertical-align: bottom;
|
||||
border-bottom: 2px solid #e7ecf1; }
|
||||
.table > caption + thead > tr:first-child > th,
|
||||
.table > caption + thead > tr:first-child > td,
|
||||
.table > colgroup + thead > tr:first-child > th,
|
||||
.table > colgroup + thead > tr:first-child > td,
|
||||
.table > thead:first-child > tr:first-child > th,
|
||||
.table > thead:first-child > tr:first-child > td {
|
||||
border-top: 0;
|
||||
background-color: #E9E9E9;
|
||||
color: #333333;
|
||||
height: 38px;
|
||||
line-height: 38px;
|
||||
padding-top: 0px;
|
||||
padding-right: 10px;
|
||||
padding-bottom: 0px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
.table > tbody + tbody {
|
||||
border-top: 2px solid #D9D9D9; }
|
||||
.table .table {
|
||||
background-color: #fff; }
|
||||
|
||||
.table-condensed > thead > tr > th,
|
||||
.table-condensed > thead > tr > td,
|
||||
.table-condensed > tbody > tr > th,
|
||||
.table-condensed > tbody > tr > td,
|
||||
.table-condensed > tfoot > tr > th,
|
||||
.table-condensed > tfoot > tr > td {
|
||||
padding-left:10px; }
|
||||
|
||||
.table-bordered {
|
||||
border: 1px solid #D9D9D9; }
|
||||
.table-bordered > thead > tr > th,
|
||||
.table-bordered > thead > tr > td,
|
||||
.table-bordered > tbody > tr > th,
|
||||
.table-bordered > tbody > tr > td,
|
||||
.table-bordered > tfoot > tr > th,
|
||||
.table-bordered > tfoot > tr > td {
|
||||
border: 1px solid #D9D9D9; }
|
||||
.table-bordered > thead > tr > th,
|
||||
.table-bordered > thead > tr > td {
|
||||
border-bottom-width: 2px; }
|
||||
</style>
|
||||
</head>
|
||||
<title>index</title>
|
||||
</head>
|
||||
|
||||
<body class="page-full-width">
|
||||
<!--<input id="page_load_num" type="hidden" />
|
||||
<div id="alert" class="modal hide fade">
|
||||
<div class="modal-header" id="modal_title">
|
||||
<button type="button" class="close" data-dismiss="modal"
|
||||
aria-hidden="true"></button>
|
||||
<h3>
|
||||
Note
|
||||
</h3>
|
||||
</div>
|
||||
|
||||
<div class="modal-body" id="modal_body">
|
||||
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" id="OK" class="btn red"
|
||||
onclick="statisticProtocol()">
|
||||
<s:text name="button.confirm"/>
|
||||
</button>
|
||||
<button type="button" data-dismiss="modal" class="btn">
|
||||
<s:text name="button.cancel"/>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
</div> -->
|
||||
<div class="page-content">
|
||||
<font size="4"><i class="fa fa-cogs"><spring:message code="configure_statistics_info"/></i></font> <a style="color:#333333" href="${ctx}/configure/statistics/configureStateStatistics" class="icon-refresh pull-right"> </a>
|
||||
<h5 class="page-header"></h5>
|
||||
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap">
|
||||
<thead>
|
||||
<tr>
|
||||
<th><spring:message code="service_name"/></th>
|
||||
<th><spring:message code="approved"/></th>
|
||||
<th><spring:message code="unapproved"/></th>
|
||||
<th><spring:message code="cancel_approved"/></th>
|
||||
<th><spring:message code="created"/></th>
|
||||
<th><spring:message code="deleted"/></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach items="${configStatistics }" var="statistics" varStatus="status" step="1">
|
||||
<tr>
|
||||
<td>
|
||||
<c:forEach items="${serviceList }" var="serviceDict" varStatus="status" step="1">
|
||||
<c:if test="${serviceDict.serviceId eq statistics.service }">
|
||||
<spring:message code="${serviceDict.serviceName }"/>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</td>
|
||||
<td>
|
||||
${statistics.approved }
|
||||
</td>
|
||||
<td>
|
||||
${statistics.unapproved }
|
||||
</td>
|
||||
<td>
|
||||
${statistics.cancle_approved }
|
||||
</td>
|
||||
<td>
|
||||
${statistics.created }
|
||||
</td>
|
||||
<td>
|
||||
${statistics.deleted }
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user