asn 相关修改提交
(1)asn_ip_cfg增加四列 (2)新增asn_group_info表 (3)asn ip菜单移动到policy object下,新增审核审计菜单 (4)asn ip导入修改,适应新的需求放弃了使用AsnCache,直接从数据库查 (5)asn ip加入审核流程 (6)Packet IP选择asn时,改为选中一个组织,审核下发的配置为as号字符串域 (7)asn ip 新增业务新增function_service_dict字典,serviceId为400
This commit is contained in:
@@ -7,9 +7,6 @@ import java.util.Map;
|
||||
import java.util.Properties;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.ibatis.session.ExecutorType;
|
||||
import org.apache.ibatis.session.SqlSession;
|
||||
import org.apache.ibatis.session.SqlSessionFactory;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.i18n.LocaleContextHolder;
|
||||
@@ -18,7 +15,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.nis.domain.FunctionRegionDict;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.basics.AsnIpCfg;
|
||||
import com.nis.domain.basics.AsnGroupInfo;
|
||||
import com.nis.domain.callback.InlineIp;
|
||||
import com.nis.domain.configuration.AreaIpCfg;
|
||||
import com.nis.domain.configuration.BaseIpCfg;
|
||||
@@ -33,14 +30,13 @@ import com.nis.domain.maat.MaatCfg.NumBoundaryCfg;
|
||||
import com.nis.domain.maat.MaatCfg.StringCfg;
|
||||
import com.nis.domain.maat.ToMaatBean;
|
||||
import com.nis.domain.maat.ToMaatResult;
|
||||
import com.nis.domain.specific.ConfigGroupInfo;
|
||||
import com.nis.exceptions.MaatConvertException;
|
||||
import com.nis.util.AsnCacheUtils;
|
||||
import com.nis.util.ConfigServiceUtil;
|
||||
import com.nis.util.Configurations;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.DictUtils;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.web.dao.basics.AsnGroupInfoDao;
|
||||
import com.nis.web.dao.basics.AsnIpCfgDao;
|
||||
import com.nis.web.dao.configuration.AreaIpCfgDao;
|
||||
import com.nis.web.dao.configuration.IpCfgDao;
|
||||
@@ -48,7 +44,6 @@ import com.nis.web.dao.configuration.StringCfgDao;
|
||||
import com.nis.web.dao.specific.ConfigGroupInfoDao;
|
||||
import com.nis.web.security.UserUtils;
|
||||
import com.nis.web.service.CrudService;
|
||||
import com.nis.web.service.SpringContextHolder;
|
||||
|
||||
/**
|
||||
* IP相关配置事务类
|
||||
@@ -65,6 +60,8 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
|
||||
protected AreaIpCfgDao areaIpCfgDao;
|
||||
@Autowired
|
||||
//protected SpecificServiceCfgDao specificServiceCfgDao;
|
||||
protected AsnGroupInfoDao asnGroupInfoDao;
|
||||
@Autowired
|
||||
protected ConfigGroupInfoDao configGroupInfoDao;
|
||||
@Autowired
|
||||
protected AsnIpCfgDao asnIpCfgDao;
|
||||
@@ -647,105 +644,136 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
|
||||
entity.setIsAudit(isAudit);
|
||||
ipCfgDao.auditCfg(entity);
|
||||
ToMaatBean maatBean = new ToMaatBean();
|
||||
MaatCfg maatCfg = new MaatCfg();
|
||||
|
||||
List<MaatCfg> configCompileList = new ArrayList<>();
|
||||
List<GroupCfg> groupRelationList = new ArrayList<>();
|
||||
List<IpCfg> ipRegionList = new ArrayList<>();
|
||||
List<StringCfg> strRegionList = new ArrayList<>();
|
||||
List<NumBoundaryCfg> numRegionList = new ArrayList<>();
|
||||
List<DigestCfg> digestRegionList = new ArrayList<>();
|
||||
List<IpCfg> areaIpRegionList = new ArrayList<>();
|
||||
|
||||
if(isAudit==Constants.AUDIT_YES) {
|
||||
ConfigGroupInfo group=configGroupInfoDao.getConfigGroupInfoByGroupId(Integer.parseInt(entity.getUserRegion4()));
|
||||
if(group.getIsIssued()==1) {//复用,只下编译跟分组
|
||||
maatCfg.initDefaultValue();
|
||||
BeanUtils.copyProperties(entity, maatCfg);
|
||||
maatCfg.setAction(entity.getAction());
|
||||
maatCfg.setAuditTime(entity.getAuditTime());
|
||||
maatCfg.setIpRegionList(ipRegionList);
|
||||
maatCfg.setStrRegionList(strRegionList);
|
||||
maatCfg.setNumRegionList(numRegionList);
|
||||
maatCfg.setDigestRegionList(digestRegionList);
|
||||
maatCfg.setGroupRelationList(groupRelationList);
|
||||
maatCfg.setAreaIpRegionList(areaIpRegionList);
|
||||
maatCfg.setIsValid(entity.getIsValid());
|
||||
//group
|
||||
GroupCfg groupCfg=new GroupCfg();
|
||||
groupCfg.setCompileId(entity.getCompileId());
|
||||
groupCfg.setGroupId(Integer.parseInt(entity.getUserRegion4()));
|
||||
groupCfg.setIsValid(Constants.VALID_YES);
|
||||
groupCfg.setAuditTime(entity.getAuditTime());
|
||||
groupRelationList.add(groupCfg);
|
||||
maatCfg.setGroupNum(groupRelationList.size());
|
||||
configCompileList.add(maatCfg);
|
||||
maatBean.setConfigCompileList(configCompileList);
|
||||
maatBean.setAuditTime(entity.getAuditTime());
|
||||
maatBean.setCreatorName(entity.getCurrentUser().getName());
|
||||
maatBean.setVersion(Constants.MAAT_VERSION);
|
||||
maatBean.setOpAction(Constants.INSERT_ACTION);
|
||||
if(group.getAsnId()!=null) {
|
||||
maatCfg.setUserRegion("ASN_ID="+group.getAsnId());
|
||||
}
|
||||
//调用服务接口下发配置数据
|
||||
String json=gsonToJson(maatBean);
|
||||
logger.info("ipaddr asn组复用配置下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
ToMaatResult result = ConfigServiceUtil.postMaatCfg(json);
|
||||
logger.info("ipaddr asn组复用配置下发响应信息:"+result.getMsg());
|
||||
}else {//首次下发
|
||||
maatCfg.initDefaultValue();
|
||||
BeanUtils.copyProperties(entity, maatCfg);
|
||||
maatCfg.setAction(entity.getAction());
|
||||
maatCfg.setAuditTime(entity.getAuditTime());
|
||||
maatCfg.setStrRegionList(strRegionList);
|
||||
maatCfg.setNumRegionList(numRegionList);
|
||||
maatCfg.setDigestRegionList(digestRegionList);
|
||||
maatCfg.setGroupRelationList(groupRelationList);
|
||||
maatCfg.setAreaIpRegionList(areaIpRegionList);
|
||||
maatCfg.setIsValid(entity.getIsValid());
|
||||
if(group.getAsnId()!=null) {
|
||||
maatCfg.setUserRegion("ASN_ID="+group.getAsnId());
|
||||
}
|
||||
//group
|
||||
GroupCfg groupCfg=new GroupCfg();
|
||||
groupCfg.setCompileId(entity.getCompileId());
|
||||
groupCfg.setGroupId(Integer.parseInt(entity.getUserRegion4()));
|
||||
groupCfg.setIsValid(Constants.VALID_YES);
|
||||
groupCfg.setAuditTime(entity.getAuditTime());
|
||||
groupRelationList.add(groupCfg);
|
||||
maatCfg.setGroupNum(groupRelationList.size());
|
||||
//region
|
||||
//查询asn group id下所有的 ip
|
||||
AsnIpCfg asnIpCfg=new AsnIpCfg();
|
||||
asnIpCfg.setAsnIpGroup(Integer.parseInt(entity.getUserRegion4()));
|
||||
List<AsnIpCfg> allAsnIpCfgs=asnIpCfgDao.findAllList(asnIpCfg);
|
||||
ipRegionList.addAll(groupReuseCfgAddRemoveConvert(allAsnIpCfgs,Constants.VALID_YES,null));
|
||||
maatCfg.setIpRegionList(ipRegionList);
|
||||
configCompileList.add(maatCfg);
|
||||
maatBean.setConfigCompileList(configCompileList);
|
||||
maatBean.setAuditTime(entity.getAuditTime());
|
||||
maatBean.setCreatorName(entity.getCurrentUser().getName());
|
||||
maatBean.setVersion(Constants.MAAT_VERSION);
|
||||
maatBean.setOpAction(Constants.INSERT_ACTION);
|
||||
|
||||
//调用服务接口下发配置数据
|
||||
String json=gsonToJson(maatBean);
|
||||
logger.info("ipaddr asn配置下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
ToMaatResult result = ConfigServiceUtil.postMaatCfg(json);
|
||||
logger.info("ipaddr asn配置下发响应信息:"+result.getMsg());
|
||||
ConfigGroupInfo info=new ConfigGroupInfo();
|
||||
BeanUtils.copyProperties(group, info);
|
||||
info.setIsIssued(1);
|
||||
//info.setGroupId(Integer.parseInt(entity.getUserRegion4()));
|
||||
configGroupInfoDao.updateConfigGroupInfobyGroupId(info);
|
||||
AsnCacheUtils.put(info.getAsnId(), info);
|
||||
AsnIpCfg cfg=new AsnIpCfg();
|
||||
cfg.setIsValid(Constants.VALID_YES);
|
||||
cfg.setAsnIpGroup(Integer.parseInt(entity.getUserRegion4()));
|
||||
asnIpCfgDao.updateIssued(cfg);
|
||||
AsnGroupInfo asnGroupInfo=new AsnGroupInfo();
|
||||
asnGroupInfo.setOrganization(entity.getUserRegion4());
|
||||
asnGroupInfo.setIsValid(1);
|
||||
List<AsnGroupInfo> groups=asnGroupInfoDao.findAsnGroupInfoList(asnGroupInfo);
|
||||
if(groups!=null&&groups.size()>0) {
|
||||
// if(configGroupInfo.getIsIssued()==1) {//复用,只下编译跟分组
|
||||
// for(AsnGroupInfo group:groups) {
|
||||
// MaatCfg maatCfg = new MaatCfg();
|
||||
// List<GroupCfg> groupRelationList = new ArrayList<>();
|
||||
// List<IpCfg> ipRegionList = new ArrayList<>();
|
||||
// List<StringCfg> strRegionList = new ArrayList<>();
|
||||
// List<NumBoundaryCfg> numRegionList = new ArrayList<>();
|
||||
// List<DigestCfg> digestRegionList = new ArrayList<>();
|
||||
// List<IpCfg> areaIpRegionList = new ArrayList<>();
|
||||
// maatCfg.initDefaultValue();
|
||||
// BeanUtils.copyProperties(entity, maatCfg);
|
||||
// maatCfg.setAction(entity.getAction());
|
||||
// maatCfg.setAuditTime(entity.getAuditTime());
|
||||
// maatCfg.setIpRegionList(ipRegionList);
|
||||
// maatCfg.setStrRegionList(strRegionList);
|
||||
// maatCfg.setNumRegionList(numRegionList);
|
||||
// maatCfg.setDigestRegionList(digestRegionList);
|
||||
// maatCfg.setGroupRelationList(groupRelationList);
|
||||
// maatCfg.setAreaIpRegionList(areaIpRegionList);
|
||||
// maatCfg.setIsValid(entity.getIsValid());
|
||||
// //group
|
||||
// GroupCfg groupCfg=new GroupCfg();
|
||||
// groupCfg.setCompileId(entity.getCompileId());
|
||||
// groupCfg.setGroupId(Integer.parseInt(entity.getUserRegion4()));
|
||||
// groupCfg.setIsValid(Constants.VALID_YES);
|
||||
// groupCfg.setAuditTime(entity.getAuditTime());
|
||||
// groupRelationList.add(groupCfg);
|
||||
// maatCfg.setGroupNum(groupRelationList.size());
|
||||
// if(group.getAsnId()!=null) {
|
||||
// maatCfg.setUserRegion("ASN_ID="+group.getAsnId());
|
||||
// }
|
||||
// configCompileList.add(maatCfg);
|
||||
// }
|
||||
//
|
||||
//
|
||||
// maatBean.setConfigCompileList(configCompileList);
|
||||
// maatBean.setAuditTime(entity.getAuditTime());
|
||||
// maatBean.setCreatorName(entity.getCurrentUser().getName());
|
||||
// maatBean.setVersion(Constants.MAAT_VERSION);
|
||||
// maatBean.setOpAction(Constants.INSERT_ACTION);
|
||||
//
|
||||
// //调用服务接口下发配置数据
|
||||
// String json=gsonToJson(maatBean);
|
||||
// logger.info("ipaddr asn组复用配置下发配置参数:"+json);
|
||||
// //调用服务接口下发配置
|
||||
// ToMaatResult result = ConfigServiceUtil.postMaatCfg(json);
|
||||
// logger.info("ipaddr asn组复用配置下发响应信息:"+result.getMsg());
|
||||
// }else {//首次下发
|
||||
MaatCfg maatCfg = new MaatCfg();
|
||||
List<GroupCfg> groupRelationList = new ArrayList<>();
|
||||
List<IpCfg> ipRegionList = new ArrayList<>();
|
||||
List<StringCfg> strRegionList = new ArrayList<>();
|
||||
List<NumBoundaryCfg> numRegionList = new ArrayList<>();
|
||||
List<DigestCfg> digestRegionList = new ArrayList<>();
|
||||
List<IpCfg> areaIpRegionList = new ArrayList<>();
|
||||
maatCfg.initDefaultValue();
|
||||
BeanUtils.copyProperties(entity, maatCfg);
|
||||
maatCfg.setAction(entity.getAction());
|
||||
maatCfg.setAuditTime(entity.getAuditTime());
|
||||
|
||||
maatCfg.setNumRegionList(numRegionList);
|
||||
maatCfg.setDigestRegionList(digestRegionList);
|
||||
maatCfg.setGroupRelationList(groupRelationList);
|
||||
maatCfg.setAreaIpRegionList(areaIpRegionList);
|
||||
maatCfg.setIsValid(entity.getIsValid());
|
||||
//group
|
||||
List<Integer> groupIds=ConfigServiceUtil.getId(2, 1);
|
||||
GroupCfg groupCfg=new GroupCfg();
|
||||
groupCfg.setCompileId(entity.getCompileId());
|
||||
//groupCfg.setGroupId(Integer.parseInt(entity.getUserRegion4()));
|
||||
groupCfg.setGroupId(groupIds.get(0));
|
||||
groupCfg.setIsValid(Constants.VALID_YES);
|
||||
groupCfg.setAuditTime(entity.getAuditTime());
|
||||
groupRelationList.add(groupCfg);
|
||||
maatCfg.setGroupNum(groupRelationList.size());
|
||||
maatCfg.setIpRegionList(ipRegionList);
|
||||
List<Integer> regions=ConfigServiceUtil.getId(3, groups.size());
|
||||
int index=0;
|
||||
List<FunctionRegionDict> functionRegionDicts=DictUtils.getFunctionRegionDictList(entity.getFunctionId());
|
||||
String cfgType=null;
|
||||
for(FunctionRegionDict dict:functionRegionDicts) {
|
||||
if("asn".equals(dict.getConfigServiceType())) {
|
||||
cfgType=dict.getCfgType();
|
||||
}
|
||||
}
|
||||
for(AsnGroupInfo group:groups) {
|
||||
StringCfg cfg=new StringCfg();
|
||||
cfg.setRegionId(index);
|
||||
cfg.setCfgKeywords("AS"+group.getAsnId());
|
||||
cfg.setExprType(0);
|
||||
cfg.setIsHexbin(0);
|
||||
cfg.setMatchMethod(3);
|
||||
//需要根据文档
|
||||
cfg.setCfgType(StringUtils.isBlank(cfgType)?"NTC_ASN_NUMBER":cfgType);
|
||||
cfg.setGroupId(groupIds.get(0));
|
||||
cfg.setAuditTime(entity.getAuditTime());
|
||||
cfg.setIsValid(entity.getIsValid());
|
||||
cfg.setRegionId(regions.get(index));
|
||||
//cfg.setGroupId(Integer.parseInt(entity.getUserRegion4()));
|
||||
strRegionList.add(cfg);
|
||||
index++;
|
||||
}
|
||||
maatCfg.setStrRegionList(strRegionList);
|
||||
configCompileList.add(maatCfg);
|
||||
maatBean.setConfigCompileList(configCompileList);
|
||||
maatBean.setAuditTime(entity.getAuditTime());
|
||||
maatBean.setCreatorName(entity.getCurrentUser().getName());
|
||||
maatBean.setVersion(Constants.MAAT_VERSION);
|
||||
maatBean.setOpAction(Constants.INSERT_ACTION);
|
||||
|
||||
//调用服务接口下发配置数据
|
||||
String json=gsonToJson(maatBean);
|
||||
logger.info("ipaddr asn配置下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
ToMaatResult result = ConfigServiceUtil.postMaatCfg(json);
|
||||
logger.info("ipaddr asn配置下发响应信息:"+result.getMsg());
|
||||
// }
|
||||
}
|
||||
|
||||
}else if(isAudit==Constants.AUDIT_NOT_YES) {//取消审核通过
|
||||
MaatCfg maatCfg = new MaatCfg();
|
||||
maatCfg.setCompileId(entity.getCompileId());
|
||||
maatCfg.setServiceId(entity.getServiceId());
|
||||
maatCfg.setIsValid(0);//无效
|
||||
@@ -834,8 +862,8 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
|
||||
entity.setIpPortList(ipPortList);
|
||||
entity.setNtcSubscribeIdCfgList(subscribeIdList);
|
||||
if(StringUtils.isNotBlank(entity.getUserRegion4())) {
|
||||
ConfigGroupInfo info=configGroupInfoDao.getConfigGroupInfoByGroupId(Integer.parseInt(entity.getUserRegion4().trim()));
|
||||
entity.setAsnIpGroupName(info.getGroupName());
|
||||
List<AsnGroupInfo> infos=asnGroupInfoDao.getValidConfigGroupInfoByName((entity.getUserRegion4().trim()));
|
||||
entity.setAsnGroups(infos);
|
||||
}
|
||||
return entity;
|
||||
}
|
||||
@@ -843,8 +871,8 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
|
||||
List<IpPortCfg> ipPortList = ipCfgDao.getIpPortList(entity);
|
||||
entity.setIpPortList(ipPortList);
|
||||
if(StringUtils.isNotBlank(entity.getUserRegion4())) {
|
||||
ConfigGroupInfo info=configGroupInfoDao.getConfigGroupInfoByGroupId(Integer.parseInt(entity.getUserRegion4().trim()));
|
||||
entity.setAsnIpGroupName(info.getGroupName());
|
||||
List<AsnGroupInfo> infos=asnGroupInfoDao.getValidConfigGroupInfoByName(entity.getUserRegion4().trim());
|
||||
entity.setAsnGroups(infos);
|
||||
}
|
||||
return entity;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user