1.IP分组域配置修改增加修改人/时间
2.修复携带查询条件无法导出数据bug 3.优化分组域配置导入
This commit is contained in:
@@ -30,6 +30,7 @@ import com.nis.util.ConfigServiceUtil;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.StringUtils;
|
||||
import com.nis.web.controller.configuration.ObjectGroupController;
|
||||
import com.nis.web.dao.basics.CommonGroupManageDao;
|
||||
import com.nis.web.dao.basics.IpCommGroupCfgDao;
|
||||
import com.nis.web.dao.basics.PolicyGroupInfoDao;
|
||||
import com.nis.web.dao.configuration.CommonPolicyDao;
|
||||
@@ -44,6 +45,8 @@ public class IpCommGroupCfgService extends BaseService {
|
||||
private PolicyGroupInfoDao policyGroupInfoDao;
|
||||
@Autowired
|
||||
private CommonPolicyDao commonPolicyDao;
|
||||
@Autowired
|
||||
private CommonGroupManageDao commonGroupManageDao;
|
||||
|
||||
private CommonGroupManageService groupManageService = SpringContextHolder.getBean(CommonGroupManageService.class);
|
||||
|
||||
@@ -71,9 +74,12 @@ public class IpCommGroupCfgService extends BaseService {
|
||||
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void update(IpCommCfg entity){
|
||||
Date editTime=new Date();
|
||||
// 获取分组ID
|
||||
Integer serviceGroupId = groupManageService.getServiceGroupId(entity.getGroupName(), Constants.IP_OBJ_GROUP_TYPE);
|
||||
entity.setGroupId(serviceGroupId);
|
||||
entity.setGroupId(serviceGroupId);
|
||||
entity.setEditTime(editTime);
|
||||
entity.setEditorId(entity.getCurrentUser().getId());
|
||||
ipCommGroupCfgDao.update(entity);
|
||||
|
||||
// 更新分组状态
|
||||
@@ -227,36 +233,57 @@ public class IpCommGroupCfgService extends BaseService {
|
||||
}
|
||||
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseIpCfg> cfgs) {
|
||||
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseIpCfg> cfgs, List<Integer> groupIds) {
|
||||
logger.warn("Start to save IP,size:"+cfgs.size());
|
||||
long start=System.currentTimeMillis();
|
||||
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
|
||||
SqlSession batchSqlSession = null;
|
||||
// 导入域配置 -> ①分组不存在,新增分组并返回serviceGroupId ②分组存在,获取serviceGroupId -> 数据入库 -> 更新分组状态 -> 判断是否配置下发
|
||||
try{
|
||||
int index = 0;
|
||||
String ids = "";
|
||||
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
|
||||
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
|
||||
for(BaseIpCfg cfg:cfgs) {
|
||||
IpCommCfg ipCommCfg=new IpCommCfg();
|
||||
BeanUtils.copyProperties(cfg, ipCommCfg);
|
||||
|
||||
Integer serviceGroupId = groupManageService.getServiceGroupId(ipCommCfg.getGroupName(), Constants.IP_OBJ_GROUP_TYPE);
|
||||
if(!ids.contains(serviceGroupId+"")) {
|
||||
ids += ","+serviceGroupId;
|
||||
}
|
||||
ipCommCfg.setGroupId(serviceGroupId);
|
||||
Integer groupId = commonGroupManageDao.getGroupIdByGroupName(ipCommCfg.getGroupName(), Constants.IP_OBJ_GROUP_TYPE);
|
||||
if(groupId == null) { // 分组不存在,新增 UdFlag为1
|
||||
groupId = groupIds.get(index);
|
||||
index++;
|
||||
|
||||
CommonGroupInfo groupInfo = new CommonGroupInfo();
|
||||
groupInfo.setCreatorId(ipCommCfg.getCreatorId());
|
||||
groupInfo.setCreateTime(ipCommCfg.getCreateTime());
|
||||
groupInfo.setGroupName(ipCommCfg.getGroupName());
|
||||
groupInfo.setGroupType(Constants.IP_OBJ_GROUP_TYPE);
|
||||
groupInfo.setServiceGroupId(groupId);
|
||||
groupInfo.setUdFlag(1);
|
||||
insertGroupList.add(groupInfo);
|
||||
}else {
|
||||
if(!ids.contains(groupId+"")) {
|
||||
ids += ","+groupId;
|
||||
}
|
||||
}
|
||||
|
||||
ipCommCfg.setGroupId(groupId);
|
||||
((IpCommGroupCfgDao) batchSqlSession.getMapper(IpCommGroupCfgDao.class)).insertForBatch(ipCommCfg);
|
||||
|
||||
}
|
||||
batchSqlSession.commit();
|
||||
if(insertGroupList.size() > 0) {
|
||||
commonGroupManageDao.insertBatch(insertGroupList);
|
||||
}
|
||||
|
||||
// 更新分组状态
|
||||
String serviceGroupIds = ids.substring(1);
|
||||
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
|
||||
groupManageService.updateGroupStatus(policyGroupInfos, Constants.IP_OBJ_GROUP_TYPE);
|
||||
// 判断是否配置下发
|
||||
transObjGroupToMaat(policyGroupInfos);
|
||||
if(StringUtils.isNotBlank(ids)) {
|
||||
// 更新分组状态
|
||||
String serviceGroupIds = ids.substring(1);
|
||||
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
|
||||
groupManageService.updateGroupStatus(policyGroupInfos, Constants.IP_OBJ_GROUP_TYPE);
|
||||
// 判断是否配置下发
|
||||
transObjGroupToMaat(policyGroupInfos);
|
||||
}
|
||||
|
||||
}finally {
|
||||
if(batchSqlSession != null){
|
||||
|
||||
Reference in New Issue
Block a user