新增访问阻断页面菜单;完善劫持、策略、注入脚本、镜像文件菜单相关功能
This commit is contained in:
@@ -58,6 +58,8 @@ import com.nis.domain.callback.ProxyFileHijackCfg;
|
||||
import com.nis.domain.callback.ProxyFileHijackCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileInsertScriptCfg;
|
||||
import com.nis.domain.callback.ProxyFileInsertScriptCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileResponsePageCfg;
|
||||
import com.nis.domain.callback.ProxyFileResponsePageCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileStrategyCfg;
|
||||
import com.nis.domain.callback.ProxyFileStrategyCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileTrafficMirrorCfg;
|
||||
@@ -3198,6 +3200,7 @@ public abstract class BaseService {
|
||||
hijackTemp.setService(cfg.getServiceId());
|
||||
hijackTemp.setIsValid(cfg.getIsValid());
|
||||
hijackTemp.setOpTime(cfg.getAuditTime());
|
||||
hijackTemp.setOpUser(UserUtils.getUser().getId());
|
||||
return hijackTemp;
|
||||
}
|
||||
//注入脚本文件
|
||||
@@ -3213,6 +3216,7 @@ public abstract class BaseService {
|
||||
fileInsertScriptTemp.setService(cfg.getServiceId());
|
||||
fileInsertScriptTemp.setIsValid(cfg.getIsValid());
|
||||
fileInsertScriptTemp.setOpTime(cfg.getAuditTime());
|
||||
fileInsertScriptTemp.setOpUser(UserUtils.getUser().getId());
|
||||
return fileInsertScriptTemp;
|
||||
}
|
||||
//流量转发目的地址
|
||||
@@ -3228,6 +3232,7 @@ public abstract class BaseService {
|
||||
fileTemp.setService(cfg.getServiceId());
|
||||
fileTemp.setIsValid(cfg.getIsValid());
|
||||
fileTemp.setOpTime(cfg.getAuditTime());
|
||||
fileTemp.setOpUser(UserUtils.getUser().getId());
|
||||
return fileTemp;
|
||||
}
|
||||
//文件策略
|
||||
@@ -3244,6 +3249,24 @@ public abstract class BaseService {
|
||||
fileTemp.setFilePath(cfg.getUrl());
|
||||
fileTemp.setIsValid(cfg.getIsValid());
|
||||
fileTemp.setOpTime(cfg.getAuditTime());
|
||||
fileTemp.setOpUser(UserUtils.getUser().getId());
|
||||
return fileTemp;
|
||||
}
|
||||
//访问阻断页面
|
||||
public static ProxyFileResponsePageCfgAudit convertCallBackProxyFileResponsePage(ProxyFileResponsePageCfg cfg) {
|
||||
ProxyFileResponsePageCfgAudit fileTemp = new ProxyFileResponsePageCfgAudit();
|
||||
fileTemp.setId(Long.valueOf(cfg.getCompileId()));
|
||||
fileTemp.setCfgId(cfg.getCompileId());
|
||||
fileTemp.setProfileId((Long.valueOf(cfg.getCompileId())));
|
||||
fileTemp.setProfileName(keywordsEscape(cfg.getFileDesc()));
|
||||
fileTemp.setFormat(cfg.getContentType());
|
||||
fileTemp.setContentLength(cfg.getContentLength());
|
||||
fileTemp.setAction(cfg.getAction());
|
||||
fileTemp.setService(cfg.getServiceId());
|
||||
fileTemp.setPath(cfg.getUrl());
|
||||
fileTemp.setIsValid(cfg.getIsValid());
|
||||
fileTemp.setOpTime(cfg.getAuditTime());
|
||||
fileTemp.setOpUser(UserUtils.getUser().getId());
|
||||
return fileTemp;
|
||||
}
|
||||
|
||||
|
||||
@@ -17,6 +17,8 @@ import com.nis.domain.callback.ProxyFileHijackCfg;
|
||||
import com.nis.domain.callback.ProxyFileHijackCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileInsertScriptCfg;
|
||||
import com.nis.domain.callback.ProxyFileInsertScriptCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileResponsePageCfg;
|
||||
import com.nis.domain.callback.ProxyFileResponsePageCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileStrategyCfg;
|
||||
import com.nis.domain.callback.ProxyFileStrategyCfgAudit;
|
||||
import com.nis.domain.callback.ProxyFileTrafficMirrorCfg;
|
||||
@@ -405,12 +407,21 @@ public class CommonPolicyService extends CrudService<WebsiteCfgDao, CfgIndexInfo
|
||||
if(convertList.size() > 0) {
|
||||
notAuditList = convertList;
|
||||
}
|
||||
}else if(entity.getServiceId().equals(646)) { // 访问阻断页面
|
||||
List<ProxyFileResponsePageCfgAudit> convertList = Lists.newArrayList();
|
||||
for (Object object : notAuditList) {
|
||||
ProxyFileResponsePageCfg cfg = (ProxyFileResponsePageCfg)object;
|
||||
convertList.add(BaseService.convertCallBackProxyFileResponsePage(cfg));
|
||||
}
|
||||
if(convertList.size() > 0) {
|
||||
notAuditList = convertList;
|
||||
}
|
||||
}
|
||||
// 格式转换 -->
|
||||
|
||||
//调用服务接口下发配置数据
|
||||
String json=gsonToJson(notAuditList);
|
||||
//logger.warn("批量下发配置参数:"+json);
|
||||
logger.debug("批量下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
ToMaatResult result = ConfigServiceUtil.postCallbackCfg(json);
|
||||
logger.warn("批量下发响应信息:"+result.getMsg());
|
||||
@@ -496,19 +507,28 @@ public class CommonPolicyService extends CrudService<WebsiteCfgDao, CfgIndexInfo
|
||||
}
|
||||
}else if(entity.getServiceId().equals(608)) { // 文件策略
|
||||
List<ProxyFileStrategyCfgAudit> convertList = Lists.newArrayList();
|
||||
for (Object object : notAuditList) {
|
||||
for (Object object : auditList) {
|
||||
ProxyFileStrategyCfg cfg = (ProxyFileStrategyCfg)object;
|
||||
convertList.add(BaseService.convertCallBackProxyFileStrategy(cfg));
|
||||
}
|
||||
if(convertList.size() > 0) {
|
||||
notAuditList = convertList;
|
||||
auditList = convertList;
|
||||
}
|
||||
}else if(entity.getServiceId().equals(646)) { // 访问阻断页面
|
||||
List<ProxyFileResponsePageCfgAudit> convertList = Lists.newArrayList();
|
||||
for (Object object : auditList) {
|
||||
ProxyFileResponsePageCfg cfg = (ProxyFileResponsePageCfg)object;
|
||||
convertList.add(BaseService.convertCallBackProxyFileResponsePage(cfg));
|
||||
}
|
||||
if(convertList.size() > 0) {
|
||||
auditList = convertList;
|
||||
}
|
||||
}
|
||||
// 格式转换 -->
|
||||
|
||||
//调用服务接口取消配置
|
||||
String json=gsonToJson(auditList);
|
||||
//logger.warn("批量下发配置参数:"+json);
|
||||
logger.debug("批量下发配置参数:"+json);
|
||||
if(!StringUtil.isEmpty(auditList)) {
|
||||
logger.warn("批量配置取消个数:"+auditList.size());
|
||||
}
|
||||
|
||||
@@ -0,0 +1,135 @@
|
||||
package com.nis.web.service.configuration;
|
||||
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import com.beust.jcommander.internal.Lists;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.callback.ProxyFileResponsePageCfg;
|
||||
import com.nis.domain.callback.ProxyFileResponsePageCfgAudit;
|
||||
import com.nis.domain.maat.ToMaatResult;
|
||||
import com.nis.util.ConfigServiceUtil;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.web.dao.configuration.ProxyFileResponsePageDao;
|
||||
import com.nis.web.security.UserUtils;
|
||||
import com.nis.web.service.BaseService;
|
||||
|
||||
|
||||
@Service
|
||||
public class ProxyFileResponsePageService extends BaseService{
|
||||
@Autowired
|
||||
protected ProxyFileResponsePageDao proxyFileDao;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
* @param page
|
||||
* @param entity
|
||||
* @return
|
||||
*/
|
||||
public Page<ProxyFileResponsePageCfg> findPage(Page page, ProxyFileResponsePageCfg entity) {
|
||||
entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"a"));
|
||||
entity.setPage(page);
|
||||
List<ProxyFileResponsePageCfg> list=proxyFileDao.findPage(entity);
|
||||
page.setList(list);
|
||||
return page;
|
||||
}
|
||||
|
||||
public ProxyFileResponsePageCfg getCfgById(Long cfgId) {
|
||||
return proxyFileDao.getCfgById(cfgId);
|
||||
}
|
||||
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void saveOrUpdate(ProxyFileResponsePageCfg entity){
|
||||
Date createTime=new Date();
|
||||
//设置区域运营商信息
|
||||
setAreaEffectiveIds(entity);
|
||||
int isValid=0;
|
||||
if(!StringUtil.isEmpty(entity.getIsValid()) && entity.getIsValid()==1) {
|
||||
isValid=1;
|
||||
}
|
||||
entity.setIsValid(0);
|
||||
entity.setIsAudit(0);
|
||||
//新增
|
||||
if(entity.getCfgId()==null){
|
||||
Integer compileId = ConfigServiceUtil.getId(1, 1).get(0);//获取编译id
|
||||
entity.setCompileId(compileId);
|
||||
entity.setCreatorId(UserUtils.getUser().getId());
|
||||
entity.setCreateTime(createTime);
|
||||
entity.setIsValid(0);
|
||||
entity.setIsAudit(0);
|
||||
proxyFileDao.insert(entity);//新增
|
||||
}else{
|
||||
Date editTime=new Date();
|
||||
entity.setIsValid(0);
|
||||
entity.setIsAudit(0);
|
||||
entity.setEditorId(UserUtils.getUser().getId());
|
||||
entity.setEditTime(editTime);
|
||||
proxyFileDao.update(entity);//更新
|
||||
}
|
||||
if(isValid==1) {
|
||||
entity.setIsAudit(1);
|
||||
entity.setIsValid(1);
|
||||
audit( entity.getIsAudit(), isValid, entity.getFunctionId(), String.valueOf(entity.getCfgId()));
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void update(Integer isAudit,Integer isValid,String ids,Integer functionId){
|
||||
ProxyFileResponsePageCfg entity = new ProxyFileResponsePageCfg();
|
||||
String[] idArray = ids.split(",");
|
||||
for(String id :idArray){
|
||||
entity.setCfgId(Long.parseLong(id));
|
||||
entity.setFunctionId(functionId);
|
||||
entity.setIsAudit(isAudit);
|
||||
entity.setIsValid(isValid);
|
||||
entity.setEditorId(UserUtils.getUser().getId());
|
||||
entity.setEditTime(new Date());
|
||||
proxyFileDao.update(entity);
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void audit(Integer isAudit,Integer isValid,Integer functionId,String ids){
|
||||
Date auditTime = new Date();//审核时间
|
||||
String[] idArray = ids.split(",");
|
||||
for(String id : idArray) {
|
||||
ProxyFileResponsePageCfg entity = proxyFileDao.getCfgById(Long.parseLong(id));
|
||||
entity.setIsAudit(isAudit);
|
||||
entity.setIsValid(isValid);
|
||||
entity.setAuditorId(UserUtils.getUser().getId());
|
||||
entity.setAuditTime(auditTime);
|
||||
proxyFileDao.update(entity);
|
||||
if(isAudit == 1) {//审核通过,下发配置回调配置信息
|
||||
List<ProxyFileResponsePageCfgAudit> convertList = Lists.newArrayList();
|
||||
convertList.add(BaseService.convertCallBackProxyFileResponsePage(entity));
|
||||
String json = gsonToJson(convertList);
|
||||
logger.debug("访问阻断页面下发参数:" + json);
|
||||
ToMaatResult result = ConfigServiceUtil.postCallbackCfg(json);
|
||||
logger.debug("访问阻断页面下发响应:"+gsonToJson(result));
|
||||
}else if(isAudit == 3) {//取消审核通过,将回调配置信息置为无效
|
||||
List<ProxyFileResponsePageCfgAudit> convertList = Lists.newArrayList();
|
||||
convertList.add(BaseService.convertCallBackProxyFileResponsePage(entity));
|
||||
String json = gsonToJson(convertList);
|
||||
logger.debug("访问阻断页面下发参数:" + json);
|
||||
ToMaatResult result = ConfigServiceUtil.put(json,2);
|
||||
logger.debug("访问阻断页面下发响应:"+gsonToJson(result));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有的 响应文件 策略
|
||||
* @return
|
||||
*/
|
||||
public List<ProxyFileResponsePageCfg> getProxyFileResponsePageCfgList(ProxyFileResponsePageCfg entity){
|
||||
entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"a"));
|
||||
List<ProxyFileResponsePageCfg> list=proxyFileDao.findPage(entity);
|
||||
return list;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user