From f474a98e50ffb39d75b45fe5554d5d183589cec4 Mon Sep 17 00:00:00 2001 From: wangxin Date: Fri, 7 Sep 2018 20:18:59 +0800 Subject: [PATCH] =?UTF-8?q?(1)app=20ip=20=E7=95=8C=E9=9D=A2IP=E5=B1=9E?= =?UTF-8?q?=E6=80=A7=E4=BD=BF=E7=94=A8function=5Fregion=5Fdict=E6=8E=A7?= =?UTF-8?q?=E5=88=B6=20(2)app=20ip=20IP=E5=A4=8D=E7=94=A8=E7=AD=96?= =?UTF-8?q?=E7=95=A5=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../configuration/AppCfgController.java | 21 +- .../nis/web/dao/configuration/AppCfgDao.java | 1 + .../nis/web/dao/configuration/AppCfgDao.xml | 13 +- .../java/com/nis/web/service/BaseService.java | 24 +- .../web/service/basics/AsnIpCfgService.java | 4 +- .../service/configuration/AppCfgService.java | 244 ++++++++++++++++-- .../configuration/AsnPolicyCfgService.java | 2 +- .../WEB-INF/views/cfg/app/appIpCfgForm.jsp | 66 +++-- 8 files changed, 314 insertions(+), 61 deletions(-) diff --git a/src/main/java/com/nis/web/controller/configuration/AppCfgController.java b/src/main/java/com/nis/web/controller/configuration/AppCfgController.java index ad4473502..8af5ac660 100644 --- a/src/main/java/com/nis/web/controller/configuration/AppCfgController.java +++ b/src/main/java/com/nis/web/controller/configuration/AppCfgController.java @@ -1,7 +1,6 @@ package com.nis.web.controller.configuration; import java.io.File; -import java.security.cert.X509Certificate; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; @@ -10,7 +9,6 @@ import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import javax.ws.rs.POST; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -41,13 +39,11 @@ import com.nis.domain.configuration.AppTopicDomainCfg; import com.nis.domain.configuration.IpPortCfg; import com.nis.domain.configuration.NtcSubscribeIdCfg; import com.nis.domain.configuration.WebsiteDomainTopic; -import com.nis.domain.configuration.AppBuiltInFeatureFile; import com.nis.domain.maat.ToMaatResult; import com.nis.domain.maat.ToMaatResult.ResponseData; import com.nis.domain.specific.SpecificServiceCfg; import com.nis.exceptions.CallExternalProceduresException; import com.nis.exceptions.MaatConvertException; -import com.nis.util.CodeDicUtils; import com.nis.util.ConfigServiceUtil; import com.nis.util.Constants; import com.nis.util.DictUtils; @@ -55,8 +51,6 @@ import com.nis.util.FileUtils; import com.nis.util.JsonMapper; import com.nis.util.StringUtil; import com.nis.web.controller.BaseController; -import com.nis.web.dao.configuration.AppBuiltInFeatureDao; -import com.nis.web.dao.dashboard.codedic.CodeResult; import com.nis.web.security.UserUtils; /** @@ -313,6 +307,8 @@ public class AppCfgController extends BaseController { public String auditAppIpCfg(Integer isAudit,Integer isValid,String ids,Integer functionId, RedirectAttributes redirectAttributes) { AppIpCfg entity = new AppIpCfg(); String[] idArray = ids.split(","); + //同一编译IP的分组 + Map> dataMap=new HashMap<>(); for(String id :idArray){ entity = appCfgService.getAppIpCfg(Long.parseLong(id)); entity.setIsAudit(isAudit); @@ -320,14 +316,25 @@ public class AppCfgController extends BaseController { entity.setAuditorId(UserUtils.getUser().getId()); entity.setAuditTime(new Date()); entity.setFunctionId(functionId); + entity.setTableName(AppIpCfg.getTablename()); + if(dataMap.containsKey(entity.getCompileId())) { + dataMap.get(entity.getCompileId()).add(entity); + }else { + List ipList=new ArrayList<>(); + ipList.add(entity); + dataMap.put(entity.getCompileId(), ipList); + } + } + for(List entitys:dataMap.values()) { try { - appCfgService.auditAppIpCfg(entity,isAudit); + appCfgService.auditAppIpCfg(entitys,isAudit); } catch (MaatConvertException e) { e.printStackTrace(); logger.info("app协议IP配置下发失败:"+e.getMessage()); addMessage(redirectAttributes, e.getMessage()); } } + return "redirect:" + adminPath +"/app/ipCfgList?functionId="+functionId; } /** diff --git a/src/main/java/com/nis/web/dao/configuration/AppCfgDao.java b/src/main/java/com/nis/web/dao/configuration/AppCfgDao.java index 3a0355574..49245396e 100644 --- a/src/main/java/com/nis/web/dao/configuration/AppCfgDao.java +++ b/src/main/java/com/nis/web/dao/configuration/AppCfgDao.java @@ -98,4 +98,5 @@ public interface AppCfgDao { //域名关联表操作 public List getDomainDict(WebsiteDomainTopic websiteDomainTopic); public void saveDomainDict(WebsiteDomainTopic websiteDomainTopic); + public List getAppIpCfgBySpecServiceId(Integer specServiceId); } diff --git a/src/main/java/com/nis/web/dao/configuration/AppCfgDao.xml b/src/main/java/com/nis/web/dao/configuration/AppCfgDao.xml index ea17409ff..20ed830c1 100644 --- a/src/main/java/com/nis/web/dao/configuration/AppCfgDao.xml +++ b/src/main/java/com/nis/web/dao/configuration/AppCfgDao.xml @@ -394,7 +394,7 @@ r.SERVICE_ID,r.REQUEST_ID,r.COMPILE_ID,r.IS_AREA_EFFECTIVE,r.CLASSIFY, r.ATTRIBUTE,r.LABLE,AREA_EFFECTIVE_IDS,r.RATELIMIT,r.FUNCTION_ID,r.CFG_TYPE,r.CFG_REGION_CODE, r.IP_TYPE, r.IP_PATTERN, r.SRC_IP_ADDRESS,r.DEST_IP_ADDRESS, r.PORT_PATTERN,r.SRC_PORT,DEST_PORT, - r.DIRECTION,r.PROTOCOL,r.DO_LOG + r.DIRECTION,r.PROTOCOL,r.DO_LOG,r.USER_REGION1,r.USER_REGION2,r.USER_REGION3,r.USER_REGION4,r.USER_REGION5 @@ -526,6 +526,12 @@ FROM app_ip_cfg r WHERE CFG_ID = #{cfgId,jdbcType=BIGINT} +