Merge branch 'develop' of http://10.0.6.99/gwall/gwall.git into develop

This commit is contained in:
chenjinsong
2018-04-09 17:43:06 +08:00
19 changed files with 520 additions and 485 deletions

View File

@@ -1,11 +1,14 @@
package com.nis.web.controller;
import java.beans.PropertyEditorSupport;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringEscapeUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -14,6 +17,19 @@ import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.ServiceConfigInfo;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.basics.SysDictInfo;
import com.nis.domain.configuration.AreaBean;
import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.BaseCfg;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.BaseStringCfg;
import com.nis.domain.configuration.ComplexkeywordCfg;
import com.nis.domain.configuration.NumBoundaryCfg;
import com.nis.domain.configuration.RequestInfo;
import com.nis.main.ConvertTool;
import com.nis.util.Constants;
import com.nis.util.DateUtils;
import com.nis.util.JsonMapper;
import com.nis.web.service.ArchiveServcie;
@@ -29,9 +45,9 @@ import com.nis.web.service.basics.ServiceDictInfoService;
import com.nis.web.service.basics.SysDictInfoService;
import com.nis.web.service.configuration.AppCfgService;
import com.nis.web.service.configuration.ComplexStringCfgService;
import com.nis.web.service.configuration.DnsIpCfgService;
import com.nis.web.service.configuration.FtpCfgService;
import com.nis.web.service.configuration.IpCfgService;
import com.nis.web.service.configuration.DnsIpCfgService;
import com.nis.web.service.configuration.MailCfgService;
import com.nis.web.service.configuration.MediaCfgService;
import com.nis.web.service.configuration.NumCfgService;
@@ -227,4 +243,232 @@ public class BaseController {
}
});
}
protected void initPageCondition(Model model){
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
}
protected void initFormCondition(Model model){
List<RequestInfo> requestInfos=requestInfoService.getValidRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findLableDict();
model.addAttribute("lables", lables);
List<Integer> itTypeList=new ArrayList<Integer>();
itTypeList.add(Constants.ITEM_TYPE_AREA);
List<SysDictInfo> areas = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("areas", areas);
itTypeList.clear();
itTypeList.add(Constants.ITEM_TYPE_ISP);
List<SysDictInfo> isps = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("isps", isps);
//初始化一个默认的地域ip给界面
AreaIpCfg areaIpCfg=new AreaIpCfg();
areaIpCfg.initDefaultValue();
model.addAttribute("_areaCfg", areaIpCfg);
}
protected void initUpdateFormCondition(Model model,BaseCfg cfg){
//查询配置对应的地域ip
List<AreaIpCfg> areaCfgs=ipCfgService.getAreaCfgByCompileId(cfg.getCompileId());
model.addAttribute("areaCfgs", areaCfgs);
StringBuffer areaCfgIds=new StringBuffer();
for(AreaIpCfg areaCfg:areaCfgs){
areaCfgIds.append(areaCfg.getCfgId()+",");
}
//update时判断是否有删除地域ip
model.addAttribute("areaCfgIds", areaCfgIds.toString());
//初始化一个默认的地域ip给界面
AreaIpCfg areaIpCfg=new AreaIpCfg();
areaIpCfg.initDefaultValue();
model.addAttribute("_areaCfg", areaIpCfg);
//从区域生效ID中获取区域与运营商
String areaEffectiveIds=cfg.getAreaEffectiveIds();
List<AreaBean> areaIspList=new ArrayList<AreaBean>();
if(StringUtils.isNotBlank(areaEffectiveIds)){
String[] areaIsps=areaEffectiveIds.split(",");
for(String areaIsp:areaIsps){
AreaBean area=new AreaBean();
if(areaIsp.contains(":")){
area.setArea(areaIsp.split(":")[0]);
area.setIsp(areaIsp.split(":")[1]);
}else{
area.setArea(areaIsp);
}
areaIspList.add(area);
}
}
model.addAttribute("_areaIsps", areaIspList);
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
List<Integer> itTypeList=new ArrayList<Integer>();
itTypeList.add(Constants.ITEM_TYPE_AREA);
List<SysDictInfo> areas = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("areas", areas);
itTypeList.clear();
itTypeList.add(Constants.ITEM_TYPE_ISP);
List<SysDictInfo> isps = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("isps", isps);
}
protected void setSaveOrUpdateProps(Model model,BaseCfg cfg,String areaCfgIds) throws Exception{
String tableName=cfg.getTableName();
List<AreaIpCfg> areaCfg=cfg.getAreaCfg();
List<AreaBean> areaIsps=cfg.getAreaIsp();
if(Constants.IS_AREA_EFFECTIVE_NO==cfg.getIsAreaEffective()){
cfg.setAreaEffectiveIds("");
cfg.setAreaType(null);
}else if(Constants.IS_AREA_EFFECTIVE_YES==cfg.getIsAreaEffective()){
if(Constants.AREA_EFFECTIVE_TYPE_AREA_ISP==cfg.getAreaType()&&areaIsps!=null&&areaIsps.size()>0){
StringBuffer areaEffectiveIds=new StringBuffer();
for(int i=0;i<areaIsps.size();i++){
if(StringUtils.isNotBlank(areaIsps.get(i).getIsp())){
areaEffectiveIds.append(areaIsps.get(i).getArea()+":"+areaIsps.get(i).getIsp());
}else{
areaEffectiveIds.append(areaIsps.get(i).getArea());
}
if(i!=areaIsps.size()-1){
areaEffectiveIds.append(",");
}
}
if(StringUtils.isBlank(areaEffectiveIds.toString())){
logger.error("区域管控,且按照地域运营商管控,但是地域运营商为空!");
addMessage(model,"save_failed");
return ;
}
cfg.setAreaEffectiveIds(areaEffectiveIds.toString());
}else if(Constants.AREA_EFFECTIVE_TYPE_AREA_IP==cfg.getAreaType()&&areaCfg!=null&&areaCfg.size()>0){
cfg.setAreaEffectiveIds("");
}else{
logger.error("区域管控,但是地域+ISP以及地域IP全部为空");
addMessage(model,"save_failed");
return ;
}
}
int serviceId=cfg.getServiceId();
if(StringUtils.isBlank(tableName)){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
tableName=serviceConfigInfo.getTableName();
cfg.setTableName(tableName);
}
}
if(cfg.getCompileId()==null){
int compileId=new ConvertTool().getCompileId().intValue();
cfg.setCompileId(compileId);
}
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);
if(Constants.IS_AREA_EFFECTIVE_YES==cfg.getIsAreaEffective()&&areaCfg!=null){
for(AreaIpCfg area:areaCfg){
area.setTableName(AreaIpCfg.getTablename());
area.setServiceId(serviceId);
area.setCompileId(cfg.getCompileId());
area.setAction(cfg.getAction());
area.setIsValid(Constants.VALID_NO);
area.setIsAudit(Constants.AUDIT_NOT_YET);
area.setRequestId(cfg.getRequestId());
area.setClassify(cfg.getClassify());
area.setAttribute(cfg.getAttribute());
area.setLable(cfg.getLable());
area.setCreatorId(cfg.getCurrentUser().getId());
area.setCreateTime(date);
}
}
if(cfg instanceof BaseIpCfg){
ipCfgService.addIpCfg((BaseIpCfg)cfg,areaCfg);
}else if(cfg instanceof BaseStringCfg){
stringCfgService.addStringCfg((BaseStringCfg)cfg,areaCfg);
}else if(cfg instanceof NumBoundaryCfg){
numCfgService.addNumCfg((NumBoundaryCfg)cfg,areaCfg);
}else if(cfg instanceof ComplexkeywordCfg){
complexStringCfgService.addStringCfg((ComplexkeywordCfg)cfg,areaCfg);
}
}else{
cfg.setEditorId(cfg.getCurrentUser().getId());
cfg.setEditTime(new Date());
List<AreaIpCfg> updateAreaCfg=new ArrayList<>();
List<AreaIpCfg> deleteAreaCfg=new ArrayList<>();
List<AreaIpCfg> addAreaCfg=new ArrayList<>();
String[] cfgIds=null;
if(!StringUtils.isBlank(areaCfgIds)){
cfgIds=areaCfgIds.split(",");
}
if(Constants.IS_AREA_EFFECTIVE_YES==cfg.getIsAreaEffective()&&areaCfg!=null){
for(AreaIpCfg area:areaCfg){
area.setTableName(AreaIpCfg.getTablename());
area.setServiceId(serviceId);
area.setCompileId(cfg.getCompileId());
area.setAction(cfg.getAction());
area.setIsValid(Constants.VALID_NO);
area.setIsAudit(Constants.AUDIT_NOT_YET);
area.setRequestId(cfg.getRequestId());
area.setClassify(cfg.getClassify());
area.setAttribute(cfg.getAttribute());
area.setLable(cfg.getLable());
if(area.getCfgId()==null){
area.setCreatorId(cfg.getCurrentUser().getId());
area.setCreateTime(date);
addAreaCfg.add(area);
}else if(cfgIds!=null){
area.setEditorId(cfg.getCurrentUser().getId());
area.setEditTime(date);
boolean contains=false;
for(String cfgId:cfgIds){
if(!StringUtils.isBlank(cfgId)&&area.getCfgId().longValue()==Long.parseLong(cfgId)){
contains=true;
break;
}
}
if(contains){
updateAreaCfg.add(area);
}else{
deleteAreaCfg.add(area);
}
}
}
}else{
if(cfgIds!=null){
for(String cfgId:cfgIds){
if(!StringUtils.isBlank(cfgId)){
AreaIpCfg area=new AreaIpCfg();
area.setTableName(AreaIpCfg.getTablename());
area.setIsValid(Constants.VALID_DEL);
area.setCfgId(Long.parseLong(cfgId));
area.setEditorId(cfg.getCurrentUser().getId());
area.setEditTime(date);
deleteAreaCfg.add(area);
}
}
}
}
if(cfg instanceof BaseIpCfg){
ipCfgService.updateIpCfg((BaseIpCfg)cfg,addAreaCfg,updateAreaCfg,deleteAreaCfg);
}else if(cfg instanceof BaseStringCfg){
stringCfgService.updateStringCfg((BaseStringCfg)cfg,addAreaCfg,updateAreaCfg,deleteAreaCfg);
}else if(cfg instanceof NumBoundaryCfg){
numCfgService.updateNumCfg((NumBoundaryCfg)cfg,addAreaCfg,updateAreaCfg,deleteAreaCfg);
}else if(cfg instanceof ComplexkeywordCfg){
complexStringCfgService.updateStringCfg((ComplexkeywordCfg)cfg,addAreaCfg,updateAreaCfg,deleteAreaCfg);
}
}
addMessage(model,"save_success");
}
}

