1.IP分组域配置修改增加修改人/时间

2.修复携带查询条件无法导出数据bug
3.优化分组域配置导入
This commit is contained in:
zhangwenqing
2019-06-20 18:06:38 +08:00
parent 8217770d6d
commit b4c06301b0
17 changed files with 289 additions and 76 deletions

View File

@@ -298,7 +298,7 @@ public class CheckStringFormatThread implements Callable<String>{
}
String keyword = baseStringCfg.getCfgKeywords();
if (!regionDict.getFunctionId().equals(403) && !regionDict.getFunctionId().equals(200)) {// 201域名拦截
if (!regionDict.getFunctionId().equals(403) && !regionDict.getFunctionId().equals(200) && !regionDict.getFunctionId().equals(607)) {// 201域名拦截
if (StringUtils.isBlank(keyword)) {
errInfo.append(
String.format(prop.getProperty("can_not_null"), prop.getProperty("key_word") + " ") + ";");

View File

@@ -3,8 +3,10 @@ package com.nis.web.controller.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;
import java.util.Set;
import java.util.concurrent.BlockingQueue;
import javax.servlet.http.HttpServletRequest;
@@ -174,12 +176,12 @@ public class DomainCommGroupController extends BaseController{
try {
regionIds = ConfigServiceUtil.getId(3,_stringCfgs.size());
} catch (Exception e) {
e.printStackTrace();
logger.info("获取域ID出错");
logger.error("获取域ID出错");
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
}
int index = 0;
Set<String> countSet = new HashSet<String>();
for (BaseStringCfg<?> cfg : _stringCfgs) {
cfg.setAction(serviceDict==null?null:serviceDict.getAction());
cfg.setCfgRegionCode(regionDict.getConfigRegionCode());
@@ -200,10 +202,23 @@ public class DomainCommGroupController extends BaseController{
cfg.setTableName("domain_comm_cfg");
cfg.setRegionId(regionIds.get(index));
cfg.setGroupName(cfg.getGroupName().toUpperCase());
countSet.add(cfg.getGroupName());
index++;
}
domainCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs);
Integer count = commonGroupManageService.getCountByGroupName(countSet, Constants.DOMAIN_OBJ_GROUP_TYPE); // 需调用服务接口获取GroupId的数量
List<Integer> groupIds= ConfigServiceUtil.getId(2,count);
if(count > 0) {
try {
groupIds = ConfigServiceUtil.getId(2,count);
} catch (Exception e) {
logger.error("获取组ID出错");
throw new MaatConvertException("Get group id failed");
}
}
domainCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIds);
_stringCfgs.clear();
}

View File

@@ -3,8 +3,10 @@ package com.nis.web.controller.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;
import java.util.Set;
import java.util.concurrent.BlockingQueue;
import javax.servlet.http.HttpServletRequest;
@@ -239,7 +241,7 @@ public class IpCommGroupController extends BaseController {
}
//------------------------------------check format end----------------------------
Date date = new Date();
String isSend = request.getParameter("isSend")==null?"":request.getParameter("isSend");
//String isSend = request.getParameter("isSend")==null?"":request.getParameter("isSend");
if (regionDict.getRegionType().equals(1)) {// IP
List<BaseIpCfg> _ipPortCfgs=Lists.newArrayList(Constants.MAAT_JSON_SEND_SIZE);
@@ -249,12 +251,12 @@ public class IpCommGroupController extends BaseController {
try {
regionIds = ConfigServiceUtil.getId(3,_ipPortCfgs.size());
} catch (Exception e) {
e.printStackTrace();
logger.info("获取域ID出错");
logger.error("获取域ID出错");
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
}
int index = 0;
Set<String> countSet = new HashSet<String>();
for (BaseIpCfg cfg : _ipPortCfgs) {
cfg.setAction(serviceDict==null?null:serviceDict.getAction());
cfg.setCfgRegionCode(regionDict.getConfigRegionCode());
@@ -275,10 +277,22 @@ public class IpCommGroupController extends BaseController {
cfg.setTableName("ip_comm_cfg");
cfg.setRegionId(regionIds.get(index));
cfg.setGroupName(cfg.getGroupName().toUpperCase());
countSet.add(cfg.getGroupName());
index++;
}
ipCommGroupCfgService.saveAndSend(regionDict, serviceDict, _ipPortCfgs);
Integer count = commonGroupManageService.getCountByGroupName(countSet, Constants.IP_OBJ_GROUP_TYPE); // 需调用服务接口获取GroupId的数量
List<Integer> groupIds = Lists.newArrayList(count);
if(count > 0) {
try {
groupIds = ConfigServiceUtil.getId(2,count);
} catch (Exception e) {
logger.error("获取组ID出错");
throw new MaatConvertException("Get group id failed");
}
}
ipCommGroupCfgService.saveAndSend(regionDict, serviceDict, _ipPortCfgs, groupIds);
_ipPortCfgs.clear();
}

View File

@@ -3,8 +3,10 @@ package com.nis.web.controller.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;
import java.util.Set;
import java.util.concurrent.BlockingQueue;
import javax.servlet.http.HttpServletRequest;
@@ -174,12 +176,12 @@ public class ScriberIdCommGroupController extends BaseController{
try {
regionIds = ConfigServiceUtil.getId(3,_stringCfgs.size());
} catch (Exception e) {
e.printStackTrace();
logger.info("获取域ID出错");
logger.error("获取域ID出错");
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
}
int index = 0;
Set<String> countSet = new HashSet<String>();
for (BaseStringCfg<?> cfg : _stringCfgs) {
cfg.setAction(serviceDict==null?null:serviceDict.getAction());
cfg.setCfgRegionCode(regionDict.getConfigRegionCode());
@@ -200,10 +202,23 @@ public class ScriberIdCommGroupController extends BaseController{
cfg.setTableName("scriberid_comm_cfg");
cfg.setRegionId(regionIds.get(index));
cfg.setGroupName(cfg.getGroupName().toUpperCase());
countSet.add(cfg.getGroupName());
index++;
}
scriberIdCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs);
Integer count = commonGroupManageService.getCountByGroupName(countSet, Constants.SUBID_OBJ_GROUP_TYPE); // 需调用服务接口获取GroupId的数量
List<Integer> groupIds= ConfigServiceUtil.getId(2,count);
if(count > 0) {
try {
groupIds = ConfigServiceUtil.getId(2,count);
} catch (Exception e) {
logger.error("获取组ID出错");
throw new MaatConvertException("Get group id failed");
}
}
scriberIdCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIds);
_stringCfgs.clear();
}

View File

@@ -3,8 +3,10 @@ package com.nis.web.controller.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;
import java.util.Set;
import java.util.concurrent.BlockingQueue;
import javax.servlet.http.HttpServletRequest;
@@ -174,12 +176,12 @@ public class UrlCommGroupController extends BaseController{
try {
regionIds = ConfigServiceUtil.getId(3,_stringCfgs.size());
} catch (Exception e) {
e.printStackTrace();
logger.info("获取域ID出错");
logger.error("获取域ID出错");
throw new MaatConvertException("<spring:message code=\"request_service_failed\"/>:"+e.getMessage());
}
int index = 0;
Set<String> countSet = new HashSet<String>();
for (BaseStringCfg<?> cfg : _stringCfgs) {
cfg.setAction(serviceDict==null?null:serviceDict.getAction());
cfg.setCfgRegionCode(regionDict.getConfigRegionCode());
@@ -200,10 +202,23 @@ public class UrlCommGroupController extends BaseController{
cfg.setTableName("url_comm_cfg");
cfg.setRegionId(regionIds.get(index));
cfg.setGroupName(cfg.getGroupName().toUpperCase());
countSet.add(cfg.getGroupName());
index++;
}
urlCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs);
Integer count = commonGroupManageService.getCountByGroupName(countSet, Constants.URL_OBJ_GROUP_TYPE); // 需调用服务接口获取GroupId的数量
List<Integer> groupIds= ConfigServiceUtil.getId(2,count);
if(count > 0) {
try {
groupIds = ConfigServiceUtil.getId(2,count);
} catch (Exception e) {
logger.error("获取组ID出错");
throw new MaatConvertException("Get group id failed");
}
}
urlCommGroupService.saveAndSend(regionDict, serviceDict, _stringCfgs, groupIds);
_stringCfgs.clear();
}

View File

@@ -1,6 +1,7 @@
package com.nis.web.dao.basics;
import java.util.List;
import java.util.Set;
import org.apache.ibatis.annotations.Param;
@@ -26,4 +27,10 @@ public interface CommonGroupManageDao extends CrudDao<CommonGroupInfo> {
// 校验是否是当前引用Group的最后一条配置
public Integer ajaxCheckIsLastOneCfg(@Param("groupId")Integer groupId, @Param("cfgIds")String CfgIds, @Param("tableName")String indextable);
Integer getCountByGroupName(@Param("groupNameSet")Set<String> set, @Param("groupType")Integer groupType);
Integer getGroupIdByGroupName(@Param("groupName")String groupName, @Param("groupType")Integer groupType);
int insertBatch(List<CommonGroupInfo> list);
}

View File

@@ -100,7 +100,8 @@
GROUP_NAME,
GROUP_TYPE,
SERVICE_GROUP_ID,
DESCRIPTION
DESCRIPTION,
UD_FLAG
)values
<foreach collection ="list" item="info" separator =",">
(
@@ -110,7 +111,8 @@
#{info.groupName,jdbcType=VARCHAR},
#{info.groupType,jdbcType=INTEGER},
#{info.serviceGroupId,jdbcType=INTEGER},
#{info.description,jdbcType=VARCHAR}
#{info.description,jdbcType=VARCHAR},
#{info.udFlag,jdbcType=INTEGER}
)
</foreach>
</insert>
@@ -212,7 +214,7 @@
FROM
cfg_index_info
WHERE
common_group_ids LIKE concat(concat('%',#{groupId,jdbcType=VARCHAR}),'%') AND is_valid != -1
common_group_ids LIKE concat(concat('%',#{groupId,jdbcType=VARCHAR}),'%') AND is_valid != -1 AND is_audit = 1
</select>
<select id="ajaxCheckIsLastOneCfg" resultType="java.lang.Integer">
@@ -223,4 +225,37 @@
WHERE
r.group_id = #{groupId} AND r.cfg_id NOT IN(${cfgIds})
</select>
<select id="getCountByGroupName" resultType="java.lang.Integer">
SELECT
COUNT(1)
FROM
policy_group_info r
<trim prefix="WHERE" prefixOverrides="AND |OR ">
<foreach collection="groupNameSet" index="index" item="item" open="(" separator="OR" close=")">
r.group_name = #{item,jdbcType=VARCHAR}
</foreach>
<if test="groupType != null" >
AND r.group_type = #{groupType,jdbcType=INTEGER}
</if>
AND r.is_valid != 0
</trim>
</select>
<select id="getGroupIdByGroupName" resultType="java.lang.Integer">
SELECT
r.service_group_id
FROM
policy_group_info r
<trim prefix="WHERE" prefixOverrides="AND |OR ">
<if test="groupName != null and groupName != ''" >
AND r.group_name = #{groupName,jdbcType=VARCHAR}
</if>
<if test="groupType != null" >
AND r.group_type = #{groupType,jdbcType=INTEGER}
</if>
AND is_valid != 0
</trim>
</select>
</mapper>

View File

@@ -269,7 +269,7 @@ public class CommonGroupManageService extends BaseService{
CommonGroupInfo entity = new CommonGroupInfo();
int serviceGroupId = 0;
entity.setGroupType(groupType);
entity.setGroupName(groupName);
entity.setGroupName(groupName.toUpperCase());
CommonGroupInfo groupInfo = commonGroupManageDao.getGroupInfo(entity);
if(groupInfo == null) {
@@ -293,4 +293,11 @@ public class CommonGroupManageService extends BaseService{
return serviceGroupId;
}
public Integer getCountByGroupName(Set<String> set, Integer groupType) {
Integer count = commonGroupManageDao.getCountByGroupName(set, groupType);
return set.size()-count;
}
}

View File

@@ -19,6 +19,7 @@ import org.springframework.transaction.annotation.Transactional;
import com.nis.domain.FunctionRegionDict;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.CommonGroupInfo;
import com.nis.domain.basics.DomainCommCfg;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.configuration.BaseStringCfg;
@@ -29,6 +30,7 @@ import com.nis.util.Constants;
import com.nis.util.StringUtils;
import com.nis.web.controller.configuration.ObjectGroupController;
import com.nis.web.dao.CrudDao;
import com.nis.web.dao.basics.CommonGroupManageDao;
import com.nis.web.dao.basics.DomainCommGroupDao;
import com.nis.web.dao.basics.PolicyGroupInfoDao;
import com.nis.web.dao.configuration.CommonPolicyDao;
@@ -44,6 +46,8 @@ public class DomainCommGroupService extends CrudService<CrudDao<DomainCommCfg>,
private PolicyGroupInfoDao policyGroupInfoDao;
@Autowired
private CommonPolicyDao commonPolicyDao;
@Autowired
private CommonGroupManageDao commonGroupManageDao;
private CommonGroupManageService groupManageService = SpringContextHolder.getBean(CommonGroupManageService.class);
@@ -243,34 +247,56 @@ public class DomainCommGroupService extends CrudService<CrudDao<DomainCommCfg>,
}
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs) {
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, List<Integer> groupIds) {
logger.warn("Start to save Domain,size:"+cfgs.size());
long start=System.currentTimeMillis();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
SqlSession batchSqlSession = null;
// 导入域配置 -> ①分组不存在新增分组并返回groupId ②分组存在获取groupId -> 数据 入库 -> 更新分组状态 -> 判断是否配置下发
try{
int index = 0;
String ids = "";
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
for(BaseStringCfg<?> cfg:cfgs) {
DomainCommCfg domainCommCfg=new DomainCommCfg();
BeanUtils.copyProperties(cfg, domainCommCfg);
Integer serviceGroupId = groupManageService.getServiceGroupId(domainCommCfg.getGroupName(), Constants.DOMAIN_OBJ_GROUP_TYPE);
if(!ids.contains(serviceGroupId+"")) {
ids += ","+serviceGroupId;
}
domainCommCfg.setGroupId(serviceGroupId);
Integer groupId = commonGroupManageDao.getGroupIdByGroupName(domainCommCfg.getGroupName(), Constants.DOMAIN_OBJ_GROUP_TYPE);
if(groupId == null) { // 分组不存在,新增 UdFlag为1
groupId = groupIds.get(index);
index++;
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(domainCommCfg.getCreatorId());
groupInfo.setCreateTime(domainCommCfg.getCreateTime());
groupInfo.setGroupName(domainCommCfg.getGroupName());
groupInfo.setGroupType(Constants.DOMAIN_OBJ_GROUP_TYPE);
groupInfo.setServiceGroupId(groupId);
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}else {
if(!ids.contains(groupId+"")) {
ids += ","+groupId;
}
}
domainCommCfg.setGroupId(groupId);
((DomainCommGroupDao) batchSqlSession.getMapper(DomainCommGroupDao.class)).insertCommGroupCfg(domainCommCfg);
}
batchSqlSession.commit();
if(insertGroupList.size() > 0) {
commonGroupManageDao.insertBatch(insertGroupList);
}
// 更新分组状态
String serviceGroupIds = ids.substring(1);
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
groupManageService.updateGroupStatus(policyGroupInfos, Constants.DOMAIN_OBJ_GROUP_TYPE);
transObjGroupToMaat(policyGroupInfos);
if(StringUtils.isNotBlank(ids)) {
// 更新分组状态
String serviceGroupIds = ids.substring(1);
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
groupManageService.updateGroupStatus(policyGroupInfos, Constants.DOMAIN_OBJ_GROUP_TYPE);
// 判断是否配置下发
transObjGroupToMaat(policyGroupInfos);
}
}finally {
if(batchSqlSession != null){

View File

@@ -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){

View File

@@ -19,6 +19,7 @@ import org.springframework.transaction.annotation.Transactional;
import com.nis.domain.FunctionRegionDict;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.CommonGroupInfo;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.basics.ScriberIdCommCfg;
import com.nis.domain.configuration.BaseStringCfg;
@@ -29,6 +30,7 @@ import com.nis.util.Constants;
import com.nis.util.StringUtils;
import com.nis.web.controller.configuration.ObjectGroupController;
import com.nis.web.dao.CrudDao;
import com.nis.web.dao.basics.CommonGroupManageDao;
import com.nis.web.dao.basics.PolicyGroupInfoDao;
import com.nis.web.dao.basics.ScriberIdCommGroupDao;
import com.nis.web.dao.configuration.CommonPolicyDao;
@@ -44,6 +46,8 @@ public class ScriberIdCommGroupService extends CrudService<CrudDao<ScriberIdComm
private PolicyGroupInfoDao policyGroupInfoDao;
@Autowired
private CommonPolicyDao commonPolicyDao;
@Autowired
private CommonGroupManageDao commonGroupManageDao;
private CommonGroupManageService groupManageService = SpringContextHolder.getBean(CommonGroupManageService.class);
@@ -244,34 +248,56 @@ public class ScriberIdCommGroupService extends CrudService<CrudDao<ScriberIdComm
}
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs) {
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, List<Integer> groupIds) {
logger.warn("Start to save ScriberId,size:"+cfgs.size());
long start=System.currentTimeMillis();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
SqlSession batchSqlSession = null;
// 导入域配置 -> ①分组不存在新增分组并返回groupId ②分组存在获取groupId -> 数据 入库 -> 更新分组状态 -> 判断是否配置下发
try{
int index = 0;
String ids = "";
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
for(BaseStringCfg<?> cfg:cfgs) {
ScriberIdCommCfg commCfg=new ScriberIdCommCfg();
BeanUtils.copyProperties(cfg, commCfg);
Integer serviceGroupId = groupManageService.getServiceGroupId(commCfg.getGroupName(), Constants.SUBID_OBJ_GROUP_TYPE);
if(!ids.contains(serviceGroupId+"")) {
ids += ","+serviceGroupId;
}
commCfg.setGroupId(serviceGroupId);
Integer groupId = commonGroupManageDao.getGroupIdByGroupName(commCfg.getGroupName(), Constants.SUBID_OBJ_GROUP_TYPE);
if(groupId == null) {
groupId = groupIds.get(index);
index++;
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(commCfg.getCreatorId());
groupInfo.setCreateTime(commCfg.getCreateTime());
groupInfo.setGroupName(commCfg.getGroupName());
groupInfo.setGroupType(Constants.SUBID_OBJ_GROUP_TYPE);
groupInfo.setServiceGroupId(groupId);
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}else {
if(!ids.contains(groupId+"")) {
ids += ","+groupId;
}
}
commCfg.setGroupId(groupId);
((ScriberIdCommGroupDao) batchSqlSession.getMapper(ScriberIdCommGroupDao.class)).insertCommGroupCfg(commCfg);
}
batchSqlSession.commit();
if(insertGroupList.size() > 0) {
commonGroupManageDao.insertBatch(insertGroupList);
}
// 更新分组状态
String serviceGroupIds = ids.substring(1);
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
groupManageService.updateGroupStatus(policyGroupInfos, Constants.SUBID_OBJ_GROUP_TYPE);
transObjGroupToMaat(policyGroupInfos);
if(StringUtils.isNotBlank(ids)) {
// 更新分组状态
String serviceGroupIds = ids.substring(1);
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
groupManageService.updateGroupStatus(policyGroupInfos, Constants.SUBID_OBJ_GROUP_TYPE);
// 判断是否配置下发
transObjGroupToMaat(policyGroupInfos);
}
}finally {
if(batchSqlSession != null){

View File

@@ -19,6 +19,7 @@ import org.springframework.transaction.annotation.Transactional;
import com.nis.domain.FunctionRegionDict;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.CommonGroupInfo;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.basics.UrlCommCfg;
import com.nis.domain.configuration.BaseStringCfg;
@@ -29,6 +30,7 @@ import com.nis.util.Constants;
import com.nis.util.StringUtils;
import com.nis.web.controller.configuration.ObjectGroupController;
import com.nis.web.dao.CrudDao;
import com.nis.web.dao.basics.CommonGroupManageDao;
import com.nis.web.dao.basics.PolicyGroupInfoDao;
import com.nis.web.dao.basics.UrlCommGroupDao;
import com.nis.web.dao.configuration.CommonPolicyDao;
@@ -44,6 +46,8 @@ public class UrlCommGroupService extends CrudService<CrudDao<UrlCommCfg>, UrlCom
private PolicyGroupInfoDao policyGroupInfoDao;
@Autowired
private CommonPolicyDao commonPolicyDao;
@Autowired
private CommonGroupManageDao commonGroupManageDao;
private CommonGroupManageService groupManageService = SpringContextHolder.getBean(CommonGroupManageService.class);
@@ -244,34 +248,56 @@ public class UrlCommGroupService extends CrudService<CrudDao<UrlCommCfg>, UrlCom
}
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs) {
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> cfgs, List<Integer> groupIds) {
logger.warn("Start to save URL,size:"+cfgs.size());
long start=System.currentTimeMillis();
SqlSessionFactory sqlSessionFactory=SpringContextHolder.getBean(SqlSessionFactory.class);
SqlSession batchSqlSession = null;
// 导入域配置 -> ①分组不存在新增分组并返回groupId ②分组存在获取groupId -> 数据 入库 -> 更新分组状态 -> 判断是否配置下发
try{
int index = 0;
String ids = "";
List<CommonGroupInfo> insertGroupList = new ArrayList<CommonGroupInfo>();
batchSqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH, false);
for(BaseStringCfg<?> cfg:cfgs) {
UrlCommCfg urlCommCfg=new UrlCommCfg();
BeanUtils.copyProperties(cfg, urlCommCfg);
Integer serviceGroupId = groupManageService.getServiceGroupId(urlCommCfg.getGroupName(), Constants.URL_OBJ_GROUP_TYPE);
if(!ids.contains(serviceGroupId+"")) {
ids += ","+serviceGroupId;
}
urlCommCfg.setGroupId(serviceGroupId);
Integer groupId = commonGroupManageDao.getGroupIdByGroupName(urlCommCfg.getGroupName(), Constants.URL_OBJ_GROUP_TYPE);
if(groupId == null) { // 分组不存在,新增 UdFlag为1
groupId = groupIds.get(index);
index++;
CommonGroupInfo groupInfo = new CommonGroupInfo();
groupInfo.setCreatorId(urlCommCfg.getCreatorId());
groupInfo.setCreateTime(urlCommCfg.getCreateTime());
groupInfo.setGroupName(urlCommCfg.getGroupName());
groupInfo.setGroupType(Constants.URL_OBJ_GROUP_TYPE);
groupInfo.setServiceGroupId(groupId);
groupInfo.setUdFlag(1);
insertGroupList.add(groupInfo);
}else {
if(!ids.contains(groupId+"")) {
ids += ","+groupId;
}
}
urlCommCfg.setGroupId(groupId);
((UrlCommGroupDao) batchSqlSession.getMapper(UrlCommGroupDao.class)).insertUrlCommGroupCfg(urlCommCfg);
}
batchSqlSession.commit();
if(insertGroupList.size() > 0) {
commonGroupManageDao.insertBatch(insertGroupList);
}
// 更新分组状态
String serviceGroupIds = ids.substring(1);
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
groupManageService.updateGroupStatus(policyGroupInfos, Constants.URL_OBJ_GROUP_TYPE);
transObjGroupToMaat(policyGroupInfos);
if(StringUtils.isNotBlank(ids)) {
// 更新分组状态
String serviceGroupIds = ids.substring(1);
List<PolicyGroupInfo> policyGroupInfos = policyGroupInfoDao.findPolicyByServiceGroupInfoList(serviceGroupIds);
groupManageService.updateGroupStatus(policyGroupInfos, Constants.URL_OBJ_GROUP_TYPE);
// 判断是否配置下发
transObjGroupToMaat(policyGroupInfos);
}
}finally {
if(batchSqlSession != null){

View File

@@ -761,17 +761,17 @@ function exportData(url,maxRow,searchUrl,exType){
if(totalCount > maxRow){
top.$.jBox.confirm("<spring:message code='export_confirm_message'/>"+maxRow+"!","<spring:message code='info'/>",function(v,h,f){
if(v=="ok"){
if($("#intype").val() != null && $("#intype").val() != ""){
/* if($("#intype").val() != null && $("#intype").val() != ""){
$("#intype").attr("name",$("#seltype").val());
}
} */
exportXmlRequest(url);
}
},{buttonsFocus:1});
top.$('.jbox-body .jbox-icon').css('top','55px');
}else{
if($("#intype").val() != null && $("#intype").val() != ""){
/* if($("#intype").val() != null && $("#intype").val() != ""){
$("#intype").attr("name",$("#seltype").val());
}
} */
exportXmlRequest(url);
}
}else{

View File

@@ -210,8 +210,8 @@
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/basics/domain/exportGroupInfo?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/domain/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/domain/exportGroupInfo?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/domain/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_csv"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/domain/exportGroupInfo?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/domain/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/domain/exportGroupInfo?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/domain/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_csv"></sys:delRow></li>
</ul>
</div>

View File

@@ -228,8 +228,8 @@
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/basics/ip/exportIpComm?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/ip/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/ip/exportIpComm?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/ip/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_csv"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/ip/exportIpComm?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/ip/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/ip/exportIpComm?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/ip/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_csv"></sys:delRow></li>
</ul>
</div>

View File

@@ -210,8 +210,8 @@
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/basics/scriberId/exportGroupInfo?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/scriberId/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/scriberId/exportGroupInfo?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/scriberId/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_csv"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/scriberId/exportGroupInfo?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/scriberId/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/scriberId/exportGroupInfo?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/scriberId/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_csv"></sys:delRow></li>
</ul>
</div>

View File

@@ -205,8 +205,8 @@
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/basics/url/exportUrlComm?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/url/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/url/exportUrlComm?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/url/list?functionId=${cfg.functionId}" id="contentTable" maxRow="5" label="cfg_csv"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/url/exportUrlComm?functionId=${cfg.functionId }&exType=excel" searchUrl="${ctx}/basics/url/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/basics/url/exportUrlComm?functionId=${cfg.functionId }&exType=csv" searchUrl="${ctx}/basics/url/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="cfg_csv"></sys:delRow></li>
</ul>
</div>