Merge branch 'develop' of http://10.0.6.99/gwall/gwall.git into develop

Conflicts:
	src/main/webapp/WEB-INF/views/cfg/intercept/interceptForm.jsp
ip_payload功能新增
This commit is contained in:
duandongmei
2018-09-30 10:01:52 +08:00
84 changed files with 2932 additions and 1130 deletions

View File

@@ -47,9 +47,8 @@ public class IpMultiplexPoolCfgController extends BaseController {
}
//查询ip复用地址池配置的policyGroup列表
List<PolicyGroupInfo> policyGroups=policyGroupInfoService.findPolicyGroupInfosByType(2);
List<PolicyGroupInfo> policyGroups=policyGroupInfoService.findPolicyGroupInfosByType(3);
model.addAttribute("policyGroups", policyGroups);
model.addAttribute("_cfg", cfg);
return "/cfg/maintenance/ipMultiplexPool/form";
}
@@ -92,7 +91,6 @@ public class IpMultiplexPoolCfgController extends BaseController {
}catch(Exception e){
addMessage(redirectAttributes,"delete_failed");
}
return "redirect:" + adminPath +"/maintenance/ipMultiplexPoolCfg/list?functionId="+functionId;
}
@@ -125,4 +123,89 @@ public class IpMultiplexPoolCfgController extends BaseController {
return true;
}
}
@RequestMapping(value = {"/snatlist"})
public String snatlist(Model model,HttpServletRequest request,HttpServletResponse response,@ModelAttribute("cfg")IpMultiplexPoolCfg entity){
//查询时left join policyGroup
Page<IpMultiplexPoolCfg> page = ipMultiplexPoolCfgService.findPage(new Page<IpMultiplexPoolCfg>(request, response,"r"), entity);
model.addAttribute("page", page);
initPageCondition(model,entity);
return "/cfg/maintenance/ipMultiplexPool/snatlist";
}
@RequestMapping(value = {"/snatform"})
@RequiresPermissions(value={"ip:mulitiplex:pool:config"})
public String snatfrom(Model model,
HttpServletRequest request,
HttpServletResponse response,
String ids,
@ModelAttribute("cfg")IpMultiplexPoolCfg cfg){
if(cfg == null){
cfg=new IpMultiplexPoolCfg();
}
if(!StringUtil.isEmpty(ids)){
cfg = ipMultiplexPoolCfgService.getIpMultiplexPoolCfg(Long.valueOf(ids),null);
initFormCondition(model, cfg);
}else{
initFormCondition(model, cfg);
}
//查询ip复用地址池配置的policyGroup列表
List<PolicyGroupInfo> policyGroups=policyGroupInfoService.findPolicyGroupInfosByType(2);
model.addAttribute("policyGroups", policyGroups);
model.addAttribute("_cfg", cfg);
return "/cfg/maintenance/ipMultiplexPool/snatform";
}
@RequestMapping(value = {"/snatsaveOrUpdate"})
@RequiresPermissions(value={"ip:mulitiplex:pool:config"})
public String snatsaveOrUpdate(Model model,HttpServletRequest request,HttpServletResponse response,RedirectAttributes redirectAttributes,
@ModelAttribute("cfg")IpMultiplexPoolCfg cfg){
try{
ipMultiplexPoolCfgService.saveOrUpdate(cfg);
addMessage(redirectAttributes,"save_success");
}catch(Exception e){
e.printStackTrace();
addMessage(redirectAttributes,"save_failed");
}
return "redirect:" + adminPath +"/maintenance/ipMultiplexPoolCfg/snatlist?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/snataudit"})
@RequiresPermissions(value={"ip:mulitiplex:pool:confirm"})
public String snataudit(Integer isAudit,Integer isValid,String ids,Integer functionId,RedirectAttributes redirectAttributes) {
if(!StringUtil.isEmpty(ids)){
String[] idArray = ids.split(",");
Date auditTime=new Date();
for(String id :idArray){
try {
ipMultiplexPoolCfgService.audit(isAudit,isValid,functionId,id,auditTime);
} catch (MaatConvertException e) {
e.printStackTrace();
logger.info("SNAT地址池管理配置下发失败"+e.getMessage());
addMessage(redirectAttributes, e.getMessage());
}
}
}
return "redirect:" + adminPath +"/maintenance/ipMultiplexPoolCfg/snatlist?functionId="+functionId;
}
@RequestMapping(value = {"/snatdelete"})
@RequiresPermissions(value={"ip:mulitiplex:pool:config"})
public String snatdelete(Integer isAudit,Integer isValid,String ids,Integer functionId,Model model,RedirectAttributes redirectAttributes
,HttpServletRequest request,HttpServletResponse response){
try{
if(!StringUtil.isEmpty(ids)){
ipMultiplexPoolCfgService.delete(isAudit,isValid,ids,functionId);
}
addMessage(redirectAttributes,"delete_success");
}catch(Exception e){
addMessage(redirectAttributes,"delete_failed");
}
return "redirect:" + adminPath +"/maintenance/ipMultiplexPoolCfg/snatlist?functionId="+functionId;
}
}