View File

@@ -1,6 +1,5 @@
package com.nis.web.controller.configuration;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -13,9 +12,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import com.nis.domain.Page;
import com.nis.domain.ServiceConfigInfo;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.configuration.ComplexkeywordCfg;
import com.nis.domain.configuration.RequestInfo;
import com.nis.main.ConvertTool;
import com.nis.util.Constants;
import com.nis.web.controller.BaseController;
@@ -48,14 +45,7 @@ public class ComplexStringCfgController extends BaseController{
model.addAttribute("page", page);
model.addAttribute("action", cfg.getAction());
model.addAttribute("tableName", tableName);
List<RequestInfo> requestInfos=requestInfoService.getValidRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
initPageCondition(model);
}
}else{
logger.error("未获取到正确的serviceId");
@@ -96,14 +86,7 @@ public class ComplexStringCfgController extends BaseController{
cfg.setServiceId(serviceId);
model.addAttribute("_cfg", cfg);
model.addAttribute("tableName", tableName);
List<RequestInfo> requestInfos=requestInfoService.getValidRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findLableDict();
model.addAttribute("lables", lables);
initFormCondition(model);
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) {
// TODO Auto-generated catch block
logger.error("打开新增IP窗口失败",e);
@@ -133,14 +116,8 @@ public class ComplexStringCfgController extends BaseController{
searchBean.setTableName(tableName);
ComplexkeywordCfg cfg=complexStringCfgService.getStringCfgById(searchBean);
model.addAttribute("_cfg", cfg);
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
model.addAttribute("tableName", tableName);
initUpdateFormCondition(model,cfg);
}catch(Exception e){
logger.error("发生异常", e);
}
@@ -157,7 +134,7 @@ public class ComplexStringCfgController extends BaseController{
* @since 1.0.0
*/
@RequestMapping(value = {"saveOrUpdateCfg"})
public String saveOrUpdateStringCfg(String cfgName,Model model, ComplexkeywordCfg cfg) {
public String saveOrUpdateStringCfg(String cfgName,Model model, ComplexkeywordCfg cfg,String areaCfgIds) {
model.addAttribute("cfgName",cfgName);
model.addAttribute("cfgType","complex");
model.addAttribute("audit", Constants.CFG_PAGE);
@@ -165,32 +142,7 @@ public class ComplexStringCfgController extends BaseController{
model.addAttribute("action",cfg.getAction());
logger.info("saveOrUpdateStringCfg loaded");
try {
String tableName=cfg.getTableName();
int serviceId=cfg.getServiceId();
if(StringUtils.isBlank(cfg.getTableName())){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
tableName=serviceConfigInfo.getTableName();
cfg.setTableName(tableName);
}
}
if(cfg.getCompileId()==null){
int compileId = new ConvertTool().getCompileId().intValue();
cfg.setCompileId(compileId);
}
cfg.setIsValid(Constants.VALID_NO);
cfg.setIsAudit(Constants.AUDIT_NOT_YET);
if(cfg.getCfgId()==null){
cfg.setCreatorId(cfg.getCurrentUser().getId());
cfg.setCreateTime(new Date());
complexStringCfgService.addStringCfg(cfg);
}else{
cfg.setEditorId(cfg.getCurrentUser().getId());
cfg.setEditTime(new Date());
complexStringCfgService.updateStringCfg(cfg);
}
addMessage(model,"save_success");
setSaveOrUpdateProps(model,cfg,areaCfgIds);
} catch (Exception e) {
// TODO Auto-generated catch block
logger.error("保存失败!",e);

View File

@@ -1,8 +1,6 @@
package com.nis.web.controller.configuration;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -16,13 +14,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import com.nis.domain.Page;
import com.nis.domain.ServiceConfigInfo;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.basics.SysDictInfo;
import com.nis.domain.configuration.AreaBean;
import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.RequestInfo;
import com.nis.exceptions.ServiceException;
import com.nis.main.ConvertTool;
import com.nis.util.Constants;
import com.nis.web.controller.BaseController;
@@ -71,14 +63,7 @@ public class IpCfgController extends BaseController{
model.addAttribute("page", page);
model.addAttribute("action", ipCfg.getAction());
model.addAttribute("tableName", tableName);
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
initPageCondition(model);
}
}else{
logger.error("未获取到正确的serviceId");
@@ -134,26 +119,7 @@ public class IpCfgController extends BaseController{
ipcfg.setServiceId(serviceId);
model.addAttribute("_cfg", ipcfg);
model.addAttribute("tableName", tableName);
List<RequestInfo> requestInfos=requestInfoService.getValidRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findLableDict();
model.addAttribute("lables", lables);
List<Integer> itTypeList=new ArrayList<Integer>();
itTypeList.add(Constants.ITEM_TYPE_AREA);
List<SysDictInfo> areas = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("areas", areas);
itTypeList.clear();
itTypeList.add(Constants.ITEM_TYPE_ISP);
List<SysDictInfo> isps = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("isps", isps);
//初始化一个默认的地域ip给界面
AreaIpCfg areaIpCfg=new AreaIpCfg();
areaIpCfg.initDefaultValue();
model.addAttribute("_areaCfg", areaIpCfg);
initFormCondition(model);
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) {
// TODO Auto-generated catch block
logger.error("打开新增IP窗口失败",e);
@@ -186,76 +152,33 @@ public class IpCfgController extends BaseController{
*/
@RequiresPermissions("sys:cfg:edit")
@RequestMapping(value = {"updateForm"})
public String updateIpCfgForm(String tableName,int action,long cfgId,String cfgName,Integer serviceId,Model model,HttpServletRequest request,HttpServletResponse response) {
public String updateIpCfgForm(String tableName,int action,long cfgId,String cfgName,Integer serviceId,Model model) {
model.addAttribute("cfgName", cfgName);
model.addAttribute("serviceId", serviceId);
model.addAttribute("action", action);
model.addAttribute("audit",Constants.CFG_PAGE);
if(StringUtils.isBlank(tableName)){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
tableName=serviceConfigInfo.getTableName();
}
}
if(!StringUtils.isBlank(tableName)){
logger.info("table name is "+tableName);
BaseIpCfg searchBean=new BaseIpCfg();
searchBean.setCfgId(cfgId);
searchBean.setTableName(tableName);
BaseIpCfg ipCfg=ipCfgService.getIpCfgById(searchBean);
model.addAttribute("_cfg", ipCfg);
model.addAttribute("tableName", tableName);
int compileId=ipCfg.getCompileId();
//查询配置对应的地域ip
List<AreaIpCfg> areaCfgs=ipCfgService.getAreaCfgByCompileId(compileId);
model.addAttribute("areaCfgs", areaCfgs);
StringBuffer areaCfgIds=new StringBuffer();
for(AreaIpCfg areaCfg:areaCfgs){
areaCfgIds.append(areaCfg.getCfgId()+",");
}
//update时判断是否有删除地域ip
model.addAttribute("areaCfgIds", areaCfgIds.toString());
//初始化一个默认的地域ip给界面
AreaIpCfg areaIpCfg=new AreaIpCfg();
areaIpCfg.initDefaultValue();
model.addAttribute("_areaCfg", areaIpCfg);
//从区域生效ID中获取区域与运营商
String areaEffectiveIds=ipCfg.getAreaEffectiveIds();
List<AreaBean> areaIspList=new ArrayList<AreaBean>();
if(StringUtils.isNotBlank(areaEffectiveIds)){
String[] areaIsps=areaEffectiveIds.split(",");
for(String areaIsp:areaIsps){
AreaBean area=new AreaBean();
if(areaIsp.contains(":")){
area.setArea(areaIsp.split(":")[0]);
area.setIsp(areaIsp.split(":")[1]);
}else{
area.setArea(areaIsp);
}
areaIspList.add(area);
try{
if(StringUtils.isBlank(tableName)){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
tableName=serviceConfigInfo.getTableName();
}
}
model.addAttribute("_areaIsps", areaIspList);
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
List<Integer> itTypeList=new ArrayList<Integer>();
itTypeList.add(Constants.ITEM_TYPE_AREA);
List<SysDictInfo> areas = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("areas", areas);
itTypeList.clear();
itTypeList.add(Constants.ITEM_TYPE_ISP);
List<SysDictInfo> isps = sysDictInfoService.findAllSysDictInfo(new SysDictInfo(),itTypeList,null);
model.addAttribute("isps", isps);
}else{
logger.error("未获取到正确的表名");
if(!StringUtils.isBlank(tableName)){
logger.info("table name is "+tableName);
BaseIpCfg searchBean=new BaseIpCfg();
searchBean.setCfgId(cfgId);
searchBean.setTableName(tableName);
BaseIpCfg ipCfg=ipCfgService.getIpCfgById(searchBean);
model.addAttribute("_cfg", ipCfg);
model.addAttribute("tableName", tableName);
initUpdateFormCondition(model,ipCfg);
}else{
logger.error("未获取到正确的表名");
}
}catch(Exception e){
logger.error("发生异常", e);
}
return "/cfg/ipCfgForm";
}
@@ -278,136 +201,7 @@ public class IpCfgController extends BaseController{
model.addAttribute("tableName", ipCfg.getTableName());
logger.info("saveOrUpdateIpCfg loaded");
try{
String tableName=ipCfg.getTableName();
List<AreaIpCfg> areaCfg=ipCfg.getAreaCfg();
List<AreaBean> areaIsps=ipCfg.getAreaIsp();
if(Constants.IS_AREA_EFFECTIVE_NO==ipCfg.getIsAreaEffective()){
ipCfg.setAreaEffectiveIds("");
ipCfg.setAreaType(null);
}else if(Constants.IS_AREA_EFFECTIVE_YES==ipCfg.getIsAreaEffective()){
if(Constants.AREA_EFFECTIVE_TYPE_AREA_ISP==ipCfg.getAreaType()&&areaIsps!=null&&areaIsps.size()>0){
StringBuffer areaEffectiveIds=new StringBuffer();
for(int i=0;i<areaIsps.size();i++){
if(StringUtils.isNotBlank(areaIsps.get(i).getIsp())){
areaEffectiveIds.append(areaIsps.get(i).getArea()+":"+areaIsps.get(i).getIsp());
}else{
areaEffectiveIds.append(areaIsps.get(i).getArea());
}
if(i!=areaIsps.size()-1){
areaEffectiveIds.append(",");
}
}
if(StringUtils.isBlank(areaEffectiveIds.toString())){
logger.error("区域管控,且按照地域运营商管控,但是地域运营商为空!");
addMessage(model,"save_failed");
return "/cfg/resultPage";
}
ipCfg.setAreaEffectiveIds(areaEffectiveIds.toString());
}else if(Constants.AREA_EFFECTIVE_TYPE_AREA_IP==ipCfg.getAreaType()&&areaCfg!=null&&areaCfg.size()>0){
ipCfg.setAreaEffectiveIds("");
}else{
logger.error("区域管控,但是地域+ISP以及地域IP全部为空");
addMessage(model,"save_failed");
return "/cfg/resultPage";
}
}
int serviceId=ipCfg.getServiceId();
if(StringUtils.isBlank(tableName)){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
tableName=serviceConfigInfo.getTableName();
ipCfg.setTableName(tableName);
}
}
if(ipCfg.getCompileId()==null){
int compileId=new ConvertTool().getCompileId().intValue();
ipCfg.setCompileId(compileId);
}
Date date=new Date();
ipCfg.setIsValid(Constants.VALID_NO);
ipCfg.setIsAudit(Constants.AUDIT_NOT_YET);
if(ipCfg.getCfgId()==null){
ipCfg.setCreatorId(ipCfg.getCurrentUser().getId());
ipCfg.setCreateTime(date);
if(Constants.IS_AREA_EFFECTIVE_YES==ipCfg.getIsAreaEffective()&&areaCfg!=null){
for(AreaIpCfg area:areaCfg){
area.setTableName(AreaIpCfg.getTablename());
area.setServiceId(serviceId);
area.setCompileId(ipCfg.getCompileId());
area.setAction(ipCfg.getAction());
area.setIsValid(Constants.VALID_NO);
area.setIsAudit(Constants.AUDIT_NOT_YET);
area.setRequestId(ipCfg.getRequestId());
area.setClassify(ipCfg.getClassify());
area.setAttribute(ipCfg.getAttribute());
area.setLable(ipCfg.getLable());
area.setCreatorId(ipCfg.getCurrentUser().getId());
area.setCreateTime(date);
}
}
ipCfgService.addIpCfg(ipCfg,areaCfg);
}else{
ipCfg.setEditorId(ipCfg.getCurrentUser().getId());
ipCfg.setEditTime(new Date());
List<AreaIpCfg> updateAreaCfg=new ArrayList<>();
List<AreaIpCfg> deleteAreaCfg=new ArrayList<>();
List<AreaIpCfg> addAreaCfg=new ArrayList<>();
String[] cfgIds=null;
if(!StringUtils.isBlank(areaCfgIds)){
cfgIds=areaCfgIds.split(",");
}
if(Constants.IS_AREA_EFFECTIVE_YES==ipCfg.getIsAreaEffective()&&areaCfg!=null){
for(AreaIpCfg area:areaCfg){
area.setTableName(AreaIpCfg.getTablename());
area.setServiceId(serviceId);
area.setCompileId(ipCfg.getCompileId());
area.setAction(ipCfg.getAction());
area.setIsValid(Constants.VALID_NO);
area.setIsAudit(Constants.AUDIT_NOT_YET);
area.setRequestId(ipCfg.getRequestId());
area.setClassify(ipCfg.getClassify());
area.setAttribute(ipCfg.getAttribute());
area.setLable(ipCfg.getLable());
if(area.getCfgId()==null){
area.setCreatorId(ipCfg.getCurrentUser().getId());
area.setCreateTime(date);
addAreaCfg.add(area);
}else if(cfgIds!=null){
area.setEditorId(ipCfg.getCurrentUser().getId());
area.setEditTime(date);
boolean contains=false;
for(String cfgId:cfgIds){
if(!StringUtils.isBlank(cfgId)&&area.getCfgId().longValue()==Long.parseLong(cfgId)){
contains=true;
break;
}
}
if(contains){
updateAreaCfg.add(area);
}else{
deleteAreaCfg.add(area);
}
}
}
}else{
if(cfgIds!=null){
for(String cfgId:cfgIds){
if(!StringUtils.isBlank(cfgId)){
AreaIpCfg area=new AreaIpCfg();
area.setTableName(AreaIpCfg.getTablename());
area.setIsValid(Constants.VALID_DEL);
area.setCfgId(Long.parseLong(cfgId));
area.setEditorId(ipCfg.getCurrentUser().getId());
area.setEditTime(date);
deleteAreaCfg.add(area);
}
}
}
}
ipCfgService.updateIpCfg(ipCfg,addAreaCfg,updateAreaCfg,deleteAreaCfg);
}
addMessage(model,"save_success");
setSaveOrUpdateProps(model,ipCfg,areaCfgIds);
}catch(Exception e){
logger.error("保存失败",e);
addMessage(model,"save_failed");

View File

@@ -42,14 +42,7 @@ public class NumCfgController extends BaseController{
Page<NumBoundaryCfg> page = numCfgService.findPage(searchPage, cfg);
model.addAttribute("page", page);
model.addAttribute("action", cfg.getAction());
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
initPageCondition(model);
}else{
logger.error("未获取到正确的serviceId");
}
@@ -68,8 +61,8 @@ public class NumCfgController extends BaseController{
model.addAttribute("audit", Constants.CFG_PAGE);
logger.info("sercice id is "+serviceId);
if(serviceId!=null){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
ServiceConfigInfo info=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(info!=null){
NumBoundaryCfg cfg=new NumBoundaryCfg();
cfg.initDefaultValue();
cfg.setAction(action);
@@ -79,14 +72,7 @@ public class NumCfgController extends BaseController{
}
cfg.setServiceId(serviceId);
model.addAttribute("_cfg", cfg);
List<RequestInfo> requestInfos=requestInfoService.getValidRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findLableDict();
model.addAttribute("lables", lables);
initFormCondition(model);
}
}else{
logger.error("未获取到正确的serviceId");
@@ -101,20 +87,13 @@ public class NumCfgController extends BaseController{
model.addAttribute("action", action);
model.addAttribute("audit", Constants.CFG_PAGE);
if(serviceId!=null){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
ServiceConfigInfo info=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(info!=null){
NumBoundaryCfg searchBean=new NumBoundaryCfg();
searchBean.setCfgId(cfgId);
NumBoundaryCfg cfg=numCfgService.getNumCfgById(searchBean);
model.addAttribute("_cfg", cfg);
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
initUpdateFormCondition(model,cfg);
}
}else{
@@ -134,34 +113,13 @@ public class NumCfgController extends BaseController{
* @since 1.0.0
*/
@RequestMapping(value = {"saveOrUpdateCfg"})
public String saveOrUpdateStringCfg(String cfgName,Model model, NumBoundaryCfg cfg) {
public String saveOrUpdateStringCfg(String cfgName,Model model, NumBoundaryCfg cfg,String areaCfgIds) {
model.addAttribute("cfgName",cfgName);
model.addAttribute("cfgType","num");
model.addAttribute("audit", Constants.CFG_PAGE);
logger.info("saveOrUpdateStringCfg loaded");
try{
int serviceId=cfg.getServiceId();
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
if(cfg.getCompileId()==null){
int compileId=new ConvertTool().getCompileId();
cfg.setCompileId(compileId);
}
cfg.setIsValid(Constants.VALID_NO);
cfg.setIsAudit(Constants.AUDIT_NOT_YET);
if(cfg.getCfgId()==null){
cfg.setCreatorId(cfg.getCurrentUser().getId());
cfg.setCreateTime(new Date());
numCfgService.addNumCfg(cfg);
}else{
cfg.setEditorId(cfg.getCurrentUser().getId());
cfg.setEditTime(new Date());
numCfgService.updateNumCfg(cfg);
}
model.addAttribute("serviceId",serviceId);
model.addAttribute("action",cfg.getAction());
addMessage(model,"save_success");
}
setSaveOrUpdateProps(model,cfg,areaCfgIds);
}catch(Exception e){
logger.error("保存失败", e);
addMessage(model,"save_failed");

View File

@@ -1,6 +1,5 @@
package com.nis.web.controller.configuration;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -13,10 +12,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import com.nis.domain.Page;
import com.nis.domain.ServiceConfigInfo;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.configuration.BaseStringCfg;
import com.nis.domain.configuration.RequestInfo;
import com.nis.main.ConvertTool;
import com.nis.util.Constants;
import com.nis.web.controller.BaseController;
@@ -48,25 +44,16 @@ public class StringCfgController extends BaseController{
model.addAttribute("page", page);
model.addAttribute("action", stringCfg.getAction());
model.addAttribute("tableName", tableName);
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
initPageCondition(model);
}
}else{
logger.error("未获取到正确的serviceId");
}
}
}
return "/cfg/stringCfgList";
}
@RequestMapping(value = {"form"})
public String stringCfgForm(int action,String cfgName,Integer serviceId,Model model,HttpServletRequest request,HttpServletResponse response) {
model.addAttribute("cfgName", cfgName);
@@ -97,14 +84,7 @@ public class StringCfgController extends BaseController{
stringcfg.setServiceId(serviceId);
model.addAttribute("_cfg", stringcfg);
model.addAttribute("tableName", tableName);
List<RequestInfo> requestInfos=requestInfoService.getValidRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findLableDict();
model.addAttribute("lables", lables);
initFormCondition(model);
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) {
// TODO Auto-generated catch block
logger.error("打开新增IP窗口失败",e);
@@ -119,7 +99,7 @@ public class StringCfgController extends BaseController{
return "/cfg/stringCfgForm";
}
@RequestMapping(value = {"updateForm"})
public String updateStringCfgForm(String tableName,int action,long cfgId,String cfgName,Integer serviceId,Model model,HttpServletRequest request,HttpServletResponse response) {
public String updateStringCfgForm(String tableName,int action,long cfgId,String cfgName,Integer serviceId,Model model) {
model.addAttribute("cfgName", cfgName);
model.addAttribute("serviceId", serviceId);
model.addAttribute("action", action);
@@ -138,14 +118,9 @@ public class StringCfgController extends BaseController{
searchBean.setTableName(tableName);
BaseStringCfg stringCfg=stringCfgService.getStringCfgById(searchBean);
model.addAttribute("_cfg", stringCfg);
List<RequestInfo> requestInfos=requestInfoService.getAllRequestInfo();
model.addAttribute("requestInfos", requestInfos);
List<ServiceDictInfo> fls=serviceDictInfoService.findAllFlDict();
model.addAttribute("fls", fls);
List<ServiceDictInfo> xzs=serviceDictInfoService.findAllXzDict();
model.addAttribute("xzs", xzs);
List<ServiceDictInfo> lables=serviceDictInfoService.findAllLableDict();
model.addAttribute("lables", lables);
model.addAttribute("tableName", tableName);
initUpdateFormCondition(model,stringCfg);
}catch (Exception e) {
// TODO: handle exception
logger.error("发生异常",e);
@@ -163,7 +138,7 @@ public class StringCfgController extends BaseController{
* @since 1.0.0
*/
@RequestMapping(value = {"saveOrUpdateCfg"})
public String saveOrUpdateStringCfg(String cfgName,Model model, BaseStringCfg stringCfg) {
public String saveOrUpdateStringCfg(String cfgName,Model model, BaseStringCfg stringCfg,String areaCfgIds) {
model.addAttribute("cfgName",cfgName);
model.addAttribute("cfgType","string");
model.addAttribute("audit", Constants.CFG_PAGE);
@@ -171,31 +146,7 @@ public class StringCfgController extends BaseController{
model.addAttribute("action",stringCfg.getAction());
logger.info("saveOrUpdateStringCfg loaded");
try{
String tableName=stringCfg.getTableName();
int serviceId=stringCfg.getServiceId();
if(StringUtils.isBlank(stringCfg.getTableName())){
ServiceConfigInfo serviceConfigInfo=serviceConfigInfoService.findSysServiceConfigInfo(serviceId);
if(serviceConfigInfo!=null){
tableName=serviceConfigInfo.getTableName();
stringCfg.setTableName(tableName);
}
}
if(stringCfg.getCompileId()==null){
int compileId=new ConvertTool().getCompileId();
stringCfg.setCompileId(compileId);
}
stringCfg.setIsValid(Constants.VALID_NO);
stringCfg.setIsAudit(Constants.AUDIT_NOT_YET);
if(stringCfg.getCfgId()==null){
stringCfg.setCreatorId(stringCfg.getCurrentUser().getId());
stringCfg.setCreateTime(new Date());
stringCfgService.addStringCfg(stringCfg);
}else{
stringCfg.setEditorId(stringCfg.getCurrentUser().getId());
stringCfg.setEditTime(new Date());
stringCfgService.updateStringCfg(stringCfg);
}
addMessage(model,"save_success");
setSaveOrUpdateProps(model,stringCfg,areaCfgIds);
}catch (Exception e) {
// TODO: handle exception
logger.error("保存失败!",e);

View File

@@ -390,7 +390,7 @@
<if test="isHexbin != null">
is_hexbin=#{isHexbin,jdbcType=INTEGER},
</if>
<if test="areaEffectiveIds != null and areaEffectiveIds != ''" >
<if test="areaEffectiveIds != null" >
area_effective_ids = #{areaEffectiveIds,jdbcType=VARCHAR},
</if>
</trim>

View File

@@ -398,7 +398,7 @@
<if test="isHexbin != null">
is_hexbin=#{isHexbin,jdbcType=INTEGER},
</if>
<if test="areaEffectiveIds != null and areaEffectiveIds != ''" >
<if test="areaEffectiveIds != null" >
area_effective_ids = #{areaEffectiveIds,jdbcType=VARCHAR},
</if>
</trim>

View File

@@ -268,8 +268,12 @@ public class AppCfgService extends CrudService<AppCfgDao,AppIdCfg> {
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public int auditAppCfg(String[] cfgIds,Integer auditState) throws Exception{
List<AppMaatCfg> jsonList = new ArrayList();
Gson gson=new GsonBuilder().disableHtmlEscaping()
.excludeFieldsWithoutExposeAnnotation()
.create();
boolean sendFlag = false;
for(String id:cfgIds){
boolean sendFlag = false;
AppIdCfg appCfg = appCfgDao.getById(Long.parseLong(id));
//给需要修改的配置字段赋值
@@ -293,12 +297,6 @@ public class AppCfgService extends CrudService<AppCfgDao,AppIdCfg> {
List<SpecificServiceHostCfg> hostList =new ArrayList();
List<BaseIpCfg> areaList = new ArrayList();
ConfigGroupInfo group = null;
Gson gson=new GsonBuilder().disableHtmlEscaping()
.excludeFieldsWithoutExposeAnnotation()
.create();
//配置审核状态即将改变后的状态
if(Constants.AUDIT_NOT_YES==auditState||
Constants.AUDIT_YES==auditState){//审核通过,取消审核通过需要发到maat
@@ -427,10 +425,18 @@ public class AppCfgService extends CrudService<AppCfgDao,AppIdCfg> {
maatCfg.setAttribute(appCfg.getAttribute()==null?"":appCfg.getAttribute());
maatCfg.setClassify(appCfg.getClassify()==null?"":appCfg.getClassify());
maatCfg.setLable(appCfg.getLable()==null?"":appCfg.getLable());
String json=gson.toJson(maatCfg);
//下发maat
// new ConvertTool().saveAppConfig(json);
sendFlag = true;
jsonList.add(maatCfg);
//修改appId配置审核下发状态
appCfgDao.audit(appCfg);
//修改特定服务IP分组下发状态
specificServiceCfgDao.updateConfigGroupInfobyGroupId(group);
//修改特征表配置审核下发状态
for(AppFeaturesIndex cfg:featuresTableList){
appCfgDao.auditFeaturesTable(cfg.getFeaturesTable(), cfg.getFeaturesCompileId(), appCfg.getIsValid(),
appCfg.getIsAudit(), appCfg.getAuditorId(), appCfg.getAuditTime());
}
}else{//取消审核通过
AppMaatCfg maatCfg = new AppMaatCfg();
@@ -483,32 +489,34 @@ public class AppCfgService extends CrudService<AppCfgDao,AppIdCfg> {
maatCfg.setComplexStrCfg(complexList);
}
String json=gson.toJson(maatCfg);
//下发maat
// new ConvertTool().saveAppConfig(json);
sendFlag = true;
jsonList.add(maatCfg);
//修改appId配置审核下发状态
appCfgDao.audit(appCfg);
//修改特定服务IP分组下发状态
specificServiceCfgDao.updateConfigGroupInfobyGroupId(group);
//修改特征表配置审核下发状态
for(AppFeaturesIndex cfg:featuresTableList){
appCfgDao.auditFeaturesTable(cfg.getFeaturesTable(), cfg.getFeaturesCompileId(), appCfg.getIsValid(),
appCfg.getIsAudit(), appCfg.getAuditorId(), appCfg.getAuditTime());
}
}
}else{
sendFlag = true;
}
if(sendFlag){
//修改appId配置审核下发状态
appCfgDao.audit(appCfg);
//修改特定服务IP分组下发状态
specificServiceCfgDao.updateConfigGroupInfobyGroupId(group);
//修改特征表配置审核下发状态
for(AppFeaturesIndex cfg:featuresTableList){
appCfgDao.auditFeaturesTable(cfg.getFeaturesTable(), cfg.getFeaturesCompileId(), appCfg.getIsValid(),
appCfg.getIsAudit(), appCfg.getAuditorId(), appCfg.getAuditTime());
}
}else{
return 0;
}
}
return 1;
String json=gson.toJson(jsonList);
//下发maat
// new ConvertTool().saveConfig(json);
sendFlag = true;
if(sendFlag){
return 1;
}else{
return 0;
}
}
/**
*

View File

@@ -1,9 +1,12 @@
package com.nis.web.service.configuration;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.ComplexkeywordCfg;
import com.nis.util.Constants;
import com.nis.web.dao.configuration.ComplexStringCfgDao;
@@ -29,7 +32,10 @@ public class ComplexStringCfgService extends CrudService<ComplexStringCfgDao,Com
* @since 1.0.0
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public int addStringCfg(ComplexkeywordCfg cfg){
public int addStringCfg(ComplexkeywordCfg cfg,List<AreaIpCfg> areaIpCfgs){
if(areaIpCfgs!=null&&areaIpCfgs.size()>0){
this.saveIpBatch(areaIpCfgs);
}
return complexStringCfgDao.insert(cfg);
}
/**
@@ -43,8 +49,17 @@ public class ComplexStringCfgService extends CrudService<ComplexStringCfgDao,Com
* @since 1.0.0
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public int updateStringCfg(ComplexkeywordCfg cfg){
return complexStringCfgDao.updateByPrimaryKeySelective(cfg);
public int updateStringCfg(ComplexkeywordCfg cfg,List<AreaIpCfg> addAreaCfg,List<AreaIpCfg> updateAreaCfg,List<AreaIpCfg> deleteAreaCfgs){
if(addAreaCfg!=null&&addAreaCfg.size()>0){
this.saveIpBatch(addAreaCfg);
}
if(updateAreaCfg!=null&&updateAreaCfg.size()>0){
this.updateIpBatch(updateAreaCfg);
}
if(deleteAreaCfgs!=null&&deleteAreaCfgs.size()>0){
this.deleteIpBatch(deleteAreaCfgs);
}
return complexStringCfgDao.updateByPrimaryKeySelective(cfg);
}
/**
*

View File

@@ -1,9 +1,12 @@
package com.nis.web.service.configuration;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.NumBoundaryCfg;
import com.nis.util.Constants;
import com.nis.web.dao.configuration.NumCfgDao;
@@ -29,7 +32,10 @@ public class NumCfgService extends CrudService<NumCfgDao,NumBoundaryCfg> {
* @since 1.0.0
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public int addNumCfg(NumBoundaryCfg cfg){
public int addNumCfg(NumBoundaryCfg cfg,List<AreaIpCfg> areaIpCfgs){
if(areaIpCfgs!=null&&areaIpCfgs.size()>0){
this.saveIpBatch(areaIpCfgs);
}
return numCfgDao.insert(cfg);
}
/**
@@ -43,7 +49,16 @@ public class NumCfgService extends CrudService<NumCfgDao,NumBoundaryCfg> {
* @since 1.0.0
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public int updateNumCfg(NumBoundaryCfg cfg){
public int updateNumCfg(NumBoundaryCfg cfg,List<AreaIpCfg> addAreaCfg,List<AreaIpCfg> updateAreaCfg,List<AreaIpCfg> deleteAreaCfgs){
if(addAreaCfg!=null&&addAreaCfg.size()>0){
this.saveIpBatch(addAreaCfg);
}
if(updateAreaCfg!=null&&updateAreaCfg.size()>0){
this.updateIpBatch(updateAreaCfg);
}
if(deleteAreaCfgs!=null&&deleteAreaCfgs.size()>0){
this.deleteIpBatch(deleteAreaCfgs);
}
return numCfgDao.updateByPrimaryKeySelective(cfg);
}
/**

View File

@@ -1,9 +1,12 @@
package com.nis.web.service.configuration;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.BaseStringCfg;
import com.nis.util.Constants;
import com.nis.web.dao.configuration.StringCfgDao;
@@ -29,7 +32,10 @@ public class StringCfgService extends CrudService<StringCfgDao,BaseStringCfg> {
* @since 1.0.0
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public int addStringCfg(BaseStringCfg baseStringCfg){
public int addStringCfg(BaseStringCfg baseStringCfg,List<AreaIpCfg> areaIpCfgs){
if(areaIpCfgs!=null&&areaIpCfgs.size()>0){
this.saveIpBatch(areaIpCfgs);
}
return stringCfgDao.insert(baseStringCfg);
}
/**
@@ -43,7 +49,16 @@ public class StringCfgService extends CrudService<StringCfgDao,BaseStringCfg> {
* @since 1.0.0
*/
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
public int updateStringCfg(BaseStringCfg baseStringCfg){
public int updateStringCfg(BaseStringCfg baseStringCfg,List<AreaIpCfg> addAreaCfg,List<AreaIpCfg> updateAreaCfg,List<AreaIpCfg> deleteAreaCfgs){
if(addAreaCfg!=null&&addAreaCfg.size()>0){
this.saveIpBatch(addAreaCfg);
}
if(updateAreaCfg!=null&&updateAreaCfg.size()>0){
this.updateIpBatch(updateAreaCfg);
}
if(deleteAreaCfgs!=null&&deleteAreaCfgs.size()>0){
this.deleteIpBatch(deleteAreaCfgs);
}
return stringCfgDao.updateByPrimaryKeySelective(baseStringCfg);
}
/**

View File

@@ -3,8 +3,8 @@
<script type="text/javascript">
$(function(){
$(".glyphicon-plus").on("click",function(){
var obj=$(this).parents(".form-section").next(".container").clone();
var len=$(this).parents("div").find(".container:visible").size();
var obj=$(this).parents(".form-section").next(".container-fluid").clone();
var len=$(this).parents("div").find(".container-fluid:visible").size();
if($(this).parent().parent().parent().attr("id")=="areaIp"){
obj.find("[id^='_areaCfg']").each(function(){
var name=$(this).attr("id").replace("_areaCfg.","");
@@ -18,7 +18,7 @@ $(function(){
switchIpType($(this));
});
obj.appendTo("#areaIp");
$("#areaIsp").find(".container").each(function(){
$("#areaIsp").find(".container-fluid").each(function(){
if(!$(this).hasClass("hidden")) $(this).remove();
});
}else if($(this).parent().parent().parent().attr("id")=="areaIsp"){
@@ -33,7 +33,7 @@ $(function(){
});
obj.removeClass("hidden");
obj.appendTo("#areaIsp");
$("#areaIp").find(".container").each(function(){
$("#areaIp").find(".container-fluid").each(function(){
if(!$(this).hasClass("hidden")) $(this).remove();
});
}
@@ -41,12 +41,12 @@ $(function(){
});
function delAreaIp(obj){
var thisObj=$(obj);
thisObj.parents(".container").remove();
var len=$("#areaIp").find(".container:visible").size();
thisObj.parents(".container-fluid").remove();
var len=$("#areaIp").find(".container-fluid:visible").size();
//调整角标
if(len>0){
len--;
$("#areaIp").find(".container:visible").each(function(){
$("#areaIp").find(".container-fluid:visible").each(function(){
$(this).find("[name^='areaCfg']").each(function(){
var name=$(this).attr("name");
name=name.substring(name.lastIndexOf(".")+1,name.length);
@@ -59,11 +59,11 @@ function delAreaIp(obj){
}
function delAreaIsp(obj){
var thisObj=$(obj);
thisObj.parents(".container").remove();
var len=$("#areaIsp").find(".container:visible").size();
thisObj.parents(".container-fluid").remove();
var len=$("#areaIsp").find(".container-fluid:visible").size();
if(len>0){
len--;
$("#areaIsp").find(".container:visible").each(function(){
$("#areaIsp").find(".container-fluid:visible").each(function(){
$(this).find("[name^='areaIsp']").each(function(){
var name=$(this).attr("name");
name=name.substring(name.lastIndexOf(".")+1,name.length);
@@ -77,10 +77,10 @@ function delAreaIsp(obj){
</script>
<div class="hidden" id="areaIsp">
<h4 class="form-section"><spring:message code="area"/> <spring:message code="isp"/><small><span class="glyphicon glyphicon-plus" title="add"></span></small></h4>
<div class="container hidden">
<div class="container-fluid hidden">
<div class="row">
<div class="pull-right">
<span class="glyphicon glyphicon-remove" title="remove" onClick="delAreaIsp(this);"/>
<span class="glyphicon glyphicon-remove pull-right" title="remove" onClick="delAreaIsp(this);"/>
</div>
</div>
<div class="row">
@@ -114,7 +114,7 @@ function delAreaIsp(obj){
</div>
</div>
<c:forEach items="${_areaIsps}" var="areaIsp" varStatus="status">
<div class="container">
<div class="container-fluid">
<div class="row">
<div class="pull-right">
<span class="glyphicon glyphicon-remove" title="remove" onClick="delAreaIsp(this);"/>
@@ -159,7 +159,7 @@ function delAreaIsp(obj){
</div>
<div class="hidden" id="areaIp">
<h4 class="form-section"><spring:message code="area"/> ip<small><span class="glyphicon glyphicon-plus" title="add"></span></small></h4>
<div class="container hidden">
<div class="container-fluid hidden">
<div class="row">
<input type="hidden" id="_areaCfg.isAreaEffective" value="${_areaCfg.isAreaEffective}">
<div class="pull-right">
@@ -303,7 +303,7 @@ function delAreaIsp(obj){
</div>
<input type="hidden" name="areaCfgIds" value="${areaCfgIds}">
<c:forEach items="${areaCfgs}" var ="areaCfg" varStatus="status">
<div class="container">
<div class="container-fluid">
<div class="row">
<input type="hidden" name="areaCfg[${status.index}].isAreaEffective" value="${areaCfg.isAreaEffective}">
<div class="pull-right">

View File

@@ -106,12 +106,19 @@
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="area_effect_id"></spring:message></label>
<div class="hidden areaType col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="区域管控类型"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="areaEffectiveIds" value="${_cfg.areaEffectiveIds}">
<label class="radio-inline">
<input type="radio" name="areaType" value="1" class="required"><spring:message code="area"/> <spring:message code="isp"/>
</label>
<label class="radio-inline">
<input type="radio" name="areaType" value="0" class="required"><spring:message code="area"/> ip
</label>
</div>
<div for="areaType"></div>
<input class="form-control" type="hidden" name="areaEffectiveIds" value="${_cfg.areaEffectiveIds}">
</div>
</div>
</div>

View File

@@ -205,14 +205,14 @@
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="区域管控类型"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="areaType" value="1"><spring:message code="area"/> <spring:message code="isp"/>
<input type="radio" name="areaType" value="1" class="required"><spring:message code="area"/> <spring:message code="isp"/>
</label>
<label class="radio-inline">
<input type="radio" name="areaType" value="0"><spring:message code="area"/> ip
<input type="radio" name="areaType" value="0" class="required"><spring:message code="area"/> ip
</label>
</div>
<div for="areaType"></div>
<input class="form-control" type="hidden" name="areaEffectiveIds" value="${_cfg.areaEffectiveIds}">
<div for="areaEffectiveIds"></div>
</div>
</div>
</div>

View File

@@ -104,7 +104,7 @@
</div>
</div>
<div class="row">
<div class="col-md-6">
<%-- <div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="area_effect_id"></spring:message></label>
<div class="col-md-6">
@@ -112,6 +112,21 @@
</div>
<div for="areaEffectiveIds"></div>
</div>
</div> --%>
<div class="hidden areaType col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="区域管控类型"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="areaType" value="1" class="required"><spring:message code="area"/> <spring:message code="isp"/>
</label>
<label class="radio-inline">
<input type="radio" name="areaType" value="0" class="required"><spring:message code="area"/> ip
</label>
</div>
<div for="areaType"></div>
<input class="form-control" type="hidden" name="areaEffectiveIds" value="${_cfg.areaEffectiveIds}">
</div>
</div>
</div>
</c:otherwise>

View File

@@ -5,9 +5,40 @@
<title><spring:message code="${cfgName}"></spring:message></title>
<script type="text/javascript">
$(function(){
$("#save").on("click",function(){
$("#cfgFrom").attr("action","${ctx}/cfg/complex/saveOrUpdateCfg");
$("#save").submit();
switchIpType($("select[name$='ipType']"));
areaControlInit();
$("input[name='isAreaEffective']").on('change',function(){
var val=$(this).val();
if(val==1){
$(".areaType").removeClass("hidden");
if($("input[name='areaType']:checked").val()==1){//areaISP
$("#areaIsp").removeClass("hidden");
}else if($("input[name='areaType']:checked").val()==0){//areaIp
$("#areaIp").removeClass("hidden");
}
}else{
$(".areaType").addClass("hidden");
$("#areaIp").addClass("hidden");
$("#areaIsp").addClass("hidden");
}
});
$("select[name$='ipType']").on("change",function(){
switchIpType($(this));
});
$("input[name='areaType']").on('change',function(){
var val=$(this).val();
if($(this).is(":visible")){
if(val==0){
$("#areaIp").removeClass("hidden");
$("#areaIsp").addClass("hidden");
}else{
$("#areaIsp").removeClass("hidden");
$("#areaIp").addClass("hidden");
}
}else{
$("#areaIsp").addClass("hidden");
$("#areaIp").addClass("hidden");
}
});
$("#cancel").on("click",function(){
window.history.back();
@@ -51,7 +82,7 @@ $(function(){
</div>
<div class="portlet-body form">
<!-- BEGIN FORM-->
<form id="cfgFrom" action="#" method="post" class="form-horizontal">
<form id="cfgFrom" action="${ctx}/cfg/complex/saveOrUpdateCfg" method="post" class="form-horizontal">
<div class="form-body">
<%@include file="/WEB-INF/include/form/complexInfo.jsp" %>
<c:if test="${not empty _cfg.cfgId}">
@@ -68,6 +99,7 @@ $(function(){
<input type="hidden" name="district" value="${_cfg.district}">
<c:choose>
<c:when test="${action!=5 and action!=8}">
<%@include file="/WEB-INF/include/form/areaInfo.jsp" %>
<%@include file="/WEB-INF/include/form/basicInfo.jsp" %>
</c:when>
<c:otherwise>

View File

@@ -7,20 +7,7 @@
<script type="text/javascript">
$(function(){
switchIpType($("select[name$='ipType']"));
if($("input[name='isAreaEffective']:checked").val()==1){
$(".areaType").removeClass("hidden");
if($("input[name='areaEffectiveIds']").val()){
$(".areaType").find("[value='1']").prop("checked",true);
$("#areaIsp").removeClass("hidden");
$("#areaIp").addClass("hidden");
}else{
$(".areaType").find("[value='0']").prop("checked",true);
$("#areaIp").removeClass("hidden");
$("#areaIsp").addClass("hidden");
}
}else{
$("input[name='areaEffectiveIds']").val("");
}
areaControlInit();
$("input[name='isAreaEffective']").on('change',function(){
var val=$(this).val();
if(val==1){
@@ -51,17 +38,12 @@ $(function(){
$("#areaIp").addClass("hidden");
}
});
$("#save").on("click",function(){
$("#ipCfgFrom").attr("action","${ctx}/cfg/ip/saveOrUpdateCfg");
$("#save").submit();
});
$("#cancel").on("click",function(){
window.history.back();
});
$("select[name$='ipType']").on("change",function(){
switchIpType($(this));
});
$("#ipCfgFrom").validate({
errorPlacement: function(error,element){
$(element).parents(".form-group").find("div[for='"+element.attr("name")+"']").append(error);
@@ -92,7 +74,7 @@ $(function(){
</div>
<div class="portlet-body form">
<!-- BEGIN FORM-->
<form id="ipCfgFrom" action="#" method="post" class="form-horizontal">
<form id="ipCfgFrom" action="${ctx}/cfg/ip/saveOrUpdateCfg" method="post" class="form-horizontal">
<div class="form-body">
<%@include file="/WEB-INF/include/form/ipInfo.jsp" %>
<c:if test="${not empty _cfg.cfgId}">

View File

@@ -5,6 +5,38 @@
<title><spring:message code="${cfgName}"></spring:message></title>
<script type="text/javascript">
$(function(){
switchIpType($("select[name$='ipType']"));
areaControlInit();
$("input[name='isAreaEffective']").on('change',function(){
var val=$(this).val();
if(val==1){
$(".areaType").removeClass("hidden");
if($("input[name='areaType']:checked").val()==1){//areaISP
$("#areaIsp").removeClass("hidden");
}else if($("input[name='areaType']:checked").val()==0){//areaIp
$("#areaIp").removeClass("hidden");
}
}else{
$(".areaType").addClass("hidden");
$("#areaIp").addClass("hidden");
$("#areaIsp").addClass("hidden");
}
});
$("input[name='areaType']").on('change',function(){
var val=$(this).val();
if($(this).is(":visible")){
if(val==0){
$("#areaIp").removeClass("hidden");
$("#areaIsp").addClass("hidden");
}else{
$("#areaIsp").removeClass("hidden");
$("#areaIp").addClass("hidden");
}
}else{
$("#areaIsp").addClass("hidden");
$("#areaIp").addClass("hidden");
}
});
$("#cfgFrom").validate({
errorPlacement: function(error,element){
$(element).parents(".form-group").find("div[for='"+element.attr("name")+"']").append(error);
@@ -15,10 +47,9 @@ $(function(){
},
errorContainer: "#messageBox",
});
$("#save").on("click",function(){
$("#cfgFrom").attr("action","${ctx}/cfg/string/saveOrUpdateCfg");
$("#save").submit();
});
$("select[name$='ipType']").on("change",function(){
switchIpType($(this));
});
$("#cancel").on("click",function(){
window.history.back();
});
@@ -51,7 +82,7 @@ $(function(){
</div>
<div class="portlet-body form">
<!-- BEGIN FORM-->
<form id="cfgFrom" action="#" method="post" class="form-horizontal">
<form id="cfgFrom" action="${ctx}/cfg/string/saveOrUpdateCfg" method="post" class="form-horizontal">
<div class="form-body">
<%@include file="/WEB-INF/include/form/stringInfo.jsp" %>
<c:if test="${not empty _cfg.cfgId}">

View File

@@ -65,4 +65,20 @@ var switchIpType=function(obj){
$(dstIp).val("::");
}
}
}
var areaControlInit=function(){
if($("input[name='isAreaEffective']:checked").val()==1){
$(".areaType").removeClass("hidden");
if($("input[name='areaEffectiveIds']").val()){
$(".areaType").find("[value='1']").prop("checked",true);
$("#areaIsp").removeClass("hidden");
$("#areaIp").addClass("hidden");
}else{
$(".areaType").find("[value='0']").prop("checked",true);
$("#areaIp").removeClass("hidden");
$("#areaIsp").addClass("hidden");
}
}else{
$("input[name='areaEffectiveIds']").val("");
}
}