diff --git a/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java b/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java index 28208e4ac..994cef81f 100644 --- a/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java +++ b/src/main/java/com/nis/domain/configuration/CfgIndexInfo.java @@ -10,10 +10,6 @@ package com.nis.domain.configuration; import java.util.List; -import com.nis.domain.SysRole; -import com.nis.util.excel.ExcelField; -import com.nis.util.excel.fieldtype.RoleListType; - /** * @ClassName: CfgIndexInfo.java diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java b/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java index 95d747420..50ab696a6 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/WebsiteController.java @@ -180,7 +180,7 @@ public class WebsiteController extends BaseController{ @RequestMapping(value = {"saveHttpCfg"}) @RequiresPermissions(value={"website:http:config"}) - public String saveHttpCfg(Model model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { + public String saveHttpCfg(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { websiteCfgService.saveHttpCfg(entity); return "redirect:" + adminPath +"/ntc/website/httpList?functionId="+entity.getFunctionId(); } @@ -242,7 +242,7 @@ public class WebsiteController extends BaseController{ } @RequestMapping(value = {"saveSslCfg"}) @RequiresPermissions(value={"website:ssl:config"}) - public String saveSslCfg(Model model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { + public String saveSslCfg(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { websiteCfgService.saveSslCfg(entity); return "redirect:" + adminPath +"/ntc/website/sslList?functionId="+entity.getFunctionId(); } @@ -330,7 +330,7 @@ public class WebsiteController extends BaseController{ } @RequestMapping(value = {"saveDnsCfg"}) @RequiresPermissions(value={"website:dns:config"}) - public String saveDnsCfg(Model model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { + public String saveDnsCfg(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { websiteCfgService.saveDnsCfg(entity); return "redirect:" + adminPath +"/ntc/website/dnsList?functionId="+entity.getFunctionId(); } diff --git a/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java b/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java index 826ca3a86..7637e0646 100644 --- a/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java +++ b/src/main/java/com/nis/web/controller/configuration/ntc/WhiteListController.java @@ -9,7 +9,6 @@ import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.ModelAttribute; @@ -20,13 +19,12 @@ import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.nis.domain.Page; +import com.nis.domain.configuration.BaseStringCfg; import com.nis.domain.configuration.CfgIndexInfo; -import com.nis.domain.configuration.HttpUrlCfg; import com.nis.domain.configuration.IpPortCfg; import com.nis.domain.configuration.NtcSubscribeIdCfg; import com.nis.domain.configuration.template.WhiteListIpTemplate; import com.nis.exceptions.MaatConvertException; -import com.nis.util.Constants; import com.nis.web.controller.configuration.CommonController; import com.nis.web.security.UserUtils; @@ -43,7 +41,7 @@ public class WhiteListController extends CommonController{ //@RequiresPermissions(value={"whitelist:ip:config","whitelist:ip:confirm","whitelist:ip:aduit"},logical=Logical.OR) public String ipList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) { Page searchPage=new Page(request,response,"a"); - Page page = websiteCfgService.getWebsiteList(searchPage, cfg); + Page page = ipCfgService.getWhiteIpList(searchPage, cfg); model.addAttribute("page", page); initPageCondition(model,cfg); return "/cfg/whitelist/ipList"; @@ -81,7 +79,6 @@ public class WhiteListController extends CommonController{ if(StringUtils.isNotBlank(ids)){ entity = this.ipCfgService.getIpPortCfg(Long.parseLong(ids)); - entity = this.websiteCfgService.getSslCfg(Long.parseLong(ids)); initUpdateFormCondition(model,entity); }else{ initFormCondition(model,entity); @@ -90,7 +87,7 @@ public class WhiteListController extends CommonController{ return "/cfg/whitelist/ipForm"; } @RequestMapping(value = {"ip/save"}) - public String saveIpCfg(Model model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { + public String saveIpCfg(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { ipCfgService.saveIpCfg(entity); return "redirect:" + adminPath +"/ntc/whitelist/ip/list?functionId="+entity.getFunctionId(); } @@ -120,14 +117,13 @@ public class WhiteListController extends CommonController{ @RequiresPermissions(value={"whitelist:ip:config"}) public String updateIpCfgValid(Integer isValid,String ids,Integer functionId) { ipCfgService.updateIpCfgValid(isValid,ids,functionId); - return "redirect:" + adminPath +"/ntc/website/sslList?functionId="+functionId; + return "redirect:" + adminPath +"/ntc/whitelist/ip/list?functionId="+functionId; } @RequestMapping(value = {"domain/list"}) //@RequiresPermissions(value={"whitelist:domain:config","whitelist:domain:confirm","whitelist:domain:aduit"},logical=Logical.OR) - public String domainList(Model model,@ModelAttribute("cfg")HttpUrlCfg cfg,HttpServletRequest request,HttpServletResponse response) { - cfg.setTableName(HttpUrlCfg.getTablename()); - Page searchPage=new Page(request,response,"r"); - Page page = domainService.findPage(searchPage, cfg); + public String domainList(Model model,@ModelAttribute("cfg")CfgIndexInfo cfg,HttpServletRequest request,HttpServletResponse response) { + Page searchPage=new Page(request,response,"a"); + Page page = domainService.getDomainList(searchPage, cfg); model.addAttribute("page", page); initPageCondition(model,cfg); return "/cfg/whitelist/domainList"; @@ -135,47 +131,54 @@ public class WhiteListController extends CommonController{ @RequestMapping(value = {"domain/form"}) @RequiresPermissions(value={"whitelist:domain:config"}) - public String domainForm(Model model,String ids,HttpUrlCfg entity) { + public String domainForm(Model model,String ids,CfgIndexInfo entity) { if(StringUtils.isNotBlank(ids)){ - entity = domainService.getStringCfgById(Long.parseLong(ids)); - } - initFormCondition(model,entity); - if(entity.getCfgId()!=null){ - model.addAttribute("_cfg", entity); + entity = domainService.getDomainCfg(Long.parseLong(ids)); + initUpdateFormCondition(model,entity); }else{ - HttpUrlCfg cfg=new HttpUrlCfg(); - cfg.initDefaultValue(); - cfg.setFunctionId(entity.getFunctionId()); - model.addAttribute("_cfg", cfg); + initFormCondition(model,entity); } - + model.addAttribute("_cfg", entity); return "/cfg/whitelist/domainForm"; } - @RequestMapping(value = {"domain/saveOrUpdate"}) - public String saveOrUpdateDomain(RedirectAttributes model, HttpUrlCfg cfg) { - cfg.setTableName(HttpUrlCfg.getTablename()); - logger.info("saveOrUpdateIp loaded"); - try{ - Date date=new Date(); - cfg.setIsValid(Constants.VALID_NO); - cfg.setIsAudit(Constants.AUDIT_NOT_YET); - if(cfg.getCfgId()==null){//新增 - cfg.setCreatorId(cfg.getCurrentUser().getId()); - cfg.setCreateTime(date); - domainService.addStringCfg(cfg); - }else{//修改 - cfg.setEditorId(cfg.getCurrentUser().getId()); - cfg.setEditTime(new Date()); - domainService.updateStringCfg(cfg); - } - addMessage(model,"save_success"); - }catch(Exception e){ - logger.error("保存失败",e); - addMessage(model,"save_failed"); - } - return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+cfg.getFunctionId(); + @RequestMapping(value = {"domain/save"}) + public String saveOrUpdateDomain(RedirectAttributes model,HttpServletRequest request,HttpServletResponse response,String ids,CfgIndexInfo entity) { + domainService.saveDomainCfg(entity); + return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+entity.getFunctionId(); + } + @RequestMapping(value = {"domain/ajaxSubList"}) + public String ajaxDomainSubList(Model model,Long cfgId,Integer index) { + CfgIndexInfo cfg = domainService.getDomainCfg(cfgId); + List tabList = new ArrayList(); + if(cfg.getHttpUrlList()!=null){ + String cfgType = null; + for(BaseStringCfg keyword:cfg.getHttpUrlList()){ + if(!keyword.getCfgType().equals(cfgType)){ + tabList.add(new String[]{"2",keyword.getCfgType()}); + cfgType = keyword.getCfgType(); + } + } + } + if(cfg.getNtcSubscribeIdCfgList()!=null){ + String cfgType = null; + for(NtcSubscribeIdCfg keyword:cfg.getNtcSubscribeIdCfgList()){ + if(!keyword.getCfgType().equals(cfgType)){ + tabList.add(new String[]{"2",keyword.getCfgType()}); + cfgType = keyword.getCfgType(); + } + } + } + model.addAttribute("_cfg", cfg); + model.addAttribute("index", index); + model.addAttribute("tabList", tabList); + return "/cfg/whitelist/domianSubList"; + } + @RequestMapping(value = {"domain/updateValid"}) + @RequiresPermissions(value={"whitelist:domain:config"}) + public String updateDomainValid(Integer isValid,String ids,Integer functionId) { + domainService.updateDomainCfgValid(isValid,ids,functionId); + return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+functionId; } - @RequestMapping(value = {"domain/delete"}) @RequiresPermissions("whitelist:domain:config") public String deleteDomain(String ids,Integer functionId,RedirectAttributes model) { @@ -191,29 +194,25 @@ public class WhiteListController extends CommonController{ @RequestMapping(value = {"domain/audit"}) @RequiresPermissions("whitelist:domain:confirm") - public String auditDomain(String ids,HttpUrlCfg cfg,RedirectAttributes redirectAttributes) { - try{ - List beans=domainService.getListByCfgId(ids); - Date date=new Date(); - for(HttpUrlCfg bean:beans){ - HttpUrlCfg domain=new HttpUrlCfg(); - BeanUtils.copyProperties(bean, domain); - domain.setTableName(HttpUrlCfg.getTablename()); - domain.setAuditorId(bean.getCurrentUser().getId()); - domain.setAuditTime(date); - domain.setIsAudit(cfg.getIsAudit()); - domain.setIsValid(cfg.getIsValid()); - domainService.auditWhiteDomain(domain); + public String auditDomain(Integer isAudit,Integer isValid,String ids,Integer functionId, RedirectAttributes redirectAttributes) { + CfgIndexInfo entity = new CfgIndexInfo(); + String[] idArray = ids.split(","); + for(String id :idArray){ + entity = domainService.getDomainCfg(Long.parseLong(id)); + entity.setIsAudit(isAudit); + entity.setIsValid(isValid); + entity.setAuditorId(UserUtils.getUser().getId()); + entity.setAuditTime(new Date()); + entity.setFunctionId(functionId); + try { + domainService.auditDomainCfg(entity,isAudit); + } catch (MaatConvertException e) { + e.printStackTrace(); + logger.info("domain配置下发失败:"+e.getMessage()); + addMessage(redirectAttributes, e.getMessage()); } - addMessage(redirectAttributes,"audit_success"); - }catch(MaatConvertException e){ - logger.error("审核失败", e); - addMessage(redirectAttributes, e.getMessage()); - }catch(Exception e){ - logger.error("审核失败", e); - addMessage(redirectAttributes, "audit_failed"); } - return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+cfg.getFunctionId(); + return "redirect:" + adminPath +"/ntc/whitelist/domain/list?functionId="+functionId; } //ip配置导入 @RequestMapping(value = "ip/import", method=RequestMethod.POST) diff --git a/src/main/java/com/nis/web/dao/configuration/IpCfgDao.java b/src/main/java/com/nis/web/dao/configuration/IpCfgDao.java index eda34d006..4d199f3f3 100644 --- a/src/main/java/com/nis/web/dao/configuration/IpCfgDao.java +++ b/src/main/java/com/nis/web/dao/configuration/IpCfgDao.java @@ -44,5 +44,6 @@ public interface IpCfgDao extends CrudDao{ public void deleteIpCfg(CfgIndexInfo entity); public void updateCfgValid(BaseCfg entity); public void auditCfg(BaseCfg entity); + public List getWhiteIpList(CfgIndexInfo entity); } diff --git a/src/main/java/com/nis/web/dao/configuration/IpCfgDao.xml b/src/main/java/com/nis/web/dao/configuration/IpCfgDao.xml index 90e496f8b..b7a3b6316 100644 --- a/src/main/java/com/nis/web/dao/configuration/IpCfgDao.xml +++ b/src/main/java/com/nis/web/dao/configuration/IpCfgDao.xml @@ -1001,4 +1001,174 @@ and function_id=#{functionId,jdbcType=INTEGER} + \ No newline at end of file diff --git a/src/main/java/com/nis/web/service/configuration/DomainService.java b/src/main/java/com/nis/web/service/configuration/DomainService.java index 6811a1024..3bf1542c0 100644 --- a/src/main/java/com/nis/web/service/configuration/DomainService.java +++ b/src/main/java/com/nis/web/service/configuration/DomainService.java @@ -11,9 +11,12 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import com.nis.domain.Page; import com.nis.domain.configuration.AreaIpCfg; import com.nis.domain.configuration.BaseIpCfg; +import com.nis.domain.configuration.CfgIndexInfo; import com.nis.domain.configuration.HttpUrlCfg; +import com.nis.domain.configuration.NtcSubscribeIdCfg; import com.nis.domain.maat.MaatCfg; import com.nis.domain.maat.MaatCfg.DigestCfg; import com.nis.domain.maat.MaatCfg.GroupCfg; @@ -29,6 +32,8 @@ import com.nis.util.StringUtil; import com.nis.web.dao.configuration.AreaIpCfgDao; import com.nis.web.dao.configuration.DomainDao; import com.nis.web.dao.configuration.StringCfgDao; +import com.nis.web.dao.configuration.WebsiteCfgDao; +import com.nis.web.security.UserUtils; import com.nis.web.service.CrudService; /** @@ -43,6 +48,8 @@ public class DomainService extends CrudService { @Autowired protected StringCfgDao stringCfgDao; @Autowired + protected WebsiteCfgDao websiteCfgDao; + @Autowired protected AreaIpCfgDao areaIpCfgDao; @Transactional(readOnly=false,rollbackFor=RuntimeException.class) @@ -408,4 +415,245 @@ public class DomainService extends CrudService { // TODO Auto-generated method stub return domainDao.getListByCfgId(ids); } + public CfgIndexInfo getDomainCfg(Long cfgId) { + CfgIndexInfo entity = websiteCfgDao.getCfgIndexInfo(cfgId); + List httpUrlList = websiteCfgDao.getHttpUrlList(entity); + List subscribeIdList = stringCfgDao.findSubscribeIdCfgListByCfgIndexInfo(entity); + entity.setHttpUrlList(httpUrlList); + entity.setNtcSubscribeIdCfgList(subscribeIdList); + return entity; + } + public void saveDomainCfg(CfgIndexInfo entity){ + //设置区域运营商信息 + setAreaEffectiveIds(entity); + + entity.setIsValid(0); + entity.setIsAudit(0); + + if(entity.getCfgId()==null){ + Integer compileId = 0; + try { + List idList = ConfigServiceUtil.getId(1, 1); + if(idList!=null && idList.size()>0){ + compileId = idList.get(0); + } + } catch (MaatConvertException e) { + logger.info("获取编译ID出错"); + throw new MaatConvertException(""); + } + entity.setCompileId(compileId); + entity.setCreateTime(new Date()); + entity.setCreatorId(entity.getCurrentUser().getId()); + websiteCfgDao.saveCfgIndex(entity); + + if(entity.getHttpUrlList()!=null){ + for(HttpUrlCfg cfg:entity.getHttpUrlList()){ + if(StringUtils.isNotBlank(cfg.getCfgKeywords())){ + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); + websiteCfgDao.saveHttpUrlCfg(cfg); + } + } + } + if(entity.getNtcSubscribeIdCfgList()!=null){ + for(NtcSubscribeIdCfg cfg:entity.getNtcSubscribeIdCfgList()){ + if(StringUtils.isNotBlank(cfg.getCfgKeywords())){ + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); + stringCfgDao.saveSubscribeIdCfg(cfg); + } + } + } + //保存区域IP信息 + if(entity.getAreaCfg()!=null){ + for(AreaIpCfg cfg:entity.getAreaCfg()){ + cfg.initDefaultValue(); + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); + areaIpCfgDao.saveAreaIpCfg(cfg); + } + } + + }else{ + websiteCfgDao.updateCfgIndex(entity); + //无效子配置后,再新增子配置 + websiteCfgDao.deleteHttpUrlCfg(entity); + stringCfgDao.deleteSubscribeIdCfgByCfgIndexInfo(entity); + AreaIpCfg area = new AreaIpCfg(); + area.setCompileId(entity.getCompileId()); + area.setFunctionId(entity.getFunctionId()); + areaIpCfgDao.deleteAreaIpCfg(area); + entity.setCreateTime(new Date()); + entity.setCreatorId(entity.getCurrentUser().getId()); + if(entity.getHttpUrlList()!=null){ + for(HttpUrlCfg cfg:entity.getHttpUrlList()){ + if(StringUtils.isNotBlank(cfg.getCfgKeywords())){ + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); + websiteCfgDao.saveHttpUrlCfg(cfg); + } + } + } + if(entity.getNtcSubscribeIdCfgList()!=null){ + for(NtcSubscribeIdCfg cfg:entity.getNtcSubscribeIdCfgList()){ + if(StringUtils.isNotBlank(cfg.getCfgKeywords())){ + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgRegionCode","cfgType"}); + stringCfgDao.saveSubscribeIdCfg(cfg); + } + } + } + //保存区域IP信息 + if(entity.getAreaCfg()!=null){ + for(AreaIpCfg cfg:entity.getAreaCfg()){ + cfg.initDefaultValue(); + BeanUtils.copyProperties(entity, cfg,new String[]{"cfgDesc","cfgRegionCode","cfgType"}); + areaIpCfgDao.saveAreaIpCfg(cfg); + } + } + } + } + public void updateDomainCfgValid(Integer isValid,String ids,Integer functionId){ + CfgIndexInfo entity = new CfgIndexInfo(); + String[] idArray = ids.split(","); + for(String id :idArray){ + entity.setCfgId(Long.parseLong(id)); + entity.setIsValid(isValid); + entity.setEditorId(UserUtils.getUser().getId()); + entity.setEditTime(new Date()); + entity.setTableName(CfgIndexInfo.getTablename()); + entity.setFunctionId(functionId); + websiteCfgDao.updateCfgValid(entity); + //查询子配置 + entity = this.getDomainCfg(Long.parseLong(id)); + + if(entity.getHttpUrlList()!=null && entity.getHttpUrlList().size()>0) + { + HttpUrlCfg cfg = new HttpUrlCfg(); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); + cfg.setTableName(HttpUrlCfg.getTablename()); + websiteCfgDao.updateCfgValid(cfg); + } + if(entity.getNtcSubscribeIdCfgList()!=null && entity.getNtcSubscribeIdCfgList().size()>0) + { + NtcSubscribeIdCfg cfg = new NtcSubscribeIdCfg(); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); + cfg.setTableName(NtcSubscribeIdCfg.getTablename()); + websiteCfgDao.updateCfgValid(cfg); + } + //保存区域IP信息 + if(entity.getAreaCfg()!=null && entity.getAreaCfg().size()>0){ + AreaIpCfg cfg = new AreaIpCfg(); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); + cfg.setTableName(AreaIpCfg.getTablename()); + websiteCfgDao.updateCfgValid(cfg); + } + + } + + } + public void auditDomainCfg(CfgIndexInfo entity,Integer isAudit) throws MaatConvertException{ + // TODO Auto-generated method stub + //修改数据库审核状态信息 + entity.setTableName(CfgIndexInfo.getTablename()); + websiteCfgDao.auditCfg(entity); + + ToMaatBean maatBean = new ToMaatBean(); + MaatCfg maatCfg = new MaatCfg(); + List configCompileList = new ArrayList(); + List groupRelationList = new ArrayList(); + List ipRegionList = new ArrayList(); + List strRegionList = new ArrayList(); + List numRegionList = new ArrayList(); + List digestRegionList = new ArrayList(); + List areaIpRegionList = new ArrayList(); + + //查询子配置并修改审核状态 + entity = this.getDomainCfg(entity.getCfgId()); + + if(entity.getHttpUrlList()!=null && entity.getHttpUrlList().size()>0){ + HttpUrlCfg cfg = new HttpUrlCfg(); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); + cfg.setTableName(HttpUrlCfg.getTablename()); + websiteCfgDao.auditCfg(cfg); + if(isAudit==1){ + Map map = cfgConvert(strRegionList,entity.getHttpUrlList(),2,entity,groupRelationList); + groupRelationList=map.get("groupList"); + strRegionList=map.get("dstList"); + } + } + if(entity.getNtcSubscribeIdCfgList()!=null && entity.getNtcSubscribeIdCfgList().size()>0){ + NtcSubscribeIdCfg cfg = new NtcSubscribeIdCfg(); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); + cfg.setTableName(NtcSubscribeIdCfg.getTablename()); + websiteCfgDao.auditCfg(cfg); + if(isAudit==1){ + Map map = cfgConvert(strRegionList,entity.getNtcSubscribeIdCfgList(),2,entity,groupRelationList); + groupRelationList=map.get("groupList"); + strRegionList=map.get("dstList"); + } + } + //保存区域IP信息 + List areaIpCfgList=areaIpCfgDao.getByCompileId(entity.getCompileId()); + if(!StringUtil.isEmpty(areaIpCfgList)){ + AreaIpCfg cfg = new AreaIpCfg(); + BeanUtils.copyProperties(entity, cfg, new String[]{"cfgId"}); + cfg.setTableName(AreaIpCfg.getTablename()); + websiteCfgDao.auditCfg(cfg); + if(isAudit==1){ + Map map = cfgConvert(areaIpRegionList,areaIpCfgList,1,entity,groupRelationList); + groupRelationList=map.get("groupList"); + areaIpRegionList=map.get("dstList"); + } + } + + //构造提交综合服务参数格式,一条配置提交一次综合服务 + if(isAudit==1){ + maatCfg.initDefaultValue(); + BeanUtils.copyProperties(entity, maatCfg); + maatCfg.setAction(entity.getAction()); + maatCfg.setAuditTime(entity.getAuditTime()); + maatCfg.setIpRegionList(ipRegionList); + maatCfg.setStrRegionList(strRegionList); + maatCfg.setNumRegionList(numRegionList); + maatCfg.setDigestRegionList(digestRegionList); + maatCfg.setGroupRelationList(groupRelationList); + maatCfg.setGroupNum(groupRelationList.size()); + maatCfg.setAreaIpRegionList(areaIpRegionList); + maatCfg.setIsValid(entity.getIsValid()); + + configCompileList.add(maatCfg); + maatBean.setConfigCompileList(configCompileList); + maatBean.setAuditTime(entity.getAuditTime()); + maatBean.setCreatorName(entity.getCurrentUser().getName()); + maatBean.setVersion(Constants.MAAT_VERSION); + maatBean.setOpAction(Constants.INSERT_ACTION); + //调用服务接口下发配置数据 + String json=gsonToJson(maatBean); + logger.info("domain配置下发配置参数:"+json); + //调用服务接口下发配置 + ToMaatResult result = ConfigServiceUtil.postMaatCfg(json); + logger.info("domain配置下发响应信息:"+result.getMsg()); + + }else if(isAudit==3){ + maatCfg.setCompileId(entity.getCompileId()); + maatCfg.setServiceId(entity.getServiceId()); + maatCfg.setIsValid(0);//无效 + configCompileList.add(maatCfg); + 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); + logger.info("domain配置下发配置参数:"+json); + //调用服务接口下发配置 + ToMaatResult result = ConfigServiceUtil.put(json,1); + logger.info("domain配置取消配置响应信息:"+result.getMsg()); + } + } + public Page getDomainList(Page page, CfgIndexInfo entity){ + // 生成数据权限过滤条件(dsf为dataScopeFilter的简写,在xml中使用 ${sqlMap.dsf}调用权限SQL) + entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"a")); + entity.setPage(page); + List list = websiteCfgDao.getWebsiteList(entity); + page.setList(list); + return page; + } } diff --git a/src/main/java/com/nis/web/service/configuration/IpCfgService.java b/src/main/java/com/nis/web/service/configuration/IpCfgService.java index e5642736c..76e510c51 100644 --- a/src/main/java/com/nis/web/service/configuration/IpCfgService.java +++ b/src/main/java/com/nis/web/service/configuration/IpCfgService.java @@ -14,6 +14,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.nis.domain.FunctionRegionDict; +import com.nis.domain.Page; import com.nis.domain.callback.InlineIp; import com.nis.domain.configuration.AreaIpCfg; import com.nis.domain.configuration.BaseIpCfg; @@ -739,4 +740,11 @@ public class IpCfgService extends CrudService { } return msgProp; } + public Page getWhiteIpList(Page page, CfgIndexInfo entity) { + entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"a")); + entity.setPage(page); + List list = ipCfgDao.getWhiteIpList(entity); + page.setList(list); + return page; + } } diff --git a/src/main/resources/sql/update_function_region_dict_data.sql b/src/main/resources/sql/update_function_region_dict_data.sql index 70ca7e31a..c66e6d8d7 100644 --- a/src/main/resources/sql/update_function_region_dict_data.sql +++ b/src/main/resources/sql/update_function_region_dict_data.sql @@ -1,9 +1,14 @@ #ip地址白名单 INSERT INTO function_region_dict (config_service_type,config_multi_keywords,config_expr_type,config_hex,config_match_method ,function_id,config_region_code,config_region_value,config_desc,is_valid,is_maat,region_type,config_region_sort) -VALUES('subscribe_id',1,'0,1','0,1,2','0,1,2,3',3,2,'WHITE_LIST_SUBSCRIBE_ID','全局IP白名单SUBSCRIBE配置',1,1,2,2); +VALUES('subscribe_id',0,'0,1','0,1,2','0,1,2,3',3,2,'WHITE_LIST_SUBSCRIBE_ID','全局IP白名单SUBSCRIBE配置',1,1,2,2); UPDATE function_service_dict SET region_code='1,2' WHERE function_id=3 AND ACTION=128 UPDATE function_region_dict SET config_ip_port_show='1,2' ,config_ip_type='4,6',config_ip_pattern='1,2,3',config_port_pattern='1,2',config_direction='0',config_protocol='0' WHERE dict_id=7; +#域名白名单 +INSERT INTO function_region_dict (config_service_type,config_multi_keywords,config_expr_type,config_hex,config_match_method +,function_id,config_region_code,config_region_value,config_desc,is_valid,is_maat,region_type,config_region_sort) +VALUES('subscribe_id',0,'0,1','0,1,2','0,1,2,3',4,2,'WHITE_LIST_SUBSCRIBE_ID','全局域名白名单SUBSCRIBE配置',1,1,2,2); +UPDATE function_service_dict SET region_code='1,2' WHERE function_id=4 AND ACTION=128 #ip地址 UPDATE function_service_dict SET region_code=1 WHERE function_id=5 AND ACTION IN(16,1); UPDATE function_service_dict SET region_code=2 WHERE function_id=5 AND ACTION IN(32,96); diff --git a/src/main/webapp/WEB-INF/views/cfg/whitelist/domainForm.jsp b/src/main/webapp/WEB-INF/views/cfg/whitelist/domainForm.jsp index 7f9608b95..7a16521e2 100644 --- a/src/main/webapp/WEB-INF/views/cfg/whitelist/domainForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/whitelist/domainForm.jsp @@ -2,139 +2,306 @@ <%@ include file="/WEB-INF/include/taglib.jsp"%> -<spring:message code="domain_whitelist"></spring:message> +<spring:message code="${cfgName}"></spring:message> + + - -
- -

- -

- -
-
-
-
-
- - - + + +
+

+ +

+
+
+
+
+
+ + + + + + + +
- -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - -
-

+
+ + + + + + + + + + +
+ +
-
-
- -
- -
-
-
-
-
+
+
+ +
+ +
+
+
+
+
+ +
+ + + +
+
+
+
+
+

+ +

+
+
- + + + +
-
+
-
- -
-
-
- -
- - - -
-
-
-
+ + <%--
+
+
+ + + + + + + + + + + + +
+
+
--%> + + + + + + + + + + +

+ + + 0}">hidden" + onClick="addContent(this,'${tabName}')" title="add"> +

+ + <%-- --%> + + + + + + +
+ <%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%> +
+ + +
+
+
+ + + + + + +
+ + + + + + +
+
+
+
+ <%--@include file="/WEB-INF/include/form/areaInfo.jsp"--%> +
+ <%--@include file="/WEB-INF/include/form/basicInfo.jsp"--%> +
+
+
+
+
+ + +
+
+
+
+
- -
-
-
-
-
- - -
-
-
-
-
-
- - -
-
+ + +
+ + +
+
+
-
\ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/cfg/whitelist/domainList.jsp b/src/main/webapp/WEB-INF/views/cfg/whitelist/domainList.jsp index e89463d92..c05c55378 100644 --- a/src/main/webapp/WEB-INF/views/cfg/whitelist/domainList.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/whitelist/domainList.jsp @@ -2,15 +2,16 @@ <%@ include file="/WEB-INF/include/taglib.jsp"%> -<spring:message code="domain_whitelist"></spring:message> +<spring:message code="${cfgName}"></spring:message> + +

@@ -53,13 +99,14 @@

-
diff --git a/src/main/webapp/WEB-INF/views/cfg/whitelist/domianSubList.jsp b/src/main/webapp/WEB-INF/views/cfg/whitelist/domianSubList.jsp new file mode 100644 index 000000000..9c1a82e0c --- /dev/null +++ b/src/main/webapp/WEB-INF/views/cfg/whitelist/domianSubList.jsp @@ -0,0 +1,228 @@ +<%@ page contentType="text/html;charset=UTF-8"%> +<%@ include file="/WEB-INF/include/taglib.jsp"%> + + + + + + + +
+ + +
+
+ +
+ + + + +
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+
+ + + +
+
+
+
+ +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+
+ + + +
+
+
+
+ +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + +
+
+
+
+
+
+
+
+ \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/cfg/whitelist/ipForm.jsp b/src/main/webapp/WEB-INF/views/cfg/whitelist/ipForm.jsp index 9b126f6a3..0a74979c8 100644 --- a/src/main/webapp/WEB-INF/views/cfg/whitelist/ipForm.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/whitelist/ipForm.jsp @@ -275,35 +275,8 @@ - - - <%-- --%> - - - - - -
- <%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%> -
- - - - -
-
-
- - - - - - -
diff --git a/src/main/webapp/WEB-INF/views/cfg/whitelist/ipSubList.jsp b/src/main/webapp/WEB-INF/views/cfg/whitelist/ipSubList.jsp index 1eebb9e1c..79296b282 100644 --- a/src/main/webapp/WEB-INF/views/cfg/whitelist/ipSubList.jsp +++ b/src/main/webapp/WEB-INF/views/cfg/whitelist/ipSubList.jsp @@ -120,58 +120,6 @@ - - - -
-
-
-
- -
-
-
-
-
-
- - -
-
-
-
-
-
- - -
-
-
-
-
-
- - -
-
-
-
-
-
-