(1)审核修正userregion,定时userregion修正
(2)form表单monit修正,list group为空报错修复 (3)删除组下的域配置相关逻辑修正
This commit is contained in:
@@ -860,6 +860,8 @@ public class ConfigConvertUtil {
|
|||||||
userRegionMap.put("decrypt_mirror", map);
|
userRegionMap.put("decrypt_mirror", map);
|
||||||
}
|
}
|
||||||
return gsonToJson(userRegionMap);
|
return gsonToJson(userRegionMap);
|
||||||
|
}else if(serviceId.equals(592)){
|
||||||
|
return "{}";
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -201,12 +201,7 @@ public class SchedulerTaskUtil {
|
|||||||
if(StringUtils.isNotBlank(cfg.getCommonGroupIds())){//公共分组
|
if(StringUtils.isNotBlank(cfg.getCommonGroupIds())){//公共分组
|
||||||
//处理自定义域
|
//处理自定义域
|
||||||
StringBuffer userRegion = new StringBuffer();
|
StringBuffer userRegion = new StringBuffer();
|
||||||
if(cfg.getServiceId().equals(512)){
|
userRegion.append(ConfigConvertUtil.generateCommonGroupDefaultUserRegion(null,cfg.getServiceId()));
|
||||||
cfg.setAction(2);
|
|
||||||
userRegion.append(ConfigConvertUtil.generateCommonGroupDefaultUserRegion(null,cfg.getServiceId()));
|
|
||||||
}else if(cfg.getServiceId().equals(576)){
|
|
||||||
userRegion.append(ConfigConvertUtil.generateCommonGroupDefaultUserRegion(null,cfg.getServiceId()));
|
|
||||||
}
|
|
||||||
//子配置
|
//子配置
|
||||||
Map<String,Object> maatTableMap=ConfigConvertUtil.convertCommonGroupMaatTable(cfg,cfgList);
|
Map<String,Object> maatTableMap=ConfigConvertUtil.convertCommonGroupMaatTable(cfg,cfgList);
|
||||||
//IP公共分组
|
//IP公共分组
|
||||||
|
|||||||
@@ -19,14 +19,13 @@ import java.util.concurrent.ExecutionException;
|
|||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
import java.util.concurrent.Future;
|
import java.util.concurrent.Future;
|
||||||
import java.util.function.Predicate;
|
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import com.nis.web.service.configuration.*;
|
||||||
import org.apache.commons.lang3.StringEscapeUtils;
|
import org.apache.commons.lang3.StringEscapeUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.log4j.Logger;
|
||||||
@@ -172,43 +171,6 @@ import com.nis.web.service.basics.IpReuseIpCfgService;
|
|||||||
import com.nis.web.service.basics.PolicyGroupInfoService;
|
import com.nis.web.service.basics.PolicyGroupInfoService;
|
||||||
import com.nis.web.service.basics.ServiceDictInfoService;
|
import com.nis.web.service.basics.ServiceDictInfoService;
|
||||||
import com.nis.web.service.basics.SysDictInfoService;
|
import com.nis.web.service.basics.SysDictInfoService;
|
||||||
import com.nis.web.service.configuration.AppBuiltInFeatureService;
|
|
||||||
import com.nis.web.service.configuration.AppCfgService;
|
|
||||||
import com.nis.web.service.configuration.AppMultiFeatureCfgService;
|
|
||||||
import com.nis.web.service.configuration.AsnPolicyCfgService;
|
|
||||||
import com.nis.web.service.configuration.AvCfgService;
|
|
||||||
import com.nis.web.service.configuration.AvContentCfgService;
|
|
||||||
import com.nis.web.service.configuration.BgpCfgService;
|
|
||||||
import com.nis.web.service.configuration.CachePolicyService;
|
|
||||||
import com.nis.web.service.configuration.CommonPolicyService;
|
|
||||||
import com.nis.web.service.configuration.ComplexStringCfgService;
|
|
||||||
import com.nis.web.service.configuration.ConfigSynchronizationService;
|
|
||||||
import com.nis.web.service.configuration.ControlPolicyService;
|
|
||||||
import com.nis.web.service.configuration.DdosCfgService;
|
|
||||||
import com.nis.web.service.configuration.DnsIpCfgService;
|
|
||||||
import com.nis.web.service.configuration.DnsResStrategyService;
|
|
||||||
import com.nis.web.service.configuration.DomainService;
|
|
||||||
import com.nis.web.service.configuration.FileTransferCfgService;
|
|
||||||
import com.nis.web.service.configuration.GroupAreaService;
|
|
||||||
import com.nis.web.service.configuration.HttpRedirectCfgService;
|
|
||||||
import com.nis.web.service.configuration.InterceptCfgService;
|
|
||||||
import com.nis.web.service.configuration.IpAddrPoolCfgService;
|
|
||||||
import com.nis.web.service.configuration.IpCfgService;
|
|
||||||
import com.nis.web.service.configuration.IpMultiplexPoolCfgService;
|
|
||||||
import com.nis.web.service.configuration.MailCfgService;
|
|
||||||
import com.nis.web.service.configuration.ManipulatPolicyService;
|
|
||||||
import com.nis.web.service.configuration.NumCfgService;
|
|
||||||
import com.nis.web.service.configuration.ProxyFileHijackService;
|
|
||||||
import com.nis.web.service.configuration.ProxyFileInsertScriptService;
|
|
||||||
import com.nis.web.service.configuration.ProxyFileResponsePageService;
|
|
||||||
import com.nis.web.service.configuration.ProxyFileStrategyService;
|
|
||||||
import com.nis.web.service.configuration.ProxyFileTrafficMirrorService;
|
|
||||||
import com.nis.web.service.configuration.PxyObjKeyringService;
|
|
||||||
import com.nis.web.service.configuration.PxyObjSpoofingIpPoolService;
|
|
||||||
import com.nis.web.service.configuration.RequestInfoService;
|
|
||||||
import com.nis.web.service.configuration.UserManageService;
|
|
||||||
import com.nis.web.service.configuration.WebsiteCfgService;
|
|
||||||
import com.nis.web.service.configuration.XmppCfgService;
|
|
||||||
import com.nis.web.service.configuration.statistics.ConfigureStatisticsService;
|
import com.nis.web.service.configuration.statistics.ConfigureStatisticsService;
|
||||||
import com.nis.web.service.specific.ConfigGroupInfoService;
|
import com.nis.web.service.specific.ConfigGroupInfoService;
|
||||||
import com.nis.web.service.specific.SpecificServiceCfgService;
|
import com.nis.web.service.specific.SpecificServiceCfgService;
|
||||||
@@ -365,7 +327,8 @@ public class BaseController {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
protected CommonGroupManageService commonGroupManageService;
|
protected CommonGroupManageService commonGroupManageService;
|
||||||
|
@Autowired
|
||||||
|
protected ObjectGroupService objectGroupService;
|
||||||
/**
|
/**
|
||||||
* 管理基础路径
|
* 管理基础路径
|
||||||
*/
|
*/
|
||||||
@@ -3971,6 +3934,8 @@ public class BaseController {
|
|||||||
||baseCfg.getFunctionId().equals(566)//app ssl
|
||baseCfg.getFunctionId().equals(566)//app ssl
|
||||||
||baseCfg.getFunctionId().equals(567)) {//dk_gl
|
||baseCfg.getFunctionId().equals(567)) {//dk_gl
|
||||||
pageResult=appMultiFeatureCfgService.findAppFeatureIndexList(searchPage,searchAppFeatureIndex);
|
pageResult=appMultiFeatureCfgService.findAppFeatureIndexList(searchPage,searchAppFeatureIndex);
|
||||||
|
}else if(baseCfg.getFunctionId().equals(888)){
|
||||||
|
pageResult=objectGroupService.getPolicyListList(searchPage,searchCfg);
|
||||||
}
|
}
|
||||||
return pageResult.getList();
|
return pageResult.getList();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,19 +2,21 @@ package com.nis.web.controller.configuration;
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import com.beust.jcommander.internal.Lists;
|
||||||
|
import com.nis.domain.FunctionRegionDict;
|
||||||
import com.nis.domain.FunctionServiceDict;
|
import com.nis.domain.FunctionServiceDict;
|
||||||
import com.nis.domain.Page;
|
import com.nis.domain.Page;
|
||||||
import com.nis.domain.basics.PolicyGroupInfo;
|
import com.nis.domain.basics.PolicyGroupInfo;
|
||||||
import com.nis.domain.configuration.BaseCfg;
|
import com.nis.domain.configuration.BaseCfg;
|
||||||
import com.nis.domain.configuration.CachePolicyUserRegion;
|
import com.nis.domain.configuration.BaseStringCfg;
|
||||||
import com.nis.domain.configuration.CfgIndexInfo;
|
import com.nis.domain.configuration.CfgIndexInfo;
|
||||||
import com.nis.domain.configuration.ObjGroupCfg;
|
import com.nis.domain.configuration.ObjGroupCfg;
|
||||||
|
import com.nis.domain.configuration.template.ObjGroupListTemplate;
|
||||||
import com.nis.exceptions.CallExternalProceduresException;
|
import com.nis.exceptions.CallExternalProceduresException;
|
||||||
import com.nis.exceptions.MaatConvertException;
|
import com.nis.exceptions.MaatConvertException;
|
||||||
import com.nis.util.Constants;
|
import com.nis.exceptions.ServiceException;
|
||||||
import com.nis.util.DictUtils;
|
import com.nis.util.*;
|
||||||
import com.nis.util.LogUtils;
|
import com.nis.util.excel.ImportBigExcel;
|
||||||
import com.nis.util.StringUtil;
|
|
||||||
import com.nis.web.controller.BaseController;
|
import com.nis.web.controller.BaseController;
|
||||||
import com.nis.web.security.UserUtils;
|
import com.nis.web.security.UserUtils;
|
||||||
import com.nis.web.service.configuration.ObjectGroupService;
|
import com.nis.web.service.configuration.ObjectGroupService;
|
||||||
@@ -26,21 +28,18 @@ import org.springframework.beans.BeanUtils;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.Model;
|
import org.springframework.ui.Model;
|
||||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
|
||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
|
||||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.concurrent.BlockingQueue;
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
@RequestMapping("${adminPath}/objgroup")
|
@RequestMapping("${adminPath}/objgroup")
|
||||||
public class ObjectGroupController extends BaseController {
|
public class ObjectGroupController extends BaseController {
|
||||||
@Autowired
|
|
||||||
private ObjectGroupService objectGroupService;
|
|
||||||
@RequestMapping(value = { "/list" })
|
@RequestMapping(value = { "/list" })
|
||||||
public String list(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, HttpServletRequest request,
|
public String list(Model model, @ModelAttribute("cfg") CfgIndexInfo cfg, HttpServletRequest request,
|
||||||
HttpServletResponse response){
|
HttpServletResponse response){
|
||||||
@@ -213,15 +212,15 @@ public class ObjectGroupController extends BaseController {
|
|||||||
List<BaseCfg> baseCfgList=new ArrayList<>();
|
List<BaseCfg> baseCfgList=new ArrayList<>();
|
||||||
for (CfgIndexInfo cfg : list) {
|
for (CfgIndexInfo cfg : list) {
|
||||||
if(cfg.getUserRegion()!=null){
|
if(cfg.getUserRegion()!=null){
|
||||||
for (Object val:cfg.getUserRegion().values()) {
|
for (Object val:cfg.getUserRegion().values()) {
|
||||||
if(StringUtils.isNotBlank(val.toString())){
|
if(StringUtils.isNotBlank(val.toString())){
|
||||||
if(val.toString().startsWith(",")){
|
if(val.toString().startsWith(",")){
|
||||||
serviceGroupIds.append(val.toString().substring(1));
|
serviceGroupIds.append(val.toString().substring(1));
|
||||||
}else{
|
}else{
|
||||||
serviceGroupIds.append(val.toString());
|
serviceGroupIds.append(val.toString());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
BaseCfg baseCfg=new BaseCfg();
|
BaseCfg baseCfg=new BaseCfg();
|
||||||
BeanUtils.copyProperties(cfg, baseCfg);
|
BeanUtils.copyProperties(cfg, baseCfg);
|
||||||
@@ -242,7 +241,7 @@ public class ObjectGroupController extends BaseController {
|
|||||||
}
|
}
|
||||||
public List getDataList(Page searchPage
|
public List getDataList(Page searchPage
|
||||||
,CfgIndexInfo searchCfg
|
,CfgIndexInfo searchCfg
|
||||||
){
|
){
|
||||||
BaseCfg baseCfg=new BaseCfg<>();
|
BaseCfg baseCfg=new BaseCfg<>();
|
||||||
if(!StringUtil.isEmpty(searchCfg)) {
|
if(!StringUtil.isEmpty(searchCfg)) {
|
||||||
BeanUtils.copyProperties(searchCfg, baseCfg);
|
BeanUtils.copyProperties(searchCfg, baseCfg);
|
||||||
@@ -438,4 +437,156 @@ public class ObjectGroupController extends BaseController {
|
|||||||
LogUtils.saveLog(request, null, e, null);
|
LogUtils.saveLog(request, null, e, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 批量审核
|
||||||
|
* @param page
|
||||||
|
* @param auditType
|
||||||
|
* @param entity
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public void auditAll(Page page,Integer auditType,CfgIndexInfo entity)throws Exception {
|
||||||
|
long start=System.currentTimeMillis();
|
||||||
|
page.setOrderBy("");
|
||||||
|
page.setPageSize(Constants.MAAT_JSON_SEND_SIZE);
|
||||||
|
page.setPageNo(1);
|
||||||
|
page.setLastPage(false);
|
||||||
|
//携带审核状态信息的BaseCfg
|
||||||
|
BaseCfg auditBatchCfg=new BaseCfg();
|
||||||
|
//携带审核条件的BaseCfg
|
||||||
|
CfgIndexInfo searchCfg=new CfgIndexInfo();
|
||||||
|
if(entity != null && (entity instanceof CfgIndexInfo)) {
|
||||||
|
BeanUtils.copyProperties(entity, auditBatchCfg);
|
||||||
|
BeanUtils.copyProperties(entity, searchCfg);
|
||||||
|
}
|
||||||
|
auditType = (Integer)Reflections.invokeGetter(entity, "isAudit");
|
||||||
|
|
||||||
|
//全部审核通过,只查询当前条件下的所有未审核的配置 -批量审核通过/不通过
|
||||||
|
if(auditType.equals(1) || auditType.equals(2)) {
|
||||||
|
if(auditType.equals(1)) {
|
||||||
|
auditBatchCfg.setIsAudit(1);
|
||||||
|
auditBatchCfg.setIsValid(1);
|
||||||
|
}else {
|
||||||
|
auditBatchCfg.setIsAudit(2);
|
||||||
|
auditBatchCfg.setIsValid(0);
|
||||||
|
}
|
||||||
|
auditBatchCfg.setAuditTime(new Date());
|
||||||
|
auditBatchCfg.setAuditorId(UserUtils.getUser().getId());
|
||||||
|
}else {
|
||||||
|
|
||||||
|
auditBatchCfg.setIsAudit(3);
|
||||||
|
auditBatchCfg.setIsValid(0);
|
||||||
|
auditBatchCfg.setAuditTime(new Date());
|
||||||
|
auditBatchCfg.setAuditorId(UserUtils.getUser().getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
ServiceConfigTemplateUtil serviceTemplate = new ServiceConfigTemplateUtil();
|
||||||
|
Integer functionId=0;
|
||||||
|
if(auditBatchCfg != null && !StringUtil.isEmpty(auditBatchCfg.getFunctionId())) {
|
||||||
|
functionId=auditBatchCfg.getFunctionId();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
List<Map<String,Object>> serviceList = serviceTemplate.getServiceListByFunctionId(functionId);
|
||||||
|
for(Map<String,Object> service:serviceList){
|
||||||
|
String tableNameXml = service.get("tableName").toString(); // 获取业务主配置表
|
||||||
|
String serviceTypeXml = service.get("serviceType").toString(); // 业务类型 1maat 2callback
|
||||||
|
String classNameXml = service.get("className").toString(); // 主配置Java类
|
||||||
|
String serviceIdXml = service.get("id").toString(); // service字典表 service_id字段
|
||||||
|
String serviceIds=service.get("serviceIds").toString();
|
||||||
|
auditBatchCfg.setServiceId(Integer.valueOf(serviceIdXml));
|
||||||
|
auditBatchCfg.setTableName(tableNameXml);
|
||||||
|
//searchCfg.setServiceId(Integer.valueOf(serviceIdXml));
|
||||||
|
searchCfg.setTableName(tableNameXml);
|
||||||
|
|
||||||
|
if("1".equals(serviceTypeXml)){//maat类配置
|
||||||
|
if(StringUtils.isNotBlank(serviceIds)) {//公共分组
|
||||||
|
// 存放域配置类型 及 对应表名
|
||||||
|
Map<Integer,List<Map<String,Object>>> childrenCfgMap=new HashMap<>();
|
||||||
|
Map<Integer,List<Map<String,Object>>> childrenUserRegionMap=new HashMap<>();
|
||||||
|
for(String _serviceId:serviceIds.split(",")){
|
||||||
|
if(StringUtils.isNotBlank(_serviceId)){
|
||||||
|
Map<String,Object> subService=serviceTemplate.getServiceListByServiceId(Integer.parseInt(_serviceId)).get(0);
|
||||||
|
childrenCfgMap.put(Integer.parseInt(_serviceId),(List<Map<String,Object>>)subService.get("cfgList"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(childrenCfgMap.size()>0){
|
||||||
|
for(Map.Entry e:childrenCfgMap.entrySet()){
|
||||||
|
boolean hasData = true;
|
||||||
|
while(hasData){
|
||||||
|
page.setPageNo(1);
|
||||||
|
page.setLastPage(false);
|
||||||
|
searchCfg.setServiceId(Integer.parseInt(e.getKey().toString()));
|
||||||
|
auditBatchCfg.setServiceId(Integer.parseInt(e.getKey().toString()));
|
||||||
|
List<CfgIndexInfo> list = getDataList(page,searchCfg,null,null,null); // 通过ServiceId获取cfg_index_info主配置表数据
|
||||||
|
if(!StringUtil.isEmpty(list)){
|
||||||
|
//配置生效处理 复用全量下发
|
||||||
|
if(auditBatchCfg.getIsAudit().equals(1)) {
|
||||||
|
hasData = configSynchronizationService.auditObjGroupListMaatData(childrenCfgMap,childrenUserRegionMap,page,auditBatchCfg,list,hasData,true);
|
||||||
|
}else {
|
||||||
|
List<BaseCfg> BaseCfgList=new ArrayList<>();
|
||||||
|
if(!StringUtil.isEmpty(list)) {
|
||||||
|
for (CfgIndexInfo cfg : list) {
|
||||||
|
BaseCfg baseCfg=new BaseCfg();
|
||||||
|
BeanUtils.copyProperties(cfg, baseCfg);
|
||||||
|
BaseCfgList.add(baseCfg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(auditBatchCfg.getIsAudit().equals(2)) {// 配置批量审核不通过
|
||||||
|
hasData = commonPolicyService.batchUnApproveObjGroupListatData(page, auditBatchCfg, BaseCfgList, hasData);
|
||||||
|
}else {// 配置失效处理 批量处理
|
||||||
|
hasData = commonPolicyService.auditObjGroupListMaatData(tableNameXml, page, auditBatchCfg, BaseCfgList, hasData);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
hasData = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//批量审核通过时,如果没有携带isValid检索条件,返回界面需要将isValid置为null
|
||||||
|
if(!StringUtil.isEmpty(entity)) {
|
||||||
|
BaseCfg base=(BaseCfg)entity ;
|
||||||
|
base.setBatchAuditValue("");
|
||||||
|
base.setBatchValidValue("");
|
||||||
|
//配置目标状态:1 1 生效,isAudit条件置为1,有selType条件,且不是isValid不改,没有sel改为isValid并且为1
|
||||||
|
if(base.getIsAudit()==1 && base.getIsValid()==1){
|
||||||
|
base.setIsAudit(1);
|
||||||
|
if(!StringUtil.isEmpty(base.getSeltype()) && !base.getSeltype().equals("isValid")) {
|
||||||
|
base.setIsValid(null);
|
||||||
|
}else{
|
||||||
|
base.setIsValid(1);
|
||||||
|
base.setSeltype("isValid");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//配置目标状态:2 0 不通过,isAudit条件置为2,有selType条件,且不是isValid不改,没有sel改为isValid并且为0
|
||||||
|
if(base.getIsAudit()==2 && base.getIsValid()==0){
|
||||||
|
base.setIsAudit(2);
|
||||||
|
if(!StringUtil.isEmpty(base.getSeltype()) && !base.getSeltype().equals("isValid")) {
|
||||||
|
base.setIsValid(null);
|
||||||
|
}else{
|
||||||
|
base.setIsValid(0);
|
||||||
|
base.setSeltype("isValid");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//配置目标状态:3 0 取消
|
||||||
|
if(base.getIsAudit()==3 && base.getIsValid()==0){
|
||||||
|
base.setIsAudit(3);
|
||||||
|
if(!StringUtil.isEmpty(base.getSeltype()) && !base.getSeltype().equals("isValid")) {
|
||||||
|
base.setIsValid(null);
|
||||||
|
}else{
|
||||||
|
base.setIsValid(0);
|
||||||
|
base.setSeltype("isValid");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
BeanUtils.copyProperties(base, entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
long end=System.currentTimeMillis();
|
||||||
|
logger.warn("配置批量生效/失效耗时:"+(end-start));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1110,16 +1110,29 @@
|
|||||||
SELECT
|
SELECT
|
||||||
<include refid="ConfigIndex_Column" />
|
<include refid="ConfigIndex_Column" />
|
||||||
FROM cfg_index_info a
|
FROM cfg_index_info a
|
||||||
where a.common_group_ids like concat('%,',#{groupIds,jdbcType=VARCHAR},',%')
|
<trim prefix="WHERE" prefixOverrides="AND">
|
||||||
<if test="functionId!=null" >
|
<if test="groupIds!=null">
|
||||||
and function_id=#{functionId,jdbcType=INTEGER}
|
AND (
|
||||||
</if>
|
<foreach collection="groupIds.split(',')" index="index" item="item" >
|
||||||
<if test="isValid!=null" >
|
<if test="index==0">
|
||||||
and is_valid=#{isValid,jdbcType=INTEGER}
|
a.common_group_ids like concat('%,',#{item,jdbcType=INTEGER},',%')
|
||||||
</if>
|
</if>
|
||||||
<if test="isValid==null" >
|
<if test="index!=0">
|
||||||
and is_valid !=-1
|
OR a.common_group_ids like concat('%,',#{item,jdbcType=INTEGER},',%')
|
||||||
</if>
|
</if>
|
||||||
|
</foreach>
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test="functionId!=null" >
|
||||||
|
AND function_id=#{functionId,jdbcType=INTEGER}
|
||||||
|
</if>
|
||||||
|
<if test="isValid!=null" >
|
||||||
|
AND is_valid=#{isValid,jdbcType=INTEGER}
|
||||||
|
</if>
|
||||||
|
<if test="isValid==null" >
|
||||||
|
AND is_valid !=-1
|
||||||
|
</if>
|
||||||
|
</trim>
|
||||||
</select>
|
</select>
|
||||||
<select id="getObjGroupList" resultMap="ObjMap" parameterType="com.nis.domain.configuration.ObjGroupCfg" >
|
<select id="getObjGroupList" resultMap="ObjMap" parameterType="com.nis.domain.configuration.ObjGroupCfg" >
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -3332,30 +3332,24 @@ public abstract class BaseService {
|
|||||||
//遍历,获取需要下发配置的组
|
//遍历,获取需要下发配置的组
|
||||||
StringBuffer realGroupIds=new StringBuffer();
|
StringBuffer realGroupIds=new StringBuffer();
|
||||||
for(PolicyGroupInfo policyGroupInfo:policyGroupInfos){
|
for(PolicyGroupInfo policyGroupInfo:policyGroupInfos){
|
||||||
//删除的时候
|
|
||||||
if(policyGroupInfo.getUdFlag().equals(2)){
|
//if(policyGroupInfo.getUdFlag().equals(2)){
|
||||||
realGroupIds.append(policyGroupInfo.getServiceGroupId()).append(",");
|
realGroupIds.append(policyGroupInfo.getServiceGroupId()).append(",");
|
||||||
|
//}
|
||||||
|
//所有域都删除的时候
|
||||||
|
if(policyGroupInfo.getUdFlag().equals(0)){
|
||||||
if(policyGroupInfo.getGroupType().equals(Constants.IP_OBJ_GROUP_TYPE)){
|
if(policyGroupInfo.getGroupType().equals(Constants.IP_OBJ_GROUP_TYPE)){
|
||||||
if(policyGroupInfo.getIsValid().equals(0)){
|
ipDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
||||||
ipDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if(policyGroupInfo.getGroupType().equals(Constants.URL_OBJ_GROUP_TYPE)){
|
if(policyGroupInfo.getGroupType().equals(Constants.URL_OBJ_GROUP_TYPE)){
|
||||||
if(policyGroupInfo.getIsValid().equals(0)){
|
urlDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
||||||
urlDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if(policyGroupInfo.getGroupType().equals(Constants.SUBID_OBJ_GROUP_TYPE)){
|
if(policyGroupInfo.getGroupType().equals(Constants.SUBID_OBJ_GROUP_TYPE)){
|
||||||
if(policyGroupInfo.getIsValid().equals(0)){
|
subIdDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
||||||
subIdDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if(policyGroupInfo.getGroupType().equals(Constants.DOMAIN_OBJ_GROUP_TYPE)){
|
if(policyGroupInfo.getGroupType().equals(Constants.DOMAIN_OBJ_GROUP_TYPE)){
|
||||||
if(policyGroupInfo.getIsValid().equals(0)){
|
domainDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
||||||
domainDeletedGroups.add(policyGroupInfo.getServiceGroupId().toString());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(realGroupIds.toString().endsWith(",")){
|
if(realGroupIds.toString().endsWith(",")){
|
||||||
@@ -3363,6 +3357,10 @@ public abstract class BaseService {
|
|||||||
}
|
}
|
||||||
List<CfgIndexInfo> toUpdateCfgIndexInfos=new ArrayList<>();
|
List<CfgIndexInfo> toUpdateCfgIndexInfos=new ArrayList<>();
|
||||||
List<CfgIndexInfo> toCancelCfgIndexInfos=new ArrayList<>();
|
List<CfgIndexInfo> toCancelCfgIndexInfos=new ArrayList<>();
|
||||||
|
//没有
|
||||||
|
if(StringUtils.isBlank(realGroupIds.toString())){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
//查询cfg_index_info表,获取所有用到了这个group_id的非删除配置
|
//查询cfg_index_info表,获取所有用到了这个group_id的非删除配置
|
||||||
List<CfgIndexInfo> cfgIndexInfos=commonPolicyDao.getObjGroupListByGroupIds(realGroupIds.toString(),null,null);
|
List<CfgIndexInfo> cfgIndexInfos=commonPolicyDao.getObjGroupListByGroupIds(realGroupIds.toString(),null,null);
|
||||||
|
|
||||||
@@ -3404,10 +3402,14 @@ public abstract class BaseService {
|
|||||||
if(CollectionUtils.isEmpty(cfgIndexInfo.getIpCommGroupCfgList())&&
|
if(CollectionUtils.isEmpty(cfgIndexInfo.getIpCommGroupCfgList())&&
|
||||||
CollectionUtils.isEmpty(cfgIndexInfo.getUrlCommGroupList())&&CollectionUtils.isEmpty(cfgIndexInfo.getScriberIdCommGroupList())&&
|
CollectionUtils.isEmpty(cfgIndexInfo.getUrlCommGroupList())&&CollectionUtils.isEmpty(cfgIndexInfo.getScriberIdCommGroupList())&&
|
||||||
CollectionUtils.isEmpty(cfgIndexInfo.getDomainCommGroupList())){
|
CollectionUtils.isEmpty(cfgIndexInfo.getDomainCommGroupList())){
|
||||||
cfgIndexInfo.setIsValid(Constants.VALID_NO);
|
|
||||||
cfgIndexInfo.setIsAudit(Constants.AUDIT_NOT_YES);
|
|
||||||
cfgIndexInfo.setCommonGroupIds("");
|
cfgIndexInfo.setCommonGroupIds("");
|
||||||
toCancelCfgIndexInfos.add(cfgIndexInfo);
|
if(cfgIndexInfo.getIsValid()==Constants.VALID_NO){//未生效
|
||||||
|
toUpdateCfgIndexInfos.add(cfgIndexInfo);
|
||||||
|
}else{//生效
|
||||||
|
cfgIndexInfo.setIsValid(Constants.VALID_NO);
|
||||||
|
cfgIndexInfo.setIsAudit(Constants.AUDIT_NOT_YES);
|
||||||
|
toCancelCfgIndexInfos.add(cfgIndexInfo);
|
||||||
|
}
|
||||||
}else if(!oldCommonGroupIds.equals(cfgIndexInfo.getCommonGroupIds())){
|
}else if(!oldCommonGroupIds.equals(cfgIndexInfo.getCommonGroupIds())){
|
||||||
toUpdateCfgIndexInfos.add(cfgIndexInfo);
|
toUpdateCfgIndexInfos.add(cfgIndexInfo);
|
||||||
//commonPolicyDao.updateCfgIndexCommonGroupIds(cfgIndexInfo);
|
//commonPolicyDao.updateCfgIndexCommonGroupIds(cfgIndexInfo);
|
||||||
@@ -3454,14 +3456,8 @@ public abstract class BaseService {
|
|||||||
if(service.containsKey("userRegionList")){
|
if(service.containsKey("userRegionList")){
|
||||||
//Map<String,Object> userregionMap=new HashMap<>();
|
//Map<String,Object> userregionMap=new HashMap<>();
|
||||||
//userRegionList=(List<Map<String, Object>>) service.get("userRegionList");
|
//userRegionList=(List<Map<String, Object>>) service.get("userRegionList");
|
||||||
if(serviceId.equals(576)){
|
String _userregion=ConfigConvertUtil.generateCommonGroupDefaultUserRegion(interceptUserRegionMap,serviceId);
|
||||||
String _userregion=ConfigConvertUtil.generateCommonGroupDefaultUserRegion(interceptUserRegionMap,serviceId);
|
userRegion.append(_userregion);
|
||||||
userRegion.append(_userregion);
|
|
||||||
}else if(serviceId.equals(512)){
|
|
||||||
cfgIndexInfo.setAction(2);
|
|
||||||
String _userregion=ConfigConvertUtil.generateCommonGroupDefaultUserRegion(interceptUserRegionMap,serviceId);
|
|
||||||
userRegion.append(_userregion);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
compileIds.add(cfgIndexInfo.getCompileId());
|
compileIds.add(cfgIndexInfo.getCompileId());
|
||||||
@@ -3539,7 +3535,7 @@ public abstract class BaseService {
|
|||||||
maatBean.setVersion(Constants.MAAT_VERSION);
|
maatBean.setVersion(Constants.MAAT_VERSION);
|
||||||
maatBean.setOpAction(Constants.UPDATE_ACTION);
|
maatBean.setOpAction(Constants.UPDATE_ACTION);
|
||||||
}
|
}
|
||||||
}else if(cfgIndexInfo.getIsValid().equals(Constants.VALID_NO)){//生效的配置置为了失效
|
}else if(cfgIndexInfo.getIsValid().equals(Constants.VALID_NO)&&cfgIndexInfo.getIsAudit().equals(Constants.AUDIT_NOT_YES)){//生效的配置 置为了失效
|
||||||
maatCfg.setCompileId(cfgIndexInfo.getCompileId());
|
maatCfg.setCompileId(cfgIndexInfo.getCompileId());
|
||||||
maatCfg.setServiceId(cfgIndexInfo.getServiceId());
|
maatCfg.setServiceId(cfgIndexInfo.getServiceId());
|
||||||
maatCfg.setIsValid(0);//无效
|
maatCfg.setIsValid(0);//无效
|
||||||
|
|||||||
@@ -203,6 +203,87 @@ public class CommonPolicyService extends CrudService<WebsiteCfgDao, CfgIndexInfo
|
|||||||
}
|
}
|
||||||
return hasData;
|
return hasData;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* ObjGroupList配置批量失效
|
||||||
|
* @param tableName
|
||||||
|
* @param page
|
||||||
|
* @param entity
|
||||||
|
* @param list
|
||||||
|
* @param hasData
|
||||||
|
* @return
|
||||||
|
* @throws NoSuchFieldException
|
||||||
|
* @throws SecurityException
|
||||||
|
* @throws IllegalArgumentException
|
||||||
|
* @throws IllegalAccessException
|
||||||
|
*/
|
||||||
|
public boolean auditObjGroupListMaatData(String tableName,Page page,
|
||||||
|
BaseCfg entity,
|
||||||
|
List<BaseCfg> list,
|
||||||
|
boolean hasData)throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException{
|
||||||
|
long start=System.currentTimeMillis();
|
||||||
|
long end=System.currentTimeMillis();
|
||||||
|
ToMaatBean maatBean;
|
||||||
|
MaatCfg maatCfg;
|
||||||
|
List<MaatCfg> configCompileList;
|
||||||
|
|
||||||
|
maatBean = new ToMaatBean();
|
||||||
|
configCompileList = new ArrayList();
|
||||||
|
List<Integer> compileIds = new ArrayList();
|
||||||
|
List<String> spoofingPoolCfgIds = new ArrayList();
|
||||||
|
for(BaseCfg cfg:list){
|
||||||
|
compileIds.add(cfg.getCompileId());
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!StringUtil.isEmpty(compileIds) && !StringUtil.isEmpty(entity.getTableName())) {
|
||||||
|
List auditHttpCompileIds= new ArrayList();
|
||||||
|
List deleteHttpCompileIds= new ArrayList();
|
||||||
|
if(!StringUtil.isEmpty(auditHttpCompileIds)) {
|
||||||
|
commonPolicyDao.auditCfgBatch("cfg_index_info", entity,auditHttpCompileIds,null);
|
||||||
|
commonPolicyDao.auditCfgBatch("http_url_cfg", entity,auditHttpCompileIds,null);
|
||||||
|
}
|
||||||
|
if(!StringUtil.isEmpty(deleteHttpCompileIds)) {
|
||||||
|
commonPolicyDao.deleteHttpUrlCfg("cfg_index_info", entity,deleteHttpCompileIds);
|
||||||
|
commonPolicyDao.deleteHttpUrlCfg("http_url_cfg", entity,deleteHttpCompileIds);
|
||||||
|
}
|
||||||
|
commonPolicyDao.auditCfgBatch( entity.getTableName(), entity,compileIds,null);
|
||||||
|
//更新各配置定时任务信息
|
||||||
|
handelScheduleCfg(list, entity.getTableName(),entity);
|
||||||
|
}
|
||||||
|
commonPolicyDao.auditCfgBatch( tableName, entity,compileIds,null);
|
||||||
|
|
||||||
|
for(BaseCfg cfg:list){
|
||||||
|
maatCfg = new MaatCfg();
|
||||||
|
maatCfg.setCompileId(cfg.getCompileId());
|
||||||
|
maatCfg.setServiceId(cfg.getServiceId());
|
||||||
|
maatCfg.setIsValid(0);//无效
|
||||||
|
configCompileList.add(maatCfg);
|
||||||
|
}
|
||||||
|
page.setList(list);
|
||||||
|
if(page.isLastPage()){
|
||||||
|
hasData = false;
|
||||||
|
}
|
||||||
|
if(!StringUtil.isEmpty(configCompileList.size())){
|
||||||
|
maatBean.setConfigCompileList(configCompileList);
|
||||||
|
maatBean.setAuditTime(entity.getAuditTime());
|
||||||
|
maatBean.setCreatorName(entity.getCurrentUser().getName());
|
||||||
|
maatBean.setVersion(Constants.MAAT_VERSION);
|
||||||
|
maatBean.setOpAction(Constants.UPDATE_ACTION);
|
||||||
|
//调用服务接口取消配置
|
||||||
|
String json=gsonToJson(maatBean);
|
||||||
|
if(!StringUtil.isEmpty(list)) {
|
||||||
|
logger.warn("批量配置取消("+page.getPageNo()+"次)个数:"+list.size());
|
||||||
|
}
|
||||||
|
//调用服务接口下发配置
|
||||||
|
logger.warn("Maat配置批量失效-下发:start()");
|
||||||
|
//logger.warn("Maat配置批量失效-下发:start()"+json);
|
||||||
|
start=System.currentTimeMillis();
|
||||||
|
ToMaatResult result = ConfigServiceUtil.put(json,1);
|
||||||
|
end=System.currentTimeMillis();
|
||||||
|
logger.warn("配置取消配置响应信息:"+result.getMsg());
|
||||||
|
logger.warn("Maat配置批量失效-下发:end("+(end-start)+")");
|
||||||
|
}
|
||||||
|
return hasData;
|
||||||
|
}
|
||||||
public List<IpPortCfg> getIpDropList(String tabName,List compileIds){
|
public List<IpPortCfg> getIpDropList(String tabName,List compileIds){
|
||||||
return synchronizationDao.getIpDropList(tabName, compileIds);
|
return synchronizationDao.getIpDropList(tabName, compileIds);
|
||||||
}
|
}
|
||||||
@@ -597,6 +678,40 @@ public class CommonPolicyService extends CrudService<WebsiteCfgDao, CfgIndexInfo
|
|||||||
}
|
}
|
||||||
return hasData;
|
return hasData;
|
||||||
|
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* ObjGroupList配置批量审核不通过
|
||||||
|
* @param page
|
||||||
|
* @param entity // 保存要审核的状态类
|
||||||
|
* @param list // 主配置表数据(在调用前查出)
|
||||||
|
* @param hasData // 标识是否还有数据
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public boolean batchUnApproveObjGroupListatData(Page page, BaseCfg entity,
|
||||||
|
List<BaseCfg> list, boolean hasData) {
|
||||||
|
|
||||||
|
// 1.获取所有配置的编译ID
|
||||||
|
List<Integer> compileIds = new ArrayList();
|
||||||
|
List<String> spoofingPoolCfgIds = new ArrayList();
|
||||||
|
for(BaseCfg cfg:list){
|
||||||
|
compileIds.add(cfg.getCompileId());
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2.更新配置审核状态(主表)
|
||||||
|
if(!StringUtil.isEmpty(compileIds) && !StringUtil.isEmpty(entity.getTableName())) {
|
||||||
|
commonPolicyDao.auditCfgBatch( entity.getTableName(), entity,compileIds,null); // 批量审核并修改配置审核状态(主表)
|
||||||
|
//更新各配置定时任务信息
|
||||||
|
handelScheduleCfg(list, entity.getTableName(),entity);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 4.判断是否是当前检索条件下最后一页数据 并返回结果
|
||||||
|
page.setList(list);
|
||||||
|
if(page.isLastPage()){
|
||||||
|
hasData = false;
|
||||||
|
}
|
||||||
|
return hasData;
|
||||||
|
|
||||||
}
|
}
|
||||||
public boolean batchDeleteMaatData(List<Map<String, Object>> cfgList, Page page, BaseCfg entity,
|
public boolean batchDeleteMaatData(List<Map<String, Object>> cfgList, Page page, BaseCfg entity,
|
||||||
List<BaseCfg> list, boolean hasData) {
|
List<BaseCfg> list, boolean hasData) {
|
||||||
|
|||||||
@@ -178,15 +178,21 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 处理ntc业务maat类配置
|
* 处理ntc业务maat类配置
|
||||||
* @param serviceId
|
* @param cfgList
|
||||||
|
* @param userRegionList
|
||||||
|
* @param page
|
||||||
|
* @param entity
|
||||||
* @param request
|
* @param request
|
||||||
* @param response
|
* @param response
|
||||||
* @throws SecurityException
|
* @param isUpdateCfg
|
||||||
* @throws NoSuchFieldException
|
* @param tableName
|
||||||
* @throws IllegalAccessException
|
* @throws NoSuchFieldException
|
||||||
* @throws IllegalArgumentException
|
* @throws SecurityException
|
||||||
|
* @throws IllegalArgumentException
|
||||||
|
* @throws IllegalAccessException
|
||||||
*/
|
*/
|
||||||
public void handleNtcMaatData(List<Map<String,Object>>cfgList,List<Map<String,Object>>userRegionList,
|
public void handleNtcMaatData(List<Map<String,Object>>cfgList,List<Map<String,Object>>userRegionList,
|
||||||
Page<T> page,BaseCfg entity,HttpServletRequest request,HttpServletResponse response,
|
Page<T> page,BaseCfg entity,HttpServletRequest request,HttpServletResponse response,
|
||||||
@@ -2280,8 +2286,6 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
}
|
}
|
||||||
ind++;
|
ind++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
logger.info("全量同步未知业务");
|
logger.info("全量同步未知业务");
|
||||||
hasData = false;
|
hasData = false;
|
||||||
@@ -2379,7 +2383,7 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
cfg.setDomainCommGroupList(commIds);
|
cfg.setDomainCommGroupList(commIds);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
compileIds.add(cfg.getCompileId());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -2414,7 +2418,7 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Intercept Policy、http(s) 监测 、http(s) 白名单
|
//Intercept Policy、http(s) 监测 、http(s) 白名单
|
||||||
if("HTTPS".equalsIgnoreCase(entity.getUserRegion1())||"INTERCEPT".equalsIgnoreCase(entity.getUserRegion1())&&userRegion.toString().length()==0) {
|
if("HTTPS".equalsIgnoreCase(cfg.getUserRegion1())||"INTERCEPT".equalsIgnoreCase(cfg.getUserRegion1())&&userRegion.toString().length()==0) {
|
||||||
userRegion.append("{}");
|
userRegion.append("{}");
|
||||||
}
|
}
|
||||||
//子配置
|
//子配置
|
||||||
@@ -2426,6 +2430,7 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
if(CollectionUtils.isNotEmpty(cfg.getIpCommGroupCfgList())){
|
if(CollectionUtils.isNotEmpty(cfg.getIpCommGroupCfgList())){
|
||||||
IpPortCfg _cfg = new IpPortCfg();
|
IpPortCfg _cfg = new IpPortCfg();
|
||||||
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
|
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
|
||||||
|
_cfg.setIsValid(entity.getIsValid());
|
||||||
Map<String,List> map = ConfigConvertUtil.objGroupCfgConvert(ipRegionList,cfg.getIpCommGroupCfgList(),1,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
Map<String,List> map = ConfigConvertUtil.objGroupCfgConvert(ipRegionList,cfg.getIpCommGroupCfgList(),1,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
||||||
groupRelationList=map.get("groupList");
|
groupRelationList=map.get("groupList");
|
||||||
ipRegionList=map.get("dstList");
|
ipRegionList=map.get("dstList");
|
||||||
@@ -2438,6 +2443,7 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
if(CollectionUtils.isNotEmpty(cfg.getUrlCommGroupList())){
|
if(CollectionUtils.isNotEmpty(cfg.getUrlCommGroupList())){
|
||||||
CommonStringCfg _cfg = new CommonStringCfg();
|
CommonStringCfg _cfg = new CommonStringCfg();
|
||||||
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
|
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
|
||||||
|
_cfg.setIsValid(entity.getIsValid());
|
||||||
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getUrlCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getUrlCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
||||||
groupRelationList=map.get("groupList");
|
groupRelationList=map.get("groupList");
|
||||||
strRegionList=map.get("dstList");
|
strRegionList=map.get("dstList");
|
||||||
@@ -2446,7 +2452,7 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
if(CollectionUtils.isNotEmpty(cfg.getScriberIdCommGroupList())){
|
if(CollectionUtils.isNotEmpty(cfg.getScriberIdCommGroupList())){
|
||||||
CommonStringCfg _cfg = new CommonStringCfg();
|
CommonStringCfg _cfg = new CommonStringCfg();
|
||||||
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
|
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
|
||||||
|
_cfg.setIsValid(entity.getIsValid());
|
||||||
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getScriberIdCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getScriberIdCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
||||||
groupRelationList=map.get("groupList");
|
groupRelationList=map.get("groupList");
|
||||||
strRegionList=map.get("dstList");
|
strRegionList=map.get("dstList");
|
||||||
@@ -2456,7 +2462,7 @@ public class ConfigSynchronizationService extends BaseService{
|
|||||||
if(CollectionUtils.isNotEmpty(cfg.getDomainCommGroupList())){
|
if(CollectionUtils.isNotEmpty(cfg.getDomainCommGroupList())){
|
||||||
CommonStringCfg _cfg = new CommonStringCfg();
|
CommonStringCfg _cfg = new CommonStringCfg();
|
||||||
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId",});
|
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId",});
|
||||||
|
_cfg.setIsValid(entity.getIsValid());
|
||||||
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getDomainCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getDomainCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
|
||||||
groupRelationList=map.get("groupList");
|
groupRelationList=map.get("groupList");
|
||||||
strRegionList=map.get("dstList");
|
strRegionList=map.get("dstList");
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.nis.web.service.configuration;
|
package com.nis.web.service.configuration;
|
||||||
|
|
||||||
|
import com.nis.domain.FunctionRegionDict;
|
||||||
import com.nis.domain.FunctionServiceDict;
|
import com.nis.domain.FunctionServiceDict;
|
||||||
import com.nis.domain.Page;
|
import com.nis.domain.Page;
|
||||||
import com.nis.domain.basics.*;
|
import com.nis.domain.basics.*;
|
||||||
@@ -9,9 +10,7 @@ import com.nis.domain.maat.ToMaatBean;
|
|||||||
import com.nis.domain.maat.ToMaatResult;
|
import com.nis.domain.maat.ToMaatResult;
|
||||||
import com.nis.exceptions.MaatConvertException;
|
import com.nis.exceptions.MaatConvertException;
|
||||||
import com.nis.util.*;
|
import com.nis.util.*;
|
||||||
import com.nis.web.dao.basics.IpCommGroupCfgDao;
|
import com.nis.web.dao.basics.*;
|
||||||
import com.nis.web.dao.basics.PolicyGroupInfoDao;
|
|
||||||
import com.nis.web.dao.basics.UrlCommGroupDao;
|
|
||||||
import com.nis.web.dao.configuration.AreaIpCfgDao;
|
import com.nis.web.dao.configuration.AreaIpCfgDao;
|
||||||
import com.nis.web.dao.configuration.CommonPolicyDao;
|
import com.nis.web.dao.configuration.CommonPolicyDao;
|
||||||
import com.nis.web.dao.configuration.ObjectGroupDao;
|
import com.nis.web.dao.configuration.ObjectGroupDao;
|
||||||
@@ -43,6 +42,10 @@ public class ObjectGroupService extends BaseService {
|
|||||||
private IpCommGroupCfgDao ipCommGroupCfgDao;
|
private IpCommGroupCfgDao ipCommGroupCfgDao;
|
||||||
@Autowired
|
@Autowired
|
||||||
private UrlCommGroupDao urlCommGroupCfgDao;
|
private UrlCommGroupDao urlCommGroupCfgDao;
|
||||||
|
@Autowired
|
||||||
|
private ScriberIdCommGroupDao scriberIdCommGroupDao;
|
||||||
|
@Autowired
|
||||||
|
private DomainCommGroupDao domainCommGroupDao;
|
||||||
public Page getPolicyListList(Page searchPage, CfgIndexInfo searchCfg) {
|
public Page getPolicyListList(Page searchPage, CfgIndexInfo searchCfg) {
|
||||||
// 生成数据权限过滤条件(dsf为dataScopeFilter的简写,在xml中使用 ${sqlMap.dsf}调用权限SQL)
|
// 生成数据权限过滤条件(dsf为dataScopeFilter的简写,在xml中使用 ${sqlMap.dsf}调用权限SQL)
|
||||||
searchCfg.getSqlMap().put("dsf", configScopeFilter(searchCfg.getCurrentUser(),"a"));
|
searchCfg.getSqlMap().put("dsf", configScopeFilter(searchCfg.getCurrentUser(),"a"));
|
||||||
@@ -474,7 +477,10 @@ public class ObjectGroupService extends BaseService {
|
|||||||
}
|
}
|
||||||
//删除之后恢复组的ud_flag
|
//删除之后恢复组的ud_flag
|
||||||
int size = ipCommGroupCfgDao.getCfgInfoByGroupIds(serviceGroupIds.toString());
|
int size = ipCommGroupCfgDao.getCfgInfoByGroupIds(serviceGroupIds.toString());
|
||||||
if(size==0){
|
int size1 = urlCommGroupCfgDao.getCfgInfoByGroupIds(serviceGroupIds.toString());
|
||||||
|
int size2 = scriberIdCommGroupDao.getCfgInfoByGroupIds(serviceGroupIds.toString());
|
||||||
|
int size3 = domainCommGroupDao.getCfgInfoByGroupIds(serviceGroupIds.toString());
|
||||||
|
if((size+size1+size2+size3)==0){
|
||||||
policyGroupInfoDao.updateUdFlag(serviceGroupIds.toString(),0,null);
|
policyGroupInfoDao.updateUdFlag(serviceGroupIds.toString(),0,null);
|
||||||
}else{
|
}else{
|
||||||
policyGroupInfoDao.updateUdFlag(serviceGroupIds.toString(),1,null);
|
policyGroupInfoDao.updateUdFlag(serviceGroupIds.toString(),1,null);
|
||||||
@@ -653,4 +659,7 @@ public class ObjectGroupService extends BaseService {
|
|||||||
page.setList(list);
|
page.setList(list);
|
||||||
return page;
|
return page;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void saveAndSend(FunctionRegionDict regionDict, FunctionServiceDict serviceDict, List<BaseStringCfg<?>> stringCfgs) {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -240,6 +240,9 @@ var delContent = function(contentClassName, addBtnClassName) {
|
|||||||
<c:when test="${service.action eq 16}">
|
<c:when test="${service.action eq 16}">
|
||||||
<spring:message code="block"/>
|
<spring:message code="block"/>
|
||||||
</c:when>
|
</c:when>
|
||||||
|
<c:when test="${service.action eq 1}">
|
||||||
|
<spring:message code="monitor"/>
|
||||||
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
<spring:message code="${service.actionCode }"/>
|
<spring:message code="${service.actionCode }"/>
|
||||||
</c:otherwise>
|
</c:otherwise>
|
||||||
@@ -317,7 +320,7 @@ var delContent = function(contentClassName, addBtnClassName) {
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6 ipGroup">
|
<div class="col-md-6 ipGroup">
|
||||||
<div class="form-group ">
|
<div class="form-group ">
|
||||||
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="ip_group"/></label>
|
<label class="control-label col-md-3"><spring:message code="ip_group"/></label>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<select name="ipGroup" data-live-search="true" class="selectpicker form-control form-control" multiple data-live-search="true">
|
<select name="ipGroup" data-live-search="true" class="selectpicker form-control form-control" multiple data-live-search="true">
|
||||||
<c:forEach items="${ipGroups}" var="ipGroup">
|
<c:forEach items="${ipGroups}" var="ipGroup">
|
||||||
@@ -330,7 +333,7 @@ var delContent = function(contentClassName, addBtnClassName) {
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-md-6 subscribeIdGroup">
|
<div class="col-md-6 subscribeIdGroup">
|
||||||
<div class="form-group ">
|
<div class="form-group ">
|
||||||
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="subscribe_id_group"/></label>
|
<label class="control-label col-md-3"><spring:message code="subscribe_id_group"/></label>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<select name="subscribeIdGroup" data-live-search="true" class="selectpicker form-control form-control " multiple data-live-search="true">
|
<select name="subscribeIdGroup" data-live-search="true" class="selectpicker form-control form-control " multiple data-live-search="true">
|
||||||
<c:forEach items="${subscribeIdGroups}" var="subscribeIdGroup">
|
<c:forEach items="${subscribeIdGroups}" var="subscribeIdGroup">
|
||||||
@@ -346,7 +349,7 @@ var delContent = function(contentClassName, addBtnClassName) {
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6 urlGroup">
|
<div class="col-md-6 urlGroup">
|
||||||
<div class="form-group ">
|
<div class="form-group ">
|
||||||
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="url_group"/></label>
|
<label class="control-label col-md-3"><spring:message code="url_group"/></label>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<select name="urlGroup" data-live-search="true" class="selectpicker form-control form-control " multiple data-live-search="true" >
|
<select name="urlGroup" data-live-search="true" class="selectpicker form-control form-control " multiple data-live-search="true" >
|
||||||
<c:forEach items="${urlGroups}" var="urlGroup">
|
<c:forEach items="${urlGroups}" var="urlGroup">
|
||||||
@@ -359,7 +362,7 @@ var delContent = function(contentClassName, addBtnClassName) {
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-md-6 domainGroup">
|
<div class="col-md-6 domainGroup">
|
||||||
<div class="form-group ">
|
<div class="form-group ">
|
||||||
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="domain_group"/></label>
|
<label class="control-label col-md-3"><spring:message code="domain_group"/></label>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<select name="domainGroup" data-live-search="true" class="selectpicker form-control " multiple data-live-search="true">
|
<select name="domainGroup" data-live-search="true" class="selectpicker form-control " multiple data-live-search="true">
|
||||||
<c:forEach items="${domainGroups}" var="domainGroup">
|
<c:forEach items="${domainGroups}" var="domainGroup">
|
||||||
|
|||||||
@@ -55,18 +55,20 @@
|
|||||||
if($("td[commonGroupIds]")){
|
if($("td[commonGroupIds]")){
|
||||||
var groups=[];
|
var groups=[];
|
||||||
$("td[commonGroupIds]").each(function(){
|
$("td[commonGroupIds]").each(function(){
|
||||||
var json=JSON.parse($(this).attr("commonGroupIds"));
|
if($(this).attr("commonGroupIds")!=""){
|
||||||
if(json.ipGroup){
|
var json=JSON.parse($(this).attr("commonGroupIds"));
|
||||||
groups.push(json.ipGroup.substring(1,json.ipGroup.length-1));
|
if(json.ipGroup){
|
||||||
}
|
groups.push(json.ipGroup.substring(1,json.ipGroup.length-1));
|
||||||
if(json.urlGroup){
|
}
|
||||||
groups.push(json.urlGroup.substring(1,json.urlGroup.length-1));
|
if(json.urlGroup){
|
||||||
}
|
groups.push(json.urlGroup.substring(1,json.urlGroup.length-1));
|
||||||
if(json.subscribeIdGroup){
|
}
|
||||||
groups.push(json.subscribeIdGroup.substring(1,json.subscribeIdGroup.length-1));
|
if(json.subscribeIdGroup){
|
||||||
}
|
groups.push(json.subscribeIdGroup.substring(1,json.subscribeIdGroup.length-1));
|
||||||
if(json.domainGroup){
|
}
|
||||||
groups.push(json.domainGroup.substring(1,json.domainGroup.length-1));
|
if(json.domainGroup){
|
||||||
|
groups.push(json.domainGroup.substring(1,json.domainGroup.length-1));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
if(groups.length>0){
|
if(groups.length>0){
|
||||||
@@ -102,7 +104,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
Reference in New Issue
Block a user