(1)修复共用页面左上角显示配置类别

(2)域名转发提交,与域名拦截复用页面
This commit is contained in:
wangxin
2018-06-23 14:34:27 +08:00
parent 02fc089f41
commit 3206972ee9
14 changed files with 219 additions and 154 deletions

View File

@@ -332,6 +332,7 @@ public final class Constants {
public static final String PROTOCOL_NUM_REGION = Configurations.getStringProperty("protocol_num_region","protocol_num");
public static final String BGP_IP_REGION = Configurations.getStringProperty("bgp_ip_region","bgp_ip");
public static final String KEYWORD_EXPR = Configurations.getStringProperty("keyword_expr","***and***");
public static final Integer SERVICE_PXY_DOMAIN_INTERCEPT = Configurations.getIntProperty("service_pxy_domain_intercept",0x201);
//用户自定义域分隔符
public static final String USER_REGION_SPLIT = Configurations.getStringProperty("user_region_split", ";");
//用户自定义域占位符

View File

@@ -20,6 +20,8 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
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.exceptions.MaatConvertException;
import com.nis.util.Constants;
@@ -33,14 +35,24 @@ import com.nis.web.controller.BaseController;
* @version V1.0
*/
public class CommonController extends BaseController {
public void _ipList(Model model,IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
public void _ipList(String cfgName,Model model,IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
model.addAttribute("cfgName", cfgName);
cfg.setTableName(IpPortCfg.getTablename());
Page<BaseIpCfg> searchPage=new Page<BaseIpCfg>(request,response,"r");
Page<BaseIpCfg> page = ipCfgService.findPage(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
}
public void _ipForm(Model model,String ids,Integer functionId,BaseIpCfg entity) {
public void _domainList(String cfgName,Model model,HttpUrlCfg cfg,HttpServletRequest request,HttpServletResponse response) {
model.addAttribute("cfgName", cfgName);
cfg.setTableName(HttpUrlCfg.getTablename());
Page<BaseStringCfg> searchPage=new Page<BaseStringCfg>(request,response,"r");
Page<BaseStringCfg> page = stringCfgService.findPage(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
}
public void _ipForm(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
model.addAttribute("cfgName", cfgName);
if(StringUtils.isNotBlank(ids)){
entity = ipCfgService.getIpCfgById(IpPortCfg.getTablename(),Long.parseLong(ids));
}
@@ -56,7 +68,24 @@ public class CommonController extends BaseController {
initFormCondition(model,entity);
}
}
public void _saveOrUpdateIp(RedirectAttributes model, IpPortCfg cfg) {
public void _domainForm(String cfgName,Model model,String ids,Integer functionId,BaseStringCfg entity) {
model.addAttribute("cfgName", cfgName);
if(StringUtils.isNotBlank(ids)){
entity = stringCfgService.getStringCfgById(HttpUrlCfg.getTablename(),Long.parseLong(ids));
}
if(entity.getCfgId()!=null){
model.addAttribute("_cfg", entity);
initUpdateFormCondition(model,entity);
}else{
HttpUrlCfg cfg=new HttpUrlCfg();
cfg.initDefaultValue();
cfg.setFunctionId(entity.getFunctionId());
model.addAttribute("_cfg", cfg);
initFormCondition(model,entity);
}
}
public void _saveOrUpdateIp(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
model.addAttribute("cfgName", cfgName);
Date date=new Date();
cfg.setTableName(IpPortCfg.getTablename());
logger.info("saveOrUpdateIp loaded");
@@ -78,7 +107,31 @@ public class CommonController extends BaseController {
addMessage(model,"save_failed");
}
}
public void _deleteIp(String ids,String compileIds,Integer functionId,RedirectAttributes model) {
public void _saveOrUpdateDomain(String cfgName,RedirectAttributes model, HttpUrlCfg cfg) {
model.addAttribute("cfgName", cfgName);
cfg.setTableName(HttpUrlCfg.getTablename());
logger.info("saveOrUpdateDomain loaded");
try{
Date date=new Date();
cfg.setIsValid(Constants.VALID_NO);
cfg.setIsAudit(Constants.AUDIT_NOT_YET);
if(cfg.getCfgId()==null){//新增
cfg.setCreatorId(cfg.getCurrentUser().getId());
cfg.setCreateTime(date);
stringCfgService.addStringCfg((BaseStringCfg)cfg);
}else{//修改
cfg.setEditorId(cfg.getCurrentUser().getId());
cfg.setEditTime(new Date());
stringCfgService.updateStringCfg((BaseStringCfg)cfg);
}
addMessage(model,"save_success");
}catch(Exception e){
logger.error("保存失败",e);
addMessage(model,"save_failed");
}
}
public void _deleteIp(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
model.addAttribute("cfgName", cfgName);
try{
ipCfgService.deleteIp(ids,compileIds,functionId.intValue());
addMessage(model,"delete_success");
@@ -87,7 +140,18 @@ public class CommonController extends BaseController {
addMessage(model,"delete_failed");
}
}
public void _auditIp(String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
public void _deleteDomain(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
model.addAttribute("cfgName", cfgName);
try{
stringCfgService.deleteDomain(ids,compileIds,functionId.intValue());
addMessage(model,"delete_success");
}catch(Exception e){
logger.error("删除失败", e);
addMessage(model,"delete_failed");
}
}
public void _auditIp(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
redirectAttributes.addAttribute("cfgName", cfgName);
try{
for(String id:ids.split(",")){
Long.parseLong(id);
@@ -111,4 +175,28 @@ public class CommonController extends BaseController {
addMessage(redirectAttributes, "audit_failed");
}
}
public void _auditDomain(String ids,HttpUrlCfg cfg,RedirectAttributes redirectAttributes) {
try{
for(String id:ids.split(",")){
Long.parseLong(id);
}
List<BaseStringCfg> beans=stringCfgService.getListByCfgId(HttpUrlCfg.getTablename(),ids);
Date date=new Date();
for(BaseStringCfg bean:beans){
bean.setTableName(HttpUrlCfg.getTablename());
bean.setAuditorId(bean.getCurrentUser().getId());
bean.setAuditTime(date);
bean.setIsAudit(cfg.getIsAudit());
bean.setIsValid(cfg.getIsValid());
stringCfgService.auditDomain(bean);
}
addMessage(redirectAttributes,"audit_success");
}catch(MaatConvertException e){
logger.error("审核失败", e);
addMessage(redirectAttributes, e.getPrefix()+e.getResult().getReason());
}catch(Exception e){
logger.error("审核失败", e);
addMessage(redirectAttributes, "audit_failed");
}
}
}

View File

@@ -16,7 +16,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.IpPortCfg;
import com.nis.exceptions.MaatConvertException;
@@ -33,7 +32,8 @@ import com.nis.web.controller.BaseController;
public class IpController extends BaseController{
@RequestMapping(value = {"list"})
@RequiresPermissions(value={"iplist:config","iplist:audit"},logical=Logical.OR)
public String list(Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
public String list(String cfgName,Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
model.addAttribute("cfgName", cfgName);
cfg.setTableName(IpPortCfg.getTablename());
Page<BaseIpCfg> searchPage=new Page<BaseIpCfg>(request,response,"r");
Page<BaseIpCfg> page = ipCfgService.findPage(searchPage, cfg);
@@ -43,7 +43,8 @@ public class IpController extends BaseController{
}
@RequestMapping(value = {"form"})
@RequiresPermissions(value={"iplist:config"})
public String form(Model model,String ids,Integer functionId,BaseIpCfg entity) {
public String form(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
model.addAttribute("cfgName", cfgName);
if(StringUtils.isNotBlank(ids)){
entity = ipCfgService.getIpCfgById(IpPortCfg.getTablename(),Long.parseLong(ids));
}
@@ -64,7 +65,8 @@ public class IpController extends BaseController{
return "/cfg/iplist/form";
}
@RequestMapping(value = {"saveOrUpdate"})
public String saveOrUpdate(RedirectAttributes model, IpPortCfg cfg) {
public String saveOrUpdate(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
model.addAttribute("cfgName", cfgName);
Date date=new Date();
cfg.setTableName(IpPortCfg.getTablename());
logger.info("saveOrUpdateIp loaded");
@@ -89,7 +91,8 @@ public class IpController extends BaseController{
}
@RequestMapping(value = {"delete"})
@RequiresPermissions("iplist:config")
public String delete(String ids,String compileIds,Integer functionId,RedirectAttributes model) {
public String delete(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
model.addAttribute("cfgName", cfgName);
try{
ipCfgService.deleteIp(ids,compileIds,functionId.intValue());
addMessage(model,"delete_success");
@@ -101,7 +104,8 @@ public class IpController extends BaseController{
}
@RequestMapping(value = {"audit"})
// @RequiresPermissions("iplist:audit")
public String audit(String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
public String audit(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
redirectAttributes.addAttribute("cfgName", cfgName);
try{
for(String id:ids.split(",")){
Long.parseLong(id);

View File

@@ -8,13 +8,9 @@
*/
package com.nis.web.controller.configuration.proxy;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.Logical;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
@@ -23,12 +19,10 @@ 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.Page;
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.exceptions.MaatConvertException;
import com.nis.util.Constants;
import com.nis.web.controller.BaseController;
import com.nis.web.controller.configuration.CommonController;
/**
@@ -43,39 +37,76 @@ import com.nis.web.controller.configuration.CommonController;
public class ControlController extends CommonController {
@RequestMapping(value = {"/ip/list"})
@RequiresPermissions(value={"control:ip:config","control:ip:audit"},logical=Logical.OR)
public String ipList(Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._ipList(model, cfg, request, response);
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","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:ip");
return "/cfg/proxy/ipList";
}
@RequestMapping(value = {"/domain/list"})
@RequiresPermissions(value={"control:ip:config","control:ip: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";
}
@RequestMapping(value = {"/ip/form"})
@RequiresPermissions(value={"control:ip:config"})
public String ipForm(Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(model, ids, functionId, entity);
public String ipForm(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(cfgName,model, ids, functionId, entity);
model.addAttribute("urlPrefix","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:ip");
return "/cfg/proxy/ipForm";
}
@RequestMapping(value = {"/domain/form"})
@RequiresPermissions(value={"intercept: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";
}
@RequestMapping(value = {"/ip/saveOrUpdate"})
public String saveOrUpdateIp(RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(model, cfg);
public String saveOrUpdateIp(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(cfgName,model, cfg);
return "redirect:" + adminPath +"/proxy/control/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 +"/proxy/control/domain/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/ip/delete"})
@RequiresPermissions("control:ip:config")
public String deleteIp(String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(ids, compileIds, functionId, model);
public String deleteIp(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(cfgName,ids, compileIds, functionId, model);
model.addAttribute("urlPrefix","/proxy/control");
model.addAttribute("requiresPermissionPrefix","control:ip");
return "redirect:" + adminPath +"/proxy/control/ip/list?functionId="+functionId;
}
@RequestMapping(value = {"/domain/delete"})
@RequiresPermissions("config:domain:config")
public String deleteDomain(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
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;
}
@RequestMapping(value = {"/ip/audit"})
// @RequiresPermissions("control:ip:audit")
public String auditIp(String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(ids, cfg, redirectAttributes);
public String auditIp(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(cfgName,ids, cfg, redirectAttributes);
redirectAttributes.addAttribute("urlPrefix","/proxy/control");
redirectAttributes.addAttribute("requiresPermissionPrefix","control:ip");
return "redirect:" + adminPath +"/proxy/control/ip/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/domain/audit"})
// @RequiresPermissions("control:domain:audit")
public String auditDomain(String ids,HttpUrlCfg cfg,RedirectAttributes redirectAttributes) {
this._auditDomain(ids, cfg, redirectAttributes);
redirectAttributes.addAttribute("urlPrefix","/proxy/control");
redirectAttributes.addAttribute("requiresPermissionPrefix","control:domain");
return "redirect:" + adminPath +"/proxy/control/domain/list?functionId="+cfg.getFunctionId();
}
}

View File

@@ -1,12 +1,8 @@
package com.nis.web.controller.configuration.proxy;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.Logical;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
@@ -15,13 +11,10 @@ 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.Page;
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.exceptions.MaatConvertException;
import com.nis.util.Constants;
import com.nis.web.controller.configuration.CommonController;
/**
@@ -34,104 +27,66 @@ import com.nis.web.controller.configuration.CommonController;
public class InterceptController extends CommonController{
@RequestMapping(value = {"/ip/list"})
@RequiresPermissions(value={"intercept:ip:config","intercept:ip:audit"},logical=Logical.OR)
public String ipList(Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._ipList(model, cfg, request, response);
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","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:ip");
return "/cfg/proxy/ipList";
}
@RequestMapping(value = {"/domain/list"})
@RequiresPermissions(value={"intercept:domain:config","intercept:domain:audit"},logical=Logical.OR)
public String domainList(Model model,@ModelAttribute("cfg")HttpUrlCfg cfg,HttpServletRequest request,HttpServletResponse response) {
cfg.setTableName(HttpUrlCfg.getTablename());
Page<BaseStringCfg> searchPage=new Page<BaseStringCfg>(request,response,"r");
Page<BaseStringCfg> page = stringCfgService.findPage(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
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/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:domain");
return "/cfg/proxy/domainList";
}
@RequestMapping(value = {"/ip/form"})
@RequiresPermissions(value={"intercept:ip:config"})
public String ipForm(Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(model, ids, functionId, entity);
public String ipForm(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(cfgName,model, ids, functionId, entity);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:ip");
return "/cfg/proxy/ipForm";
}
@RequestMapping(value = {"/domain/form"})
@RequiresPermissions(value={"intercept:domain:config"})
public String domainForm(Model model,String ids,Integer functionId,BaseStringCfg entity) {
if(StringUtils.isNotBlank(ids)){
entity = stringCfgService.getStringCfgById(HttpUrlCfg.getTablename(),Long.parseLong(ids));
}
if(entity.getCfgId()!=null){
// List<BaseIpCfg> areaCfg=ipCfgService.getListByComileId(AreaIpCfg.getTablename(),functionId.intValue(), String.valueOf(entity.getCompileId()));
// model.addAttribute("areaCfgs", areaCfg);
model.addAttribute("_cfg", entity);
initUpdateFormCondition(model,entity);
}else{
HttpUrlCfg cfg=new HttpUrlCfg();
cfg.initDefaultValue();
cfg.setFunctionId(entity.getFunctionId());
model.addAttribute("_cfg", cfg);
initFormCondition(model,entity);
}
public String domainForm(String cfgName,Model model,String ids,Integer functionId,BaseStringCfg entity) {
this._domainForm(cfgName, model, ids, functionId, entity);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:domain");
return "/cfg/proxy/domainForm";
}
@RequestMapping(value = {"/ip/saveOrUpdate"})
public String saveOrUpdateIp(RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(model, cfg);
public String saveOrUpdateIp(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(cfgName,model, cfg);
return "redirect:" + adminPath +"/proxy/intercept/ip/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/domain/saveOrUpdate"})
public String saveOrUpdateDomain(RedirectAttributes model, HttpUrlCfg cfg) {
cfg.setTableName(HttpUrlCfg.getTablename());
logger.info("saveOrUpdateDomain loaded");
try{
Date date=new Date();
cfg.setIsValid(Constants.VALID_NO);
cfg.setIsAudit(Constants.AUDIT_NOT_YET);
if(cfg.getCfgId()==null){//新增
cfg.setCreatorId(cfg.getCurrentUser().getId());
cfg.setCreateTime(date);
stringCfgService.addStringCfg((BaseStringCfg)cfg);
}else{//修改
cfg.setEditorId(cfg.getCurrentUser().getId());
cfg.setEditTime(new Date());
stringCfgService.updateStringCfg((BaseStringCfg)cfg);
}
addMessage(model,"save_success");
}catch(Exception e){
logger.error("保存失败",e);
addMessage(model,"save_failed");
}
public String saveOrUpdateDomain(String cfgName,RedirectAttributes model, HttpUrlCfg cfg) {
this._saveOrUpdateDomain(cfgName, model, cfg);
return "redirect:" + adminPath +"/proxy/intercept/domain/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/ip/delete"})
@RequiresPermissions("intercept:ip:config")
public String deleteIp(String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(ids, compileIds, functionId, model);
public String deleteIp(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(cfgName,ids, compileIds, functionId, model);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:ip");
return "redirect:" + adminPath +"/proxy/intercept/ip/list?functionId="+functionId;
}
@RequestMapping(value = {"/domain/delete"})
@RequiresPermissions("intercept:domain:config")
public String deleteDomain(String ids,String compileIds,Integer functionId,RedirectAttributes model) {
try{
stringCfgService.deleteDomain(ids,compileIds,functionId.intValue());
addMessage(model,"delete_success");
}catch(Exception e){
logger.error("删除失败", e);
addMessage(model,"delete_failed");
}
public String deleteDomain(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteDomain(cfgName, ids, compileIds, functionId, model);
model.addAttribute("urlPrefix","/proxy/intercept");
model.addAttribute("requiresPermissionPrefix","intercept:domain");
return "redirect:" + adminPath +"/proxy/intercept/domain/list?functionId="+functionId;
}
@RequestMapping(value = {"/ip/audit"})
// @RequiresPermissions("intercept:ip:audit")
public String auditIp(String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(ids, cfg, redirectAttributes);
public String auditIp(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(cfgName,ids, cfg, redirectAttributes);
redirectAttributes.addAttribute("urlPrefix","/proxy/intercept");
redirectAttributes.addAttribute("requiresPermissionPrefix","intercept:ip");
return "redirect:" + adminPath +"/proxy/intercept/ip/list?functionId="+cfg.getFunctionId();
@@ -139,28 +94,9 @@ public class InterceptController extends CommonController{
@RequestMapping(value = {"/domain/audit"})
// @RequiresPermissions("intercept:domain:audit")
public String auditDomain(String ids,HttpUrlCfg cfg,RedirectAttributes redirectAttributes) {
try{
for(String id:ids.split(",")){
Long.parseLong(id);
}
List<BaseStringCfg> beans=stringCfgService.getListByCfgId(HttpUrlCfg.getTablename(),ids);
Date date=new Date();
for(BaseStringCfg bean:beans){
bean.setTableName(HttpUrlCfg.getTablename());
bean.setAuditorId(bean.getCurrentUser().getId());
bean.setAuditTime(date);
bean.setIsAudit(cfg.getIsAudit());
bean.setIsValid(cfg.getIsValid());
stringCfgService.auditDomain(bean);
}
addMessage(redirectAttributes,"audit_success");
}catch(MaatConvertException e){
logger.error("审核失败", e);
addMessage(redirectAttributes, e.getPrefix()+e.getResult().getReason());
}catch(Exception e){
logger.error("审核失败", e);
addMessage(redirectAttributes, "audit_failed");
}
this._auditDomain(ids, cfg, redirectAttributes);
redirectAttributes.addAttribute("urlPrefix","/proxy/intercept");
redirectAttributes.addAttribute("requiresPermissionPrefix","intercept:domain");
return "redirect:" + adminPath +"/proxy/intercept/domain/list?functionId="+cfg.getFunctionId();
}
}

View File

@@ -181,7 +181,6 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
groupRelationList=areaMap.get("groupList");
areaIpRegionList=areaMap.get("dstList");
maatCfg.setAreaEffectiveIds(StringUtils.isBlank(cfg.getAreaEffectiveIds())?"0":cfg.getAreaEffectiveIds());
maatCfg.setUserRegion(cfg.getCompileId()+"");
maatCfg.setAction(cfg.getAction());
maatCfg.setAuditTime(cfg.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);
@@ -276,7 +275,6 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
groupRelationList=map.get("groupList");
ipRegionList=map.get("dstList");
maatCfg.setAreaEffectiveIds("0");
maatCfg.setUserRegion(cfg.getCompileId()+"");
maatCfg.setAction(cfg.getAction());
maatCfg.setAuditTime(cfg.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);

View File

@@ -178,7 +178,6 @@ public class StringCfgService extends CrudService<StringCfgDao,BaseStringCfg> {
groupRelationList=map.get("groupList");
strRegionList=map.get("dstList");
maatCfg.setAreaEffectiveIds("0");
maatCfg.setUserRegion(cfg.getCompileId()+"");
maatCfg.setAction(cfg.getAction());
maatCfg.setAuditTime(cfg.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);
@@ -274,8 +273,9 @@ public class StringCfgService extends CrudService<StringCfgDao,BaseStringCfg> {
groupRelationList=areaMap.get("groupList");
areaIpRegionList=areaMap.get("dstList");
maatCfg.setAreaEffectiveIds(StringUtils.isBlank(cfg.getAreaEffectiveIds())?"0":cfg.getAreaEffectiveIds());
String userRegion=cfg.getCfgKeywords().replaceAll(Constants.KEYWORD_EXPR , "&");
maatCfg.setUserRegion(Constants.USER_REGION_SPLIT+userRegion+Constants.USER_REGION_SPLIT);
if(cfg.getServiceId().intValue()==Constants.SERVICE_PXY_DOMAIN_INTERCEPT){
maatCfg.setUserRegion(this.keywordsEscape(cfg.getCfgKeywords()));
}
maatCfg.setAction(cfg.getAction());
maatCfg.setAuditTime(cfg.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);

View File

@@ -286,4 +286,6 @@ bgp_ip_region=bgp_ip
#存在与表达式的关键字特殊分隔符
keyword_expr=***and***
#时区
time_zone=8
time_zone=8
#需要特殊处理的业务类型
service_pxy_domain_intercept=513

View File

@@ -69,6 +69,7 @@ $(function(){
<!-- BEGIN FORM-->
<form id="ipCfgFrom" action="${ctx}/ntc/iplist/saveOrUpdate" method="post" class="form-horizontal">
<div class="form-body row">
<input name="cfgName" type="hidden" value="${cfgName}"/>
<input type="hidden" name="cfgId" value="${_cfg.cfgId}">
<input type="hidden" name="compileId" value="${_cfg.compileId}">
<input type="hidden" name="functionId" value="${_cfg.functionId}">

View File

@@ -68,7 +68,7 @@
<div class="theme-panel hidden-xs hidden-sm">
<shiro:hasPermission name="iplist:config">
<button type="button" class="btn btn-primary"
onClick="javascript:window.location='${ctx}/ntc/iplist/form?functionId=${cfg.functionId}'">
onClick="javascript:window.location='${ctx}/ntc/iplist/form?functionId=${cfg.functionId}&cfgName=${cfgName}'">
<i class="fa fa-plus"></i>
<spring:message code="add"></spring:message></button>
</shiro:hasPermission>
@@ -84,6 +84,7 @@
<div class="portlet-body">
<div class="row" >
<form:form id="searchForm" modelAttribute="cfg" action="${ctx}/ntc/iplist/list" method="post" class="form-search">
<input name="cfgName" type="hidden" value="${cfgName}"/>
<input id="functionId" name="functionId" type="hidden" value="${cfg.functionId}"/>
<input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
<input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
@@ -127,8 +128,8 @@
</div>
<div class="pull-right">
<shiro:hasPermission name="iplist:config">
<sys:delRow url="${ctx}/ntc/iplist/form?functionId=${cfg.functionId}" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/ntc/iplist/delete?functionId=${cfg.functionId}" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}/ntc/iplist/form?functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/ntc/iplist/delete?functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="delete"></sys:delRow>
</shiro:hasPermission>
<shiro:hasPermission name="iplist:config">
<div class="btn-group">
@@ -137,9 +138,9 @@
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right">
<li><sys:delRow url="${ctx}/ntc/iplist/audit?isAudit=1&isValid=1&functionId=${cfg.functionId}" id="contentTable" label="approved"></sys:delRow></li>
<li><sys:delRow url="${ctx}/ntc/iplist/audit?isAudit=2&isValid=0&functionId=${cfg.functionId}" id="contentTable" label="unapproved"></sys:delRow></li>
<li><sys:delRow url="${ctx}/ntc/iplist/audit?isAudit=3&isValid=0&functionId=${cfg.functionId}" id="contentTable" label="cancelPass"></sys:delRow></li>
<li><sys:delRow url="${ctx}/ntc/iplist/audit?isAudit=1&isValid=1&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="approved"></sys:delRow></li>
<li><sys:delRow url="${ctx}/ntc/iplist/audit?isAudit=2&isValid=0&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="unapproved"></sys:delRow></li>
<li><sys:delRow url="${ctx}/ntc/iplist/audit?isAudit=3&isValid=0&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="cancelPass"></sys:delRow></li>
</ul>
</div>
</shiro:hasPermission>

View File

@@ -95,6 +95,7 @@
<form id="cfgFrom"
action="${ctx}/proxy/intercept/domain/saveOrUpdate" method="post"
class="form-horizontal">
<input type="hidden" name="cfgName" value="${cfgName}">
<input type="hidden" name="cfgId" value="${_cfg.cfgId}">
<input type="hidden" name="compileId" value="${_cfg.compileId}">
<input type="hidden" name="functionId" value="${_cfg.functionId}">

View File

@@ -2,7 +2,7 @@
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<html>
<head>
<title><spring:message code="domain_intercept"></spring:message></title>
<title><spring:message code="${cfgName}"></spring:message></title>
<script>
$(document).ready(function() {
//搜索框提示语初始化
@@ -53,16 +53,16 @@
<div class="page-content">
<div class="theme-panel hidden-xs hidden-sm">
<%-- <button type="button" class="btn btn-default" onclick="location='${ctx}/cfg/string/list?serviceId=${serviceId}&action=${action}&cfgName=${cfgName}'"><spring:message code="refresh"></spring:message></button> --%>
<shiro:hasPermission name="intercept:domain:config">
<shiro:hasPermission name="${requiresPermissionPrefix.concat(':config')}">
<button type="button" class="btn btn-primary"
onClick="javascript:window.location='${ctx}/proxy/intercept/domain/form?functionId=${cfg.functionId}'">
onClick="javascript:window.location='${ctx}/proxy/intercept/domain/form?functionId=${cfg.functionId}&cfgName=${cfgName}'">
<i class="fa fa-plus"></i>
<spring:message code="add"></spring:message></button>
</shiro:hasPermission>
</div>
<h3 class="page-title">
<spring:message code="domain_intercept"></spring:message>
<spring:message code="${cfgName}"></spring:message>
<small><spring:message code="date_list"/></small>
</h3>
<h5 class="page-header"></h5>
@@ -71,7 +71,7 @@
<div class="portlet">
<div class="portlet-body">
<div class="row" >
<form:form id="searchForm" modelAttribute="cfg" action="${ctx}/proxy/intercept/domain/list" method="post" class="form-search">
<form:form id="searchForm" modelAttribute="cfg" action="${ctx}${urlPrefix}/domain/list" method="post" class="form-search">
<input id="functionId" name="functionId" type="hidden" value="${cfg.functionId}"/>
<input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
<input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
@@ -113,9 +113,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="intercept:domain:config">
<sys:delRow url="${ctx}/proxy/intercept/domain/form?functionId=${cfg.functionId}" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/proxy/intercept/domain/delete?functionId=${cfg.functionId}" id="contentTable" label="delete"></sys:delRow>
<shiro:hasPermission name="${requiresPermissionPrefix.concat(':config')}">
<sys:delRow url="${ctx}${urlPrefix}/domain/form?functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}${urlPrefix}/domain/delete?functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="delete"></sys:delRow>
</shiro:hasPermission>
<!-- <button type="button" class="btn btn-default">
<i class="fa fa-download"></i> 导出</button> -->
@@ -126,9 +126,9 @@
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right">
<li><sys:delRow url="${ctx}/proxy/intercept/domain/audit?isAudit=1&isValid=1&functionId=${cfg.functionId}" id="contentTable" label="approved"></sys:delRow></li>
<li><sys:delRow url="${ctx}/proxy/intercept/domain/audit?isAudit=2&isValid=0&functionId=${cfg.functionId}" id="contentTable" label="unapproved"></sys:delRow></li>
<li><sys:delRow url="${ctx}/proxy/intercept/domain/audit?isAudit=3&isValid=0&functionId=${cfg.functionId}" id="contentTable" label="cancelPass"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/domain/audit?isAudit=1&isValid=1&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="approved"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/domain/audit?isAudit=2&isValid=0&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="unapproved"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/domain/audit?isAudit=3&isValid=0&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="cancelPass"></sys:delRow></li>
</ul>
</div>
</shiro:hasPermission>

View File

@@ -2,7 +2,7 @@
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<html>
<head>
<title><spring:message code="ip_intercept"></spring:message></title>
<title><spring:message code="${cfgName}"></spring:message></title>
<script type="text/javascript">
$(function(){
if($("input[name='action']:checked").val()==0x20||$("input[name='action']:checked").val()==0x60){
@@ -53,7 +53,7 @@ $(function(){
<body>
<div class="page-content">
<h3 class="page-title">
<spring:message code="ip_intercept"></spring:message>
<spring:message code="${cfgName}"></spring:message>
</h3>
<div class="row">
<div class="col-md-12">
@@ -67,8 +67,9 @@ $(function(){
</div>
<div class="portlet-body form">
<!-- BEGIN FORM-->
<form id="ipCfgFrom" action="${ctx}/proxy/intercept/ip/saveOrUpdate" method="post" class="form-horizontal">
<form id="ipCfgFrom" action="${ctx}${urlPrefix}/ip/saveOrUpdate" method="post" class="form-horizontal">
<div class="form-body row">
<input name="cfgName" type="hidden" value="${cfgName}"/>
<input type="hidden" name="cfgId" value="${_cfg.cfgId}">
<input type="hidden" name="compileId" value="${_cfg.compileId}">
<input type="hidden" name="functionId" value="${_cfg.functionId}">

View File

@@ -2,7 +2,7 @@
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<html>
<head>
<title><spring:message code="ip_intercept"></spring:message></title>
<title><spring:message code="${cfgName}"></spring:message></title>
<script>
$(document).ready(function() {
$("td[compileId]").each(function(){
@@ -68,13 +68,13 @@
<div class="theme-panel hidden-xs hidden-sm">
<shiro:hasPermission name="${requiresPermissionPrefix.concat(':config')}">
<button type="button" class="btn btn-primary"
onClick="javascript:window.location='${ctx}${urlPrefix}/ip/form?functionId=${cfg.functionId}'">
onClick="javascript:window.location='${ctx}${urlPrefix}/ip/form?functionId=${cfg.functionId}&cfgName=${cfgName}'">
<i class="fa fa-plus"></i>
<spring:message code="add"></spring:message></button>
</shiro:hasPermission>
</div>
<h3 class="page-title">
<spring:message code="ip_intercept"></spring:message>
<spring:message code="${cfgName}"></spring:message>
<small><spring:message code="date_list"/></small>
</h3>
<h5 class="page-header"></h5>
@@ -85,6 +85,7 @@
<div class="row" >
<form:form id="searchForm" modelAttribute="cfg" action="${ctx}${urlPrefix}/ip/list" method="post" class="form-search">
<input id="functionId" name="functionId" type="hidden" value="${cfg.functionId}"/>
<input name="cfgName" type="hidden" value="${cfgName}"/>
<input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
<input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
<sys:tableSort id="orderBy" name="orderBy" value="${page.orderBy}"
@@ -127,8 +128,8 @@
</div>
<div class="pull-right">
<shiro:hasPermission name="${requiresPermissionPrefix.concat(':config')}">
<sys:delRow url="${ctx}${urlPrefix}/ip/form?functionId=${cfg.functionId}" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}${urlPrefix}/ip/delete?functionId=${cfg.functionId}" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}${urlPrefix}/ip/form?functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}${urlPrefix}/ip/delete?functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="delete"></sys:delRow>
</shiro:hasPermission>
<shiro:hasPermission name="${requiresPermissionPrefix.concat(':config')}">
<div class="btn-group">
@@ -137,9 +138,9 @@
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right">
<li><sys:delRow url="${ctx}${urlPrefix}/ip/audit?isAudit=1&isValid=1&functionId=${cfg.functionId}" id="contentTable" label="approved"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/ip/audit?isAudit=2&isValid=0&functionId=${cfg.functionId}" id="contentTable" label="unapproved"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/ip/audit?isAudit=3&isValid=0&functionId=${cfg.functionId}" id="contentTable" label="cancelPass"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/ip/audit?isAudit=1&isValid=1&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="approved"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/ip/audit?isAudit=2&isValid=0&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="unapproved"></sys:delRow></li>
<li><sys:delRow url="${ctx}${urlPrefix}/ip/audit?isAudit=3&isValid=0&functionId=${cfg.functionId}&cfgName=${cfgName}" id="contentTable" label="cancelPass"></sys:delRow></li>
</ul>
</div>
</shiro:hasPermission>