(1)共用页面位置移动

(2)IP限流,域名限流提交
(3)页面部分权限bug修复
(4)部分菜单国际化代码提交
This commit is contained in:
wangxin
2018-06-23 15:34:21 +08:00
parent 3206972ee9
commit d630f20b17
10 changed files with 177 additions and 14 deletions

View File

@@ -0,0 +1,112 @@
/**
*@Title: ControlController.java
*@Package com.nis.web.controller.configuration.proxy
*@Description TODO
*@author dell
*@date 2018年6月22日 下午4:35:42
*@version 版本号
*/
package com.nis.web.controller.configuration.manipulation;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.shiro.authz.annotation.Logical;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.BaseStringCfg;
import com.nis.domain.configuration.HttpUrlCfg;
import com.nis.domain.configuration.IpPortCfg;
import com.nis.web.controller.configuration.CommonController;
/**
* @ClassName: ControlController.java
* @Description: TODO
* @author (dell)
* @date 2018年6月22日 下午4:35:42
* @version V1.0
*/
@Controller ///manipulation/ratelimit/domain/list?cfgName=domain_ratelimit
@RequestMapping("${adminPath}/manipulation/ratelimit")
public class RatelimitController extends CommonController {
@RequestMapping(value = {"/ip/list"})
@RequiresPermissions(value={"ip:ratelimit:config","ip:ratelimit:audit"},logical=Logical.OR)
public String ipList(String cfgName,Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._ipList(cfgName,model, cfg, request, response);
model.addAttribute("urlPrefix","/manipulation/ratelimit");
model.addAttribute("requiresPermissionPrefix","ip:ratelimit");
return "/cfg/common/ipList";
}
@RequestMapping(value = {"/domain/list"})
@RequiresPermissions(value={"domain:ratelimit:config","domain:ratelimit:audit"},logical=Logical.OR)
public String domainList(String cfgName,Model model,@ModelAttribute("cfg")HttpUrlCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._domainList(cfgName,model, cfg, request, response);
model.addAttribute("urlPrefix","/manipulation/ratelimit");
model.addAttribute("requiresPermissionPrefix","domain:ratelimit");
return "/cfg/common/domainList";
}
@RequestMapping(value = {"/ip/form"})
@RequiresPermissions(value={"ip:ratelimit:config"})
public String ipForm(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(cfgName,model, ids, functionId, entity);
model.addAttribute("urlPrefix","/manipulation/ratelimit");
model.addAttribute("requiresPermissionPrefix","ip:ratelimit");
return "/cfg/common/ipForm";
}
@RequestMapping(value = {"/domain/form"})
@RequiresPermissions(value={"domain:ratelimit:config"})
public String domainForm(String cfgName,Model model,String ids,Integer functionId,BaseStringCfg entity) {
this._domainForm(cfgName, model, ids, functionId, entity);
model.addAttribute("urlPrefix","/manipulation/ratelimit");
model.addAttribute("requiresPermissionPrefix","domain:ratelimit");
return "/cfg/common/domainForm";
}
@RequestMapping(value = {"/ip/saveOrUpdate"})
public String saveOrUpdateIp(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(cfgName,model, cfg);
return "redirect:" + adminPath +"/manipulation/ratelimit/ip/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/domain/saveOrUpdate"})
public String saveOrUpdateDomain(String cfgName,RedirectAttributes model, HttpUrlCfg cfg) {
this._saveOrUpdateDomain(cfgName, model, cfg);
return "redirect:" + adminPath +"/manipulation/ratelimit/domain/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/ip/delete"})
@RequiresPermissions("ip:ratelimit:config")
public String deleteIp(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(cfgName,ids, compileIds, functionId, model);
model.addAttribute("urlPrefix","/proxy/ratelimit");
model.addAttribute("requiresPermissionPrefix","ip:ratelimit");
return "redirect:" + adminPath +"/manipulation/ratelimit/ip/list?functionId="+functionId;
}
@RequestMapping(value = {"/domain/delete"})
@RequiresPermissions("domain:ratelimit:config")
public String deleteDomain(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteDomain(cfgName, ids, compileIds, functionId, model);
model.addAttribute("urlPrefix","/manipulation/ratelimit");
model.addAttribute("requiresPermissionPrefix","domain:ratelimit");
return "redirect:" + adminPath +"/manipulation/ratelimit/domain/list?functionId="+functionId;
}
@RequestMapping(value = {"/ip/audit"})
// @RequiresPermissions("ip:ratelimit:audit")
public String auditIp(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(cfgName,ids, cfg, redirectAttributes);
redirectAttributes.addAttribute("urlPrefix","/manipulation/ratelimit");
redirectAttributes.addAttribute("requiresPermissionPrefix","ip:ratelimit");
return "redirect:" + adminPath +"/manipulation/ratelimit/ip/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/domain/audit"})
// @RequiresPermissions("domain:ratelimit:audit")
public String auditDomain(String ids,HttpUrlCfg cfg,RedirectAttributes redirectAttributes) {
this._auditDomain(ids, cfg, redirectAttributes);
redirectAttributes.addAttribute("urlPrefix","/manipulation/ratelimit");
redirectAttributes.addAttribute("requiresPermissionPrefix","domain:ratelimit");
return "redirect:" + adminPath +"/manipulation/ratelimit/domain/list?functionId="+cfg.getFunctionId();
}
}

