ASN IP全量+数据入库提交

This commit is contained in:
duandongmei
2019-01-23 19:32:47 +06:00
parent 9fbd60ddf0
commit 2e8d2cb7b2
10 changed files with 399 additions and 40 deletions

View File

@@ -33,4 +33,7 @@ public interface AsnGroupInfoDao extends CrudDao<AsnGroupInfo> {
void updateIsUsedAndIsValid(@Param("groupIds")List groupIds,@Param("isUsed")Integer isUsed,@Param("isValid")Integer isValid);
List<AsnGroupInfo> findAsnGroupInfoByGroupIds(@Param("groupIds")List groupIds,@Param("isUsed")Integer isUsed);
List<String> findAsnGroupIdByGroupIds(@Param("groupIds")String groupIds);
void deleteAll();
void insertWithId(AsnGroupInfo asnGroupInfo);
void insertWithoutId(AsnGroupInfo asnGroupInfo);
}

View File

@@ -125,7 +125,74 @@
#{orgGroupId,jdbcType=INTEGER}
)
</insert>
<insert id="insertWithoutId" parameterType="com.nis.domain.basics.AsnGroupInfo" >
insert into asn_group_info(
group_id,
compile_id,
organization,
country,
detail,
is_valid,
creator_id,
create_time,
editor_id,
edit_time,
asn_id,
is_used,
region_id,
org_group_id
)values (
#{groupId,jdbcType=INTEGER},
#{compileId,jdbcType=INTEGER},
#{organization,jdbcType=VARCHAR},
#{country,jdbcType=VARCHAR},
#{detail,jdbcType=VARCHAR},
#{isValid,jdbcType=INTEGER},
#{creatorId,jdbcType=INTEGER},
#{createTime,jdbcType=TIMESTAMP},
#{editorId,jdbcType=INTEGER},
#{editTime,jdbcType=TIMESTAMP},
#{asnId,jdbcType=INTEGER},
#{isUsed,jdbcType=INTEGER},
#{regionId,jdbcType=INTEGER},
#{orgGroupId,jdbcType=INTEGER}
)
</insert>
<insert id="insertWithId" parameterType="com.nis.domain.basics.AsnGroupInfo" >
insert into asn_group_info(
id,
group_id,
compile_id,
organization,
country,
detail,
is_valid,
creator_id,
create_time,
editor_id,
edit_time,
asn_id,
is_used,
region_id,
org_group_id
)values (
#{id,jdbcType=INTEGER},
#{groupId,jdbcType=INTEGER},
#{compileId,jdbcType=INTEGER},
#{organization,jdbcType=VARCHAR},
#{country,jdbcType=VARCHAR},
#{detail,jdbcType=VARCHAR},
#{isValid,jdbcType=INTEGER},
#{creatorId,jdbcType=INTEGER},
#{createTime,jdbcType=TIMESTAMP},
#{editorId,jdbcType=INTEGER},
#{editTime,jdbcType=TIMESTAMP},
#{asnId,jdbcType=INTEGER},
#{isUsed,jdbcType=INTEGER},
#{regionId,jdbcType=INTEGER},
#{orgGroupId,jdbcType=INTEGER}
)
</insert>
<update id="update" parameterType="com.nis.domain.basics.AsnGroupInfo" >
update asn_group_info
<set >
@@ -387,4 +454,7 @@
and r.group_id in (${groupIds})
</where>
</select>
<delete id="deleteAll" >
delete from asn_group_info
</delete>
</mapper>

View File

@@ -35,4 +35,5 @@ public interface AsnIpCfgDao extends CrudDao<AsnIpCfg>{
public AsnIpCfg getOne(AsnIpCfg cfg);
public void updateAsn(@Param("asnId")String asnNo,@Param("organization")String organization,@Param("country")String country,@Param("detail")String detail,@Param("groupId")String groupId);
public void updateAsnIpByAsnGroups(@Param("entity")AsnIpCfg entity,@Param("asnGroups")List<AsnGroupInfo> asnGroups,@Param("asnIds")String asnIds);
public void deleteAll();
}

View File

@@ -668,5 +668,7 @@
</if>
</where>
</update>
<delete id="deleteAll" >
delete from asn_ip_cfg
</delete>
</mapper>

View File

