业务配置导出首行增加标题和时间范围

This commit is contained in:
lihaochen
2018-12-21 15:13:48 +08:00
parent b553c27b15
commit 4147e52b73
52 changed files with 8333 additions and 7120 deletions

View File

@@ -19,87 +19,87 @@ import com.nis.domain.specific.ConfigGroupInfo;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.StringUtil;
import com.nis.web.controller.BaseController;
@Controller
@RequestMapping("${adminPath}/cfg/asnPolicy")
@Deprecated
public class AsnPolicyCfgController extends BaseController {
@RequestMapping(value = {"/list"})
public String list(Model model,HttpServletRequest request
,HttpServletResponse response,@ModelAttribute("cfg")CfgIndexInfo entity
,RedirectAttributes redirectAttributes){
Page<CfgIndexInfo> page = asnPolicyCfgService.findPage(new Page<CfgIndexInfo>(request, response,"r"), entity);
@RequestMapping(value = { "/list" })
public String list(Model model, HttpServletRequest request, HttpServletResponse response,
@ModelAttribute("cfg") CfgIndexInfo entity, RedirectAttributes redirectAttributes) {
Page<CfgIndexInfo> page = asnPolicyCfgService.findPage(new Page<CfgIndexInfo>(request, response, "r"), entity);
model.addAttribute("page", page);
initPageCondition(model,entity);
initPageCondition(model, entity);
return "/cfg/asnPolicyCfgList";
}
@RequestMapping(value = {"/form"})
@RequiresPermissions(value={"asn:policy:config"})
public String form(Model model,HttpServletRequest request
,HttpServletResponse response,String ids,@ModelAttribute("cfg")CfgIndexInfo entity
,RedirectAttributes redirectAttributes){
if(!StringUtil.isEmpty(ids)){
@RequestMapping(value = { "/form" })
@RequiresPermissions(value = { "asn:policy:config" })
public String form(Model model, HttpServletRequest request, HttpServletResponse response, String ids,
@ModelAttribute("cfg") CfgIndexInfo entity, RedirectAttributes redirectAttributes) {
if (!StringUtil.isEmpty(ids)) {
entity = asnPolicyCfgService.get(Long.parseLong(ids));
initUpdateFormCondition(model, entity);
}else{
initFormCondition(model,entity);
} else {
initFormCondition(model, entity);
}
List<ConfigGroupInfo> policyGroups=asnPolicyCfgService.getConfigGroupInfoList(4);
List<ConfigGroupInfo> policyGroups = asnPolicyCfgService.getConfigGroupInfoList(4);
model.addAttribute("policyGroups", policyGroups);
model.addAttribute("_cfg", entity);
return "/cfg/asnPolicyCfgForm";
}
@RequestMapping(value = {"/saveOrUpdate"})
@RequiresPermissions(value={"asn:policy:config"})
public String saveOrUpdate(Model model,HttpServletRequest request
,HttpServletResponse response,
@ModelAttribute("cfg")CfgIndexInfo cfg
,RedirectAttributes redirectAttributes){
try{
@RequestMapping(value = { "/saveOrUpdate" })
@RequiresPermissions(value = { "asn:policy:config" })
public String saveOrUpdate(Model model, HttpServletRequest request, HttpServletResponse response,
@ModelAttribute("cfg") CfgIndexInfo cfg, RedirectAttributes redirectAttributes) {
try {
asnPolicyCfgService.saveOrUpdate(cfg);
addMessage(redirectAttributes,"success","save_success");
}catch(Exception e){
logger.error("信息保存失败",e);
addMessage(redirectAttributes, "success", "save_success");
} catch (Exception e) {
logger.error("信息保存失败", e);
e.printStackTrace();
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes,"error", "request_service_failed");
}else {
addMessage(redirectAttributes,"error","save_failed");
if (e instanceof MaatConvertException) {
addMessage(redirectAttributes, "error", "request_service_failed");
} else {
addMessage(redirectAttributes, "error", "save_failed");
}
}
return "redirect:" + adminPath +"/cfg/asnPolicy/list?functionId="+cfg.getFunctionId();
return "redirect:" + adminPath + "/cfg/asnPolicy/list?functionId=" + cfg.getFunctionId();
}
@RequestMapping(value = {"/delete"})
@RequiresPermissions(value={"asn:policy:config"})
public String delete(Integer isAudit,Integer isValid
,String ids,Integer functionId
,RedirectAttributes redirectAttributes){
@RequestMapping(value = { "/delete" })
@RequiresPermissions(value = { "asn:policy:config" })
public String delete(Integer isAudit, Integer isValid, String ids, Integer functionId,
RedirectAttributes redirectAttributes) {
asnPolicyCfgService.delete(functionId, isValid, ids);
return "redirect:" + adminPath +"/cfg/asnPolicy/list?functionId="+functionId;
return "redirect:" + adminPath + "/cfg/asnPolicy/list?functionId=" + functionId;
}
// @RequestMapping(value = {"/audit"})
// @RequiresPermissions(value={"asn:policy:confirm"})
// 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 {
// asnPolicyCfgService.audit(isAudit,isValid,functionId,id,auditTime);
// } catch (MaatConvertException e) {
// e.printStackTrace();
// logger.error("dns fake ip配置下发失败"+e.getMessage());
// addMessage(redirectAttributes,"error","request_service_failed");
// } catch (Exception e) {
// e.printStackTrace();
// logger.error("dns fake ip配置下发失败"+e.getMessage());
// addMessage(redirectAttributes,"error","audit_failed");
// }
//
// }
//
// }
// return "redirect:" + adminPath +"/cfg/asnPolicy/list?functionId="+functionId;
// }
// @RequestMapping(value = {"/audit"})
// @RequiresPermissions(value={"asn:policy:confirm"})
// 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 {
// asnPolicyCfgService.audit(isAudit,isValid,functionId,id,auditTime);
// } catch (MaatConvertException e) {
// e.printStackTrace();
// logger.error("dns fake ip配置下发失败"+e.getMessage());
// addMessage(redirectAttributes,"error","request_service_failed");
// } catch (Exception e) {
// e.printStackTrace();
// logger.error("dns fake ip配置下发失败"+e.getMessage());
// addMessage(redirectAttributes,"error","audit_failed");
// }
//
// }
//
// }
// return "redirect:" + adminPath
// +"/cfg/asnPolicy/list?functionId="+functionId;
// }
}

View File

@@ -1,6 +1,5 @@
package com.nis.web.controller.configuration.ntc;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
@@ -34,227 +33,245 @@ import com.nis.web.security.UserUtils;
/**
* BGP配置
*
* @author dell
*
*/
@Controller
@RequestMapping("${adminPath}/ntc/other/")
public class BgpCfgController extends BaseController{
@RequestMapping(value = {"bgpList"})
// @RequiresPermissions(value={"other:bgp:config"})
public String bgpList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg
,HttpServletRequest request,HttpServletResponse response) {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
public class BgpCfgController extends BaseController {
@RequestMapping(value = { "bgpList" })
// @RequiresPermissions(value={"other:bgp:config"})
public String bgpList(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, HttpServletRequest request,
HttpServletResponse response) {
Page<CfgIndexInfo> searchPage = new Page<CfgIndexInfo>(request, response, "a");
Page<CfgIndexInfo> page = bgpCfgService.getBgpList(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
initPageCondition(model, cfg);
return "/cfg/other/bgpList";
}
@RequestMapping(value = {"bgpForm"})
@RequiresPermissions(value={"other:bgp:config"})
public String bgpForm(Model model,String ids,CfgIndexInfo entity,RedirectAttributes redirectAttributes) {
if(StringUtils.isNotBlank(ids)){
entity = bgpCfgService.getBgpCfg(Long.parseLong(ids),null);
initUpdateFormCondition(model,entity);
}else{
initFormCondition(model,entity);
@RequestMapping(value = { "bgpForm" })
@RequiresPermissions(value = { "other:bgp:config" })
public String bgpForm(Model model, String ids, CfgIndexInfo entity, RedirectAttributes redirectAttributes) {
if (StringUtils.isNotBlank(ids)) {
entity = bgpCfgService.getBgpCfg(Long.parseLong(ids), null);
initUpdateFormCondition(model, entity);
} else {
initFormCondition(model, entity);
}
model.addAttribute("_cfg", entity);
return "/cfg/other/bgpForm";
}
@RequestMapping(value = {"saveBgpCfg"})
@RequiresPermissions(value={"other:bgp:config"})
public String saveBgpCfg(Model model,HttpServletRequest request,HttpServletResponse response
,String ids,CfgIndexInfo entity
,RedirectAttributes redirectAttributes) {
@RequestMapping(value = { "saveBgpCfg" })
@RequiresPermissions(value = { "other:bgp:config" })
public String saveBgpCfg(Model model, HttpServletRequest request, HttpServletResponse response, String ids,
CfgIndexInfo entity, RedirectAttributes redirectAttributes) {
bgpCfgService.saveBgpCfg(entity);
return "redirect:" + adminPath +"/ntc/other/bgpList?functionId="+entity.getFunctionId();
return "redirect:" + adminPath + "/ntc/other/bgpList?functionId=" + entity.getFunctionId();
}
@RequestMapping(value = {"ajaxBgpSubList"})
public String ajaxBgpSubList(Model model,Long cfgId,Integer index,Integer compileId) {
CfgIndexInfo cfg = bgpCfgService.getBgpCfg(cfgId,compileId);
@RequestMapping(value = { "ajaxBgpSubList" })
public String ajaxBgpSubList(Model model, Long cfgId, Integer index, Integer compileId) {
CfgIndexInfo cfg = bgpCfgService.getBgpCfg(cfgId, compileId);
List<String[]> tabList = new ArrayList();
if(cfg.getIpPortList()!=null){
if (cfg.getIpPortList() != null) {
String cfgType = null;
for(IpPortCfg ip:cfg.getIpPortList()){
if(!ip.getCfgType().equals(cfgType)){
tabList.add(new String[]{"1",ip.getCfgType()});
for (IpPortCfg ip : cfg.getIpPortList()) {
if (!ip.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "1", ip.getCfgType() });
cfgType = ip.getCfgType();
}
}
}
if(cfg.getNtcBgpAsCfgList()!=null){
if (cfg.getNtcBgpAsCfgList() != null) {
String cfgType = null;
for(NtcBgpAsCfg ip:cfg.getNtcBgpAsCfgList()){
if(!ip.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",ip.getCfgType()});
for (NtcBgpAsCfg ip : cfg.getNtcBgpAsCfgList()) {
if (!ip.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "2", ip.getCfgType() });
cfgType = ip.getCfgType();
}
}
}
if(cfg.getNtcSubscribeIdCfgList()!=null){
if (cfg.getNtcSubscribeIdCfgList() != null) {
String cfgType = null;
for(NtcSubscribeIdCfg ip:cfg.getNtcSubscribeIdCfgList()){
if(!ip.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",ip.getCfgType()});
for (NtcSubscribeIdCfg ip : cfg.getNtcSubscribeIdCfgList()) {
if (!ip.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "2", ip.getCfgType() });
cfgType = ip.getCfgType();
}
}
}
/*TODO
* if(cfg.getDomainList()!=null){
String cfgType = null;
for(ComplexkeywordCfg keyword:cfg.getDomainList()){
if(!keyword.getCfgType().equals(cfgType)){
tabList.add(new String[]{"3",keyword.getCfgType()});
cfgType = keyword.getCfgType();
}
}
}*/
model.addAttribute("_cfg", cfg);
/*
* TODO if(cfg.getDomainList()!=null){ String cfgType = null;
* for(ComplexkeywordCfg keyword:cfg.getDomainList()){
* if(!keyword.getCfgType().equals(cfgType)){ tabList.add(new
* String[]{"3",keyword.getCfgType()}); cfgType = keyword.getCfgType();
* } } }
*/
model.addAttribute("_cfg", cfg);
model.addAttribute("index", index);
model.addAttribute("tabList", tabList);
return "/cfg/other/bgpSubList";
}
@RequestMapping(value = {"updateBgpCfgValid"})
@RequiresPermissions(value={"other:bgp:config"})
public String updateBgpCfgValid(Integer isValid,String ids,Integer functionId,RedirectAttributes redirectAttributes) {
bgpCfgService.updateBgpCfgValid(isValid,ids,functionId);
return "redirect:" + adminPath +"/ntc/other/bgpList?functionId="+functionId;
@RequestMapping(value = { "updateBgpCfgValid" })
@RequiresPermissions(value = { "other:bgp:config" })
public String updateBgpCfgValid(Integer isValid, String ids, Integer functionId,
RedirectAttributes redirectAttributes) {
bgpCfgService.updateBgpCfgValid(isValid, ids, functionId);
return "redirect:" + adminPath + "/ntc/other/bgpList?functionId=" + functionId;
}
@RequestMapping(value = {"auditBgpCfg"})
@RequiresPermissions(value={"other:bgp:confirm"})
public String auditBgpCfg(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,
Integer isValid,
Integer isAudit,
String ids,
Integer functionId,
RedirectAttributes redirectAttributes,
HttpServletResponse response,
HttpServletRequest request) {
if(!StringUtil.isEmpty(ids)) {
@RequestMapping(value = { "auditBgpCfg" })
@RequiresPermissions(value = { "other:bgp:confirm" })
public String auditBgpCfg(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, Integer isValid, Integer isAudit,
String ids, Integer functionId, RedirectAttributes redirectAttributes, HttpServletResponse response,
HttpServletRequest request) {
if (!StringUtil.isEmpty(ids)) {
CfgIndexInfo entity = new CfgIndexInfo();
String[] idArray = ids.split(",");
for(String id :idArray){
entity = bgpCfgService.getBgpCfg(Long.parseLong(id),null);
for (String id : idArray) {
entity = bgpCfgService.getBgpCfg(Long.parseLong(id), null);
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setAuditorId(UserUtils.getUser().getId());
entity.setAuditTime(new Date());
entity.setFunctionId(functionId);
try {
bgpCfgService.auditBgpCfg(entity,isAudit);
addMessage(redirectAttributes,"success", "audit_success");
bgpCfgService.auditBgpCfg(entity, isAudit);
addMessage(redirectAttributes, "success", "audit_success");
} catch (MaatConvertException e) {
e.printStackTrace();
logger.error("bgp配置下发失败",e);
addMessage(redirectAttributes,"error","request_service_failed");
}catch (Exception e) {
logger.error("bgp配置下发失败", e);
addMessage(redirectAttributes, "error", "request_service_failed");
} catch (Exception e) {
e.printStackTrace();
logger.error("bgp配置下发失败",e);
addMessage(redirectAttributes,"error","audit_failed");
logger.error("bgp配置下发失败", e);
addMessage(redirectAttributes, "error", "audit_failed");
}
}
}else {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
Page<CfgIndexInfo> auditPage=new Page<CfgIndexInfo>(request,response,"a");
} else {
Page<CfgIndexInfo> searchPage = new Page<CfgIndexInfo>(request, response, "a");
Page<CfgIndexInfo> auditPage = new Page<CfgIndexInfo>(request, response, "a");
BeanUtils.copyProperties(searchPage, auditPage);
try {
auditAll(auditPage,isValid , cfg);
addMessage(redirectAttributes,"success", "audit_success");
auditAll(auditPage, isValid, cfg);
addMessage(redirectAttributes, "success", "audit_success");
} catch (Exception e) {
logger.error("配置下发失败:",e);
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes,"error", "request_service_failed");
}else {
addMessage(redirectAttributes,"error", "audit_failed");
logger.error("配置下发失败:", e);
if (e instanceof MaatConvertException) {
addMessage(redirectAttributes, "error", "request_service_failed");
} else {
addMessage(redirectAttributes, "error", "audit_failed");
}
}
return bgpList(model, cfg, request, response);
}
return "redirect:" + adminPath +"/ntc/other/bgpList?functionId="+functionId;
return "redirect:" + adminPath + "/ntc/other/bgpList?functionId=" + functionId;
}
//bgp配置导出
@RequestMapping(value = "exportbgp")
public void exportbgp(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")CfgIndexInfo entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
List<CfgIndexInfo> ipLists=new ArrayList<CfgIndexInfo>();
//导出选中记录
if(!StringUtil.isEmpty(ids)){
ipLists=ipCfgService.getByIdsList(ids);
}else{
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo=new Page<CfgIndexInfo>(request, response,"a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = bgpCfgService.getBgpList(pageInfo, entity);
ipLists=page.getList();
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
titleList.add("NTC_BGP_AS");
// titleList.add("NTC_SUBSCRIBE_ID");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_IP", IpPortCfg.class);
classMap.put("NTC_BGP_AS", BaseStringCfg.class);
// classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class);
String cfgIndexInfoNoExport=",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String ntcSubscribeIdCfgNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,";
String regionCfgNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("NTC_BGP_AS", regionCfgNoExport);
// noExportMap.put("NTC_SUBSCRIBE_ID", ntcSubscribeIdCfgNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
// List<BaseStringCfg> subscribeInfoList=new ArrayList<BaseStringCfg>();
List<BaseStringCfg> asInfoList=new ArrayList<BaseStringCfg>();
for (CfgIndexInfo cfg : ipLists) {
CfgIndexInfo cfgIndexInfo=bgpCfgService.exportbgp(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
// subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList());
asInfoList.addAll(cfgIndexInfo.getNtcBgpAsCfgList());
}
asInfoList=BaseStringCfg.replaceBaseKeyList(asInfoList);
// subscribeInfoList=BaseStringCfg.baseHexList(subscribeInfoList);
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_IP", ipList);
dataMap.put("NTC_BGP_AS", asInfoList);
// dataMap.put("NTC_SUBSCRIBE_ID", subscribeInfoList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("bgp export failed",e);
addMessage(redirectAttributes,"error","export_failed");
// bgp配置导出
@RequestMapping(value = "exportbgp")
public void exportbgp(Model model, HttpServletRequest request, HttpServletResponse response,
@ModelAttribute("cfg") CfgIndexInfo entity, String ids, RedirectAttributes redirectAttributes) {
try {
// export data info
List<String> titleList = new ArrayList<String>();
Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
Map<String, List> dataMap = new HashMap<String, List>();
Map<String, String> noExportMap = new HashMap<String, String>();
List<CfgIndexInfo> ipLists = new ArrayList<CfgIndexInfo>();
// 导出选中记录
if (!StringUtil.isEmpty(ids)) {
ipLists = ipCfgService.getByIdsList(ids);
} else {
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo = new Page<CfgIndexInfo>(request, response, "a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = bgpCfgService.getBgpList(pageInfo, entity);
ipLists = page.getList();
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
titleList.add("NTC_BGP_AS");
// titleList.add("NTC_SUBSCRIBE_ID");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_IP", IpPortCfg.class);
classMap.put("NTC_BGP_AS", BaseStringCfg.class);
// classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class);
String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String ntcSubscribeIdCfgNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,";
String regionCfgNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,";
// 时间过滤
if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) {
cfgIndexInfoNoExport = ",config_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_edit_time_start() == null && entity.getSearch_edit_time_end() == null) {
cfgIndexInfoNoExport = ",edit_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_audit_time_start() == null && entity.getSearch_audit_time_end() == null) {
cfgIndexInfoNoExport = ",audit_time" + cfgIndexInfoNoExport;
}
if (!StringUtil.isEmpty(entity.gethColumns())) {
cfgIndexInfoNoExport = "," + entity.gethColumns() + "," + cfgIndexInfoNoExport;
}
noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("NTC_BGP_AS", regionCfgNoExport);
// noExportMap.put("NTC_SUBSCRIBE_ID", ntcSubscribeIdCfgNoExport);
List<IpPortCfg> ipList = new ArrayList<IpPortCfg>();
// List<BaseStringCfg> subscribeInfoList=new
// ArrayList<BaseStringCfg>();
List<BaseStringCfg> asInfoList = new ArrayList<BaseStringCfg>();
for (CfgIndexInfo cfg : ipLists) {
CfgIndexInfo cfgIndexInfo = bgpCfgService.exportbgp(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
// subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList());
asInfoList.addAll(cfgIndexInfo.getNtcBgpAsCfgList());
}
asInfoList = BaseStringCfg.replaceBaseKeyList(asInfoList);
// subscribeInfoList=BaseStringCfg.baseHexList(subscribeInfoList);
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_IP", ipList);
dataMap.put("NTC_BGP_AS", asInfoList);
// dataMap.put("NTC_SUBSCRIBE_ID", subscribeInfoList);
/* } */
String timeRange = initTimeMap(entity);
noExportMap.put("timeRange", timeRange);
if ("csv".equals(entity.getExType())) {
this._exportCsv(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
}
} catch (Exception e) {
logger.error("bgp export failed", e);
addMessage(redirectAttributes, "error", "export_failed");
}
// return "redirect:" + adminPath
// +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
}

View File

@@ -467,6 +467,19 @@ public class IpController extends BaseController{
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String asnGroupInfoNoExport="";
// 时间过滤
if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) {
cfgIndexInfoNoExport = ",config_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_edit_time_start() == null && entity.getSearch_edit_time_end() == null) {
cfgIndexInfoNoExport = ",edit_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_audit_time_start() == null && entity.getSearch_audit_time_end() == null) {
cfgIndexInfoNoExport = ",audit_time" + cfgIndexInfoNoExport;
}
if (!StringUtil.isEmpty(entity.gethColumns())) {
cfgIndexInfoNoExport = "," + entity.gethColumns() + "," + cfgIndexInfoNoExport;
}
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("asn_policy", asnGroupInfoNoExport);
@@ -485,9 +498,16 @@ public class IpController extends BaseController{
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_IP", ipList);
dataMap.put("asn_policy", groupInfoList);
String timeRange = initTimeMap(entity);
noExportMap.put("timeRange", timeRange);
if ("csv".equals(entity.getExType())) {
this._exportCsv(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
}
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("ip addr export failed",e);
addMessage(redirectAttributes,"error", "export_failed");

View File

@@ -44,275 +44,303 @@ import com.nis.web.security.UserUtils;
/**
* 邮件相关配置控制类
*
* @author dell
*
*/
@Controller
@RequestMapping("${adminPath}/ntc/mail/")
public class MailCfgController extends BaseController{
@RequestMapping(value = {"mailList"})
// @RequiresPermissions(value={"mail:config"})
public String mailList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
public class MailCfgController extends BaseController {
@RequestMapping(value = { "mailList" })
// @RequiresPermissions(value={"mail:config"})
public String mailList(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, HttpServletRequest request,
HttpServletResponse response) {
Page<CfgIndexInfo> searchPage = new Page<CfgIndexInfo>(request, response, "a");
Page<CfgIndexInfo> page = mailCfgService.getMailList(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
initPageCondition(model, cfg);
return "/cfg/mail/mailList";
}
@RequestMapping(value = {"mailForm"})
@RequiresPermissions(value={"mail:config"})
public String mailForm(Model model,String ids,CfgIndexInfo entity) {
if(StringUtils.isNotBlank(ids)){
entity = mailCfgService.getMailCfg(Long.parseLong(ids),null);
initUpdateFormCondition(model,entity);
}else{
initFormCondition(model,entity);
@RequestMapping(value = { "mailForm" })
@RequiresPermissions(value = { "mail:config" })
public String mailForm(Model model, String ids, CfgIndexInfo entity) {
if (StringUtils.isNotBlank(ids)) {
entity = mailCfgService.getMailCfg(Long.parseLong(ids), null);
initUpdateFormCondition(model, entity);
} else {
initFormCondition(model, entity);
}
model.addAttribute("_cfg", entity);
return "/cfg/mail/mailForm";
}
@RequestMapping(value = {"saveMailCfg"})
@RequiresPermissions(value={"mail:config"})
public String saveMailCfg( RedirectAttributes redirectAttributes, Model model,HttpServletRequest request,HttpServletResponse response,String ids,
CfgIndexInfo entity,MultipartFile file) {
@RequestMapping(value = { "saveMailCfg" })
@RequiresPermissions(value = { "mail:config" })
public String saveMailCfg(RedirectAttributes redirectAttributes, Model model, HttpServletRequest request,
HttpServletResponse response, String ids, CfgIndexInfo entity, MultipartFile file) {
try {
ToMaatResult result = null;
if(file!=null && file.getSize()>0 && entity.getDigestList()!=null && entity.getDigestList().size()>0){
if (file != null && file.getSize() > 0 && entity.getDigestList() != null
&& entity.getDigestList().size() > 0) {
String sep = System.getProperty("file.separator");
String digestFilePath = request.getRealPath("/")+"digestFile";
String digestFilePath = request.getRealPath("/") + "digestFile";
FileUtils.createDirectory(digestFilePath);
String fileName = UUID.randomUUID()+FileUtils.getSuffix(file.getOriginalFilename(), true);
File uploadFile = new File(digestFilePath+sep+fileName);
String fileName = UUID.randomUUID() + FileUtils.getSuffix(file.getOriginalFilename(), true);
File uploadFile = new File(digestFilePath + sep + fileName);
FileCopyUtils.copy(file.getBytes(), uploadFile);
Date creatTime = entity.getCreateTime();
//获取文件摘要接口调用
Map<String,Object> fileMap = new HashMap();
// 获取文件摘要接口调用
Map<String, Object> fileMap = new HashMap();
fileMap.put("filetype", FileUtils.getSuffix(file.getOriginalFilename(), false));
fileMap.put("datatype", "dbSystem");//源文件存入数据中心
fileMap.put("createTime",creatTime);
fileMap.put("key",FileUtils.getPrefix(file.getOriginalFilename(), false));
fileMap.put("datatype", "dbSystem");// 源文件存入数据中心
fileMap.put("createTime", creatTime);
fileMap.put("key", FileUtils.getPrefix(file.getOriginalFilename(), false));
fileMap.put("fileName", file.getOriginalFilename());
String md5 = DigestUtils.md5Hex(file.getBytes());
fileMap.put("checksum", md5);
result = ConfigServiceUtil.getFileDigest(null, uploadFile, JsonMapper.toJsonString(fileMap));
logger.info("获取文件摘要响应信息:"+result);
}
mailCfgService.saveMailCfg(entity,result);
addMessage(redirectAttributes,"success", "save_success");
} catch ( Exception e) {
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes,"error","request_service_failed");
}else if(e instanceof CallExternalProceduresException) {
addMessage(redirectAttributes,"error","call_external_procedures_failed");
}else {
addMessage(redirectAttributes,"error","save_failed");
logger.info("获取文件摘要响应信息:" + result);
}
mailCfgService.saveMailCfg(entity, result);
addMessage(redirectAttributes, "success", "save_success");
} catch (Exception e) {
if (e instanceof MaatConvertException) {
addMessage(redirectAttributes, "error", "request_service_failed");
} else if (e instanceof CallExternalProceduresException) {
addMessage(redirectAttributes, "error", "call_external_procedures_failed");
} else {
addMessage(redirectAttributes, "error", "save_failed");
}
}
return "redirect:" + adminPath +"/ntc/mail/mailList?functionId="+entity.getFunctionId();
return "redirect:" + adminPath + "/ntc/mail/mailList?functionId=" + entity.getFunctionId();
}
@RequestMapping(value = {"ajaxMailSubList"})
public String ajaxMailSubList(Model model,Long cfgId,Integer index,Integer compileId) {
CfgIndexInfo cfg = mailCfgService.getMailCfg(cfgId,compileId);
@RequestMapping(value = { "ajaxMailSubList" })
public String ajaxMailSubList(Model model, Long cfgId, Integer index, Integer compileId) {
CfgIndexInfo cfg = mailCfgService.getMailCfg(cfgId, compileId);
List<String[]> tabList = new ArrayList();
if(cfg.getIpPortList()!=null){
if (cfg.getIpPortList() != null) {
String cfgType = null;
for(IpPortCfg ip:cfg.getIpPortList()){
if(!ip.getCfgType().equals(cfgType)){
tabList.add(new String[]{"1",ip.getCfgType()});
for (IpPortCfg ip : cfg.getIpPortList()) {
if (!ip.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "1", ip.getCfgType() });
cfgType = ip.getCfgType();
}
}
}
if(cfg.getComplexList()!=null){
if (cfg.getComplexList() != null) {
String cfgType = null;
for(ComplexkeywordCfg keyword:cfg.getComplexList()){
if(!keyword.getCfgType().equals(cfgType)){
tabList.add(new String[]{"3",keyword.getCfgType()});
for (ComplexkeywordCfg keyword : cfg.getComplexList()) {
if (!keyword.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "3", keyword.getCfgType() });
cfgType = keyword.getCfgType();
}
}
}
if(cfg.getDigestList()!=null){
if (cfg.getDigestList() != null) {
String cfgType = null;
for(FileDigestCfg digest:cfg.getDigestList()){
if(!digest.getCfgType().equals(cfgType)){
tabList.add(new String[]{"5",digest.getCfgType()});
for (FileDigestCfg digest : cfg.getDigestList()) {
if (!digest.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "5", digest.getCfgType() });
cfgType = digest.getCfgType();
}
}
}
if(cfg.getNtcSubscribeIdCfgList()!=null){
if (cfg.getNtcSubscribeIdCfgList() != null) {
String cfgType = null;
for(NtcSubscribeIdCfg keyword:cfg.getNtcSubscribeIdCfgList()){
if(!keyword.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",keyword.getCfgType()});
for (NtcSubscribeIdCfg keyword : cfg.getNtcSubscribeIdCfgList()) {
if (!keyword.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "2", keyword.getCfgType() });
cfgType = keyword.getCfgType();
}
}
}
model.addAttribute("_cfg", cfg);
model.addAttribute("_cfg", cfg);
model.addAttribute("index", index);
model.addAttribute("tabList", tabList);
return "/cfg/mail/mailSubList";
}
@RequestMapping(value = {"updateMailCfgValid"})
@RequiresPermissions(value={"mail:config"})
public String updateMailCfgValid(Integer isValid,String ids,Integer functionId) {
mailCfgService.updateMailCfgValid(isValid,ids,functionId);
return "redirect:" + adminPath +"/ntc/mail/mailList?functionId="+functionId;
@RequestMapping(value = { "updateMailCfgValid" })
@RequiresPermissions(value = { "mail:config" })
public String updateMailCfgValid(Integer isValid, String ids, Integer functionId) {
mailCfgService.updateMailCfgValid(isValid, ids, functionId);
return "redirect:" + adminPath + "/ntc/mail/mailList?functionId=" + functionId;
}
@RequestMapping(value = {"auditMailCfg"})
@RequiresPermissions(value={"mail:confirm"})
public String auditMailCfg(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,
Integer isValid,
Integer isAudit,
String ids,
Integer functionId,
RedirectAttributes redirectAttributes,
HttpServletResponse response,
HttpServletRequest request) {
if(!StringUtil.isEmpty(ids)) {
@RequestMapping(value = { "auditMailCfg" })
@RequiresPermissions(value = { "mail:confirm" })
public String auditMailCfg(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, Integer isValid, Integer isAudit,
String ids, Integer functionId, RedirectAttributes redirectAttributes, HttpServletResponse response,
HttpServletRequest request) {
if (!StringUtil.isEmpty(ids)) {
CfgIndexInfo entity = new CfgIndexInfo();
String[] idArray = ids.split(",");
for(String id :idArray){
entity = mailCfgService.getMailCfg(Long.parseLong(id),null);
for (String id : idArray) {
entity = mailCfgService.getMailCfg(Long.parseLong(id), null);
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setAuditorId(UserUtils.getUser().getId());
entity.setAuditTime(new Date());
entity.setFunctionId(functionId);
try {
mailCfgService.auditMailCfg(entity,isAudit);
addMessage(redirectAttributes,"success", "audit_success");
} catch ( Exception e) {
mailCfgService.auditMailCfg(entity, isAudit);
addMessage(redirectAttributes, "success", "audit_success");
} catch (Exception e) {
e.printStackTrace();
logger.error("mail配置下发失败"+e.getMessage());
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes,"error","request_service_failed");
}else if(e instanceof CallExternalProceduresException) {
addMessage(redirectAttributes,"error","call_external_procedures_failed");
}else {
addMessage(redirectAttributes,"error","save_failed");
logger.error("mail配置下发失败" + e.getMessage());
if (e instanceof MaatConvertException) {
addMessage(redirectAttributes, "error", "request_service_failed");
} else if (e instanceof CallExternalProceduresException) {
addMessage(redirectAttributes, "error", "call_external_procedures_failed");
} else {
addMessage(redirectAttributes, "error", "save_failed");
}
}
}
}else {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
Page<CfgIndexInfo> auditPage=new Page<CfgIndexInfo>(request,response,"a");
} else {
Page<CfgIndexInfo> searchPage = new Page<CfgIndexInfo>(request, response, "a");
Page<CfgIndexInfo> auditPage = new Page<CfgIndexInfo>(request, response, "a");
BeanUtils.copyProperties(searchPage, auditPage);
try {
auditAll(auditPage,isValid , cfg);
addMessage(redirectAttributes,"success", "audit_success");
auditAll(auditPage, isValid, cfg);
addMessage(redirectAttributes, "success", "audit_success");
} catch (Exception e) {
logger.error("配置下发失败:",e);
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes,"error", "request_service_failed");
}else {
addMessage(redirectAttributes,"error", "audit_failed");
logger.error("配置下发失败:", e);
if (e instanceof MaatConvertException) {
addMessage(redirectAttributes, "error", "request_service_failed");
} else {
addMessage(redirectAttributes, "error", "audit_failed");
}
}
return mailList(model, cfg, request, response);
}
return "redirect:" + adminPath +"/ntc/mail/mailList?functionId="+functionId;
return "redirect:" + adminPath + "/ntc/mail/mailList?functionId=" + functionId;
}
//mail配置导出
@RequestMapping(value = "exportmail")
public void exportmail(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")CfgIndexInfo entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
List<CfgIndexInfo> ipLists=new ArrayList<CfgIndexInfo>();
//导出选中记录
if(!StringUtil.isEmpty(ids)){
ipLists=ipCfgService.getByIdsList(ids);
}else{
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo=new Page<CfgIndexInfo>(request, response,"a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = mailCfgService.getMailList(pageInfo, entity);
ipLists=page.getList();
}
titleList.add(entity.getMenuNameCode());
String cfgIndexInfoNoExport=",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String ntcSubscribeIdCfgNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,";
String regionCfgNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,";
if(entity.getFunctionId()!=null){
if(entity.getFunctionId()!=37){
titleList.add("NTC_IP");
titleList.add("NTC_MAIL_BODY");
classMap.put("NTC_IP", IpPortCfg.class);
classMap.put("NTC_MAIL_BODY", ComplexkeywordCfg.class);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("NTC_MAIL_BODY", regionCfgNoExport);
}
}
titleList.add("NTC_MAIL_HDR");
titleList.add("NTC_SUBSCRIBE_ID");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_MAIL_HDR", ComplexkeywordCfg.class);
classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class);
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_MAIL_HDR", regionCfgNoExport);
noExportMap.put("NTC_SUBSCRIBE_ID", ntcSubscribeIdCfgNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
List<BaseStringCfg> subscribeInfoList=new ArrayList<BaseStringCfg>();
List<ComplexkeywordCfg> mailBodyList=new ArrayList<ComplexkeywordCfg>();
List<ComplexkeywordCfg> mailReqHdrList=new ArrayList<ComplexkeywordCfg>();
for (CfgIndexInfo cfg : ipLists) {
Map<String, List> maps=mailCfgService.exportmail(cfg);
mailReqHdrList.addAll(maps.get("NTC_MAIL_HDR"));
mailBodyList.addAll(maps.get("NTC_MAIL_BODY"));
ipList.addAll(maps.get("NTC_UNIVERSAL_IP"));
subscribeInfoList.addAll(maps.get("NTC_SUBSCRIBE_ID"));
}
subscribeInfoList=BaseStringCfg.baseHexList(subscribeInfoList);
mailBodyList=ComplexkeywordCfg.replaceComplexKeyList(mailBodyList);
mailReqHdrList=ComplexkeywordCfg.replaceComplexKeyList(mailReqHdrList);
if(entity.getFunctionId()!=null){
if(entity.getFunctionId()!=37){
dataMap.put("NTC_IP", ipList);
dataMap.put("NTC_MAIL_BODY", mailBodyList);
}
}
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_MAIL_HDR", mailReqHdrList);
dataMap.put("NTC_SUBSCRIBE_ID", subscribeInfoList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("mail export failed",e);
addMessage(redirectAttributes,"error","export_failed");
// mail配置导出
@RequestMapping(value = "exportmail")
public void exportmail(Model model, HttpServletRequest request, HttpServletResponse response,
@ModelAttribute("cfg") CfgIndexInfo entity, String ids, RedirectAttributes redirectAttributes) {
try {
// export data info
List<String> titleList = new ArrayList<String>();
Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
Map<String, List> dataMap = new HashMap<String, List>();
Map<String, String> noExportMap = new HashMap<String, String>();
List<CfgIndexInfo> ipLists = new ArrayList<CfgIndexInfo>();
// 导出选中记录
if (!StringUtil.isEmpty(ids)) {
ipLists = ipCfgService.getByIdsList(ids);
} else {
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo = new Page<CfgIndexInfo>(request, response, "a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = mailCfgService.getMailList(pageInfo, entity);
ipLists = page.getList();
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
titleList.add(entity.getMenuNameCode());
String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String ntcSubscribeIdCfgNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,";
String regionCfgNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,";
// 时间过滤
if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) {
cfgIndexInfoNoExport = ",config_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_edit_time_start() == null && entity.getSearch_edit_time_end() == null) {
cfgIndexInfoNoExport = ",edit_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_audit_time_start() == null && entity.getSearch_audit_time_end() == null) {
cfgIndexInfoNoExport = ",audit_time" + cfgIndexInfoNoExport;
}
if (!StringUtil.isEmpty(entity.gethColumns())) {
cfgIndexInfoNoExport = "," + entity.gethColumns() + "," + cfgIndexInfoNoExport;
}
if (entity.getFunctionId() != null) {
if (entity.getFunctionId() != 37) {
titleList.add("NTC_IP");
titleList.add("NTC_MAIL_BODY");
classMap.put("NTC_IP", IpPortCfg.class);
classMap.put("NTC_MAIL_BODY", ComplexkeywordCfg.class);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("NTC_MAIL_BODY", regionCfgNoExport);
}
}
titleList.add("NTC_MAIL_HDR");
titleList.add("NTC_SUBSCRIBE_ID");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_MAIL_HDR", ComplexkeywordCfg.class);
classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class);
noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport);
noExportMap.put("NTC_MAIL_HDR", regionCfgNoExport);
noExportMap.put("NTC_SUBSCRIBE_ID", ntcSubscribeIdCfgNoExport);
List<IpPortCfg> ipList = new ArrayList<IpPortCfg>();
List<BaseStringCfg> subscribeInfoList = new ArrayList<BaseStringCfg>();
List<ComplexkeywordCfg> mailBodyList = new ArrayList<ComplexkeywordCfg>();
List<ComplexkeywordCfg> mailReqHdrList = new ArrayList<ComplexkeywordCfg>();
for (CfgIndexInfo cfg : ipLists) {
Map<String, List> maps = mailCfgService.exportmail(cfg);
mailReqHdrList.addAll(maps.get("NTC_MAIL_HDR"));
mailBodyList.addAll(maps.get("NTC_MAIL_BODY"));
ipList.addAll(maps.get("NTC_UNIVERSAL_IP"));
subscribeInfoList.addAll(maps.get("NTC_SUBSCRIBE_ID"));
}
subscribeInfoList = BaseStringCfg.baseHexList(subscribeInfoList);
mailBodyList = ComplexkeywordCfg.replaceComplexKeyList(mailBodyList);
mailReqHdrList = ComplexkeywordCfg.replaceComplexKeyList(mailReqHdrList);
if (entity.getFunctionId() != null) {
if (entity.getFunctionId() != 37) {
dataMap.put("NTC_IP", ipList);
dataMap.put("NTC_MAIL_BODY", mailBodyList);
}
}
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_MAIL_HDR", mailReqHdrList);
dataMap.put("NTC_SUBSCRIBE_ID", subscribeInfoList);
/* } */
String timeRange = initTimeMap(entity);
noExportMap.put("timeRange", timeRange);
if ("csv".equals(entity.getExType())) {
this._exportCsv(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
}
} catch (Exception e) {
logger.error("mail export failed", e);
addMessage(redirectAttributes, "error", "export_failed");
}
// return "redirect:" + adminPath
// +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
}

View File

@@ -33,145 +33,151 @@ import com.nis.web.security.UserUtils;
/**
* 白名单
*
* @author dell
*
*/
@Controller
@RequestMapping("${adminPath}/ntc/whitelist")
public class WhiteListController extends CommonController{
@RequestMapping(value = {"ip/list"})
//@RequiresPermissions(value={"whitelist:ip:config","whitelist:ip:confirm","whitelist:ip:aduit"},logical=Logical.OR)
public String ipList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
public class WhiteListController extends CommonController {
@RequestMapping(value = { "ip/list" })
// @RequiresPermissions(value={"whitelist:ip:config","whitelist:ip:confirm","whitelist:ip:aduit"},logical=Logical.OR)
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 = ipCfgService.getIpCfgList(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
initPageCondition(model, cfg);
return "/cfg/whitelist/ipList";
}
@RequestMapping(value = {"ajaxIpSubList"})
public String ajaxIpSubList(Model model,Long cfgId,Integer index,Integer compileId) {
CfgIndexInfo cfg = ipCfgService.getIpPortCfg(cfgId,compileId);
@RequestMapping(value = { "ajaxIpSubList" })
public String ajaxIpSubList(Model model, Long cfgId, Integer index, Integer compileId) {
CfgIndexInfo cfg = ipCfgService.getIpPortCfg(cfgId, compileId);
List<String[]> tabList = new ArrayList();
if(cfg.getIpPortList()!=null){
if (cfg.getIpPortList() != null) {
String cfgType = null;
for(IpPortCfg ip:cfg.getIpPortList()){
if(!ip.getCfgType().equals(cfgType)){
tabList.add(new String[]{"1",ip.getCfgType()});
for (IpPortCfg ip : cfg.getIpPortList()) {
if (!ip.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "1", ip.getCfgType() });
cfgType = ip.getCfgType();
}
}
}
if(cfg.getNtcSubscribeIdCfgList()!=null){
if (cfg.getNtcSubscribeIdCfgList() != null) {
String cfgType = null;
for(NtcSubscribeIdCfg keyword:cfg.getNtcSubscribeIdCfgList()){
if(!keyword.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",keyword.getCfgType()});
for (NtcSubscribeIdCfg keyword : cfg.getNtcSubscribeIdCfgList()) {
if (!keyword.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "2", keyword.getCfgType() });
cfgType = keyword.getCfgType();
}
}
}
model.addAttribute("_cfg", cfg);
model.addAttribute("_cfg", cfg);
model.addAttribute("index", index);
model.addAttribute("tabList", tabList);
return "/cfg/whitelist/ipSubList";
}
@RequestMapping(value = {"ip/form"})
@RequiresPermissions(value={"whitelist:ip:config"})
public String ipForm(Model model,String ids,CfgIndexInfo entity) {
if(StringUtils.isNotBlank(ids)){
entity = this.ipCfgService.getIpPortCfg(Long.parseLong(ids),null);
initUpdateFormCondition(model,entity);
}else{
initFormCondition(model,entity);
@RequestMapping(value = { "ip/form" })
@RequiresPermissions(value = { "whitelist:ip:config" })
public String ipForm(Model model, String ids, CfgIndexInfo entity) {
if (StringUtils.isNotBlank(ids)) {
entity = this.ipCfgService.getIpPortCfg(Long.parseLong(ids), null);
initUpdateFormCondition(model, entity);
} else {
initFormCondition(model, entity);
}
model.addAttribute("_cfg", entity);
return "/cfg/whitelist/ipForm";
}
@RequestMapping(value = {"ip/save"})
public String saveIpCfg(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) {
@RequestMapping(value = { "ip/save" })
public String saveIpCfg(RedirectAttributes model, HttpServletRequest request, HttpServletResponse response,
String ids, CfgIndexInfo entity) {
ipCfgService.saveIpCfg(entity);
return "redirect:" + adminPath +"/ntc/whitelist/ip/list?functionId="+entity.getFunctionId();
return "redirect:" + adminPath + "/ntc/whitelist/ip/list?functionId=" + entity.getFunctionId();
}
@RequestMapping(value = {"ip/audit"})
@RequestMapping(value = { "ip/audit" })
@RequiresPermissions("whitelist:ip:confirm")
public String auditIp(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,
Integer isValid,
Integer isAudit,
String ids,
Integer functionId,
RedirectAttributes redirectAttributes,
HttpServletResponse response,
HttpServletRequest request
) {
if(!StringUtil.isEmpty(ids)){
public String auditIp(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, Integer isValid, Integer isAudit,
String ids, Integer functionId, RedirectAttributes redirectAttributes, HttpServletResponse response,
HttpServletRequest request) {
if (!StringUtil.isEmpty(ids)) {
CfgIndexInfo entity = new CfgIndexInfo();
String[] idArray = ids.split(",");
for(String id :idArray){
entity = ipCfgService.getIpPortCfg(Long.parseLong(id),null);
for (String id : idArray) {
entity = ipCfgService.getIpPortCfg(Long.parseLong(id), null);
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setAuditorId(UserUtils.getUser().getId());
entity.setAuditTime(new Date());
entity.setFunctionId(functionId);
try {
ipCfgService.auditIpCfg(entity,isAudit);
addMessage(redirectAttributes,"success", "audit_success");
ipCfgService.auditIpCfg(entity, isAudit);
addMessage(redirectAttributes, "success", "audit_success");
} catch (MaatConvertException e) {
logger.info("ip配置下发失败"+e.getMessage());
addMessage(redirectAttributes,"error", "request_service_failed");
}catch (Exception e) {
logger.info("ip配置下发失败"+e.getMessage());
addMessage(redirectAttributes,"error", "audit_failed");
logger.info("ip配置下发失败" + e.getMessage());
addMessage(redirectAttributes, "error", "request_service_failed");
} catch (Exception e) {
logger.info("ip配置下发失败" + e.getMessage());
addMessage(redirectAttributes, "error", "audit_failed");
}
}
}else{
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
Page<CfgIndexInfo> auditPage=new Page<CfgIndexInfo>(request,response,"a");
} else {
Page<CfgIndexInfo> searchPage = new Page<CfgIndexInfo>(request, response, "a");
Page<CfgIndexInfo> auditPage = new Page<CfgIndexInfo>(request, response, "a");
BeanUtils.copyProperties(searchPage, auditPage);
try {
auditAll(auditPage,isValid , cfg);
addMessage(redirectAttributes,"success", "audit_success");
auditAll(auditPage, isValid, cfg);
addMessage(redirectAttributes, "success", "audit_success");
} catch (Exception e) {
logger.error("配置下发失败:",e);
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes,"error", "request_service_failed");
}else {
addMessage(redirectAttributes,"error", "audit_failed");
logger.error("配置下发失败:", e);
if (e instanceof MaatConvertException) {
addMessage(redirectAttributes, "error", "request_service_failed");
} else {
addMessage(redirectAttributes, "error", "audit_failed");
}
}
return ipList(model, cfg, request, response);
}
return "redirect:" + adminPath +"/ntc/whitelist/ip/list?functionId="+functionId;
return "redirect:" + adminPath + "/ntc/whitelist/ip/list?functionId=" + functionId;
}
@RequestMapping(value = {"updateIpValid"})
@RequiresPermissions(value={"whitelist:ip:config"})
public String updateIpCfgValid(Integer isValid,String ids,Integer functionId) {
ipCfgService.updateIpCfgValid(isValid,ids,functionId);
return "redirect:" + adminPath +"/ntc/whitelist/ip/list?functionId="+functionId;
@RequestMapping(value = { "updateIpValid" })
@RequiresPermissions(value = { "whitelist:ip:config" })
public String updateIpCfgValid(Integer isValid, String ids, Integer functionId) {
ipCfgService.updateIpCfgValid(isValid, ids, functionId);
return "redirect:" + adminPath + "/ntc/whitelist/ip/list?functionId=" + functionId;
}
@RequestMapping(value = {"domain/list"})
//@RequiresPermissions(value={"whitelist:domain:config","whitelist:domain:confirm","whitelist:domain:aduit"},logical=Logical.OR)
public String domainList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
@RequestMapping(value = { "domain/list" })
// @RequiresPermissions(value={"whitelist:domain:config","whitelist:domain:confirm","whitelist:domain:aduit"},logical=Logical.OR)
public String domainList(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, HttpServletRequest request,
HttpServletResponse response) {
Page<CfgIndexInfo> searchPage = new Page<CfgIndexInfo>(request, response, "a");
Page<CfgIndexInfo> page = domainService.getDomainList(searchPage, cfg);
model.addAttribute("page", page);
initPageCondition(model,cfg);
initPageCondition(model, cfg);
return "/cfg/whitelist/domainList";
}
@RequestMapping(value = {"saveHttpUrlCfgs"})
public String saveHttpUrlCfgs(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,CfgIndexInfo entity) {
if(!StringUtil.isEmpty(entity) && !StringUtil.isEmpty(entity.getHttpUrlList())){
CfgIndexInfo sourceCfg=websiteCfgService.getCfgIndexInfo(entity.getHttpUrlList().get(0).getSourceCompileId());
@RequestMapping(value = { "saveHttpUrlCfgs" })
public String saveHttpUrlCfgs(RedirectAttributes model, HttpServletRequest request, HttpServletResponse response,
CfgIndexInfo entity) {
if (!StringUtil.isEmpty(entity) && !StringUtil.isEmpty(entity.getHttpUrlList())) {
CfgIndexInfo sourceCfg = websiteCfgService
.getCfgIndexInfo(entity.getHttpUrlList().get(0).getSourceCompileId());
for (HttpUrlCfg httpUrlCfg : entity.getHttpUrlList()) {
CfgIndexInfo cfg=new CfgIndexInfo();
List httpList=new ArrayList<>();
CfgIndexInfo cfg = new CfgIndexInfo();
List httpList = new ArrayList<>();
httpUrlCfg.setRequestId(sourceCfg.getRequestId());
BeanUtils.copyProperties(httpUrlCfg, cfg);
httpList.add(httpUrlCfg);
@@ -179,258 +185,315 @@ public class WhiteListController extends CommonController{
websiteCfgService.saveHttpCfg(cfg);
}
}
return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+entity.getFunctionId();
return "redirect:" + adminPath + "/ntc/whitelist/domain/list?functionId=" + entity.getFunctionId();
}
@RequestMapping(value = {"domain/form"})
@RequiresPermissions(value={"whitelist:domain:config"})
public String domainForm(Model model,String ids,CfgIndexInfo entity) {
if(StringUtils.isNotBlank(ids)){
entity = domainService.getDomainCfg(Long.parseLong(ids),null);
@RequestMapping(value = { "domain/form" })
@RequiresPermissions(value = { "whitelist:domain:config" })
public String domainForm(Model model, String ids, CfgIndexInfo entity) {
if (StringUtils.isNotBlank(ids)) {
entity = domainService.getDomainCfg(Long.parseLong(ids), null);
HttpUrlCfg urlCfg = new HttpUrlCfg();
urlCfg.setCfgType(Constants.HTTP_URL_REGION);
entity.setHttpUrl(urlCfg);
if(entity.getHttpUrlList().size()==0){
if (entity.getHttpUrlList().size() == 0) {
entity.getHttpUrlList().add(urlCfg);
}
initUpdateFormCondition(model,entity);
}else{
initUpdateFormCondition(model, entity);
} else {
HttpUrlCfg urlCfg = new HttpUrlCfg();
urlCfg.setCfgType(Constants.HTTP_URL_REGION);
entity.setHttpUrl(urlCfg);
List<HttpUrlCfg> urlList=new ArrayList<HttpUrlCfg>();
List<HttpUrlCfg> urlList = new ArrayList<HttpUrlCfg>();
urlList.add(urlCfg);
entity.setHttpUrlList(urlList);
initFormCondition(model,entity);
initFormCondition(model, entity);
}
model.addAttribute("_cfg", entity);
return "/cfg/whitelist/domainForm";
}
@RequestMapping(value = {"domain/save"})
public String saveOrUpdateDomain(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) {
@RequestMapping(value = { "domain/save" })
public String saveOrUpdateDomain(RedirectAttributes model, HttpServletRequest request, HttpServletResponse response,
String ids, CfgIndexInfo entity) {
domainService.saveDomainCfg(entity);
return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+entity.getFunctionId();
return "redirect:" + adminPath + "/ntc/whitelist/domain/list?functionId=" + entity.getFunctionId();
}
@RequestMapping(value = {"domain/ajaxSubList"})
public String ajaxDomainSubList(Model model,Long cfgId,Integer index,Integer compileId) {
CfgIndexInfo cfg = domainService.getDomainCfg(cfgId,compileId);
@RequestMapping(value = { "domain/ajaxSubList" })
public String ajaxDomainSubList(Model model, Long cfgId, Integer index, Integer compileId) {
CfgIndexInfo cfg = domainService.getDomainCfg(cfgId, compileId);
List<String[]> tabList = new ArrayList();
if(cfg.getHttpUrlList()!=null){
if (cfg.getHttpUrlList() != null) {
String cfgType = null;
for(BaseStringCfg keyword:cfg.getHttpUrlList()){
if(!keyword.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",keyword.getCfgType()});
for (BaseStringCfg keyword : cfg.getHttpUrlList()) {
if (!keyword.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "2", keyword.getCfgType() });
cfgType = keyword.getCfgType();
}
}
}
if(cfg.getNtcSubscribeIdCfgList()!=null){
if (cfg.getNtcSubscribeIdCfgList() != null) {
String cfgType = null;
for(NtcSubscribeIdCfg keyword:cfg.getNtcSubscribeIdCfgList()){
if(!keyword.getCfgType().equals(cfgType)){
tabList.add(new String[]{"2",keyword.getCfgType()});
for (NtcSubscribeIdCfg keyword : cfg.getNtcSubscribeIdCfgList()) {
if (!keyword.getCfgType().equals(cfgType)) {
tabList.add(new String[] { "2", keyword.getCfgType() });
cfgType = keyword.getCfgType();
}
}
}
model.addAttribute("_cfg", cfg);
model.addAttribute("_cfg", cfg);
model.addAttribute("index", index);
model.addAttribute("tabList", tabList);
return "/cfg/whitelist/domianSubList";
}
@RequestMapping(value = {"domain/updateValid"})
@RequiresPermissions(value={"whitelist:domain:config"})
public String updateDomainValid(Integer isValid,String ids,Integer functionId) {
domainService.updateDomainCfgValid(isValid,ids,functionId);
return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+functionId;
@RequestMapping(value = { "domain/updateValid" })
@RequiresPermissions(value = { "whitelist:domain:config" })
public String updateDomainValid(Integer isValid, String ids, Integer functionId) {
domainService.updateDomainCfgValid(isValid, ids, functionId);
return "redirect:" + adminPath + "/ntc/whitelist/domain/list?functionId=" + functionId;
}
@RequestMapping(value = {"domain/delete"})
@RequestMapping(value = { "domain/delete" })
@RequiresPermissions("whitelist:domain:config")
public String deleteDomain(String ids,Integer functionId,RedirectAttributes model) {
try{
public String deleteDomain(String ids, Integer functionId, RedirectAttributes model) {
try {
domainService.deleteWhiteDomain(ids);
addMessage(model,"success","delete_success");
}catch(Exception e){
addMessage(model, "success", "delete_success");
} catch (Exception e) {
logger.error("删除失败", e);
addMessage(model,"error","delete_failed");
addMessage(model, "error", "delete_failed");
}
return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+functionId;
return "redirect:" + adminPath + "/ntc/whitelist/domain/list?functionId=" + functionId;
}
@RequestMapping(value = {"domain/audit"})
@RequestMapping(value = { "domain/audit" })
@RequiresPermissions("whitelist:domain:confirm")
public String auditDomain(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,
Integer isValid,
Integer isAudit,
String ids,
Integer functionId,
RedirectAttributes redirectAttributes,
HttpServletResponse response,
HttpServletRequest request) {
if(!StringUtil.isEmpty(ids)) {
public String auditDomain(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, Integer isValid, Integer isAudit,
String ids, Integer functionId, RedirectAttributes redirectAttributes, HttpServletResponse response,
HttpServletRequest request) {
if (!StringUtil.isEmpty(ids)) {
CfgIndexInfo entity = new CfgIndexInfo();
String[] idArray = ids.split(",");
for(String id :idArray){
entity = domainService.getDomainCfg(Long.parseLong(id),null);
for (String id : idArray) {
entity = domainService.getDomainCfg(Long.parseLong(id), null);
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setAuditorId(UserUtils.getUser().getId());
entity.setAuditTime(new Date());
entity.setFunctionId(functionId);
try {
domainService.auditDomainCfg(entity,isAudit);
addMessage(redirectAttributes,"success", "audit_success");
domainService.auditDomainCfg(entity, isAudit);
addMessage(redirectAttributes, "success", "audit_success");
} catch (MaatConvertException e) {
e.printStackTrace();
logger.error("domain配置下发失败"+e.getMessage());
addMessage(redirectAttributes,"error","request_service_failed");
}catch (Exception e) {
logger.error("domain配置下发失败" + e.getMessage());
addMessage(redirectAttributes, "error", "request_service_failed");
} catch (Exception e) {
e.printStackTrace();
logger.error("domain配置下发失败"+e.getMessage());
addMessage(redirectAttributes,"error","audit_failed");
logger.error("domain配置下发失败" + e.getMessage());
addMessage(redirectAttributes, "error", "audit_failed");
}
}
}else{//条件下所有配置审核
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"a");
Page<CfgIndexInfo> auditPage=new Page<CfgIndexInfo>(request,response,"a");
} else {// 条件下所有配置审核
Page<CfgIndexInfo> searchPage = new Page<CfgIndexInfo>(request, response, "a");
Page<CfgIndexInfo> auditPage = new Page<CfgIndexInfo>(request, response, "a");
BeanUtils.copyProperties(searchPage, auditPage);
try {
auditAll(auditPage,isValid , cfg);
addMessage(redirectAttributes,"success", "audit_success");
auditAll(auditPage, isValid, cfg);
addMessage(redirectAttributes, "success", "audit_success");
} catch (Exception e) {
logger.error("配置下发失败:",e);
if(e instanceof MaatConvertException) {
addMessage(redirectAttributes,"error", "request_service_failed");
}else {
addMessage(redirectAttributes,"error", "audit_failed");
logger.error("配置下发失败:", e);
if (e instanceof MaatConvertException) {
addMessage(redirectAttributes, "error", "request_service_failed");
} else {
addMessage(redirectAttributes, "error", "audit_failed");
}
}
return domainList(model, cfg, request, response);
}
return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+functionId;
return "redirect:" + adminPath + "/ntc/whitelist/domain/list?functionId=" + functionId;
}
//ip配置导入
/*@RequestMapping(value = "ip/import", method=RequestMethod.POST)
public String importIp(String cfgName,RedirectAttributes redirectAttributes,
@RequestParam("file") MultipartFile file,IpPortCfg cfg) {
this._importIp(cfgName,redirectAttributes, file,cfg,WhiteListIpTemplate.class);
return "redirect:" + adminPath +"/ntc/whitelist/ip/list?functionId="+cfg.getFunctionId();
}*/
//ip模板下载
// ip配置导入
/*
* @RequestMapping(value = "ip/import", method=RequestMethod.POST) public
* String importIp(String cfgName,RedirectAttributes redirectAttributes,
*
* @RequestParam("file") MultipartFile file,IpPortCfg cfg) {
* this._importIp(cfgName,redirectAttributes,
* file,cfg,WhiteListIpTemplate.class); return "redirect:" + adminPath
* +"/ntc/whitelist/ip/list?functionId="+cfg.getFunctionId(); }
*/
// ip模板下载
@RequestMapping(value = "ip/import/template")
public void importFileTemplate(HttpServletRequest request,HttpServletResponse response,
RedirectAttributes redirectAttributes,Integer functionId,Integer cfgRegionCode) {
this._importFileTemplate(request, response, redirectAttributes, functionId, cfgRegionCode,WhiteListIpTemplate.class);
public void importFileTemplate(HttpServletRequest request, HttpServletResponse response,
RedirectAttributes redirectAttributes, Integer functionId, Integer cfgRegionCode) {
this._importFileTemplate(request, response, redirectAttributes, functionId, cfgRegionCode,
WhiteListIpTemplate.class);
}
//ip配置导出
// ip配置导出
@RequestMapping(value = "ip/export")
public void exportIp(String columns,Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")IpPortCfg entity,String ids,RedirectAttributes redirectAttributes){
this._exportIp(columns,model, request, response, entity, ids, redirectAttributes);
public void exportIp(String columns, Model model, HttpServletRequest request, HttpServletResponse response,
@ModelAttribute("cfg") IpPortCfg entity, String ids, RedirectAttributes redirectAttributes) {
this._exportIp(columns, model, request, response, entity, ids, redirectAttributes);
}
//ip配置导出
@RequestMapping(value = "exportIpAddr")
public void exportIpAddr(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")CfgIndexInfo entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
List<CfgIndexInfo> ipLists=new ArrayList<CfgIndexInfo>();
//导出选中记录
if(!StringUtil.isEmpty(ids)){
ipLists=ipCfgService.getByIdsList(ids);
}else{
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo=new Page<CfgIndexInfo>(request, response,"a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = ipCfgService.getIpCfgList(pageInfo, entity);
ipLists=page.getList();
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_IP", IpPortCfg.class);
String cfgIndexInfoNoExport=",policy_name,do_log,letter,whether_area_block,classification,attribute,label,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport=",protocol,direction,do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
for (CfgIndexInfo cfg :ipLists) {
CfgIndexInfo cfgIndexInfo=ipCfgService.exportIpInfo(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
}
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_IP", ipList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("ip white export failed",e);
addMessage(redirectAttributes,"error", "export_failed");
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
// ip配置导出
@RequestMapping(value = "exportIpAddr")
public void exportIpAddr(Model model, HttpServletRequest request, HttpServletResponse response,
@ModelAttribute("cfg") CfgIndexInfo entity, String ids, RedirectAttributes redirectAttributes) {
try {
// export data info
List<String> titleList = new ArrayList<String>();
Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
Map<String, List> dataMap = new HashMap<String, List>();
Map<String, String> noExportMap = new HashMap<String, String>();
List<CfgIndexInfo> ipLists = new ArrayList<CfgIndexInfo>();
// 导出选中记录
if (!StringUtil.isEmpty(ids)) {
ipLists = ipCfgService.getByIdsList(ids);
} else {
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo = new Page<CfgIndexInfo>(request, response, "a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = ipCfgService.getIpCfgList(pageInfo, entity);
ipLists = page.getList();
}
//ip配置导出
@RequestMapping(value = "exportdomain")
public void exportdomain(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")CfgIndexInfo entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
List<CfgIndexInfo> ipLists=new ArrayList<CfgIndexInfo>();
//导出选中记录
if(!StringUtil.isEmpty(ids)){
ipLists=ipCfgService.getByIdsList(ids);
}else{
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo=new Page<CfgIndexInfo>(request, response,"a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = domainService.getDomainList(pageInfo, entity);
ipLists=page.getList();
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_HTTP_URL");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_HTTP_URL", HttpUrlCfg.class);
String cfgIndexInfoNoExport=",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String httpUrlInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_HTTP_URL", httpUrlInfoNoExport);
List<BaseStringCfg> httpurlList=new ArrayList<BaseStringCfg>();
for (CfgIndexInfo cfg : ipLists) {
CfgIndexInfo cfgIndexInfo=domainService.exportDomainInfo(cfg);
httpurlList.addAll(cfgIndexInfo.getHttpUrlList());
}
httpurlList=BaseStringCfg.replaceBaseKeyList(httpurlList);
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_HTTP_URL", httpurlList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("ip white export failed",e);
addMessage(redirectAttributes,"error", "export_failed");
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_IP", IpPortCfg.class);
String cfgIndexInfoNoExport = ",policy_name,do_log,letter,whether_area_block,classification,attribute,label,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport = ",protocol,direction,do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
// 时间过滤
if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) {
cfgIndexInfoNoExport = ",config_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_edit_time_start() == null && entity.getSearch_edit_time_end() == null) {
cfgIndexInfoNoExport = ",edit_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_audit_time_start() == null && entity.getSearch_audit_time_end() == null) {
cfgIndexInfoNoExport = ",audit_time" + cfgIndexInfoNoExport;
}
if (!StringUtil.isEmpty(entity.gethColumns())) {
cfgIndexInfoNoExport = "," + entity.gethColumns() + "," + cfgIndexInfoNoExport;
}
noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
List<IpPortCfg> ipList = new ArrayList<IpPortCfg>();
for (CfgIndexInfo cfg : ipLists) {
CfgIndexInfo cfgIndexInfo = ipCfgService.exportIpInfo(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
}
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_IP", ipList);
/* } */
String timeRange = initTimeMap(entity);
noExportMap.put("timeRange", timeRange);
if ("csv".equals(entity.getExType())) {
this._exportCsv(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
}
} catch (Exception e) {
logger.error("ip white export failed", e);
addMessage(redirectAttributes, "error", "export_failed");
}
// return "redirect:" + adminPath
// +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
// ip配置导出
@RequestMapping(value = "exportdomain")
public void exportdomain(Model model, HttpServletRequest request, HttpServletResponse response,
@ModelAttribute("cfg") CfgIndexInfo entity, String ids, RedirectAttributes redirectAttributes) {
try {
// export data info
List<String> titleList = new ArrayList<String>();
Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
Map<String, List> dataMap = new HashMap<String, List>();
Map<String, String> noExportMap = new HashMap<String, String>();
List<CfgIndexInfo> ipLists = new ArrayList<CfgIndexInfo>();
// 导出选中记录
if (!StringUtil.isEmpty(ids)) {
ipLists = ipCfgService.getByIdsList(ids);
} else {
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo = new Page<CfgIndexInfo>(request, response, "a");
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
Page<CfgIndexInfo> page = domainService.getDomainList(pageInfo, entity);
ipLists = page.getList();
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_HTTP_URL");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_HTTP_URL", HttpUrlCfg.class);
String cfgIndexInfoNoExport = ",policy_name,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String httpUrlInfoNoExport = ",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+ ",letter,whether_area_block,classification,attribute,label"
+ ",userregion1,userregion2,userregion3,userregion4,userregion5,";
// 时间过滤
if (entity.getSearch_create_time_start() == null && entity.getSearch_create_time_end() == null) {
cfgIndexInfoNoExport = ",config_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_edit_time_start() == null && entity.getSearch_edit_time_end() == null) {
cfgIndexInfoNoExport = ",edit_time" + cfgIndexInfoNoExport;
}
if (entity.getSearch_audit_time_start() == null && entity.getSearch_audit_time_end() == null) {
cfgIndexInfoNoExport = ",audit_time" + cfgIndexInfoNoExport;
}
if (!StringUtil.isEmpty(entity.gethColumns())) {
cfgIndexInfoNoExport = "," + entity.gethColumns() + "," + cfgIndexInfoNoExport;
}
noExportMap.put(entity.getMenuNameCode(), cfgIndexInfoNoExport);
noExportMap.put("NTC_HTTP_URL", httpUrlInfoNoExport);
List<BaseStringCfg> httpurlList = new ArrayList<BaseStringCfg>();
for (CfgIndexInfo cfg : ipLists) {
CfgIndexInfo cfgIndexInfo = domainService.exportDomainInfo(cfg);
httpurlList.addAll(cfgIndexInfo.getHttpUrlList());
}
httpurlList = BaseStringCfg.replaceBaseKeyList(httpurlList);
dataMap.put(entity.getMenuNameCode(), ipLists);
dataMap.put("NTC_HTTP_URL", httpurlList);
/* } */
String timeRange = initTimeMap(entity);
noExportMap.put("timeRange", timeRange);
if ("csv".equals(entity.getExType())) {
this._exportCsv(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, entity.getMenuNameCode(), titleList,
classMap, dataMap, noExportMap);
}
} catch (Exception e) {
logger.error("ip white export failed", e);
addMessage(redirectAttributes, "error", "export_failed");
}
// return "redirect:" + adminPath
// +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
}