IP复用策略拆分为SNAT/DNAT复用策略.

This commit is contained in:
zhangwq
2018-10-05 21:31:48 +08:00
parent c06d7e11cb
commit 236660f3ce
8 changed files with 1319 additions and 39 deletions

View File

@@ -111,4 +111,101 @@ public class IpMultiplexController extends CommonController {
@ModelAttribute("cfg")IpPortCfg entity,String ids,RedirectAttributes redirectAttributes){
this._exportIp(columns,model, request, response, entity, ids, redirectAttributes);
}
/**
* IP复用策略拆分为SNAT/DNAT复用策略
*/
@RequestMapping(value = {"/snatPolicyList"})
public String snatPolicyList(String cfgName,Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._ipList(cfgName,model, cfg, request, response);
return "/cfg/manipulation/ipmulitiplex/snatPolicyList";
}
@RequestMapping(value = {"/snatPolicyForm"})
@RequiresPermissions(value={"snat_policy:config"})
public String snatPolicyForm(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(cfgName,model, ids, functionId, entity);
SysDataDictionaryItem dict=null;
List<SysDataDictionaryItem> dictList= DictUtils.getDictList("GROUP_TYPE");
for(SysDataDictionaryItem di:dictList){
if("2".equals(di.getItemCode())){
dict=di;
break;
}
}
if(dict!=null){
List<PolicyGroupInfo> policyGroups=policyGroupInfoService.findPolicyGroupInfosByType(Integer.parseInt(dict.getItemCode()));
model.addAttribute("policyGroups", policyGroups);
}
model.addAttribute("urlPrefix","/manipulation/ipmulitiplex");
return "/cfg/manipulation/ipmulitiplex/snatPolicyForm";
}
@RequestMapping(value = {"/saveOrUpdateSnat"})
public String saveOrUpdateSnat(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(cfgName,model, cfg);
return "redirect:" + adminPath +"/manipulation/ipmulitiplex/snatPolicyList?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/snatDelete"})
@RequiresPermissions("snat_policy:config")
public String snatDelete(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(cfgName,ids, compileIds, functionId, model);
return "redirect:" + adminPath +"/manipulation/ipmulitiplex/snatPolicyList?functionId="+functionId;
}
@RequestMapping(value = {"/auditSnat"})
@RequiresPermissions("snat_policy:confirm")
public String auditSnat(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(cfgName,ids, cfg, redirectAttributes);
return "redirect:" + adminPath +"/manipulation/ipmulitiplex/snatPolicyList?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/dnatPolicyList"})
public String dnatPolicyList(String cfgName,Model model,@ModelAttribute("cfg")IpPortCfg cfg,HttpServletRequest request,HttpServletResponse response) {
this._ipList(cfgName,model, cfg, request, response);
return "/cfg/manipulation/ipmulitiplex/dnatPolicyList";
}
@RequestMapping(value = {"/dnatPolicyForm"})
@RequiresPermissions(value={"dnat_policy:config"})
public String dnatPolicyForm(String cfgName,Model model,String ids,Integer functionId,BaseIpCfg entity) {
this._ipForm(cfgName,model, ids, functionId, entity);
SysDataDictionaryItem dict=null;
List<SysDataDictionaryItem> dictList= DictUtils.getDictList("GROUP_TYPE");
for(SysDataDictionaryItem di:dictList){
if("3".equals(di.getItemCode())){
dict=di;
break;
}
}
if(dict!=null){
List<PolicyGroupInfo> policyGroups=policyGroupInfoService.findPolicyGroupInfosByType(Integer.parseInt(dict.getItemCode()));
model.addAttribute("policyGroups", policyGroups);
}
model.addAttribute("urlPrefix","/manipulation/ipmulitiplex");
return "/cfg/manipulation/ipmulitiplex/dnatPolicyForm";
}
@RequestMapping(value = {"/saveOrUpdateDnat"})
public String saveOrUpdateDnat(String cfgName,RedirectAttributes model, IpPortCfg cfg) {
this._saveOrUpdateIp(cfgName,model, cfg);
return "redirect:" + adminPath +"/manipulation/ipmulitiplex/dnatPolicyList?functionId="+cfg.getFunctionId();
}
@RequestMapping(value = {"/dnatDelete"})
@RequiresPermissions("dnat_policy:config")
public String dnatDelete(String cfgName,String ids,String compileIds,Integer functionId,RedirectAttributes model) {
this._deleteIp(cfgName,ids, compileIds, functionId, model);
return "redirect:" + adminPath +"/manipulation/ipmulitiplex/dnatPolicyList?functionId="+functionId;
}
@RequestMapping(value = {"/auditDnat"})
@RequiresPermissions("dnat_policy:confirm")
public String auditDnat(String cfgName,String ids,IpPortCfg cfg,RedirectAttributes redirectAttributes) {
this._auditIp(cfgName,ids, cfg, redirectAttributes);
return "redirect:" + adminPath +"/manipulation/ipmulitiplex/dnatPolicyList?functionId="+cfg.getFunctionId();
}
}