@@ -26,4 +26,7 @@ public interface ConfigGroupInfoDao extends CrudDao<ConfigGroupInfo>{
int delAsnGroup(@Param("groupName")String groupName);
void updateIsAuditAll(@Param("groupType")Integer groupType,@Param("isAuditAll")Integer isAuditAll,@Param("groupIds")List groupIds);
void updateIsUsed(@Param("groupType")Integer groupType,@Param("isUsed")Integer isUsed,@Param("groupIds")List groupIds);
void deleteAllAsnGroup();
void insertWithId(ConfigGroupInfo entity);
void insertWithoutId(ConfigGroupInfo entity);
}

View File

@@ -45,6 +45,14 @@
<!-- 新增配置分组信息 -->
<insert id="insertConfigGroupInfo" parameterType="com.nis.domain.specific.ConfigGroupInfo" useGeneratedKeys="true">
insert into config_group_info (id,group_id,group_name,is_issued,insert_time,group_type,compile_id,asn_id,is_audit_all,is_used)
values(#{id},#{groupId},#{groupName},#{isIssued},#{insertTime},#{groupType},#{compileId},#{asnId},#{isAuditAll},#{isUsed})
</insert>
<insert id="insertWithoutId" parameterType="com.nis.domain.specific.ConfigGroupInfo" useGeneratedKeys="true">
insert into config_group_info (id,group_id,group_name,is_issued,insert_time,group_type,compile_id,asn_id,is_audit_all,is_used)
values(#{id},#{groupId},#{groupName},#{isIssued},#{insertTime},#{groupType},#{compileId},#{asnId},#{isAuditAll},#{isUsed})
</insert>
<insert id="insertWithId" parameterType="com.nis.domain.specific.ConfigGroupInfo">
insert into config_group_info (id,group_id,group_name,is_issued,insert_time,group_type,compile_id,asn_id,is_audit_all,is_used)
values(#{id},#{groupId},#{groupName},#{isIssued},now(),#{groupType},#{compileId},#{asnId},#{isAuditAll},#{isUsed})
</insert>
<insert id="insertBatch">
@@ -147,4 +155,7 @@
</if>
</where>
</update>
<delete id="deleteAllAsnGroup" >
delete from config_group_info where group_type=4
</delete>
</mapper>

View File

@@ -2178,7 +2178,7 @@ public abstract class BaseService {
List<NumBoundaryCfg> numRegionList = new ArrayList();
List<DigestCfg> digestRegionList = new ArrayList();
List<IpCfg> areaIpRegionList = new ArrayList();
if(configGroupInfo.getIsIssued()==0) {//未下发下发region compile,group.
if(configGroupInfo.getIsIssued() != null && configGroupInfo.getIsIssued()==0) {//未下发下发region compile,group.
MaatCfg maatCfg = new MaatCfg();
ToMaatBean maatBean = new ToMaatBean();
maatCfg.initDefaultValue();

View File

@@ -361,12 +361,30 @@ public class AsnGroupInfoService extends BaseService{
public AsnGroupInfo getGroupIdByNameAndASNId(String organization,String country,Long asnId) {
return asnGroupInfoDao.getGroupIdByNameAndASNId(organization,country,asnId);
}
public Map<Long,AsnGroupInfo> getGroupList() {
Map<Long,AsnGroupInfo> map=Maps.newConcurrentMap();
for(AsnGroupInfo info:asnGroupInfoDao.findAsnGroupInfos()) {
map.put(info.getAsnId(), info);
public List<AsnGroupInfo> findAsnGroupInfos() {
List<AsnGroupInfo> asnGroupInfos=new ArrayList<>();
asnGroupInfos=asnGroupInfoDao.findAsnGroupInfos();
return asnGroupInfos;
}
/**
* 初始化asn旧数据信息
* @param asnGroupInfos
* @param asnNosMap
* @return
*/
public void getGroupList(List<AsnGroupInfo> asnGroupInfoList,List<Map<Long, AsnGroupInfo>> asnNosMap) {
for(AsnGroupInfo info:asnGroupInfoList) {
////【1】 旧的asn group info
////【2】 所有的asn group info
////【3】 所有已审核通过的asn group info
asnNosMap.get(1).put(info.getAsnId(), info);
if(info.getIsValid() ==1){
asnNosMap.get(3).put(info.getAsnId(), info);
}
info.setIsValid(0);
info.setIssuedIPs(0l);
asnNosMap.get(2).put(info.getAsnId(), info);
}
return map;
}
public List<AsnGroupInfo> findAsnGroupList(AsnGroupInfo asnGroupInfo){
List<AsnGroupInfo> list=asnGroupInfoDao.findAsnGroupInfoByAsnGroup(asnGroupInfo);

View File

@@ -2,6 +2,7 @@ package com.nis.web.service.basics;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
@@ -18,9 +19,12 @@ import org.springframework.transaction.annotation.Transactional;
import com.beust.jcommander.internal.Lists;
import com.google.common.collect.Maps;
import com.nis.domain.FunctionRegionDict;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.AsnGroupInfo;
import com.nis.domain.basics.AsnIpCfg;
import com.nis.domain.configuration.AsnKeywordCfg;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.maat.GroupReuseAddBean;
@@ -36,6 +40,7 @@ import com.nis.domain.maat.ToMaatResult;
import com.nis.domain.specific.ConfigGroupInfo;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.util.StringUtil;
import com.nis.web.dao.CrudDao;
import com.nis.web.dao.basics.AsnGroupInfoDao;
@@ -167,50 +172,284 @@ public class AsnIpCfgService extends CrudService<CrudDao<AsnIpCfg>, AsnIpCfg> {
auditAllAsnRegionCfg(entity,auditAsnGroupList,null);
}*/
}
/**
*
* @param asnNoMaps 所有asn的信息
* @param configGroupInfos asn组织的数据库信息
* @param asnOrgMap asn和组织的关系
* @param isImportAll 是否导入全量
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void processGroup(Map<Long,AsnGroupInfo> asnNoMap){
logger.warn("Start to save group");
public void processAsnIp(FunctionServiceDict service,FunctionRegionDict regionDict,List<BaseIpCfg> ipCfgList,List<Map<Long, AsnGroupInfo>> asnNoMaps,String isSend,String isImportAll,Integer requestId, String attribute, String classify){
logger.warn("Start to save asn ip size:"+ipCfgList.size());
long start=System.currentTimeMillis();
Date createTime=new Date();
int index=0;
//List<AsnIpCfg> asnIpCfgs=Lists.newArrayList(Constants.MAAT_JSON_SEND_SIZE);
Date date=new Date();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
SqlSession batchSqlSession = null;
Set<String> groupSet=new HashSet<>();
int index=0;
Map<Long,AsnGroupInfo> auditInfo=new HashMap<>();
//存储未下发的asno及asnIP
Map<Integer,List<AsnIpCfg>> noAuditGroupIds=new HashMap<>();
//存储已下发的asnno
Map<Integer,List<AsnIpCfg>> auditGroupIds=new HashMap<>();
//本次未下发的组信息
List<AsnGroupInfo> noAuditGroupList=new ArrayList<AsnGroupInfo>();
Long asno=0l;
try{
List<Integer> regionIds=ConfigServiceUtil.getId(3, ipCfgList.size());
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
if(!asnNoMap.isEmpty()) {
List<Integer> compileIds=ConfigServiceUtil.getId(1, asnNoMap.size());
List<Integer> groupIds=ConfigServiceUtil.getId(2, asnNoMap.size());
List<Integer> regionIds=ConfigServiceUtil.getId(3, asnNoMap.size());
for(Entry<Long, AsnGroupInfo> e:asnNoMap.entrySet()) {
AsnGroupInfo info=e.getValue();
info.setAsnId(e.getKey());
info.setIsValid(0);
info.setIsUsed(0);
info.setCreatorId(UserUtils.getUser().getId());
info.setCreateTime(createTime);
info.setGroupId(groupIds.get(index));
info.setCompileId(compileIds.get(index));
info.setRegionId(regionIds.get(index));
if(!groupSet.contains(info.getOrganization())) {
groupSet.add(info.getOrganization());
}
((AsnGroupInfoDao) batchSqlSession.getMapper(AsnGroupInfoDao.class)).insert(info);
if(index%Constants.IMPORT_LIMIT==0) {
batchSqlSession.commit();
}
index++;
}
batchSqlSession.commit();
for (BaseIpCfg cfg : ipCfgList) {
AsnIpCfg asnIpCfg=new AsnIpCfg();
BeanUtils.copyProperties(cfg, asnIpCfg,new String[] {"cfgId"});
asnIpCfg.setTableName(AsnIpCfg.getTablename());
asnIpCfg.setAction(service==null?0:service.getAction());
asnIpCfg.setCfgRegionCode(regionDict.getConfigRegionCode());
asnIpCfg.setCfgType(regionDict.getConfigRegionValue());
asnIpCfg.setCreateTime(date);
asnIpCfg.setCreatorId(UserUtils.getUser().getId());
asnIpCfg.setDoLog(2);
asnIpCfg.setFunctionId(regionDict.getFunctionId());
if(isSend.equals("1")) {
asnIpCfg.setIsAudit(Constants.AUDIT_YES);
asnIpCfg.setIsValid(Constants.VALID_YES);
asnIpCfg.setAuditorId(UserUtils.getUser().getId());
asnIpCfg.setAuditTime(date);
}else {
asnIpCfg.setIsAudit(Constants.AUDIT_NOT_YET);
asnIpCfg.setIsValid(Constants.VALID_NO);
}
asnIpCfg.setIsAreaEffective(0);
asnIpCfg.setLable("0");
asnIpCfg.setRequestId(StringUtil.isEmpty(requestId) ? 0 : requestId);
asnIpCfg.setAttribute(attribute);
asnIpCfg.setClassify(classify);
asnIpCfg.setServiceId(service==null?0:service.getServiceId());
asnIpCfg.setRegionId(regionIds.get(index));
asno=Long.parseLong(asnIpCfg.getUserRegion1());
//设置group id,compileId
asnIpCfg.setAsnIpGroup(asnNoMaps.get(2).get(Long.parseLong(asnIpCfg.getUserRegion1())).getGroupId());
asnIpCfg.setCompileId(asnNoMaps.get(2).get(Long.parseLong(asnIpCfg.getUserRegion1())).getCompileId());
/*if(isSend.equals("1")) {
//判断组是否已下发
if(asnNoMaps.get(3).keySet().contains(asno)){
}else{
asnNoMaps.get(3).put(asno, asnNoMaps.get(2).get(asno));
}
}*/
((AsnIpCfgDao) batchSqlSession.getMapper(AsnIpCfgDao.class)).insert(asnIpCfg);
index++;
}
batchSqlSession.commit();
}finally {
if(batchSqlSession != null){
batchSqlSession.close();
}
}
batchSaveConfigGroupInfo(groupSet);
//刷新缓存
//AsnCacheUtils.init(true);
//6、配置取消所有编译[编译取消编译下的所有group和region都会取消(已和服务端确认)]
/*if(!StringUtil.isEmpty(deleteAsnCompile)){
long startAudit=System.currentTimeMillis();
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();
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(600);
Integer serviceId=0;
serviceId=serviceList.get(0).getServiceId();
for(Entry<Long, AsnGroupInfo> e:deleteAsnCompile.entrySet()) {
maatCfg.setCompileId(e.getValue().getCompileId());
maatCfg.setServiceId(serviceId);
maatCfg.setIsValid(0);//无效
configCompileList.add(maatCfg);
}
maatBean.setConfigCompileList(configCompileList);
maatBean.setAuditTime(createTime);
maatBean.setCreatorName(UserUtils.getUser().getName());
maatBean.setVersion(Constants.MAAT_VERSION);
maatBean.setOpAction(Constants.UPDATE_ACTION);
//调用服务接口取消配置
String json=gsonToJson(maatBean);
logger.info("ASN IP 业务的编译配置全部失效参数:"+json);
long auditEnd=System.currentTimeMillis();
logger.warn("Cancle all ASN compile finish,cost:"+(auditEnd-startAudit));
ToMaatResult result = ConfigServiceUtil.put(json,1);
logger.info("ASN IP所有编译取消返回结果"+result.getMsg());
long resultEnd=System.currentTimeMillis();
logger.warn("Cancle all ASN compile finish,cost:"+(resultEnd-auditEnd));
}*/
long end=System.currentTimeMillis();
logger.warn("Save asn ip finish,cost:"+(end-start));
}
/**
*
* @param asnNoMaps 所有asn的信息
* @param configGroupInfos asn组织的数据库信息
* @param asnOrgMap asn和组织的关系
* @param isImportAll 是否导入全量
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void processGroup(FunctionServiceDict service,List<Map<Long, AsnGroupInfo>> asnNoMaps,List<Map<String, ConfigGroupInfo>> asnOrgList,String isSend,String isImportAll){
logger.warn("Start to save group");
long start=System.currentTimeMillis();
Map<Long, AsnGroupInfo> deleteAsnCompile=null;
Date createTime=new Date();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
SqlSession batchSqlSession = null;
int index=0;
Integer serviceId=service.getServiceId();
try{
//1、删除所有asn ip
asnIpCfgDao.deleteAll();
//2、删除所有的asn_group_info
asnGroupInfoDao.deleteAll();
//3、删除所有的组织信息
configGroupInfoDao.deleteAllAsnGroup();
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
//4、遍历保存所有的config_group_info
if(!StringUtil.isEmpty(asnOrgList)){
Map<String,ConfigGroupInfo> newOrgMap=asnOrgList.get(0);//【0】 新的config group info
Map<String,ConfigGroupInfo> oldOrgMap=asnOrgList.get(1);//【1】 旧的config group info
//入库旧的asn组织信息
if(!StringUtil.isEmpty(oldOrgMap)){
index=0;
for(Entry<String, ConfigGroupInfo> e:oldOrgMap.entrySet()) {
ConfigGroupInfo configGroupInfo=e.getValue();
configGroupInfo.setIsIssued(0);
((ConfigGroupInfoDao) batchSqlSession.getMapper(ConfigGroupInfoDao.class)).insertWithId(configGroupInfo);
if(index != 0 && index%Constants.IMPORT_LIMIT==0) {
batchSqlSession.commit();
}
index++;
}
batchSqlSession.commit();
}
//入库新的asn组织信息
if(!StringUtil.isEmpty(newOrgMap)){
index=0;
List<Integer> groupIds=ConfigServiceUtil.getId(2, newOrgMap.size());
for(Entry<String, ConfigGroupInfo> e:newOrgMap.entrySet()) {
ConfigGroupInfo configGroupInfo=e.getValue();
configGroupInfo.setGroupId(groupIds.get(index));
configGroupInfo.setIsIssued(0);
configGroupInfo.setIsUsed(0);
configGroupInfo.setIsAuditAll(0);
configGroupInfo.setGroupType(4);
configGroupInfo.setInsertTime(createTime);
asnOrgList.get(1).put(configGroupInfo.getGroupName(), configGroupInfo);
((ConfigGroupInfoDao) batchSqlSession.getMapper(ConfigGroupInfoDao.class)).insertWithoutId(configGroupInfo);
if(index != 0 && index%Constants.IMPORT_LIMIT==0) {
batchSqlSession.commit();
}
index++;
}
batchSqlSession.commit();
}
}
//4、遍历保存所有的asn_group_info
if(!asnNoMaps.isEmpty()){
Map<Long, AsnGroupInfo> newAsnGroup =asnNoMaps.get(0); //【0】 新的asn group info
Map<Long, AsnGroupInfo> oldAsnGroup =asnNoMaps.get(1); //【1】 旧的asn group info
Map<Long, AsnGroupInfo> allAsnGroup =asnNoMaps.get(2); //【2】 所有的asn group info
Map<Long, AsnGroupInfo> auditedAsnNoMap=asnNoMaps.get(3); //【3】已下发的所有asn信息【失效所有的asn 编译】
deleteAsnCompile=auditedAsnNoMap;
//保存新增的asn 信息
if(!newAsnGroup.isEmpty()){
index=0;
List<Integer> compileIds=ConfigServiceUtil.getId(1, newAsnGroup.size());
List<Integer> groupIds=ConfigServiceUtil.getId(2, newAsnGroup.size());
List<Integer> regionIds=ConfigServiceUtil.getId(3, newAsnGroup.size());
for(Entry<Long, AsnGroupInfo> e:newAsnGroup.entrySet()) {
AsnGroupInfo asnGroupInfo=e.getValue();
asnGroupInfo.setAsnId(e.getKey());
asnGroupInfo.setIsValid(0);
asnGroupInfo.setIsUsed(0);
asnGroupInfo.setCreatorId(UserUtils.getUser().getId());
asnGroupInfo.setCreateTime(createTime);
asnGroupInfo.setGroupId(groupIds.get(index));
asnGroupInfo.setCompileId(compileIds.get(index));
asnGroupInfo.setRegionId(regionIds.get(index));
asnGroupInfo.setOrgGroupId(asnOrgList.get(1).get(asnGroupInfo.getOrganization()).getGroupId());
asnNoMaps.get(0).put(e.getKey(), asnGroupInfo);//设置完各种id后更新map数据
asnNoMaps.get(2).put(e.getKey(), asnGroupInfo);//设置完各种id后更新map数据
((AsnGroupInfoDao) batchSqlSession.getMapper(AsnGroupInfoDao.class)).insertWithId(asnGroupInfo);
if(index != 0 && index%Constants.IMPORT_LIMIT==0) {
batchSqlSession.commit();
}
index++;
}
batchSqlSession.commit();
}
//保存旧的asn信息
if(!oldAsnGroup.isEmpty()){
index=0;
for(Entry<Long, AsnGroupInfo> e:oldAsnGroup.entrySet()) {
AsnGroupInfo asnGroupInfo=e.getValue();
asnGroupInfo.setIsValid(0);
asnGroupInfo.setOrgGroupId(asnOrgList.get(1).get(asnGroupInfo.getOrganization()).getGroupId());
((AsnGroupInfoDao) batchSqlSession.getMapper(AsnGroupInfoDao.class)).insertWithoutId(asnGroupInfo);
if(index != 0 && index%Constants.IMPORT_LIMIT==0) {
batchSqlSession.commit();
}
index++;
}
batchSqlSession.commit();
}
}
}finally {
if(batchSqlSession != null){
batchSqlSession.close();
}
}
//6、配置取消所有编译[编译取消编译下的所有group和region都会取消(已和服务端确认)]
if(!StringUtil.isEmpty(deleteAsnCompile)){
long startAudit=System.currentTimeMillis();
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();
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(600);
for(Entry<Long, AsnGroupInfo> e:deleteAsnCompile.entrySet()) {
maatCfg.setCompileId(e.getValue().getCompileId());
maatCfg.setServiceId(serviceId);
maatCfg.setIsValid(0);//无效
configCompileList.add(maatCfg);
}
maatBean.setConfigCompileList(configCompileList);
maatBean.setAuditTime(createTime);
maatBean.setCreatorName(UserUtils.getUser().getName());
maatBean.setVersion(Constants.MAAT_VERSION);
maatBean.setOpAction(Constants.UPDATE_ACTION);
//调用服务接口取消配置
String json=gsonToJson(maatBean);
logger.info("ASN IP 业务的编译配置全部失效参数:"+json);
long auditEnd=System.currentTimeMillis();
logger.warn("Cancle all ASN compile finish,cost:"+(auditEnd-startAudit));
ToMaatResult result = ConfigServiceUtil.put(json,1);
logger.info("ASN IP所有编译取消返回结果"+result.getMsg());
long resultEnd=System.currentTimeMillis();
logger.warn("Cancle all ASN compile finish,cost:"+(resultEnd-auditEnd));
}
long end=System.currentTimeMillis();
logger.warn("Save group finish,cost:"+(end-start));
}
@@ -226,6 +465,8 @@ public class AsnIpCfgService extends CrudService<CrudDao<AsnIpCfg>, AsnIpCfg> {
ConfigGroupInfo configGroupInfo=new ConfigGroupInfo();
configGroupInfo.setGroupName(org);
configGroupInfo.setIsIssued(0);
configGroupInfo.setIsUsed(0);
configGroupInfo.setIsAuditAll(0);
configGroupInfo.setGroupType(4);
configGroupInfo.setInsertTime(new Date());
configGroupInfo.setGroupId(groupIds.get(index));

View File

@@ -1,6 +1,8 @@
package com.nis.web.service.specific;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -16,6 +18,14 @@ public class ConfigGroupInfoService extends BaseService{
public List<ConfigGroupInfo> findAllList(int groupType){
return configGroupInfoDao.findAllList(groupType);
}
public Map<String,ConfigGroupInfo> getConfigGroupInfo(List<Map<String,ConfigGroupInfo>> orgList,int groupType){
Map<String,ConfigGroupInfo> configGroupInfoMap=new HashMap<>();
List<ConfigGroupInfo> configGroupInfos=this.findAllList(groupType);
for (ConfigGroupInfo configGroupInfo : configGroupInfos) {
orgList.get(1).put(configGroupInfo.getGroupName(), configGroupInfo);
}
return configGroupInfoMap;
}
public ConfigGroupInfo insertConfigGroupInfo(ConfigGroupInfo entity) {
configGroupInfoDao.insertConfigGroupInfo(entity);
return entity;