当组为空的时候不审核,修复排序报错

This commit is contained in:
wangxin
2019-06-15 16:53:43 +08:00
parent 10d153c40f
commit 1d0835a563
10 changed files with 77 additions and 31 deletions

View File

@@ -244,7 +244,11 @@ public class SchedulerTaskUtil {
strRegionList=map.get("dstList");
}
BeanUtils.copyProperties(cfg, maatCfg);
maatCfg.setAction(cfg.getAction());
if(cfg.getServiceId().equals(512)){
maatCfg.setAction(2);
}else{
maatCfg.setAction(cfg.getAction());
}
maatCfg.setAuditTime(StringUtil.isEmpty(entity.getAuditTime()) ? cfg.getAuditTime():entity.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);
maatCfg.setStrRegionList(strRegionList);

View File

@@ -2,40 +2,29 @@ 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.Page;
import com.nis.domain.basics.PolicyGroupInfo;
import com.nis.domain.configuration.BaseCfg;
import com.nis.domain.configuration.BaseStringCfg;
import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.configuration.ObjGroupCfg;
import com.nis.domain.configuration.template.ObjGroupListTemplate;
import com.nis.exceptions.CallExternalProceduresException;
import com.nis.exceptions.MaatConvertException;
import com.nis.exceptions.ServiceException;
import com.nis.util.*;
import com.nis.util.excel.ImportBigExcel;
import com.nis.web.controller.BaseController;
import com.nis.web.security.UserUtils;
import com.nis.web.service.configuration.ObjectGroupService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
import java.util.concurrent.BlockingQueue;
@Controller
@RequestMapping("${adminPath}/objgroup")
@@ -261,10 +250,11 @@ public class ObjectGroupController extends BaseController {
RedirectAttributes redirectAttributes,
HttpServletResponse response,
HttpServletRequest request) {
Properties props=this.getMsgProp();
if(!StringUtil.isEmpty(ids)){
CfgIndexInfo entity = new CfgIndexInfo();
String[] idArray = ids.split(",");
StringBuffer tip=new StringBuffer();
for(String id :idArray){
entity = objectGroupService.getObjectGroupCfg(Long.parseLong(id),null);
entity.setIsAudit(isAudit);
@@ -273,8 +263,17 @@ public class ObjectGroupController extends BaseController {
entity.setAuditTime(new Date());
entity.setFunctionId(functionId);
try {
objectGroupService.auditPolicy(entity,isAudit,Constants.INSERT_ACTION);
addMessage(redirectAttributes,"success", "audit_success");
if(StringUtils.isBlank(entity.getCommonGroupIds())){
tip.append(String.format(props.getProperty("no_common_group","The configuration ID of %s does not have an group;"),id));
tip.append("<br/>");
}else{
objectGroupService.auditPolicy(entity,isAudit,Constants.INSERT_ACTION);
}
if(tip.toString().length()>0){
addMessage(redirectAttributes,"success", tip.toString());
}else{
addMessage(redirectAttributes,"success", "audit_success");
}
} catch ( Exception e) {
logger.error("策略对象组下发失败:"+e);
if(e instanceof MaatConvertException) {
@@ -285,6 +284,7 @@ public class ObjectGroupController extends BaseController {
LogUtils.saveLog(request, null, e, null);
}
}
}
}else {
Page<CfgIndexInfo> searchPage=new Page<CfgIndexInfo>(request,response,"r");
@@ -292,8 +292,12 @@ public class ObjectGroupController extends BaseController {
try {
BeanUtils.copyProperties(searchPage, auditPage);
auditAll(auditPage,isValid , cfg);
addMessage(redirectAttributes,"success", "audit_success");
String tip= auditAll(auditPage,isValid , cfg,props);
if(tip.toString().length()>0){
addMessage(redirectAttributes,"success", tip.toString());
}else{
addMessage(redirectAttributes,"success", "audit_success");
}
} catch (Exception e) {
logger.error("策略对象组下发失败:",e);
if(e instanceof MaatConvertException) {
@@ -305,8 +309,8 @@ public class ObjectGroupController extends BaseController {
}
}
return list(model, cfg, request, response);
//无法保存状态
// return list(model, cfg, request, response);
}
return "redirect:" + adminPath +"/objgroup/list?functionId="+functionId;
}
@@ -445,7 +449,8 @@ public class ObjectGroupController extends BaseController {
* @param entity
* @return
*/
public void auditAll(Page page,Integer auditType,CfgIndexInfo entity)throws Exception {
public String auditAll(Page page,Integer auditType,CfgIndexInfo entity,Properties props)throws Exception {
StringBuffer tip=new StringBuffer();
long start=System.currentTimeMillis();
page.setOrderBy("");
page.setPageSize(Constants.MAAT_JSON_SEND_SIZE);
@@ -519,6 +524,12 @@ public class ObjectGroupController extends BaseController {
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主配置表数据
for(CfgIndexInfo info:list){
if(StringUtils.isBlank(info.getCommonGroupIds())){
tip.append(String.format(props.getProperty("no_common_group","The configuration ID of %s does not have an group;"),info.getCompileId()));
tip.append("<br/>");
}
}
if(!StringUtil.isEmpty(list)){
//配置生效处理 复用全量下发
if(auditBatchCfg.getIsAudit().equals(1)) {
@@ -589,5 +600,6 @@ public class ObjectGroupController extends BaseController {
long end=System.currentTimeMillis();
logger.warn("配置批量生效/失效耗时:"+(end-start));
return tip.toString();
}
}

View File

@@ -3505,7 +3505,11 @@ public abstract class BaseService {
//构造提交综合服务参数格式
maatCfg.initDefaultValue();
BeanUtils.copyProperties(cfgIndexInfo, maatCfg);
maatCfg.setAction(cfgIndexInfo.getAction());
if(cfgIndexInfo.getServiceId().equals(512)){
maatCfg.setAction(2);
}else{
maatCfg.setAction(cfgIndexInfo.getAction());
}
maatCfg.setAuditTime(cfgIndexInfo.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);
maatCfg.setStrRegionList(strRegionList);

View File

@@ -2411,6 +2411,9 @@ public class ConfigSynchronizationService extends BaseService{
List<com.nis.domain.configuration.NumBoundaryCfg> list4 = new ArrayList();
List<FileDigestCfg> list5 = new ArrayList();
StringBuffer userRegion = new StringBuffer();
if(StringUtils.isBlank(cfg.getCommonGroupIds())){
continue;
}
//处理自定义域
if(userRegionMap.containsKey(cfg.getServiceId())){
List<Map<String,Object>> userRegionList=userRegionMap.get(cfg.getServiceId());
@@ -2431,6 +2434,8 @@ public class ConfigSynchronizationService extends BaseService{
IpPortCfg _cfg = new IpPortCfg();
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
_cfg.setIsValid(entity.getIsValid());
_cfg.setIsAudit(entity.getIsAudit());
_cfg.setAuditTime(entity.getAuditTime());
Map<String,List> map = ConfigConvertUtil.objGroupCfgConvert(ipRegionList,cfg.getIpCommGroupCfgList(),1,_cfg,groupRelationList,maatTableMap,groupIdSet);
groupRelationList=map.get("groupList");
ipRegionList=map.get("dstList");
@@ -2444,6 +2449,8 @@ public class ConfigSynchronizationService extends BaseService{
CommonStringCfg _cfg = new CommonStringCfg();
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
_cfg.setIsValid(entity.getIsValid());
_cfg.setIsAudit(entity.getIsAudit());
_cfg.setAuditTime(entity.getAuditTime());
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getUrlCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
groupRelationList=map.get("groupList");
strRegionList=map.get("dstList");
@@ -2453,6 +2460,8 @@ public class ConfigSynchronizationService extends BaseService{
CommonStringCfg _cfg = new CommonStringCfg();
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId"});
_cfg.setIsValid(entity.getIsValid());
_cfg.setIsAudit(entity.getIsAudit());
_cfg.setAuditTime(entity.getAuditTime());
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getScriberIdCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
groupRelationList=map.get("groupList");
strRegionList=map.get("dstList");
@@ -2463,12 +2472,18 @@ public class ConfigSynchronizationService extends BaseService{
CommonStringCfg _cfg = new CommonStringCfg();
BeanUtils.copyProperties(cfg, _cfg, new String[]{"cfgId",});
_cfg.setIsValid(entity.getIsValid());
_cfg.setIsAudit(entity.getIsAudit());
_cfg.setAuditTime(entity.getAuditTime());
Map<String,List> map =ConfigConvertUtil.objGroupCfgConvert(strRegionList,cfg.getDomainCommGroupList(),2,_cfg,groupRelationList,maatTableMap,groupIdSet);
groupRelationList=map.get("groupList");
strRegionList=map.get("dstList");
}
BeanUtils.copyProperties(cfg, maatCfg);
maatCfg.setAction(cfg.getAction());
if(cfg.getServiceId().equals(512)){
maatCfg.setAction(2);
}else{
maatCfg.setAction(cfg.getAction());
}
maatCfg.setAuditTime(StringUtil.isEmpty(entity.getAuditTime()) ? cfg.getAuditTime():entity.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);
maatCfg.setStrRegionList(strRegionList);

View File

@@ -287,6 +287,9 @@ public class ObjectGroupService extends BaseService {
//查询子配置并修改审核状态
entity = this.getObjGroupPolicy(entity.getCfgId());
// if(StringUtils.isBlank(entity.getCommonGroupIds())){
//
// }
ServiceConfigTemplateUtil templateUtil=new ServiceConfigTemplateUtil();
List<Map<String,Object>> serviceMapList= ServiceConfigTemplateUtil.getServiceList();
List<FunctionServiceDict> dicts=DictUtils.getFunctionServiceDictList();
@@ -388,7 +391,12 @@ public class ObjectGroupService extends BaseService {
maatCfg.setAction(2);
}
BeanUtils.copyProperties(entity, maatCfg);
maatCfg.setAction(entity.getAction());
if(entity.getServiceId().equals(512)){
maatCfg.setAction(2);
}else{
maatCfg.setAction(entity.getAction());
}
maatCfg.setAuditTime(entity.getAuditTime());
maatCfg.setIpRegionList(ipRegionList);
maatCfg.setStrRegionList(strRegionList);

View File

@@ -1645,5 +1645,6 @@ url_group=URL Group
subscribe_id_group=Subscribe Id Group
at_least_one_group=Please choose at least one group
most_eight_group=At most 8 groups you can choose
no_common_group=The configuration ID of %s does not have a group;
#---------------------------Object List Group Manage------------------------------------
built_in_tip=Forbidden

View File

@@ -1649,5 +1649,6 @@ url_group=URL Group
subscribe_id_group=Subscribe Id Group
at_least_one_group=Please choose at least one group
most_eight_group=At most 8 groups you can choose
no_common_group=The configuration ID of %s does not have a group;
#---------------------------Object List Group Manage------------------------------------
built_in_tip=Forbidden

View File

@@ -1645,5 +1645,6 @@ url_group=URL\u7EC4
subscribe_id_group=\u8D26\u53F7\u7EC4
at_least_one_group=\u8FB7\u81F3\u5C11\u9009\u62E9\u4E00\u4E2A\u7EC4
most_eight_group=\u81F3\u591A\u53EF\u9009\u62E9\u0038\u4E2A\u7EC4
no_common_group=ID\u4E3A%s\u7684\u914D\u7F6E\u7F3A\u5C11\u7EC4
#---------------------------Object List Group Manage------------------------------------
built_in_tip=\u7981\u6B62\u64CD\u4F5C

View File

@@ -382,15 +382,15 @@
<thead>
<tr>
<th><input type="checkbox" class="i-checks" id="checkAll"></th>
<th column="cfg_id" class="sort-column r.compile_id" style="display: none"><spring:message code="cfg_id"/></th>
<th column="config_describe" class="sort-column r.cfg_desc cfgDesc"><spring:message code="config_describe"/></th>
<th column="block_type" class="sort-column r.action"><spring:message code="block_type"/></th>
<th column="cfg_id" class="sort-column a.compile_id" style="display: none"><spring:message code="cfg_id"/></th>
<th column="config_describe" class="sort-column a.cfg_desc cfgDesc"><spring:message code="config_describe"/></th>
<th column="block_type" class="sort-column a.action"><spring:message code="block_type"/></th>
<th column="ip_group" ><spring:message code="ip_group"/></th>
<th column="subscribe_id_group" ><spring:message code="subscribe_id_group"/></th>
<th column="url_group" ><spring:message code="url_group"/></th>
<th column="domain_group" ><spring:message code="domain_group"/></th>
<th column="is_audit" ><spring:message code="is_audit"/></th>
<th column="valid_identifier" class="sort-column r.is_valid"><spring:message code="valid_identifier"/></th>
<th column="valid_identifier" class="sort-column a.is_valid"><spring:message code="valid_identifier"/></th>
<th><spring:message code="is_schduler"/></th>
<th column="do_log" ><spring:message code="do_log"/></th>
<th column="log_total" ><spring:message code="log_total"/></th>
@@ -400,11 +400,11 @@
<th column="attribute" ><spring:message code="attribute"/></th>
<th column="label" ><spring:message code="label"/></th>
<th column="creator" ><spring:message code="creator"/></th>
<th column="config_time" class="sort-column r.create_time"><spring:message code="config_time"/></th>
<th column="config_time" class="sort-column a.create_time"><spring:message code="config_time"/></th>
<th column="editor" ><spring:message code="editor"/></th>
<th column="edit_time" class="sort-column r.edit_time"><spring:message code="edit_time"/></th>
<th column="edit_time" class="sort-column a.edit_time"><spring:message code="edit_time"/></th>
<th column="auditor" ><spring:message code="auditor"/></th>
<th column="audit_time" class="sort-column r.audit_time"><spring:message code="audit_time"/></th>
<th column="audit_time" class="sort-column a.audit_time"><spring:message code="audit_time"/></th>
</tr>
</thead>
<tbody>

View File

@@ -178,7 +178,7 @@ var GetLogTotal=function(_data){
$(this).attr("id",i+"logTotal");
//$(this).html(data[i].sum);
// SNAT/DNAT复用策略配置 暂不支持 跳转日志检索
if($(this).attr("functionId") != 300 && $(this).attr("functionId") != 304){
if($(this).attr("functionId") != 300 && $(this).attr("functionId") != 304 && $(this).attr("functionId") != 888){
$(this).html("<a href='javascript:;' onclick='logSearch(\""+data[i].compileId+"\",\""+serviceId+"\")'>"+data[i].sum+"<a>");
$(this).parent("tr").find("td:eq(1)").html("<a href='javascript:;' onclick='toLogSearch("+i+")'>"+data[i].compileId+"<a>");
}else{