提交IP复用地址池配置功能代码

This commit is contained in:
zhangwei
2018-07-01 16:08:55 +08:00
parent fff7aec3f2
commit 6857cf2660
8 changed files with 1388 additions and 0 deletions

View File

@@ -67,6 +67,7 @@ import com.nis.web.service.configuration.DnsResStrategyService;
import com.nis.web.service.configuration.FileTransferCfgService;
import com.nis.web.service.configuration.HttpRedirectCfgService;
import com.nis.web.service.configuration.IpCfgService;
import com.nis.web.service.configuration.IpMultiplexPoolCfgService;
import com.nis.web.service.configuration.MailCfgService;
import com.nis.web.service.configuration.NumCfgService;
import com.nis.web.service.configuration.RequestInfoService;
@@ -165,6 +166,8 @@ public class BaseController {
protected HttpRedirectCfgService httpRedirectCfgService;
@Autowired
protected DdosCfgService ddosCfgService;
@Autowired
protected IpMultiplexPoolCfgService ipMultiplexPoolCfgService;
/**
* 管理基础路径
*/

View File

@@ -0,0 +1,127 @@
package com.nis.web.controller.configuration.maintenance;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
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.bind.annotation.ResponseBody;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.configuration.IpMultiplexPoolCfg;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.StringUtil;
import com.nis.web.controller.BaseController;
/**
* IP复用地址池配置
*
*/
@Controller
@RequestMapping("${adminPath}/maintenance/ipMultiplexPoolCfg")
public class IpMultiplexPoolCfgController extends BaseController {
@RequestMapping(value = {"/form"})
@RequiresPermissions(value={"ip:mulitiplex:pool:config"})
public String from(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);
}
//查询policyGroup列表供响应策略选择
List<PolicyGroupInfo> policyGroups=policyGroupInfoService.findPolicyGroupInfosByType(2);
model.addAttribute("policyGroups", policyGroups);
model.addAttribute("_cfg", cfg);
return "/cfg/maintenance/ipMultiplexPool/form";
}
@RequestMapping(value = {"/saveOrUpdate"})
@RequiresPermissions(value={"ip:mulitiplex:pool:config"})
public String saveOrUpdate(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")IpMultiplexPoolCfg cfg){
try{
ipMultiplexPoolCfgService.saveOrUpdate(cfg);
addMessage(model,"save_success");
}catch(Exception e){
e.printStackTrace();
addMessage(model,"save_failed");
}
return "redirect:" + adminPath +"/maintenance/ipMultiplexPoolCfg/list?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/list"})
public String list(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);
return "/cfg/maintenance/ipMultiplexPool/list";
}
@RequestMapping(value = {"/delete"})
@RequiresPermissions(value={"ip:mulitiplex:pool:config"})
public String delete(Integer isAudit,Integer isValid,String ids,Integer functionId,Model model,HttpServletRequest request,HttpServletResponse response){
try{
if(!StringUtil.isEmpty(ids)){
ipMultiplexPoolCfgService.delete(isAudit,isValid,ids,functionId);
}
addMessage(model,"delete_success");
}catch(Exception e){
addMessage(model,"delete_failed");
}
return "redirect:" + adminPath +"/maintenance/ipMultiplexPoolCfg/list?functionId="+functionId;
}
@RequestMapping(value = {"/audit"})
//@RequiresPermissions(value={"ip:mulitiplex:pool:audit"})
public String audit(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("VOIP配置下发失败"+e.getMessage());
addMessage(redirectAttributes, e.getMessage());
}
}
}
return "redirect:" + adminPath +"/maintenance/ipMultiplexPoolCfg/list?functionId="+functionId;
}
@ResponseBody
@RequestMapping(value = "/validCfgId")
public boolean validCfgId(Long cfgId) {
IpMultiplexPoolCfg dns=ipMultiplexPoolCfgService.getIpMultiplexPoolCfg(cfgId,null);
if(dns == null ){
return false;
}else{
return true;
}
}
}