View File

@@ -3,7 +3,6 @@ package com.nis.web.controller.configuration.ntc;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Properties;
@@ -13,7 +12,6 @@ import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
@@ -22,27 +20,22 @@ import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
import com.nis.domain.SysUser;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.basics.SysDictInfo;
import com.nis.domain.configuration.AreaBean;
import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.AvContIpCfg;
import com.nis.domain.configuration.AvVoipAccountCfg;
import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.configuration.IpPortCfg;
import com.nis.domain.configuration.NtcSubscribeIdCfg;
import com.nis.exceptions.MaatConvertException;
import com.nis.domain.configuration.AvVoipIpCfg;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.BaseStringCfg;
import com.nis.util.Configurations;
import com.nis.util.Constants;
import com.nis.util.DateUtils;
import com.nis.util.StringUtil;
import com.nis.util.excel.ExportExcel;
import com.nis.web.controller.BaseController;
import com.nis.web.security.UserUtils;
/**
* 处理音视频文本业务
@@ -55,11 +48,11 @@ public class AvContentController extends BaseController {
/*****************************voip业务***************/
//音视频VOIP IP配置新增界面
@RequestMapping(value = {"/voipForm"})
@RequiresPermissions(value={"avVoipIp:config"})
@RequiresPermissions(value={"avVoip:config"})
public String voipFrom(Model model,HttpServletRequest request ,HttpServletResponse response
,String compileIds,String ids, CfgIndexInfo cfg ,RedirectAttributes redirectAttributes){
if(!StringUtil.isEmpty(compileIds)){
cfg.setCompileId(Integer.parseInt(compileIds));
if(!StringUtil.isEmpty(ids)){
cfg.setCfgId(Long.parseLong(ids));
cfg = avContentCfgService.getCfgIndexInfo(cfg);
initUpdateFormCondition(model, cfg);
}else{
@@ -70,7 +63,7 @@ public class AvContentController extends BaseController {
return "/cfg/av/voip/voipForm";
}
//音视频VOIP Account配置新增界面
@RequestMapping(value = {"/voipAccountForm"})
/* @RequestMapping(value = {"/voipAccountForm"})
@RequiresPermissions(value={"avVoipAccount:config"})
public String voipAccountForm(Model model,HttpServletRequest request ,HttpServletResponse response
,String compileIds,String ids, CfgIndexInfo cfg ,RedirectAttributes redirectAttributes){
@@ -85,7 +78,7 @@ public class AvContentController extends BaseController {
model.addAttribute("_cfg", cfg);
return "/cfg/av/voip/voipAccountForm";
}
}*/
//保存voip ip信息
@RequestMapping(value = {"/saveVoip"})
@@ -97,18 +90,18 @@ public class AvContentController extends BaseController {
}catch(Exception e){
if(e instanceof MaatConvertException) {
e.printStackTrace();
logger.error("voip IP信息保存失败",e);
logger.error("voip 信息保存失败",e);
addMessage(redirectAttributes,"request_service_failed");
}else {
e.printStackTrace();
logger.error("voip IP信息保存失败",e);
logger.error("voip 信息保存失败",e);
addMessage(redirectAttributes,"save_failed");
}
}
return "redirect:" + adminPath +"/ntc/av/voipList?functionId="+cfg.getFunctionId();
}
//保存voip Account信息
@RequestMapping(value = {"/saveAccountVoip"})
/* @RequestMapping(value = {"/saveAccountVoip"})
public String saveAccountVoip(Model model,HttpServletRequest request,HttpServletResponse response,String ids,
CfgIndexInfo cfg ,RedirectAttributes redirectAttributes){
try{
@@ -126,12 +119,10 @@ public class AvContentController extends BaseController {
}
}
return "redirect:" + adminPath +"/ntc/av/voipAccountList?functionId="+cfg.getFunctionId();
}
//视频文本VOIP IP配置列表
}*/
//视频文本VOIP 配置列表
@RequestMapping(value = {"/voipList"})
public String voipCfgList(Model model,HttpServletRequest request
,HttpServletResponse response
,@ModelAttribute("cfg")CfgIndexInfo entity
public String voipCfgList(Model model,HttpServletRequest request ,HttpServletResponse response ,@ModelAttribute("cfg")CfgIndexInfo entity
,RedirectAttributes redirectAttributes){
if(entity.getVoipIp()== null){
entity.setVoipIp(new AvVoipIpCfg());
@@ -148,7 +139,7 @@ public class AvContentController extends BaseController {
return "/cfg/av/voip/voipList";
}
//视频文本VOIP Account配置列表
@RequestMapping(value = {"/voipAccountList"})
/* @RequestMapping(value = {"/voipAccountList"})
public String voipCfgAccountList(Model model,HttpServletRequest request ,HttpServletResponse response
,@ModelAttribute("cfg")CfgIndexInfo entity ,RedirectAttributes redirectAttributes){
if(entity.getVoipAccount()== null){
@@ -161,12 +152,12 @@ public class AvContentController extends BaseController {
model.addAttribute("page", page);
initPageCondition(model,entity);
return "/cfg/av/voip/voipAccountList";
}
}*/
//修改VOIP IP配置状态
@RequestMapping(value = {"/updateAvVoipValid"})
@RequiresPermissions(value={"avVoipIp:config"})
@RequiresPermissions(value={"avVoip:config"})
public String updateVoipValid(Integer isAudit,String compileIds,Integer isValid,String ids,Integer functionId
,RedirectAttributes redirectAttributes
) {
@@ -175,18 +166,18 @@ public class AvContentController extends BaseController {
} catch (Exception e) {
if(e instanceof MaatConvertException) {
e.printStackTrace();
logger.error("voip IP信息审核失败",e);
logger.error("voip 信息审核失败",e);
addMessage(redirectAttributes,"request_service_failed");
}else {
e.printStackTrace();
logger.error("voip IP信息审核失败",e);
logger.error("voip 信息审核失败",e);
addMessage(redirectAttributes,"audit_failed");
}
}
return "redirect:" + adminPath +"/ntc/av/voipList?functionId="+functionId;
}
//修改VOIP account配置状态
@RequestMapping(value = {"/updateAvVoipAccountValid"})
/* @RequestMapping(value = {"/updateAvVoipAccountValid"})
@RequiresPermissions(value={"avVoipAccount:config"})
public String updateVoipAccountValid(Integer isAudit,String compileIds,Integer isValid,String ids,Integer functionId
,RedirectAttributes redirectAttributes
@@ -205,15 +196,13 @@ public class AvContentController extends BaseController {
}
}
return "redirect:" + adminPath +"/ntc/av/voipAccountList?functionId="+functionId;
}
}*/
//修改VOIP IP配置审核状态
@RequestMapping(value = {"/auditAvVoip"})
@RequiresPermissions(value={"avVoipIp:confirm"})
public String auditVoip(Integer isAudit,Integer isValid,String ids
,String compileIds,Integer functionId
,RedirectAttributes redirectAttributes) {
if(!StringUtil.isEmpty(compileIds)){
String[] idArray = compileIds.split(",");
@RequiresPermissions(value={"avVoip:confirm"})
public String auditVoip(Integer isAudit,Integer isValid,String ids ,String compileIds,Integer functionId ,RedirectAttributes redirectAttributes) {
if(!StringUtil.isEmpty(ids)){
String[] idArray = ids.split(",");
Date auditTime=new Date();
for(String id :idArray){
try {
@@ -221,7 +210,7 @@ public class AvContentController extends BaseController {
} catch (MaatConvertException e) {
if(e instanceof MaatConvertException) {
e.printStackTrace();
logger.info("VOIP配置下发失败"+e.getMessage());;
logger.error("VOIP配置下发失败"+e.getMessage());;
addMessage(redirectAttributes,"request_service_failed");
}else {
e.printStackTrace();
@@ -236,7 +225,7 @@ public class AvContentController extends BaseController {
return "redirect:" + adminPath +"/ntc/av/voipList?functionId="+functionId;
}
//修改VOIP IP配置审核状态
@RequestMapping(value = {"/auditAvVoipAccount"})
/* @RequestMapping(value = {"/auditAvVoipAccount"})
@RequiresPermissions(value={"avVoipAccount:confirm"})
public String auditVoipAccount(Integer isAudit,Integer isValid,String ids
,String compileIds,Integer functionId
@@ -262,14 +251,14 @@ public class AvContentController extends BaseController {
}
return "redirect:" + adminPath +"/ntc/av/voipAccountList?functionId="+functionId;
}
}*/
/**
* 账号account
* 根据索引表信息异步获取子表信息
* @return
*/
@ResponseBody
/*@ResponseBody
@RequestMapping(value = "ajaxVoipAccountInfo")
public Map getVoipAccountInfo(CfgIndexInfo cfgIndexInfo) {
Map<String, Object> voipAndAccountInfoMap=new HashMap<String, Object>();
@@ -282,25 +271,50 @@ public class AvContentController extends BaseController {
voipAndAccountInfoMap.put("account", voipAccountCfgList);
voipAndAccountInfoMap.put("subscribe", ntcSubscribeIdCfgList);
return voipAndAccountInfoMap;
}
}*/
/**
* 根据索引表信息异步获取子表信息
* @return
*/
@ResponseBody
@RequestMapping(value = "ajaxVoipIpInfo")
public Map getVoipIpInfo(CfgIndexInfo cfgIndexInfo) {
Map<String, Object> voipAndAccountInfoMap=new HashMap<String, Object>();
@RequestMapping(value = {"/ajaxVoipIpInfo"})
public String getVoipIpInfo(Model model,Long cfgId,Integer index) {
CfgIndexInfo cfgIndexInfo = new CfgIndexInfo();
cfgIndexInfo.setCfgId(cfgId);
CfgIndexInfo cfg = avContentCfgService.getCfgIndexInfo(cfgIndexInfo);
List<String[]> tabList = new ArrayList();
//获取voipIpCfg信息
List<AvVoipIpCfg> voipIpCfgList=new ArrayList<AvVoipIpCfg>();
List<NtcSubscribeIdCfg> ntcSubscribeIdCfgList=new ArrayList<NtcSubscribeIdCfg>();
voipIpCfgList = avContentCfgService.getVoipIpCfgList(cfgIndexInfo);
ntcSubscribeIdCfgList=avContentCfgService.getSubscribeIdCfgList(cfgIndexInfo);
voipAndAccountInfoMap.put("ip", voipIpCfgList);
voipAndAccountInfoMap.put("subscribe", ntcSubscribeIdCfgList);
return voipAndAccountInfoMap;
if(cfg.getVoipIps()!=null){
String cfgType = null;
for(AvVoipIpCfg ip:cfg.getVoipIps()){
if(!ip.getCfgType().equals(cfgType)){
tabList.add(new String[]{"1",ip.getCfgType()});
cfgType = ip.getCfgType();
}
}
}
if(cfg.getVoipAccounts()!=null){
String cfgType = null;
for(AvVoipAccountCfg account:cfg.getVoipAccounts()){
if(account!=null&&!account.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",account.getCfgType()});
cfgType = account.getCfgType();
}
}
}
//查询关键字
if(cfg.getNtcSubscribeIdCfgList()!=null){
String cfgType = null;
for(NtcSubscribeIdCfg ntc:cfg.getNtcSubscribeIdCfgList()){
if(!ntc.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",ntc.getCfgType()});
cfgType = ntc.getCfgType();
}
}
}
model.addAttribute("_cfg", cfg);
model.addAttribute("index", index);
model.addAttribute("tabList", tabList);
return "/cfg/av/voip/voipSubList";
}
/*****************************voip业务***************/

View File

@@ -20,12 +20,14 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
import com.nis.domain.SysDataDictionaryItem;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.configuration.IpPortCfg;
import com.nis.domain.configuration.NtcSubscribeIdCfg;
import com.nis.domain.configuration.template.IpAddrTemplate;
import com.nis.domain.configuration.template.IpsecTemplate;
import com.nis.domain.configuration.template.TunnelIpTemplate;
import com.nis.domain.specific.ConfigGroupInfo;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.DictUtils;
import com.nis.web.controller.configuration.CommonController;
@@ -57,6 +59,8 @@ public class IpController extends CommonController{
}else{
initFormCondition(model,entity);
}
List<ConfigGroupInfo> policyGroups=asnPolicyCfgService.getConfigGroupInfoList(4);
model.addAttribute("policyGroups", policyGroups);
model.addAttribute("_cfg", entity);
return "/cfg/ipaddr/ipForm";
}
@@ -89,6 +93,9 @@ public class IpController extends CommonController{
}
}
}
if(StringUtils.isNotBlank(cfg.getUserRegion4())) {
tabList.add(new String[]{"3","ASN"});
}
model.addAttribute("_cfg", cfg);
model.addAttribute("index", index);
model.addAttribute("tabList", tabList);
@@ -114,11 +121,21 @@ public class IpController extends CommonController{
entity.setAuditTime(new Date());
entity.setFunctionId(functionId);
try {
ipCfgService.auditIpCfg(entity,isAudit);
} catch (MaatConvertException e) {
if(StringUtils.isNoneBlank(entity.getUserRegion4())) {
ipCfgService.auditAsnCfg(entity, isAudit);
}else {
ipCfgService.auditIpCfg(entity,isAudit);
}
} catch (Exception e) {
e.printStackTrace();
logger.info("ssl配置下发失败:"+e.getMessage());
addMessage(redirectAttributes, e.getMessage());
logger.info("ip配置下发失败:"+e.getMessage());
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes, e.getMessage());
}else {
addMessage(redirectAttributes, "audit_failed");
}
}
}
return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+functionId;

View File

@@ -13,14 +13,17 @@ 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.RequestParam;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
import com.nis.domain.SysUser;
import com.nis.domain.configuration.BaseStringCfg;
import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.configuration.IpPortCfg;
import com.nis.domain.configuration.PxyObjKeyring;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.StringUtil;
import com.nis.web.controller.configuration.CommonController;
import com.nis.web.security.UserUtils;
@@ -30,9 +33,10 @@ import com.nis.web.security.UserUtils;
*
*/
@Controller
@RequestMapping("${adminPath}/proxy/intercept")
@RequestMapping(value={"${adminPath}/proxy/intercept"})
public class InterceptController extends CommonController{
@RequestMapping(value = {"/ip/list","domain/list"})
@RequestMapping(value = {"/ip/list","/domain/list","/ippayload/list"})
public String ipList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
Page<CfgIndexInfo> page = websiteCfgService.getWebsiteList(searchPage, cfg);
@@ -51,8 +55,7 @@ public class InterceptController extends CommonController{
return "/cfg/intercept/interceptList";
}
@RequestMapping(value = {"/interceptIpForm","interceptDomainForm"})
@RequiresPermissions(value={"intercept:ip:config","intercept:domain:config"})
@RequestMapping(value = {"/interceptIpForm","interceptDomainForm","interceptIpPayloadForm"})
public String interceptIpForm(Model model,String ids,CfgIndexInfo entity) {
if(StringUtils.isNotBlank(ids)){
entity = interceptCfgService.getInterceptCfg(Long.parseLong(ids));
@@ -73,7 +76,7 @@ public class InterceptController extends CommonController{
model.addAttribute("_cfg", entity);
return "/cfg/intercept/interceptForm";
}
@RequestMapping(value = {"/ip/saveOrUpdate","/domain/saveOrUpdate"})
@RequestMapping(value = {"/ip/saveOrUpdate","/domain/saveOrUpdate","/ippayload/SaveOrUpdate"})
public String saveInterceptIpCfg(RedirectAttributes redirectAttributes,Model model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) {
try {
interceptCfgService.saveInterceptCfg(entity);
@@ -85,7 +88,7 @@ public class InterceptController extends CommonController{
return "redirect:" + adminPath +"/proxy/intercept/ip/list?functionId="+entity.getFunctionId();
}
@RequestMapping(value = {"/ajaxInterceptIpSubList","/ajaxInterceptDomainSubList"})
@RequestMapping(value = {"/ajaxInterceptIpSubList","/ajaxInterceptDomainSubList","/ajaxInterceptIpPayloadSubList"})
public String ajaxInterceptIpSubList(Model model,Long cfgId,Integer index) {
CfgIndexInfo cfg = interceptCfgService.getInterceptCfg(cfgId);
List<String[]> tabList = new ArrayList();
@@ -122,8 +125,7 @@ public class InterceptController extends CommonController{
return "/cfg/intercept/interceptSubList";
}
@RequestMapping(value = {"auditInterceptIpCfg","auditInterceptDomainCfg"})
@RequiresPermissions(value={"intercept:ip:confirm","intercept:domain:confirm"})
@RequestMapping(value = {"auditInterceptIpCfg","auditInterceptDomainCfg","auditInterceptIpPayloadCfg"})
public String auditInterceptIpCfg(Integer isAudit,Integer isValid,String ids,Integer functionId, RedirectAttributes redirectAttributes) {
CfgIndexInfo entity = new CfgIndexInfo();
String[] idArray = ids.split(",");
@@ -145,8 +147,7 @@ public class InterceptController extends CommonController{
return "redirect:" + adminPath +"/proxy/intercept/ip/list?functionId="+functionId;
}
@RequestMapping(value = {"updateInterceptIpValid","updateInterceptDomainValid"})
@RequiresPermissions(value={"intercept:ip:config","intercept:domain:config"})
@RequestMapping(value = {"updateInterceptIpValid","updateInterceptDomainValid","updateInterceptIpPayloadValid"})
public String updateInterceptIpValid(Integer isValid,String ids,Integer functionId, RedirectAttributes redirectAttributes) {
try {
interceptCfgService.updatInterceptValid(isValid,ids,functionId);