develop

Conflicts:
	src/main/java/com/nis/web/controller/configuration/ntc/IpController.java
	限速模板增加ratelimit字段,修改导出protocol注释信息
This commit is contained in:
duandongmei
2018-10-17 11:10:50 +08:00
20 changed files with 719 additions and 225 deletions

View File

@@ -32,13 +32,16 @@ public class AppPolicyCfg extends BaseCfg<AppPolicyCfg> {
private static final long serialVersionUID = -5679998383250783571L; private static final long serialVersionUID = -5679998383250783571L;
private static final String tableName="app_policy_cfg"; private static final String tableName="app_policy_cfg";
@Expose @Expose
@ExcelField(title="cfg_id",sort=0)
private Integer compileId; private Integer compileId;
@Expose @Expose
private String ratelimit; private String ratelimit;
private Integer appCode;//specific_service_cfg表一级节点的spec_service_code private Integer appCode;//specific_service_cfg表一级节点的spec_service_code
private Integer behavCode;//specific_service_cfg表二级节点的spec_service_code private Integer behavCode;//specific_service_cfg表二级节点的spec_service_code
private Integer specServiceId; private Integer specServiceId;
@ExcelField(title="basic_protocol",sort=2)
private String appName; private String appName;
@ExcelField(title="behaviour_type",sort=3)
private String behavName; private String behavName;
private String cfgKeywords; private String cfgKeywords;
private String userRegion1; private String userRegion1;
@@ -48,8 +51,30 @@ public class AppPolicyCfg extends BaseCfg<AppPolicyCfg> {
private String userRegion5; private String userRegion5;
private String configType; private String configType;
@ExcelField(title="encrypted_tunnel_behavior",sort=2)
private String behaviorName;
@ExcelField(title="social_app",sort=2)
private String socialName;
public String getBehaviorName() {
return behaviorName;
}
public void setBehaviorName(String behaviorName) {
this.behaviorName = behaviorName;
}
public String getSocialName() {
return socialName;
}
public void setSocialName(String socialName) {
this.socialName = socialName;
}
public String getConfigType() { public String getConfigType() {
return configType; return configType;
} }

View File

@@ -72,18 +72,18 @@ public class BaseCfg<T> extends BaseEntity<T> implements Cloneable{
* GK类型 * GK类型
*/ */
@Expose @Expose
@ExcelField(title="action",dictType="SERVICE_ACTION",sort=2) @ExcelField(title="action",dictType="SERVICE_ACTION",sort=20)
protected Integer action; protected Integer action;
/** /**
* 有效标识 * 有效标识
*/ */
@ExcelField(title="valid_identifier",dictType="VALID_IDENTIFIER",sort=9) @ExcelField(title="valid_identifier",dictType="VALID_IDENTIFIER",sort=90)
@Expose @Expose
protected Integer isValid; protected Integer isValid;
/** /**
* 是否审核 * 是否审核
*/ */
@ExcelField(title="is_audit",dictType="AUDIT_STATUS",sort=10) @ExcelField(title="is_audit",dictType="AUDIT_STATUS",sort=100)
protected Integer isAudit; protected Integer isAudit;
/** /**
* 创建人员 * 创建人员
@@ -92,12 +92,12 @@ public class BaseCfg<T> extends BaseEntity<T> implements Cloneable{
/** /**
* 创建人员 * 创建人员
*/ */
@ExcelField(title="creator",sort=11) @ExcelField(title="creator",sort=110)
protected String creatorName; protected String creatorName;
/** /**
* 配置时间 * 配置时间
*/ */
@ExcelField(title="config_time",sort=12) @ExcelField(title="config_time",sort=120)
protected Date createTime; protected Date createTime;
/** /**
* 修改人员 * 修改人员
@@ -106,12 +106,12 @@ public class BaseCfg<T> extends BaseEntity<T> implements Cloneable{
/** /**
* 创建人员 * 创建人员
*/ */
@ExcelField(title="editor",sort=13) @ExcelField(title="editor",sort=130)
protected String editorName; protected String editorName;
/** /**
* 修改时间 * 修改时间
*/ */
@ExcelField(title="edit_time",sort=14) @ExcelField(title="edit_time",sort=140)
protected Date editTime; protected Date editTime;
/** /**
* 审核人员 * 审核人员
@@ -120,13 +120,13 @@ public class BaseCfg<T> extends BaseEntity<T> implements Cloneable{
/** /**
* 审核人员 * 审核人员
*/ */
@ExcelField(title="auditor",sort=15) @ExcelField(title="auditor",sort=150)
protected String auditorName; protected String auditorName;
/** /**
* 审核时间 * 审核时间
*/ */
@Expose @Expose
@ExcelField(title="audit_time",sort=16) @ExcelField(title="audit_time",sort=160)
@SerializedName("opTime") @SerializedName("opTime")
protected Date auditTime; protected Date auditTime;
/** /**
@@ -142,27 +142,27 @@ public class BaseCfg<T> extends BaseEntity<T> implements Cloneable{
/** /**
* 来函 * 来函
*/ */
@ExcelField(title="letter",sort=5) @ExcelField(title="letter",sort=50)
protected String requestName; protected String requestName;
/** /**
* 是否区域gk * 是否区域gk
*/ */
@ExcelField(title="whether_area_block",dictType="WHETHER_AREA_BLOCK",sort=4) @ExcelField(title="whether_area_block",dictType="WHETHER_AREA_BLOCK",sort=40)
protected Integer isAreaEffective; protected Integer isAreaEffective;
/** /**
* 分类 * 分类
*/ */
@ExcelField(title="classification",dictType="type",sort=6) @ExcelField(title="classification",dictType="type",sort=60)
protected String classify; protected String classify;
/** /**
* 性质 * 性质
*/ */
@ExcelField(title="attribute",dictType="attribute",sort=7) @ExcelField(title="attribute",dictType="attribute",sort=70)
protected String attribute; protected String attribute;
/** /**
* 标签 * 标签
*/ */
@ExcelField(title="label",dictType="label",sort=8) @ExcelField(title="label",dictType="label",sort=80)
protected String lable; protected String lable;
/** /**
* 分类 * 分类
@@ -213,7 +213,7 @@ public class BaseCfg<T> extends BaseEntity<T> implements Cloneable{
/** /**
* do_log属性在界面do_log:0不需要1记录所有日志2只记录结构化日志。默认是2 * do_log属性在界面do_log:0不需要1记录所有日志2只记录结构化日志。默认是2
*/ */
@ExcelField(title="do_log",dictType="DO_LOG",sort=3) @ExcelField(title="do_log",dictType="DO_LOG",sort=30)
protected Integer doLog = Constants.MAAT_CFG_DOLOG_DEFAULT; protected Integer doLog = Constants.MAAT_CFG_DOLOG_DEFAULT;

View File

@@ -9,7 +9,7 @@ import com.nis.util.excel.ExcelField;
public class IpRateLimitTemplate extends IpAllTemplate { public class IpRateLimitTemplate extends IpAllTemplate {
private String userRegion1; private String userRegion1;
@ExcelField(title="rate_limte",align=2,sort=2) @ExcelField(title="ratelimit",dictType="RATE_LIMIT",align=2,sort=2)
public String getUserRegion1() { public String getUserRegion1() {
return userRegion1; return userRegion1;
} }

View File

@@ -17,15 +17,15 @@ public class PxyHttpLog extends BaseLogEntity<NtcIpLog> {
private String respHeader; private String respHeader;
private String reqBody; private String reqBody;
private String resBody; private String resBody;
private String webSite; private String website;
public String getWebSite() { public String getWebsite() {
return webSite; return website;
} }
public void setWebSite(String webSite) { public void setWebsite(String website) {
this.webSite = webSite; this.website = website;
} }
public String getUrl() { public String getUrl() {
return url; return url;

View File

@@ -133,7 +133,6 @@ public class ExportExcel {
} }
public String[] validRegionFieldAndSetComment(String headerStr,String commentStr,FunctionRegionDict region,FunctionServiceDict service,Properties msgProp){ public String[] validRegionFieldAndSetComment(String headerStr,String commentStr,FunctionRegionDict region,FunctionServiceDict service,Properties msgProp){
String[] titleInfo=new String[2]; String[] titleInfo=new String[2];
if(region.getIsMaat().equals(1)){//maat
if(region.getRegionType().equals(1)){//IP配置 if(region.getRegionType().equals(1)){//IP配置
//ip配置需要导入的信息srcIp srcPort destIp destPort Protocol Direction //ip配置需要导入的信息srcIp srcPort destIp destPort Protocol Direction
//确定需要导入的srcIp srcPort destIp destPort信息 //确定需要导入的srcIp srcPort destIp destPort信息
@@ -240,35 +239,32 @@ public class ExportExcel {
if("protocol".equals(headerStr)){ if("protocol".equals(headerStr)){
if(service.getFunctionId().equals(5) ){ if(service.getFunctionId().equals(5) ){
commentStr=""; commentStr="";
//block tcp
if(service.getAction().equals(16) ){
List<SysDataDictionaryItem> protocol=DictUtils.getDictList("PROTOCOL"); List<SysDataDictionaryItem> protocol=DictUtils.getDictList("PROTOCOL");
if(protocol !=null && protocol.size()>0){ if(protocol !=null && protocol.size()>0){
for (SysDataDictionaryItem sysDataDictionaryItem : protocol) { for (SysDataDictionaryItem sysDataDictionaryItem : protocol) {
if(service.getAction().equals(16) && sysDataDictionaryItem.getItemCode().equals(6)){ if(sysDataDictionaryItem.getItemCode().equals(6)){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
}
if(service.getAction().equals(1) &&
(sysDataDictionaryItem.getItemCode().equals(6)
|| sysDataDictionaryItem.getItemCode().equals(17)
|| sysDataDictionaryItem.getItemCode().equals(0) )){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
}
if(service.getAction().equals(32) &&
(sysDataDictionaryItem.getItemCode().equals(6)
|| sysDataDictionaryItem.getItemCode().equals(17)
|| sysDataDictionaryItem.getItemCode().equals(1)
|| sysDataDictionaryItem.getItemCode().equals(15)
|| sysDataDictionaryItem.getItemCode().equals(51)
|| sysDataDictionaryItem.getItemCode().equals(50))){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
}
if(service.getAction().equals(64) &&
(sysDataDictionaryItem.getItemCode().equals(6)
|| sysDataDictionaryItem.getItemCode().equals(17) )){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n"; commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
} }
} }
} }
}else{
commentStr="";
List<SysDataDictionaryItem> protocol=DictUtils.getDictList("PROTOCOL");
if(protocol !=null && protocol.size()>0){
for (SysDataDictionaryItem sysDataDictionaryItem : protocol) {
if((","+region.getConfigProtocol()+",").indexOf(","+sysDataDictionaryItem.getItemCode()+",") >-1){
if(StringUtil.isEmpty(msgProp.getProperty(sysDataDictionaryItem.getItemValue()))){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
}else{
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+msgProp.getProperty(sysDataDictionaryItem.getItemValue())+"\n";
}
}
}
}
}
}else{ }else{
if(StringUtil.isEmpty(region.getConfigProtocol())){ if(StringUtil.isEmpty(region.getConfigProtocol())){
headerStr=""; headerStr="";
@@ -278,7 +274,7 @@ public class ExportExcel {
List<SysDataDictionaryItem> protocol=DictUtils.getDictList("PROTOCOL"); List<SysDataDictionaryItem> protocol=DictUtils.getDictList("PROTOCOL");
if(protocol !=null && protocol.size()>0){ if(protocol !=null && protocol.size()>0){
for (SysDataDictionaryItem sysDataDictionaryItem : protocol) { for (SysDataDictionaryItem sysDataDictionaryItem : protocol) {
if((","+region.getConfigProtocol()+",").indexOf(","+sysDataDictionaryItem.getItemCode()+",") >0){ if((","+region.getConfigProtocol()+",").indexOf(","+sysDataDictionaryItem.getItemCode()+",") >-1){
if(StringUtil.isEmpty(msgProp.getProperty(sysDataDictionaryItem.getItemValue()))){ if(StringUtil.isEmpty(msgProp.getProperty(sysDataDictionaryItem.getItemValue()))){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n"; commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
}else{ }else{
@@ -287,6 +283,10 @@ public class ExportExcel {
} }
} }
if(StringUtil.isEmpty(commentStr)){
headerStr="";
commentStr="";
}
} }
} }
} }
@@ -294,7 +294,7 @@ public class ExportExcel {
//导入的Direction //导入的Direction
if("direction".equals(headerStr)){ if("direction".equals(headerStr)){
if(StringUtil.isEmpty(region.getConfigProtocol())){ if(StringUtil.isEmpty(region.getConfigDirection())){
headerStr=""; headerStr="";
commentStr=""; commentStr="";
}else{ }else{
@@ -302,6 +302,26 @@ public class ExportExcel {
List<SysDataDictionaryItem> direction=DictUtils.getDictList("DIRECTION"); List<SysDataDictionaryItem> direction=DictUtils.getDictList("DIRECTION");
if(direction !=null && direction.size()>0){ if(direction !=null && direction.size()>0){
for (SysDataDictionaryItem sysDataDictionaryItem : direction) { for (SysDataDictionaryItem sysDataDictionaryItem : direction) {
if(((","+region.getConfigDirection()+",").indexOf(sysDataDictionaryItem.getItemCode()) >-1) && StringUtil.isEmpty(msgProp.getProperty(sysDataDictionaryItem.getItemValue()))){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
}else if((","+region.getConfigDirection()+",").indexOf(sysDataDictionaryItem.getItemCode()) >-1){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+msgProp.getProperty(sysDataDictionaryItem.getItemValue())+"\n";
}
}
if(StringUtil.isEmpty(commentStr)){
headerStr="";
commentStr="";
}
}
}
}
//导入的限速
if("ratelimit".equals(headerStr)){
commentStr="";
List<SysDataDictionaryItem> ratelimit=DictUtils.getDictList("RATE_LIMIT");
if(ratelimit !=null && ratelimit.size()>0){
for (SysDataDictionaryItem sysDataDictionaryItem : ratelimit) {
if(StringUtil.isEmpty(msgProp.getProperty(sysDataDictionaryItem.getItemValue()))){ if(StringUtil.isEmpty(msgProp.getProperty(sysDataDictionaryItem.getItemValue()))){
commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n"; commentStr=commentStr+sysDataDictionaryItem.getItemCode()+":"+sysDataDictionaryItem.getItemValue()+"\n";
}else{ }else{
@@ -311,8 +331,6 @@ public class ExportExcel {
} }
} }
} }
}
}
titleInfo[0]=headerStr; titleInfo[0]=headerStr;
titleInfo[1]=commentStr; titleInfo[1]=commentStr;
return titleInfo; return titleInfo;
@@ -799,7 +817,7 @@ public class ExportExcel {
if (!StringUtil.isEmpty(commentStr)){ if (!StringUtil.isEmpty(commentStr)){
cell.setCellValue(headerList.get(i)); cell.setCellValue(headerList.get(i));
Comment comment = this.sheet.createDrawingPatriarch().createCellComment( Comment comment = this.sheet.createDrawingPatriarch().createCellComment(
new XSSFClientAnchor(0, 0, 0, 0, (short) i, 0, (short) i+4, 3)); new XSSFClientAnchor(0, 0, 0, 0, (short) i, 0, (short) i+4, i+5));
comment.setString(new XSSFRichTextString(commentStr)); comment.setString(new XSSFRichTextString(commentStr));
cell.setCellComment(comment); cell.setCellComment(comment);
}else{ }else{

View File

@@ -1406,4 +1406,100 @@ public class AppCfgController extends BaseController {
} }
} }
//ip配置导出
@RequestMapping(value = "exportIpAddr")
public void exportIp(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")AppPolicyCfg entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
/*//导出选中记录
* if(!StringUtil.isEmpty(ids)){
for(String id:ids.split(",")){
Long.parseLong(id);
}
//List<CfgIndexInfo> list=ipCfgService.getListByCfgIdWithName(IpPortCfg.getTablename(), entity.getFunctionId(), ids);
}else{*/
//条件导出数据大于最大导出数,只导出最大导出条数
entity.setTableName(IpPortCfg.getTablename());
Page<AppPolicyCfg> pageInfo=new Page<AppPolicyCfg>(request, response,"a");
if(pageInfo.getCount()>Constants.MAX_EXPORT_SIZE){
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
}else{
pageInfo.setPageNo(1);
pageInfo.setPageSize(-1);
}
Page<AppPolicyCfg> page = appCfgService.findAppPolicyList(pageInfo, entity);
for(AppPolicyCfg policy:page.getList()){
SpecificServiceCfg app = specificServiceCfgService.getBySpecServiceId(policy.getSpecServiceId());
if(app!=null) {
policy.setSocialName(app.getSpecServiceName());
}
}
//查找社交应用的所有有效二级特定服务
SpecificServiceCfg second=new SpecificServiceCfg();
for(SysDataDictionaryItem dict:DictUtils.getDictList("SPECIFIC_SERVICE_CFG_TYPE")) {
if(Constants.SPECIFIC_SERVICE_CFG_TYPE_APP.equals(dict.getItemValue())) {
second.setCfgType(Integer.parseInt(dict.getItemCode()));
break;
}
}
second.setIsValid(Constants.VALID_YES);
second.setIsLeaf(1);
List<SpecificServiceCfg> secondList=specificServiceCfgService.findAllSpecificServiceCfg(second, null);
//遍历,找到匹配项后将行为设置进去
for(AppPolicyCfg policy:page.getList()){
if(policy.getBehavCode()==null) continue;
for(SpecificServiceCfg secondCfg:secondList) {
if(secondCfg.getSpecServiceCode()==null) continue;
if(secondCfg.getSpecServiceCode().intValue()==policy.getBehavCode().intValue()) {
policy.setBehavName(secondCfg.getSpecServiceName());
break;
}
}
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
titleList.add("NTC_SUBSCRIBE_ID");
classMap.put(entity.getMenuNameCode(), AppPolicyCfg.class);
classMap.put("NTC_IP", IpPortCfg.class);
classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class);
String cfgIndexInfoNoExport=",encrypted_tunnel_behavior,basic_protocol,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String subscribeInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("NTC_SUBSCRIBE_ID", subscribeInfoNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
List<NtcSubscribeIdCfg> subscribeInfoList=new ArrayList<NtcSubscribeIdCfg>();
for (AppPolicyCfg cfg : page.getList()) {
AppPolicyCfg cfgIndexInfo=appCfgService.exportIpInfo(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList());
}
dataMap.put(entity.getMenuNameCode(), page.getList());
dataMap.put("NTC_IP", ipList);
dataMap.put("NTC_SUBSCRIBE_ID", subscribeInfoList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("ip addr export failed",e);
addMessage(redirectAttributes, "export_failed");
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
} }

View File

@@ -2,7 +2,9 @@ package com.nis.web.controller.configuration;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@@ -17,12 +19,15 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.nis.domain.Page; import com.nis.domain.Page;
import com.nis.domain.configuration.AppPolicyCfg; import com.nis.domain.configuration.AppPolicyCfg;
import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.configuration.IpPortCfg; import com.nis.domain.configuration.IpPortCfg;
import com.nis.domain.configuration.NtcSubscribeIdCfg; import com.nis.domain.configuration.NtcSubscribeIdCfg;
import com.nis.domain.specific.ConfigGroupInfo;
import com.nis.domain.specific.SpecificServiceCfg; import com.nis.domain.specific.SpecificServiceCfg;
import com.nis.exceptions.CallExternalProceduresException; import com.nis.exceptions.CallExternalProceduresException;
import com.nis.exceptions.MaatConvertException; import com.nis.exceptions.MaatConvertException;
import com.nis.util.Constants; import com.nis.util.Constants;
import com.nis.util.StringUtil;
import com.nis.web.controller.BaseController; import com.nis.web.controller.BaseController;
import com.nis.web.security.UserUtils; import com.nis.web.security.UserUtils;
@@ -208,4 +213,78 @@ public class BasicProtocolController extends BaseController {
} }
return "redirect:" + adminPath +"/basicprotocol/list?functionId="+functionId; return "redirect:" + adminPath +"/basicprotocol/list?functionId="+functionId;
} }
//ip配置导出
@RequestMapping(value = "exportIpAddr")
public void exportIp(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")AppPolicyCfg entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
/*//导出选中记录
* if(!StringUtil.isEmpty(ids)){
for(String id:ids.split(",")){
Long.parseLong(id);
}
//List<CfgIndexInfo> list=ipCfgService.getListByCfgIdWithName(IpPortCfg.getTablename(), entity.getFunctionId(), ids);
}else{*/
//条件导出数据大于最大导出数,只导出最大导出条数
entity.setTableName(IpPortCfg.getTablename());
Page<AppPolicyCfg> pageInfo=new Page<AppPolicyCfg>(request, response,"a");
if(pageInfo.getCount()>Constants.MAX_EXPORT_SIZE){
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
}else{
pageInfo.setPageNo(1);
pageInfo.setPageSize(-1);
}
Page<AppPolicyCfg> page = appCfgService.findAppPolicyList(pageInfo, entity);
for(AppPolicyCfg policy:page.getList()){
SpecificServiceCfg app = specificServiceCfgService.getBySpecServiceId(policy.getSpecServiceId());
if(app!=null) {
policy.setAppName(app.getSpecServiceName());
}
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
titleList.add("NTC_SUBSCRIBE_ID");
classMap.put(entity.getMenuNameCode(), AppPolicyCfg.class);
classMap.put("NTC_IP", IpPortCfg.class);
classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class);
String cfgIndexInfoNoExport=",encrypted_tunnel_behavior,behaviour_type,social_app,behaviour_type,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String subscribeInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("NTC_SUBSCRIBE_ID", subscribeInfoNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
List<NtcSubscribeIdCfg> subscribeInfoList=new ArrayList<NtcSubscribeIdCfg>();
for (AppPolicyCfg cfg : page.getList()) {
AppPolicyCfg cfgIndexInfo=appCfgService.exportIpInfo(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList());
}
dataMap.put(entity.getMenuNameCode(), page.getList());
dataMap.put("NTC_IP", ipList);
dataMap.put("NTC_SUBSCRIBE_ID", subscribeInfoList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("ip addr export failed",e);
addMessage(redirectAttributes, "export_failed");
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
} }

View File

@@ -2,7 +2,9 @@ package com.nis.web.controller.configuration;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@@ -228,4 +230,100 @@ public class EncryptedTunnelBehaviorController extends BaseController {
} }
return "redirect:" + adminPath +"/encryptedtunnelbehav/list?functionId="+functionId; return "redirect:" + adminPath +"/encryptedtunnelbehav/list?functionId="+functionId;
} }
//ip配置导出
@RequestMapping(value = "exportIpAddr")
public void exportIp(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")AppPolicyCfg entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
/*//导出选中记录
* if(!StringUtil.isEmpty(ids)){
for(String id:ids.split(",")){
Long.parseLong(id);
}
//List<CfgIndexInfo> list=ipCfgService.getListByCfgIdWithName(IpPortCfg.getTablename(), entity.getFunctionId(), ids);
}else{*/
//条件导出数据大于最大导出数,只导出最大导出条数
entity.setTableName(IpPortCfg.getTablename());
Page<AppPolicyCfg> pageInfo=new Page<AppPolicyCfg>(request, response,"a");
if(pageInfo.getCount()>Constants.MAX_EXPORT_SIZE){
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
}else{
pageInfo.setPageNo(1);
pageInfo.setPageSize(-1);
}
Page<AppPolicyCfg> page = appCfgService.findAppPolicyList(pageInfo, entity);
for(AppPolicyCfg policy:page.getList()){
SpecificServiceCfg app = specificServiceCfgService.getBySpecServiceId(policy.getSpecServiceId());
if(app!=null) {
policy.setBehaviorName(app.getSpecServiceName());
}
}
//查找社交应用的所有有效二级特定服务
SpecificServiceCfg second=new SpecificServiceCfg();
for(SysDataDictionaryItem dict:DictUtils.getDictList("SPECIFIC_SERVICE_CFG_TYPE")) {
if(Constants.SPECIFIC_SERVICE_CFG_TYPE_ENCRYPTED_TUNNEL_BEHAVIOR.equals(dict.getItemValue())) {
second.setCfgType(Integer.parseInt(dict.getItemCode()));
break;
}
}
second.setIsValid(Constants.VALID_YES);
second.setIsLeaf(1);
List<SpecificServiceCfg> secondList=specificServiceCfgService.findAllSpecificServiceCfg(second, null);
//遍历,找到匹配项后将行为设置进去
for(AppPolicyCfg policy:page.getList()){
if(policy.getBehavCode()==null) continue;
for(SpecificServiceCfg secondCfg:secondList) {
if(secondCfg.getSpecServiceCode()==null) continue;
if(secondCfg.getSpecServiceCode().intValue()==policy.getBehavCode().intValue()) {
policy.setBehavName(secondCfg.getSpecServiceName());
break;
}
}
}
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
titleList.add("NTC_SUBSCRIBE_ID");
classMap.put(entity.getMenuNameCode(), AppPolicyCfg.class);
classMap.put("NTC_IP", IpPortCfg.class);
classMap.put("NTC_SUBSCRIBE_ID", NtcSubscribeIdCfg.class);
String cfgIndexInfoNoExport=",social_app,basic_protocol,expression_type,match_method,whether_hexbinary,group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String subscribeInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
noExportMap.put("NTC_SUBSCRIBE_ID", subscribeInfoNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
List<NtcSubscribeIdCfg> subscribeInfoList=new ArrayList<NtcSubscribeIdCfg>();
for (AppPolicyCfg cfg : page.getList()) {
AppPolicyCfg cfgIndexInfo=appCfgService.exportIpInfo(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
subscribeInfoList.addAll(cfgIndexInfo.getNtcSubscribeIdCfgList());
}
dataMap.put(entity.getMenuNameCode(), page.getList());
dataMap.put("NTC_IP", ipList);
dataMap.put("NTC_SUBSCRIBE_ID", subscribeInfoList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("TunnelBehavior export failed",e);
addMessage(redirectAttributes, "export_failed");
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
} }

View File

@@ -29,6 +29,7 @@ import com.nis.domain.maat.ToMaatResult;
import com.nis.domain.maat.ToMaatResult.ResponseData; import com.nis.domain.maat.ToMaatResult.ResponseData;
import com.nis.exceptions.CallExternalProceduresException; import com.nis.exceptions.CallExternalProceduresException;
import com.nis.exceptions.MaatConvertException; import com.nis.exceptions.MaatConvertException;
import com.nis.exceptions.MultiPartNewException;
import com.nis.util.ConfigServiceUtil; import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants; import com.nis.util.Constants;
import com.nis.util.DictUtils; import com.nis.util.DictUtils;
@@ -162,10 +163,16 @@ public class AvController extends BaseController {
// entity.setSrcMd5(srcMd5); // entity.setSrcMd5(srcMd5);
// entity.setSampleMd5(sampleMd5); // entity.setSampleMd5(sampleMd5);
//音频、视频、VoIP、说话人音频、人脸识别视频样例需要验证时长
if(entity.getCfgType().equals(Constants.AV_SAMPLE_AUDIO_REGION)
|| entity.getCfgType().equals(Constants.AV_SAMPLE_VIDEO_REGION)
|| entity.getCfgType().equals(Constants.AV_SAMPLE_VOIP_REGION)
|| entity.getCfgType().equals(Constants.MM_SPEAKER_RECOGNIZATION_REGION)
|| entity.getCfgType().equals(Constants.MM_FACE_RECOGNIZATION_REGION)){
//验证音视频文件时长 //验证音视频文件时长
Encoder encoder = new Encoder(); Encoder encoder = new Encoder();
String length = ""; String length = "";
try {
MultimediaInfo m = encoder.getInfo(uploadSrcFile); MultimediaInfo m = encoder.getInfo(uploadSrcFile);
long ls = m.getDuration()/1000; long ls = m.getDuration()/1000;
int hour = (int) (ls/3600); int hour = (int) (ls/3600);
@@ -176,13 +183,10 @@ public class AvController extends BaseController {
if(ls>0 && second>Constants.AV_DURATION_LIMIT){ if(ls>0 && second>Constants.AV_DURATION_LIMIT){
addMessage(redirectAttributes,"exceeds_duration_limit"); addMessage(redirectAttributes,"exceeds_duration_limit");
logger.error("The duration of uploaded files exceeds the limit("+Constants.AV_DURATION_LIMIT+"s)."); logger.error("The duration of uploaded files exceeds the limit("+Constants.AV_DURATION_LIMIT+"s).");
return "redirect:" + adminPath +"/ntc/av/sample/fileSampleList?functionId="+entity.getFunctionId(); throw new MultiPartNewException(this.getMsgProp().getProperty("exceeds_duration_limit"));
} }
} catch (Exception e) {
e.printStackTrace();
addMessage(redirectAttributes,"save_failed");
return "redirect:" + adminPath +"/ntc/av/sample/fileSampleList?functionId="+entity.getFunctionId();
} }
} }
avCfgService.saveOrUpdateAvFileSample(entity, srcFile); avCfgService.saveOrUpdateAvFileSample(entity, srcFile);
@@ -195,7 +199,7 @@ public class AvController extends BaseController {
if(e instanceof MaatConvertException||e instanceof CallExternalProceduresException) { if(e instanceof MaatConvertException||e instanceof CallExternalProceduresException) {
addMessage(redirectAttributes,e.getMessage()); addMessage(redirectAttributes,e.getMessage());
}else { }else {
addMessage(redirectAttributes,"save_failed"); addMessage(redirectAttributes,e.getMessage());
} }
} }

View File

@@ -2,7 +2,9 @@ package com.nis.web.controller.configuration.ntc;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@@ -25,8 +27,10 @@ import com.nis.domain.configuration.HttpUrlCfg;
import com.nis.domain.configuration.IpPortCfg; import com.nis.domain.configuration.IpPortCfg;
import com.nis.domain.configuration.NtcSubscribeIdCfg; import com.nis.domain.configuration.NtcSubscribeIdCfg;
import com.nis.domain.configuration.template.WhiteListIpTemplate; import com.nis.domain.configuration.template.WhiteListIpTemplate;
import com.nis.domain.specific.ConfigGroupInfo;
import com.nis.exceptions.MaatConvertException; import com.nis.exceptions.MaatConvertException;
import com.nis.util.Constants; import com.nis.util.Constants;
import com.nis.util.StringUtil;
import com.nis.web.controller.configuration.CommonController; import com.nis.web.controller.configuration.CommonController;
import com.nis.web.security.UserUtils; import com.nis.web.security.UserUtils;
@@ -247,4 +251,63 @@ public class WhiteListController extends CommonController{
@ModelAttribute("cfg")IpPortCfg entity,String ids,RedirectAttributes redirectAttributes){ @ModelAttribute("cfg")IpPortCfg entity,String ids,RedirectAttributes redirectAttributes){
this._exportIp(columns,model, request, response, entity, ids, redirectAttributes); this._exportIp(columns,model, request, response, entity, ids, redirectAttributes);
} }
//ip配置导出
@RequestMapping(value = "exportIpAddr")
public void exportIp(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")CfgIndexInfo entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
/*//导出选中记录
* if(!StringUtil.isEmpty(ids)){
for(String id:ids.split(",")){
Long.parseLong(id);
}
//List<CfgIndexInfo> list=ipCfgService.getListByCfgIdWithName(IpPortCfg.getTablename(), entity.getFunctionId(), ids);
}else{*/
//条件导出数据大于最大导出数,只导出最大导出条数
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo=new Page<CfgIndexInfo>(request, response,"a");
if(pageInfo.getCount()>Constants.MAX_EXPORT_SIZE){
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
}else{
pageInfo.setPageNo(1);
pageInfo.setPageSize(-1);
}
Page<CfgIndexInfo> page = ipCfgService.getIpCfgList(pageInfo, entity);
titleList.add(entity.getMenuNameCode());
titleList.add("NTC_IP");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("NTC_IP", IpPortCfg.class);
String cfgIndexInfoNoExport=",group_name,userregion1,userregion2,userregion3,userregion4,userregion5,";
String ipPortInfoNoExport=",protocol,direction,do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("NTC_IP", ipPortInfoNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
for (CfgIndexInfo cfg : page.getList()) {
CfgIndexInfo cfgIndexInfo=ipCfgService.exportIpInfo(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
}
dataMap.put(entity.getMenuNameCode(), page.getList());
dataMap.put("NTC_IP", ipList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("ip white export failed",e);
addMessage(redirectAttributes, "export_failed");
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
} }

View File

@@ -2,7 +2,9 @@ package com.nis.web.controller.configuration.proxy;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@@ -20,9 +22,12 @@ import com.nis.domain.Page;
import com.nis.domain.SysUser; import com.nis.domain.SysUser;
import com.nis.domain.configuration.BaseStringCfg; import com.nis.domain.configuration.BaseStringCfg;
import com.nis.domain.configuration.CfgIndexInfo; import com.nis.domain.configuration.CfgIndexInfo;
import com.nis.domain.configuration.InterceptPktBin;
import com.nis.domain.configuration.IpPortCfg; import com.nis.domain.configuration.IpPortCfg;
import com.nis.domain.configuration.PxyObjKeyring; import com.nis.domain.configuration.PxyObjKeyring;
import com.nis.domain.specific.ConfigGroupInfo;
import com.nis.exceptions.MaatConvertException; import com.nis.exceptions.MaatConvertException;
import com.nis.util.Constants;
import com.nis.util.StringUtil; import com.nis.util.StringUtil;
import com.nis.web.controller.configuration.CommonController; import com.nis.web.controller.configuration.CommonController;
import com.nis.web.security.UserUtils; import com.nis.web.security.UserUtils;
@@ -180,4 +185,72 @@ public class InterceptController extends CommonController{
@ModelAttribute("cfg")IpPortCfg entity,String ids,RedirectAttributes redirectAttributes){ @ModelAttribute("cfg")IpPortCfg entity,String ids,RedirectAttributes redirectAttributes){
this._exportIp(columns,model, request, response, entity, ids, redirectAttributes); this._exportIp(columns,model, request, response, entity, ids, redirectAttributes);
}*/ }*/
//ip配置导出
@RequestMapping(value = "exportIpAddr")
public void exportIp(Model model,HttpServletRequest request,HttpServletResponse response,
@ModelAttribute("cfg")CfgIndexInfo entity,String ids,RedirectAttributes redirectAttributes){
try {
//export data info
List<String> titleList=new ArrayList<String>();
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
Map<String, List> dataMap=new HashMap<String, List>();
Map<String, String> noExportMap=new HashMap<String, String>();
/*//导出选中记录
* if(!StringUtil.isEmpty(ids)){
for(String id:ids.split(",")){
Long.parseLong(id);
}
//List<CfgIndexInfo> list=ipCfgService.getListByCfgIdWithName(IpPortCfg.getTablename(), entity.getFunctionId(), ids);
}else{*/
//条件导出数据大于最大导出数,只导出最大导出条数
entity.setTableName(IpPortCfg.getTablename());
Page<CfgIndexInfo> pageInfo=new Page<CfgIndexInfo>(request, response,"a");
if(pageInfo.getCount()>Constants.MAX_EXPORT_SIZE){
pageInfo.setPageNo(1);
pageInfo.setPageSize(Constants.MAX_EXPORT_SIZE);
}else{
pageInfo.setPageNo(1);
pageInfo.setPageSize(-1);
}
Page<CfgIndexInfo> page = ipCfgService.getIpCfgList(pageInfo, entity);
titleList.add(entity.getMenuNameCode());
titleList.add("ip_addrs");
titleList.add("intercept_pkt");
classMap.put(entity.getMenuNameCode(), CfgIndexInfo.class);
classMap.put("ip_addrs", IpPortCfg.class);
classMap.put("intercept_pkt", InterceptPktBin.class);
String cfgIndexInfoNoExport=",group_name,userregion4,userregion5,";
String ipPortInfoNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
String interceptNoExport=",do_log,action,config_describe,valid_identifier,is_audit,creator,creator"
+ ",config_time,editor,edit_time,auditor,audit_time"
+",letter,whether_area_block,classification,attribute,label"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,";
noExportMap.put(entity.getMenuNameCode(),cfgIndexInfoNoExport);
noExportMap.put("ip_addrs", ipPortInfoNoExport);
noExportMap.put("intercept_pkt", interceptNoExport);
List<IpPortCfg> ipList=new ArrayList<IpPortCfg>();
List<InterceptPktBin> interInfoList=new ArrayList<InterceptPktBin>();
for (CfgIndexInfo cfg : page.getList()) {
CfgIndexInfo cfgIndexInfo=interceptCfgService.exportIpInfo(cfg);
ipList.addAll(cfgIndexInfo.getIpPortList());
interInfoList.addAll(cfgIndexInfo.getInterceptPktBinList());
}
dataMap.put(entity.getMenuNameCode(), page.getList());
dataMap.put("ip_addrs", ipList);
dataMap.put("intercept_pkt", interInfoList);
/*}*/
this._export(model, request, response, redirectAttributes,entity.getMenuNameCode(),titleList,classMap,dataMap,noExportMap);
} catch (Exception e) {
logger.error("ip addr export failed",e);
addMessage(redirectAttributes, "export_failed");
}
//return "redirect:" + adminPath +"/ntc/iplist/list?functionId="+entity.getFunctionId();
}
} }

View File

@@ -47,6 +47,7 @@ import com.nis.util.StringUtil;
import com.nis.util.StringUtils; import com.nis.util.StringUtils;
import com.nis.web.dao.configuration.AppCfgDao; import com.nis.web.dao.configuration.AppCfgDao;
import com.nis.web.dao.configuration.AreaIpCfgDao; import com.nis.web.dao.configuration.AreaIpCfgDao;
import com.nis.web.dao.configuration.IpCfgDao;
import com.nis.web.dao.configuration.StringCfgDao; import com.nis.web.dao.configuration.StringCfgDao;
import com.nis.web.dao.specific.SpecificServiceCfgDao; import com.nis.web.dao.specific.SpecificServiceCfgDao;
import com.nis.web.security.UserUtils; import com.nis.web.security.UserUtils;
@@ -68,6 +69,8 @@ public class AppCfgService extends BaseService {
@Autowired @Autowired
protected StringCfgDao stringcfgDao; protected StringCfgDao stringcfgDao;
@Autowired @Autowired
protected IpCfgDao ipCfgDao;
@Autowired
protected SpecificServiceCfgDao specificServiceCfgDao; protected SpecificServiceCfgDao specificServiceCfgDao;
public Page<AppPolicyCfg> findAppPolicyList(Page<AppPolicyCfg> page, AppPolicyCfg entity) { public Page<AppPolicyCfg> findAppPolicyList(Page<AppPolicyCfg> page, AppPolicyCfg entity) {
@@ -102,6 +105,16 @@ public class AppCfgService extends BaseService {
return page; return page;
} }
public AppPolicyCfg exportIpInfo(AppPolicyCfg policy){
List<IpPortCfg> ipPortList = appCfgDao.getAppPolicyIpList(policy);
policy.setIpPortList(ipPortList);
NtcSubscribeIdCfg ntcSubscribeIdCfg = new NtcSubscribeIdCfg();
ntcSubscribeIdCfg.setCompileId(policy.getCompileId());
List<NtcSubscribeIdCfg> ntcList = stringcfgDao.findSubscribeIdCfgList(ntcSubscribeIdCfg);
policy.setNtcSubscribeIdCfgList(ntcList);
return policy;
}
// 主题网站列表 // 主题网站列表
public Page<AppTopicDomainCfg> findAppTopicDomainList(Page<AppTopicDomainCfg> page, AppTopicDomainCfg entity) { public Page<AppTopicDomainCfg> findAppTopicDomainList(Page<AppTopicDomainCfg> page, AppTopicDomainCfg entity) {
entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(), "r")); entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(), "r"));

View File

@@ -926,6 +926,10 @@ public class AvContentCfgService extends BaseService{
Map<String,List> ipMap = cfgConvert(ipRegionList,list,1,entity,groupRelationList); Map<String,List> ipMap = cfgConvert(ipRegionList,list,1,entity,groupRelationList);
groupRelationList=ipMap.get("groupList"); groupRelationList=ipMap.get("groupList");
ipRegionList=ipMap.get("dstList"); ipRegionList=ipMap.get("dstList");
if (ipMap.get("numRegionList") != null) {
numRegionList.addAll(ipMap.get("numRegionList"));
}
} }
if(!StringUtil.isEmpty(areaIpCfgList)){ if(!StringUtil.isEmpty(areaIpCfgList)){
Map<String,List> areaMap = cfgConvert(areaIpRegionList,areaIpCfgList,1,entity,groupRelationList); Map<String,List> areaMap = cfgConvert(areaIpRegionList,areaIpCfgList,1,entity,groupRelationList);
@@ -1261,6 +1265,9 @@ public class AvContentCfgService extends BaseService{
Map<String,List> ipMap = cfgConvert(ipRegionList,list,1,entity,groupRelationList); Map<String,List> ipMap = cfgConvert(ipRegionList,list,1,entity,groupRelationList);
groupRelationList=ipMap.get("groupList"); groupRelationList=ipMap.get("groupList");
ipRegionList=ipMap.get("dstList"); ipRegionList=ipMap.get("dstList");
if (ipMap.get("numRegionList") != null) {
numRegionList.addAll(ipMap.get("numRegionList"));
}
} }
if(!StringUtil.isEmpty(areaIpCfgList)){ if(!StringUtil.isEmpty(areaIpCfgList)){

View File

@@ -25,6 +25,7 @@ import com.nis.domain.maat.MaatCfg.DigestCfg;
import com.nis.domain.maat.MaatCfg.GroupCfg; import com.nis.domain.maat.MaatCfg.GroupCfg;
import com.nis.domain.maat.MaatCfg.IpCfg; import com.nis.domain.maat.MaatCfg.IpCfg;
import com.nis.domain.maat.MaatCfg.StringCfg; import com.nis.domain.maat.MaatCfg.StringCfg;
import com.nis.domain.specific.ConfigGroupInfo;
import com.nis.exceptions.MaatConvertException; import com.nis.exceptions.MaatConvertException;
import com.nis.util.ConfigServiceUtil; import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants; import com.nis.util.Constants;
@@ -73,6 +74,16 @@ public class InterceptCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo>
* @param entity * @param entity
*/ */
public CfgIndexInfo exportIpInfo(CfgIndexInfo entity){
List<IpPortCfg> ipPortList = websiteCfgDao.getIpPortList(entity);
entity.setIpPortList(ipPortList);
if(StringUtils.isNotBlank(entity.getUserRegion1())) {
List<InterceptPktBin> info=interceptCfgDao.getInterceptPktBin(entity);
entity.setInterceptPktBinList(info);
}
return entity;
}
public void saveInterceptCfg(CfgIndexInfo entity){ public void saveInterceptCfg(CfgIndexInfo entity){
if(!entity.getAction().equals(Constants.REPLACE_ACTION)){ if(!entity.getAction().equals(Constants.REPLACE_ACTION)){
entity.setInterceptPktBinList(null); entity.setInterceptPktBinList(null);

View File

@@ -469,6 +469,9 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
Map<String,List> map = cfgConvert(ipRegionList,beans,1,cfg,groupRelationList); Map<String,List> map = cfgConvert(ipRegionList,beans,1,cfg,groupRelationList);
groupRelationList=map.get("groupList"); groupRelationList=map.get("groupList");
ipRegionList=map.get("dstList"); ipRegionList=map.get("dstList");
if (map.get("numRegionList") != null) {
numRegionList.addAll(map.get("numRegionList"));
}
maatCfg.setAreaEffectiveIds("0"); maatCfg.setAreaEffectiveIds("0");
maatCfg.setAction(cfg.getAction()); maatCfg.setAction(cfg.getAction());
maatCfg.setAuditTime(cfg.getAuditTime()); maatCfg.setAuditTime(cfg.getAuditTime());

View File

@@ -186,6 +186,7 @@
<shiro:hasPermission name="app:policy:config"> <shiro:hasPermission name="app:policy:config">
<sys:delRow url="${ctx}/app/policyCfgForm" id="contentTable" label="update"></sys:delRow> <sys:delRow url="${ctx}/app/policyCfgForm" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/app/updateAppPolicyCfgValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow> <sys:delRow url="${ctx}/app/updateAppPolicyCfgValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}/app/exportIpAddr?functionId=${cfg.functionId }" searchUrl="${ctx}/app/policyCfgList?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="export"></sys:delRow>
</shiro:hasPermission> </shiro:hasPermission>
<shiro:hasPermission name="app:policy:confirm"> <shiro:hasPermission name="app:policy:confirm">
<div class="btn-group"> <div class="btn-group">

View File

@@ -189,6 +189,7 @@
<shiro:hasPermission name="basicprotocol:config"> <shiro:hasPermission name="basicprotocol:config">
<sys:delRow url="${ctx}/basicprotocol/form" id="contentTable" label="update"></sys:delRow> <sys:delRow url="${ctx}/basicprotocol/form" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/basicprotocol/updateValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow> <sys:delRow url="${ctx}/basicprotocol/updateValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}/basicprotocol/exportIpAddr?functionId=${cfg.functionId }" searchUrl="${ctx}/basicprotocol/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="export"></sys:delRow>
</shiro:hasPermission> </shiro:hasPermission>
<shiro:hasPermission name="basicprotocol:confirm"> <shiro:hasPermission name="basicprotocol:confirm">
<div class="btn-group"> <div class="btn-group">

View File

@@ -186,6 +186,7 @@
<shiro:hasPermission name="encryptedtunnelbehav:config"> <shiro:hasPermission name="encryptedtunnelbehav:config">
<sys:delRow url="${ctx}/encryptedtunnelbehav/form" id="contentTable" label="update"></sys:delRow> <sys:delRow url="${ctx}/encryptedtunnelbehav/form" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/encryptedtunnelbehav/updateValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow> <sys:delRow url="${ctx}/encryptedtunnelbehav/updateValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}/encryptedtunnelbehav/exportIpAddr?functionId=${cfg.functionId }" searchUrl="${ctx}/encryptedtunnelbehav/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="export"></sys:delRow>
</shiro:hasPermission> </shiro:hasPermission>
<shiro:hasPermission name="encryptedtunnelbehav:confirm"> <shiro:hasPermission name="encryptedtunnelbehav:confirm">
<div class="btn-group"> <div class="btn-group">

View File

@@ -176,6 +176,7 @@
<customTag:hasAnyPermissions name="intercept:ip:config,intercept:domain:config,ip_payload:config"> <customTag:hasAnyPermissions name="intercept:ip:config,intercept:domain:config,ip_payload:config">
<sys:delRow url="${ctx}/proxy/intercept/intercept${interceptType}Form" id="contentTable" label="update"></sys:delRow> <sys:delRow url="${ctx}/proxy/intercept/intercept${interceptType}Form" id="contentTable" label="update"></sys:delRow>
<sys:delRow url="${ctx}/proxy/intercept/updateIntercept${interceptType}Valid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow> <sys:delRow url="${ctx}/proxy/intercept/updateIntercept${interceptType}Valid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
<sys:delRow url="${ctx}/proxy/intercept/exportIpAddr?functionId=${cfg.functionId }" searchUrl="${ctx}/proxy/intercept/${fn:toLowerCase(interceptType)}/list?functionId=${cfg.functionId}" id="contentTable" maxRow="10000" label="export"></sys:delRow>
</customTag:hasAnyPermissions> </customTag:hasAnyPermissions>
<customTag:hasAnyPermissions name="intercept:ip:config,intercept:domain:config,ip_payload:confirm"> <customTag:hasAnyPermissions name="intercept:ip:config,intercept:domain:config,ip_payload:confirm">
<div class="btn-group"> <div class="btn-group">