View File

@@ -41,15 +41,15 @@ public class ControlController extends CommonController {
this._ipList(cfgName,model, cfg, request, response);
model.addAttribute("urlPrefix","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:ip");
return "/cfg/proxy/ipList";
return "/cfg/common/ipList";
}
@RequestMapping(value = {"/domain/list"})
@RequiresPermissions(value={"control:ip:config","control:ip:audit"},logical=Logical.OR)
@RequiresPermissions(value={"control:domain:config","control:domain:audit"},logical=Logical.OR)
public String domainList(String cfgName,Model model,@ModelAttribute("cfg")HttpUrlCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._domainList(cfgName,model, cfg, request, response);
model.addAttribute("urlPrefix","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:domain");
return "/cfg/proxy/domainList";
return "/cfg/common/domainList";
}
@RequestMapping(value = {"/ip/form"})
@RequiresPermissions(value={"control:ip:config"})
@@ -57,15 +57,15 @@ public class ControlController extends CommonController {
this._ipForm(cfgName,model, ids, functionId, entity);
model.addAttribute("urlPrefix","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:ip");
return "/cfg/proxy/ipForm";
return "/cfg/common/ipForm";
}
@RequestMapping(value = {"/domain/form"})
@RequiresPermissions(value={"intercept:domain:config"})
@RequiresPermissions(value={"control:domain:config"})
public String domainForm(String cfgName,Model model,String ids,Integer functionId,BaseStringCfg entity) {
this._domainForm(cfgName, model, ids, functionId, entity);
model.addAttribute("urlPrefix","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:domain");
return "/cfg/proxy/domainForm";
return "/cfg/common/domainForm";
}
@RequestMapping(value = {"/ip/saveOrUpdate"})
public String saveOrUpdateIp(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
@@ -91,7 +91,7 @@ public class ControlController extends CommonController {
this._deleteDomain(cfgName, ids, compileIds, functionId, model);
model.addAttribute("urlPrefix","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:domain");
return "redirect:" + adminPath +"/proxy/config/domain/list?functionId="+functionId;
return "redirect:" + adminPath +"/proxy/control/domain/list?functionId="+functionId;
}
@RequestMapping(value = {"/ip/audit"})
// @RequiresPermissions("control:ip:audit")

View File

@@ -31,7 +31,7 @@ public class InterceptController extends CommonController{
this._ipList(cfgName,model, cfg, request, response);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:ip");
return "/cfg/proxy/ipList";
return "/cfg/common/ipList";
}
@RequestMapping(value = {"/domain/list"})
@RequiresPermissions(value={"intercept:domain:config","intercept:domain:audit"},logical=Logical.OR)
@@ -39,7 +39,7 @@ public class InterceptController extends CommonController{
this._domainList(cfgName,model, cfg, request, response);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:domain");
return "/cfg/proxy/domainList";
return "/cfg/common/domainList";
}
@RequestMapping(value = {"/ip/form"})
@RequiresPermissions(value={"intercept:ip:config"})
@@ -47,7 +47,7 @@ public class InterceptController extends CommonController{
this._ipForm(cfgName,model, ids, functionId, entity);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:ip");
return "/cfg/proxy/ipForm";
return "/cfg/common/ipForm";
}
@RequestMapping(value = {"/domain/form"})
@RequiresPermissions(value={"intercept:domain:config"})
@@ -55,7 +55,7 @@ public class InterceptController extends CommonController{
this._domainForm(cfgName, model, ids, functionId, entity);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:domain");
return "/cfg/proxy/domainForm";
return "/cfg/common/domainForm";
}
@RequestMapping(value = {"/ip/saveOrUpdate"})
public String saveOrUpdateIp(String cfgName,RedirectAttributes model, IpPortCfg cfg) {

View File

@@ -666,9 +666,26 @@ contrl_message=contrl message
data_message=data message
user_name=user name
#===========log end =============
#=============about proxy=========
intercept_policy=intercept policy
ip_intercept=ip intercept
domain_intercept=domain intercept
control_policy=control policy
domain_forward=domain forward
http_redirect=http redirect
http_req_replace=http request replace
http_res_replace=http response replace
#=============about proxy=========
#===========policy_group_manage start =============
all_types=all types
group_type=group type
group_name=group name
policy_group_manage=strateagy grouping management
#===========policy_group_manage end =============
#===========policy_group_manage end =============
#=============about manipulation=========
ip_multiplex_policy=ip multiplex policy
target_ip_protect=target ip protect
ratelimit_config=ratelimit config
ip_ratelimit=ip ratelimit
domain_ratelimit=domain ratelimit
#=============about manipulation=========

View File

@@ -490,9 +490,26 @@ contrl_message=contrl message
data_message=data message
user_name=user name
#===========log end =============
#=============about proxy=========
intercept_policy=intercept policy
ip_intercept=ip intercept
domain_intercept=domain intercept
control_policy=control policy
domain_forward=domain forward
http_redirect=http redirect
http_req_replace=http request replace
http_res_replace=http response replace
#=============about proxy=========
#===========policy_group_manage start =============
all_types=all types
group_type=group type
group_name=group name
policy_group_manage=strateagy grouping management
#===========policy_group_manage end =============
#===========policy_group_manage end =============
#=============about manipulation=========
ip_multiplex_policy=ip multiplex policy
target_ip_protect=target ip protect
ratelimit_config=ratelimit config
ip_ratelimit=ip ratelimit
domain_ratelimit=domain ratelimit
#=============about manipulation=========

View File

@@ -696,9 +696,26 @@ contrl_message=\u63a7\u5236\u62a5\u6587
data_message=\u6570\u636e\u62a5\u6587
user_name=\u7528\u6237\u540d\u79f0
#===========log end =============
#=============about proxy=========
intercept_policy=\u62E6\u622A\u7B56\u7565
ip_intercept=IP\u62E6\u622A
domain_intercept=\u57DF\u540D\u62E6\u622A
control_policy=\u63A7\u5236\u7B56\u7565
domain_forward=\u57DF\u540D\u8F6C\u53D1
http_redirect=http\u91CD\u5B9A\u5411
http_req_replace=http\u8BF7\u6C42\u66FF\u6362
http_res_replace=http\u54CD\u5E94\u66FF\u6362
#=============about proxy=========
#===========policy_group_manage start =============
all_types=\u6240\u6709\u7c7b\u578b
group_type=\u5206\u7ec4\u7c7b\u578b
group_name=\u5206\u7ec4\u540d\u79f0
policy_group_manage=\u7b56\u7565\u5206\u7ec4\u7ba1\u7406
#===========policy_group_manage end =============
#===========policy_group_manage end =============
#=============about manipulation=========
ip_multiplex_policy=ip\u590D\u7528\u7B56\u7565
target_ip_protect=\u76EE\u6807IP\u9632\u62A4
ratelimit_config=\u9650\u6D41\u7BA1\u7406
ip_ratelimit=ip\u9650\u6D41
domain_ratelimit=\u57DF\u540D\u9650\u6D41
#=============about manipulation=========