1、voip合并,2、subscribeId新增时提交的问题
This commit is contained in:
@@ -3,7 +3,6 @@ package com.nis.web.controller.configuration.ntc;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
@@ -13,7 +12,6 @@ import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.context.i18n.LocaleContextHolder;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
@@ -22,27 +20,22 @@ import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.SysUser;
|
||||
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.AvContIpCfg;
|
||||
import com.nis.domain.configuration.AvVoipAccountCfg;
|
||||
import com.nis.domain.configuration.CfgIndexInfo;
|
||||
import com.nis.domain.configuration.IpPortCfg;
|
||||
import com.nis.domain.configuration.NtcSubscribeIdCfg;
|
||||
import com.nis.exceptions.MaatConvertException;
|
||||
import com.nis.domain.configuration.AvVoipIpCfg;
|
||||
import com.nis.domain.configuration.BaseIpCfg;
|
||||
import com.nis.domain.configuration.BaseStringCfg;
|
||||
import com.nis.util.Configurations;
|
||||
import com.nis.util.Constants;
|
||||
import com.nis.util.DateUtils;
|
||||
import com.nis.util.StringUtil;
|
||||
import com.nis.util.excel.ExportExcel;
|
||||
import com.nis.web.controller.BaseController;
|
||||
import com.nis.web.security.UserUtils;
|
||||
|
||||
/**
|
||||
* 处理音视频文本业务
|
||||
@@ -55,11 +48,11 @@ public class AvContentController extends BaseController {
|
||||
/*****************************voip业务***************/
|
||||
//音视频VOIP IP配置新增界面
|
||||
@RequestMapping(value = {"/voipForm"})
|
||||
@RequiresPermissions(value={"avVoipIp:config"})
|
||||
@RequiresPermissions(value={"avVoip:config"})
|
||||
public String voipFrom(Model model,HttpServletRequest request ,HttpServletResponse response
|
||||
,String compileIds,String ids, CfgIndexInfo cfg ,RedirectAttributes redirectAttributes){
|
||||
if(!StringUtil.isEmpty(compileIds)){
|
||||
cfg.setCompileId(Integer.parseInt(compileIds));
|
||||
if(!StringUtil.isEmpty(ids)){
|
||||
cfg.setCfgId(Long.parseLong(ids));
|
||||
cfg = avContentCfgService.getCfgIndexInfo(cfg);
|
||||
initUpdateFormCondition(model, cfg);
|
||||
}else{
|
||||
@@ -70,7 +63,7 @@ public class AvContentController extends BaseController {
|
||||
return "/cfg/av/voip/voipForm";
|
||||
}
|
||||
//音视频VOIP Account配置新增界面
|
||||
@RequestMapping(value = {"/voipAccountForm"})
|
||||
/* @RequestMapping(value = {"/voipAccountForm"})
|
||||
@RequiresPermissions(value={"avVoipAccount:config"})
|
||||
public String voipAccountForm(Model model,HttpServletRequest request ,HttpServletResponse response
|
||||
,String compileIds,String ids, CfgIndexInfo cfg ,RedirectAttributes redirectAttributes){
|
||||
@@ -85,7 +78,7 @@ public class AvContentController extends BaseController {
|
||||
|
||||
model.addAttribute("_cfg", cfg);
|
||||
return "/cfg/av/voip/voipAccountForm";
|
||||
}
|
||||
}*/
|
||||
|
||||
//保存voip ip信息
|
||||
@RequestMapping(value = {"/saveVoip"})
|
||||
@@ -97,18 +90,18 @@ public class AvContentController extends BaseController {
|
||||
}catch(Exception e){
|
||||
if(e instanceof MaatConvertException) {
|
||||
e.printStackTrace();
|
||||
logger.error("voip IP信息保存失败",e);
|
||||
logger.error("voip 信息保存失败",e);
|
||||
addMessage(redirectAttributes,"request_service_failed");
|
||||
}else {
|
||||
e.printStackTrace();
|
||||
logger.error("voip IP信息保存失败",e);
|
||||
logger.error("voip 信息保存失败",e);
|
||||
addMessage(redirectAttributes,"save_failed");
|
||||
}
|
||||
}
|
||||
return "redirect:" + adminPath +"/ntc/av/voipList?functionId="+cfg.getFunctionId();
|
||||
}
|
||||
//保存voip Account信息
|
||||
@RequestMapping(value = {"/saveAccountVoip"})
|
||||
/* @RequestMapping(value = {"/saveAccountVoip"})
|
||||
public String saveAccountVoip(Model model,HttpServletRequest request,HttpServletResponse response,String ids,
|
||||
CfgIndexInfo cfg ,RedirectAttributes redirectAttributes){
|
||||
try{
|
||||
@@ -126,12 +119,10 @@ public class AvContentController extends BaseController {
|
||||
}
|
||||
}
|
||||
return "redirect:" + adminPath +"/ntc/av/voipAccountList?functionId="+cfg.getFunctionId();
|
||||
}
|
||||
//视频文本VOIP IP配置列表
|
||||
}*/
|
||||
//视频文本VOIP 配置列表
|
||||
@RequestMapping(value = {"/voipList"})
|
||||
public String voipCfgList(Model model,HttpServletRequest request
|
||||
,HttpServletResponse response
|
||||
,@ModelAttribute("cfg")CfgIndexInfo entity
|
||||
public String voipCfgList(Model model,HttpServletRequest request ,HttpServletResponse response ,@ModelAttribute("cfg")CfgIndexInfo entity
|
||||
,RedirectAttributes redirectAttributes){
|
||||
if(entity.getVoipIp()== null){
|
||||
entity.setVoipIp(new AvVoipIpCfg());
|
||||
@@ -148,7 +139,7 @@ public class AvContentController extends BaseController {
|
||||
return "/cfg/av/voip/voipList";
|
||||
}
|
||||
//视频文本VOIP Account配置列表
|
||||
@RequestMapping(value = {"/voipAccountList"})
|
||||
/* @RequestMapping(value = {"/voipAccountList"})
|
||||
public String voipCfgAccountList(Model model,HttpServletRequest request ,HttpServletResponse response
|
||||
,@ModelAttribute("cfg")CfgIndexInfo entity ,RedirectAttributes redirectAttributes){
|
||||
if(entity.getVoipAccount()== null){
|
||||
@@ -161,12 +152,12 @@ public class AvContentController extends BaseController {
|
||||
model.addAttribute("page", page);
|
||||
initPageCondition(model,entity);
|
||||
return "/cfg/av/voip/voipAccountList";
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
//修改VOIP IP配置状态
|
||||
@RequestMapping(value = {"/updateAvVoipValid"})
|
||||
@RequiresPermissions(value={"avVoipIp:config"})
|
||||
@RequiresPermissions(value={"avVoip:config"})
|
||||
public String updateVoipValid(Integer isAudit,String compileIds,Integer isValid,String ids,Integer functionId
|
||||
,RedirectAttributes redirectAttributes
|
||||
) {
|
||||
@@ -175,18 +166,18 @@ public class AvContentController extends BaseController {
|
||||
} catch (Exception e) {
|
||||
if(e instanceof MaatConvertException) {
|
||||
e.printStackTrace();
|
||||
logger.error("voip IP信息审核失败",e);
|
||||
logger.error("voip 信息审核失败",e);
|
||||
addMessage(redirectAttributes,"request_service_failed");
|
||||
}else {
|
||||
e.printStackTrace();
|
||||
logger.error("voip IP信息审核失败",e);
|
||||
logger.error("voip 信息审核失败",e);
|
||||
addMessage(redirectAttributes,"audit_failed");
|
||||
}
|
||||
}
|
||||
return "redirect:" + adminPath +"/ntc/av/voipList?functionId="+functionId;
|
||||
}
|
||||
//修改VOIP account配置状态
|
||||
@RequestMapping(value = {"/updateAvVoipAccountValid"})
|
||||
/* @RequestMapping(value = {"/updateAvVoipAccountValid"})
|
||||
@RequiresPermissions(value={"avVoipAccount:config"})
|
||||
public String updateVoipAccountValid(Integer isAudit,String compileIds,Integer isValid,String ids,Integer functionId
|
||||
,RedirectAttributes redirectAttributes
|
||||
@@ -205,15 +196,13 @@ public class AvContentController extends BaseController {
|
||||
}
|
||||
}
|
||||
return "redirect:" + adminPath +"/ntc/av/voipAccountList?functionId="+functionId;
|
||||
}
|
||||
}*/
|
||||
//修改VOIP IP配置审核状态
|
||||
@RequestMapping(value = {"/auditAvVoip"})
|
||||
@RequiresPermissions(value={"avVoipIp:confirm"})
|
||||
public String auditVoip(Integer isAudit,Integer isValid,String ids
|
||||
,String compileIds,Integer functionId
|
||||
,RedirectAttributes redirectAttributes) {
|
||||
if(!StringUtil.isEmpty(compileIds)){
|
||||
String[] idArray = compileIds.split(",");
|
||||
@RequiresPermissions(value={"avVoip:confirm"})
|
||||
public String auditVoip(Integer isAudit,Integer isValid,String ids ,String compileIds,Integer functionId ,RedirectAttributes redirectAttributes) {
|
||||
if(!StringUtil.isEmpty(ids)){
|
||||
String[] idArray = ids.split(",");
|
||||
Date auditTime=new Date();
|
||||
for(String id :idArray){
|
||||
try {
|
||||
@@ -221,7 +210,7 @@ public class AvContentController extends BaseController {
|
||||
} catch (MaatConvertException e) {
|
||||
if(e instanceof MaatConvertException) {
|
||||
e.printStackTrace();
|
||||
logger.info("VOIP配置下发失败:"+e.getMessage());;
|
||||
logger.error("VOIP配置下发失败:"+e.getMessage());;
|
||||
addMessage(redirectAttributes,"request_service_failed");
|
||||
}else {
|
||||
e.printStackTrace();
|
||||
@@ -236,7 +225,7 @@ public class AvContentController extends BaseController {
|
||||
return "redirect:" + adminPath +"/ntc/av/voipList?functionId="+functionId;
|
||||
}
|
||||
//修改VOIP IP配置审核状态
|
||||
@RequestMapping(value = {"/auditAvVoipAccount"})
|
||||
/* @RequestMapping(value = {"/auditAvVoipAccount"})
|
||||
@RequiresPermissions(value={"avVoipAccount:confirm"})
|
||||
public String auditVoipAccount(Integer isAudit,Integer isValid,String ids
|
||||
,String compileIds,Integer functionId
|
||||
@@ -262,14 +251,14 @@ public class AvContentController extends BaseController {
|
||||
|
||||
}
|
||||
return "redirect:" + adminPath +"/ntc/av/voipAccountList?functionId="+functionId;
|
||||
}
|
||||
}*/
|
||||
|
||||
/**
|
||||
* 账号account
|
||||
* 根据索引表信息异步获取子表信息
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
/*@ResponseBody
|
||||
@RequestMapping(value = "ajaxVoipAccountInfo")
|
||||
public Map getVoipAccountInfo(CfgIndexInfo cfgIndexInfo) {
|
||||
Map<String, Object> voipAndAccountInfoMap=new HashMap<String, Object>();
|
||||
@@ -282,25 +271,50 @@ public class AvContentController extends BaseController {
|
||||
voipAndAccountInfoMap.put("account", voipAccountCfgList);
|
||||
voipAndAccountInfoMap.put("subscribe", ntcSubscribeIdCfgList);
|
||||
return voipAndAccountInfoMap;
|
||||
}
|
||||
}*/
|
||||
/**
|
||||
* 根据索引表信息异步获取子表信息
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping(value = "ajaxVoipIpInfo")
|
||||
public Map getVoipIpInfo(CfgIndexInfo cfgIndexInfo) {
|
||||
Map<String, Object> voipAndAccountInfoMap=new HashMap<String, Object>();
|
||||
@RequestMapping(value = {"/ajaxVoipIpInfo"})
|
||||
public String getVoipIpInfo(Model model,Long cfgId,Integer index) {
|
||||
CfgIndexInfo cfgIndexInfo = new CfgIndexInfo();
|
||||
cfgIndexInfo.setCfgId(cfgId);
|
||||
CfgIndexInfo cfg = avContentCfgService.getCfgIndexInfo(cfgIndexInfo);
|
||||
List<String[]> tabList = new ArrayList();
|
||||
//获取voipIpCfg信息
|
||||
List<AvVoipIpCfg> voipIpCfgList=new ArrayList<AvVoipIpCfg>();
|
||||
List<NtcSubscribeIdCfg> ntcSubscribeIdCfgList=new ArrayList<NtcSubscribeIdCfg>();
|
||||
|
||||
voipIpCfgList = avContentCfgService.getVoipIpCfgList(cfgIndexInfo);
|
||||
ntcSubscribeIdCfgList=avContentCfgService.getSubscribeIdCfgList(cfgIndexInfo);
|
||||
|
||||
voipAndAccountInfoMap.put("ip", voipIpCfgList);
|
||||
voipAndAccountInfoMap.put("subscribe", ntcSubscribeIdCfgList);
|
||||
return voipAndAccountInfoMap;
|
||||
if(cfg.getVoipIps()!=null){
|
||||
String cfgType = null;
|
||||
for(AvVoipIpCfg ip:cfg.getVoipIps()){
|
||||
if(!ip.getCfgType().equals(cfgType)){
|
||||
tabList.add(new String[]{"1",ip.getCfgType()});
|
||||
cfgType = ip.getCfgType();
|
||||
}
|
||||
}
|
||||
}
|
||||
if(cfg.getVoipAccounts()!=null){
|
||||
String cfgType = null;
|
||||
for(AvVoipAccountCfg account:cfg.getVoipAccounts()){
|
||||
if(account!=null&&!account.getCfgType().equals(cfgType)){
|
||||
tabList.add(new String[]{"2",account.getCfgType()});
|
||||
cfgType = account.getCfgType();
|
||||
}
|
||||
}
|
||||
}
|
||||
//查询关键字
|
||||
if(cfg.getNtcSubscribeIdCfgList()!=null){
|
||||
String cfgType = null;
|
||||
for(NtcSubscribeIdCfg ntc:cfg.getNtcSubscribeIdCfgList()){
|
||||
if(!ntc.getCfgType().equals(cfgType)){
|
||||
tabList.add(new String[]{"2",ntc.getCfgType()});
|
||||
cfgType = ntc.getCfgType();
|
||||
}
|
||||
}
|
||||
}
|
||||
model.addAttribute("_cfg", cfg);
|
||||
model.addAttribute("index", index);
|
||||
model.addAttribute("tabList", tabList);
|
||||
return "/cfg/av/voip/voipSubList";
|
||||
}
|
||||
/*****************************voip业务***************/
|
||||
|
||||
|
||||
@@ -78,13 +78,13 @@ public class AvContentCfgService extends BaseService{
|
||||
* @param entity
|
||||
* @return
|
||||
*/
|
||||
public Page<CfgIndexInfo> findAccountPage(Page<CfgIndexInfo> page, CfgIndexInfo entity) {
|
||||
/*public Page<CfgIndexInfo> findAccountPage(Page<CfgIndexInfo> page, CfgIndexInfo entity) {
|
||||
entity.getSqlMap().put("dsf", configScopeFilter(entity.getCurrentUser(),"r"));
|
||||
entity.setPage(page);
|
||||
List<CfgIndexInfo> list=avContentCfgDao.findAccountList(entity);
|
||||
page.setList(list);
|
||||
return page;
|
||||
}
|
||||
}*/
|
||||
/**
|
||||
* 根据索引表信息获取voipIpCfg信息
|
||||
* @param entity
|
||||
@@ -116,20 +116,16 @@ public class AvContentCfgService extends BaseService{
|
||||
*/
|
||||
public CfgIndexInfo getCfgIndexInfo(CfgIndexInfo entity) {
|
||||
CfgIndexInfo cfg=avContentCfgDao.getCfgIndexInfo(entity);
|
||||
List<NtcSubscribeIdCfg> ntcSubscribeList=getSubscribeIdCfgList(entity);
|
||||
if(ntcSubscribeList ==null || ntcSubscribeList.size() <=0){
|
||||
ntcSubscribeList.add(new NtcSubscribeIdCfg());
|
||||
}
|
||||
List<AvVoipIpCfg> voipIps=getVoipIpCfgList(entity);
|
||||
if(voipIps ==null || voipIps.size() <=0){
|
||||
voipIps.add(new AvVoipIpCfg());
|
||||
}
|
||||
List<NtcSubscribeIdCfg> ntcSubscribeList=getSubscribeIdCfgList(cfg);
|
||||
List<AvVoipIpCfg> voipIps=getVoipIpCfgList(cfg);
|
||||
List<AvVoipAccountCfg> voipAccounts=getVoipAccountCfgList(cfg);
|
||||
cfg.setNtcSubscribeIdCfgList(ntcSubscribeList);
|
||||
cfg.setVoipIps(voipIps);
|
||||
cfg.setVoipAccounts(voipAccounts);
|
||||
|
||||
return cfg;
|
||||
}
|
||||
public CfgIndexInfo getCfgIndexInfo2(CfgIndexInfo entity) {
|
||||
/* public CfgIndexInfo getCfgIndexInfo2(CfgIndexInfo entity) {
|
||||
CfgIndexInfo cfg=avContentCfgDao.getCfgIndexInfo(entity);
|
||||
List<AvVoipAccountCfg> voipAccounts=new ArrayList<>();
|
||||
voipAccounts=getVoipAccountCfgList(entity);
|
||||
@@ -145,7 +141,7 @@ public class AvContentCfgService extends BaseService{
|
||||
cfg.setNtcSubscribeIdCfgList(ntcSubscribeList);
|
||||
|
||||
return cfg;
|
||||
}
|
||||
}*/
|
||||
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void saveOrUpdateAvVoip(CfgIndexInfo entity){
|
||||
@@ -178,6 +174,12 @@ public class AvContentCfgService extends BaseService{
|
||||
}
|
||||
}
|
||||
}
|
||||
if(entity.getVoipAccounts()!=null&&entity.getVoipAccounts().size()>0){
|
||||
for(AvVoipAccountCfg voipAccount : entity.getVoipAccounts()){
|
||||
entity.setVoipAccount(voipAccount);
|
||||
avContentCfgDao.insertAvVoipAccountCfg(entity);
|
||||
}
|
||||
}
|
||||
//保存区域IP信息
|
||||
if(entity.getAreaCfg()!=null){
|
||||
for(AreaIpCfg cfg:entity.getAreaCfg()){
|
||||
@@ -199,6 +201,7 @@ public class AvContentCfgService extends BaseService{
|
||||
//无效子配置后,再新增子配置
|
||||
avContentCfgDao.deleteAvVoipIp(entity);
|
||||
stringCfgDao.deleteSubscribeIdCfgByCfgIndexInfo(entity);
|
||||
avContentCfgDao.deleteAvVoipAccountCfg(entity);
|
||||
AreaIpCfg area = new AreaIpCfg();
|
||||
area.setCompileId(entity.getCompileId());
|
||||
area.setFunctionId(entity.getFunctionId());
|
||||
@@ -219,6 +222,12 @@ public class AvContentCfgService extends BaseService{
|
||||
}
|
||||
}
|
||||
}
|
||||
if(entity.getVoipAccounts()!=null&&entity.getVoipAccounts().size()>0){
|
||||
for (AvVoipAccountCfg voipAccount : entity.getVoipAccounts()) {
|
||||
entity.setVoipAccount(voipAccount);
|
||||
avContentCfgDao.insertAvVoipAccountCfg(entity);
|
||||
}
|
||||
}
|
||||
//保存区域IP信息
|
||||
if(entity.getAreaCfg()!=null){
|
||||
for(AreaIpCfg cfg:entity.getAreaCfg()){
|
||||
@@ -230,7 +239,7 @@ public class AvContentCfgService extends BaseService{
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
/*@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void saveOrUpdateAvVoipAccount(CfgIndexInfo entity){
|
||||
//设置区域运营商信息
|
||||
setAreaEffectiveIds(entity);
|
||||
@@ -311,7 +320,7 @@ public class AvContentCfgService extends BaseService{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
/**
|
||||
@@ -333,6 +342,7 @@ public class AvContentCfgService extends BaseService{
|
||||
entity.setEditTime(new Date());
|
||||
avContentCfgDao.updateAvVoipIp(entity);
|
||||
avContentCfgDao.updateAvVoipKeywordCfgt(entity);
|
||||
avContentCfgDao.updateAvVoipAccount(entity);
|
||||
avContentCfgDao.updateCfgIndexInfo(entity);
|
||||
AreaIpCfg areaIpCfg=new AreaIpCfg();
|
||||
BeanUtils.copyProperties(entity, areaIpCfg);
|
||||
@@ -345,7 +355,7 @@ public class AvContentCfgService extends BaseService{
|
||||
* @param isValid
|
||||
* @param ids compileIds
|
||||
*/
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
/* @Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void updateAvVoipAccountValid(Integer isAudit,Integer isValid,String compileIds,Integer functionId){
|
||||
String[] idArray = compileIds.split(",");
|
||||
for(String id :idArray){
|
||||
@@ -363,7 +373,7 @@ public class AvContentCfgService extends BaseService{
|
||||
BeanUtils.copyProperties(entity, areaIpCfg);
|
||||
areaIpCfgDao.updateAreaIpCfgValid(areaIpCfg);
|
||||
}
|
||||
}
|
||||
}*/
|
||||
/**
|
||||
*
|
||||
* @param isAudit
|
||||
@@ -372,16 +382,17 @@ public class AvContentCfgService extends BaseService{
|
||||
* @param functionId
|
||||
*/
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void auditAvVoip(Integer isAudit,Integer isValid,Integer functionId,String compileId,Date auditTime){
|
||||
public void auditAvVoip(Integer isAudit,Integer isValid,Integer functionId,String id,Date auditTime){
|
||||
CfgIndexInfo entity = new CfgIndexInfo();
|
||||
|
||||
List<CfgIndexInfo> list = new ArrayList();
|
||||
List<AvVoipIpCfg> voipIpList = new ArrayList();
|
||||
List <NtcSubscribeIdCfg> ntcList = new ArrayList();
|
||||
List<AvVoipAccountCfg> accountList = new ArrayList();
|
||||
List<AreaIpCfg> areaIpCfgList = new ArrayList();
|
||||
|
||||
CfgIndexInfo searchCfg=new CfgIndexInfo();
|
||||
searchCfg.setCompileId(Integer.parseInt(compileId));
|
||||
searchCfg.setCfgId(Long.parseLong(id));
|
||||
|
||||
entity = avContentCfgDao.getCfgIndexInfo(searchCfg);
|
||||
entity.setIsAudit(isAudit);
|
||||
@@ -390,6 +401,7 @@ public class AvContentCfgService extends BaseService{
|
||||
entity.setAuditTime(auditTime);
|
||||
|
||||
avContentCfgDao.updateAvVoipIp(entity);
|
||||
avContentCfgDao.updateAvVoipAccount(entity);
|
||||
avContentCfgDao.updateAvVoipKeywordCfgt(entity);
|
||||
|
||||
avContentCfgDao.updateCfgIndexInfo(entity);
|
||||
@@ -398,6 +410,7 @@ public class AvContentCfgService extends BaseService{
|
||||
areaIpCfgDao.updateAreaIpCfg(areaIpCfg);
|
||||
|
||||
voipIpList=avContentCfgDao.findVoipIpCfgList(entity);
|
||||
accountList=avContentCfgDao.findVoipAccountCfgList(entity);
|
||||
ntcList=stringCfgDao.findSubscribeIdCfgListByCfgIndexInfo(entity);
|
||||
areaIpCfgList=areaIpCfgDao.getByCompileId(entity.getCompileId());
|
||||
|
||||
@@ -423,6 +436,11 @@ public class AvContentCfgService extends BaseService{
|
||||
groupRelationList=ntcMap.get("groupList");
|
||||
strRegionList=ntcMap.get("dstList");
|
||||
}
|
||||
if(!StringUtil.isEmpty(accountList)){
|
||||
Map<String,List> accountMap = cfgConvert(strRegionList,accountList,2,entity,groupRelationList);
|
||||
groupRelationList=accountMap.get("groupList");
|
||||
strRegionList=accountMap.get("dstList");
|
||||
}
|
||||
if(!StringUtil.isEmpty(areaIpCfgList)){
|
||||
Map<String,List> areaMap = cfgConvert(areaIpRegionList,areaIpCfgList,1,entity,groupRelationList);
|
||||
groupRelationList=areaMap.get("groupList");
|
||||
@@ -452,10 +470,10 @@ public class AvContentCfgService extends BaseService{
|
||||
maatBean.setOpAction(Constants.INSERT_ACTION);
|
||||
//调用服务接口下发配置数据
|
||||
String json=gsonToJson(maatBean);
|
||||
logger.info("voip IP配置下发配置参数:"+json);
|
||||
logger.info("voip 配置下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
ToMaatResult result = ConfigServiceUtil.postMaatCfg(json);
|
||||
logger.info("voip IP配置下发响应信息:"+result.getMsg());
|
||||
logger.info("voip 配置下发响应信息:"+result.getMsg());
|
||||
|
||||
}else if(isAudit==3){
|
||||
maatCfg.setCompileId(entity.getCompileId());
|
||||
@@ -469,15 +487,15 @@ public class AvContentCfgService extends BaseService{
|
||||
maatBean.setOpAction(Constants.UPDATE_ACTION);
|
||||
//调用服务接口取消配置
|
||||
String json=gsonToJson(maatBean);
|
||||
logger.info("voip IP配置下发配置参数:"+json);
|
||||
logger.info("voip 配置下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
ToMaatResult result = ConfigServiceUtil.put(json,1);
|
||||
logger.info("voip IP配置取消配置响应信息:"+result.getMsg());
|
||||
logger.info("voip 配置取消配置响应信息:"+result.getMsg());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
/********************************voip业务*********************************/
|
||||
/********************************voip account业务*********************************/
|
||||
/**
|
||||
*
|
||||
* @param isAudit
|
||||
@@ -485,7 +503,7 @@ public class AvContentCfgService extends BaseService{
|
||||
* @param ids 编译Id
|
||||
* @param functionId
|
||||
*/
|
||||
@Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
/* @Transactional(readOnly=false,rollbackFor=RuntimeException.class)
|
||||
public void auditAvVoipAccount(Integer isAudit,Integer isValid,Integer functionId,String compileId,Date auditTime){
|
||||
CfgIndexInfo entity = new CfgIndexInfo();
|
||||
|
||||
@@ -591,7 +609,7 @@ public class AvContentCfgService extends BaseService{
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}*/
|
||||
/********************************voip业务*********************************/
|
||||
|
||||
|
||||
|
||||
@@ -37,17 +37,27 @@
|
||||
}
|
||||
},
|
||||
submitHandler : function(form) {
|
||||
|
||||
var flag = true;
|
||||
var subscribeId=0;
|
||||
//存在隐藏的subscribeId,不算进域配置
|
||||
if($(".boxSolid.hidden").hasClass("subscribeId")){
|
||||
subscribeId=1;
|
||||
}
|
||||
//代表所有业务都隐藏了,提示必须增加一种业务数据
|
||||
if(($(".boxSolid").length - 1) == ($(".boxSolid.hidden").length - subscribeId)){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
if($(".boxSolid[class~='subscribeId']").length>0){
|
||||
if($(".boxSolid.hidden[class~='subscribeId']").is(":hidden")){
|
||||
if(($(".boxSolid").length) == ($(".boxSolid.hidden").length)){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(!$(".boxSolid.hidden[class~='subscribeId']").is(":hidden")){
|
||||
if(($(".boxSolid").length) == ($(".boxSolid.hidden").length) + 1){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
}
|
||||
}
|
||||
//代表所有业务都隐藏了,提示必须增加一种业务数据
|
||||
}else{
|
||||
if(($(".boxSolid").length) == ($(".boxSolid.hidden").length)){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
}
|
||||
}
|
||||
//代表所有区域都隐藏了,提示必须增加个区域信息
|
||||
if($("input[name='isAreaEffective']:checked").val()==1 && $(".container-fluid:visible").size()==0){
|
||||
@@ -134,7 +144,7 @@
|
||||
<span id="tagsinputTip" style="display:none"><spring:message code="multiple_keywords_tip"></spring:message></span>
|
||||
<div class="page-content">
|
||||
<h3 class="page-title">
|
||||
<spring:message code="av_voip_ip_control"></spring:message>
|
||||
<spring:message code="av_voip_control"></spring:message>
|
||||
</h3>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
@@ -228,6 +238,7 @@
|
||||
|
||||
<c:set var="ipCfgIndex" value="0"></c:set>
|
||||
<c:set var="strCfgIndex" value="0"></c:set>
|
||||
<c:set var="accountCfgIndex" value="0"></c:set>
|
||||
<c:forEach items="${regionList}" var="region" varStatus="status">
|
||||
<c:if test="${region.regionType eq 1 }">
|
||||
<!--ip info-->
|
||||
@@ -260,7 +271,49 @@
|
||||
</c:choose>
|
||||
<!--/ip info-->
|
||||
</c:if>
|
||||
|
||||
<c:if test="${region.regionType eq 2 }">
|
||||
<c:if test="${region.configServiceType eq 'voip_account' }">
|
||||
<c:set var="tabName" value="${region.configRegionValue}Tab"></c:set>
|
||||
<h4 class="form-section">
|
||||
<spring:message code="${region.configRegionValue}" />
|
||||
<small> <span
|
||||
class="glyphicon glyphicon-plus ${tabName}Add"
|
||||
onClick="addContent(this,'${tabName}')" title="add"></span></small>
|
||||
</h4>
|
||||
<c:set var="cfgName" value="voipAccounts[${accountCfgIndex}]"></c:set>
|
||||
<%-- <c:set var="regionValue" value="${region.configRegionValue}"></c:set> --%>
|
||||
<c:choose>
|
||||
<c:when test="${fn:length(_cfg.voipAccounts)>0}">
|
||||
<c:set var="isBreak" value="false" ></c:set>
|
||||
<c:forEach items="${_cfg.voipAccounts}" var="cfg">
|
||||
<c:choose>
|
||||
<c:when test="${region.configRegionValue eq cfg.cfgType and !isBreak}">
|
||||
<div class="row boxSolid ${tabName}${status.index}">
|
||||
<%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%>
|
||||
</div>
|
||||
<c:set var="isBreak" value="true" ></c:set>
|
||||
<c:set var="accountCfgIndex" value="${accountCfgIndex+1 }"></c:set>
|
||||
</c:when>
|
||||
</c:choose>
|
||||
</c:forEach>
|
||||
<c:if test="${!isBreak}">
|
||||
<div class="row boxSolid ${tabName}${status.index} hidden disabled">
|
||||
<%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%>
|
||||
</div>
|
||||
<c:set var="accountCfgIndex" value="${accountCfgIndex+1 }"></c:set>
|
||||
</c:if>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<div class="row boxSolid ${tabName}${status.index} hidden disabled">
|
||||
<%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%>
|
||||
</div>
|
||||
<c:set var="accountCfgIndex" value="${accountCfgIndex+1 }"></c:set>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</c:if>
|
||||
<!-- 关键字 -->
|
||||
<c:if test="${region.configServiceType eq 'subscribe_id' }">
|
||||
<c:set var="tabName" value="${region.configRegionValue}Tab"></c:set>
|
||||
<h4 class="form-section">
|
||||
<spring:message code="${region.configRegionValue}" />
|
||||
@@ -269,7 +322,6 @@
|
||||
onClick="addContent(this,'${tabName}')" title="add"></span></small>
|
||||
</h4>
|
||||
<c:set var="cfgName" value="ntcSubscribeIdCfgList[${strCfgIndex}]"></c:set>
|
||||
<%-- <c:set var="regionValue" value="${region.configRegionValue}"></c:set> --%>
|
||||
<c:choose>
|
||||
<c:when test="${fn:length(_cfg.ntcSubscribeIdCfgList)>0}">
|
||||
<c:set var="isBreak" value="false" ></c:set>
|
||||
@@ -299,6 +351,7 @@
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</c:if>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<br>
|
||||
<%@include file="/WEB-INF/include/form/areaInfo.jsp"%>
|
||||
|
||||
@@ -14,25 +14,28 @@
|
||||
.ready(
|
||||
function() {
|
||||
$(".glyphicon-plus").first().click();
|
||||
/* $("#cancel").on("click", function() {
|
||||
window.history.back();
|
||||
});*/
|
||||
$(".action").on("change", function() {
|
||||
$("#serviceId").val($(this).attr("serviceId"));
|
||||
$("#protocolId").val($(this).attr("protocolId"));
|
||||
var action=$("input[name='action']:checked").val();
|
||||
switchAction(action);
|
||||
});
|
||||
});
|
||||
$("#serviceId").val($(".action:checked").attr("serviceId"));
|
||||
$("#protocolId").val($(".action:checked").attr("protocolId"));
|
||||
$("#cfgFrom").validate(
|
||||
{ errorPlacement : function(error, element) {
|
||||
if($(element).parents().hasClass("tagsinput")){
|
||||
$(element).parents(".col-md-6").next("div").append(error);
|
||||
}else{
|
||||
$(element).parents(".form-group").find(
|
||||
"div[for='"
|
||||
+ element.attr("name")
|
||||
+ "']").append(error);
|
||||
}
|
||||
},
|
||||
if($(element).parents().hasClass("tagsinput")){
|
||||
$(element).parents(".col-md-6").next("div").append(error);
|
||||
}else{
|
||||
$(element).parents(".form-group").find(
|
||||
"div[for='"
|
||||
+ element.attr("name")
|
||||
+ "']").append(error);
|
||||
}
|
||||
},
|
||||
submitHandler : function(form) {
|
||||
|
||||
var flag = true;
|
||||
@@ -131,7 +134,7 @@
|
||||
<span id="tagsinputTip" style="display:none"><spring:message code="multiple_keywords_tip"></spring:message></span>
|
||||
<div class="page-content">
|
||||
<h3 class="page-title">
|
||||
<spring:message code="av_voip_account_control"></spring:message>
|
||||
<spring:message code="av_voip_ip_control"></spring:message>
|
||||
</h3>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
@@ -149,7 +152,7 @@
|
||||
</div>
|
||||
<div class="portlet-body form">
|
||||
<!-- BEGIN FORM-->
|
||||
<form id="cfgFrom" action="${ctx}/ntc/av/saveAccountVoip"
|
||||
<form id="cfgFrom" action="${ctx}/ntc/av/saveVoip"
|
||||
method="post" class="form-horizontal">
|
||||
<input type="hidden" name="cfgId" value="${_cfg.cfgId}">
|
||||
<input type="hidden" name="compileId" value="${_cfg.compileId}">
|
||||
@@ -158,6 +161,8 @@
|
||||
value="${_cfg.serviceId}">
|
||||
|
||||
<div class="form-body">
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
@@ -169,25 +174,24 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 动作 -->
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label class="control-label col-md-3"><spring:message
|
||||
code="action" /></label>
|
||||
<label class="control-label col-md-3"><spring:message code="action" /></label>
|
||||
<div class="col-md-6">
|
||||
<c:forEach items="${serviceList}" var="service"
|
||||
varStatus="satus">
|
||||
<label class="radio-inline"> <c:if
|
||||
test="${_cfg.functionId eq service.functionId}">
|
||||
<input type="radio" name="action"
|
||||
serviceId="${service.serviceId }"
|
||||
<label class="radio-inline"> <c:if test="${_cfg.functionId eq service.functionId}">
|
||||
<input type="radio" name="action" serviceId="${service.serviceId }"
|
||||
protocolId="${service.protocolId }"
|
||||
regionCode="${service.regionCode }"
|
||||
value="${service.action }" class="required action"
|
||||
<c:if test="${_cfg.action==service.action || (_cfg.action==null && satus.index==0)}">checked</c:if>>
|
||||
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">
|
||||
<c:if test="${dict.itemCode eq service.action }">
|
||||
<c:if test="${dict.itemCode eq service.action }">
|
||||
<spring:message code="${dict.itemValue }"/>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</label>
|
||||
</c:forEach>
|
||||
@@ -195,8 +199,9 @@
|
||||
<div for="action"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<!-- dolog begin-->
|
||||
<!-- dolog begin-->
|
||||
<div class="row doLog">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
@@ -214,56 +219,48 @@
|
||||
</label>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:forEach>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- dolog end-->
|
||||
<c:set var="accountCfgIndex" value="0"></c:set>
|
||||
|
||||
<c:set var="ipCfgIndex" value="0"></c:set>
|
||||
<c:set var="strCfgIndex" value="0"></c:set>
|
||||
<c:forEach items="${regionList}" var="region" varStatus="status">
|
||||
<c:if test="${region.regionType eq 2 }">
|
||||
<c:if test="${region.configServiceType eq 'voip_account' }">
|
||||
<c:if test="${region.regionType eq 1 }">
|
||||
<!--ip info-->
|
||||
<c:set var="tabName" value="${region.configRegionValue}Tab"></c:set>
|
||||
<h4 class="form-section">
|
||||
<spring:message code="${region.configRegionValue}" />
|
||||
<small> <span
|
||||
class="glyphicon glyphicon-plus ${tabName}Add"
|
||||
class="glyphicon glyphicon-plus ${tabName}Add"
|
||||
onClick="addContent(this,'${tabName}')" title="add"></span></small>
|
||||
</h4>
|
||||
<c:set var="cfgName" value="voipAccounts[${accountCfgIndex}]"></c:set>
|
||||
<c:set var="cfgName" value="voipIps[${ipCfgIndex}]"></c:set>
|
||||
<%-- <c:set var="regionValue" value="${region.configRegionValue}"></c:set> --%>
|
||||
<c:choose>
|
||||
<c:when test="${fn:length(_cfg.voipAccounts)>0}">
|
||||
<c:set var="isBreak" value="false" ></c:set>
|
||||
<c:forEach items="${_cfg.voipAccounts}" var="cfg">
|
||||
<c:choose>
|
||||
<c:when test="${region.configRegionValue eq cfg.cfgType and !isBreak}">
|
||||
<div class="row boxSolid ${tabName}${status.index}">
|
||||
<%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%>
|
||||
</div>
|
||||
<c:set var="isBreak" value="true" ></c:set>
|
||||
<c:set var="accountCfgIndex" value="${accountCfgIndex+1 }"></c:set>
|
||||
</c:when>
|
||||
</c:choose>
|
||||
</c:forEach>
|
||||
<c:if test="${!isBreak}">
|
||||
<div class="row boxSolid ${tabName}${status.index} hidden disabled">
|
||||
<%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%>
|
||||
</div>
|
||||
<c:set var="accountCfgIndex" value="${accountCfgIndex+1 }"></c:set>
|
||||
<c:when test="${fn:length(_cfg.voipIps)>0 and ipCfgIndex<fn:length(_cfg.voipIps) }">
|
||||
<c:forEach items="${_cfg.voipIps}" var="ipPort">
|
||||
<c:if test="${region.configRegionValue eq ipPort.cfgType }">
|
||||
<div class="row boxSolid ${tabName}${status.index}">
|
||||
<%@include file="/WEB-INF/views/cfg/ipCfgForm.jsp"%>
|
||||
</div>
|
||||
<c:set var="ipCfgIndex" value="${ipCfgIndex+1}"></c:set>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<div class="row boxSolid ${tabName}${status.index} hidden disabled">
|
||||
<%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%>
|
||||
<%@include file="/WEB-INF/views/cfg/ipCfgForm.jsp"%>
|
||||
</div>
|
||||
<c:set var="accountCfgIndex" value="${accountCfgIndex+1 }"></c:set>
|
||||
<c:set var="ipCfgIndex" value="${ipCfgIndex+1 }"></c:set>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<!--/ip info-->
|
||||
</c:if>
|
||||
<!-- 关键字 -->
|
||||
<c:if test="${region.configServiceType eq 'subscribe_id' }">
|
||||
<c:if test="${region.regionType eq 2 }">
|
||||
<c:set var="tabName" value="${region.configRegionValue}Tab"></c:set>
|
||||
<h4 class="form-section">
|
||||
<spring:message code="${region.configRegionValue}" />
|
||||
@@ -272,6 +269,7 @@
|
||||
onClick="addContent(this,'${tabName}')" title="add"></span></small>
|
||||
</h4>
|
||||
<c:set var="cfgName" value="ntcSubscribeIdCfgList[${strCfgIndex}]"></c:set>
|
||||
<%-- <c:set var="regionValue" value="${region.configRegionValue}"></c:set> --%>
|
||||
<c:choose>
|
||||
<c:when test="${fn:length(_cfg.ntcSubscribeIdCfgList)>0}">
|
||||
<c:set var="isBreak" value="false" ></c:set>
|
||||
@@ -301,7 +299,6 @@
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</c:if>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<br>
|
||||
<%@include file="/WEB-INF/include/form/areaInfo.jsp"%>
|
||||
@@ -3,9 +3,6 @@
|
||||
<html>
|
||||
<head>
|
||||
<title><spring:message code="${cfgName}"></spring:message></title>
|
||||
<link href="${pageContext.request.contextPath}/static/global/plugins/bootstrap-select/css/bootstrap-select.min.css" rel="stylesheet"/>
|
||||
<link href="${pageContext.request.contextPath}/static/global/plugins/treeTable/themes/vsStyle/treeTable.min.css" rel="stylesheet" type="text/css" />
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/bootstrap-select/js/bootstrap-select.min.js"></script>
|
||||
<c:choose>
|
||||
<c:when test="${cookie.Language.value eq 'zh_CN'}">
|
||||
<script src="${pageContext.request.contextPath}/static/global/plugins/bootstrap-select/js/i18n/defaults-zh_CN.min.js"></script>
|
||||
@@ -27,6 +24,8 @@
|
||||
$("#intype").val("${cfg.cfgDesc}");
|
||||
}else if("${cfg.voipIp.srcIpAddress}"){
|
||||
$("#intype").val("${cfg.voipIp.srcIpAddress}");
|
||||
}else if("${cfg.voipAccount.cfgKeywords}"){
|
||||
$("#intype").val("${cfg.voipAccount.cfgKeywords}");
|
||||
}else if("${cfg.compileId}"){
|
||||
$("#intype").val("${cfg.compileId}");
|
||||
}else if("${cfg.voipIp.srcPort}"){
|
||||
@@ -64,10 +63,8 @@
|
||||
var index=$(this).attr("id").replace("open","");
|
||||
$("#"+openId).hide();
|
||||
$("#"+closeId).show();
|
||||
var compileId=$(this).attr("compileId");
|
||||
//var compileId=$(this).attr("compileId");
|
||||
var cfgId=$(this).attr("cfgId");
|
||||
var hasIp=false;
|
||||
var hasSubscribe=false;
|
||||
if($("#"+openId).parent().parent().next("tr").hasClass("child")){
|
||||
$("#"+openId).parent().parent().next("tr").show();
|
||||
}else{
|
||||
@@ -75,305 +72,22 @@
|
||||
type:'post',
|
||||
async:false,
|
||||
url:'${ctx}/ntc/av/ajaxVoipIpInfo',
|
||||
data:{"compileId":compileId,"cfgId":cfgId},
|
||||
data:{"cfgId":cfgId,"index":index},
|
||||
dataType:"html",
|
||||
success:function(data){
|
||||
var voipIpCfgTab="<tr class='child'>"+
|
||||
"<td style='border-right: 1px solid #FFFFFF;'>"+
|
||||
"<input type='checkbox' hidden='hidden'/>"+
|
||||
"</td>"+
|
||||
"<td colspan='"+($(".table tr").eq(0).children("th").length-1)+"'>";
|
||||
var subTab="<tr class='child'>"+
|
||||
"<td style='border-right: 1px solid #FFFFFF;'>"+
|
||||
"<input type='checkbox' hidden='hidden'/>"+
|
||||
"</td>"+
|
||||
"<td colspan='"+($(".table tr").eq(0).children("th").length-1)+"'>";
|
||||
var html="";
|
||||
html+="<div class='row'>";
|
||||
if(data.subscribe.length >0){
|
||||
hasSubscribe=true;
|
||||
html+="<div id='subscribeTitle"+index+"' onclick='switchInfo(\"ip\","+index+")' class='col-md-1 tabInfo badge-info' >";
|
||||
html+="<spring:message code='NTC_SUBSCRIBE_ID'/>";
|
||||
html+="<i id='subscribeDown"+index+"' class='fa fa-angle-double-down '></i>";
|
||||
html+="<i id='subscribeUp"+index+"' class='fa fa-angle-double-up ' style='display:none'></i>";
|
||||
html+="</div>";
|
||||
}
|
||||
if(data.ip.length >0){
|
||||
hasIp=true;
|
||||
html+="<div id='ipTitle"+index+"' onclick='switchInfo(\"subscribe\","+index+")' class='col-md-1 tabInfo' >";
|
||||
html+="<spring:message code='av_voip_ip_title'/>";
|
||||
html+="<i id='ipDown"+index+"' class='fa fa-angle-double-down' style='display:none' ></i>";
|
||||
html+="<i id='ipUp"+index+"' class='fa fa-angle-double-up '></i>";
|
||||
html+="</div>";
|
||||
}
|
||||
|
||||
html+="</div>";
|
||||
//subscribe信息
|
||||
if(data.subscribe.length > 0){
|
||||
html+="<div id='subscribeInfo"+index+"' class='content content'>";
|
||||
$.each(data.subscribe,function(index,item){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-8'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label class='keyword-disinline'><spring:message code='NTC_SUBSCRIBE_ID'/>: ";
|
||||
html+=item.cfgKeywords.replace(/\*\*\*and\*\*\*/g , " ");
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
|
||||
if(item.isHexbin==0){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_hex'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='not_hex'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_case_insenstive'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='case_insenstive'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
}
|
||||
if(item.isHexbin==1){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_hex'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='hex'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_case_insenstive'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='case_insenstive'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
}
|
||||
if(item.isHexbin==2){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_hex'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='not_hex'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_case_insenstive'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='case_senstive'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
}
|
||||
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='expression_type'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.exprType==1){
|
||||
html+="<spring:message code='and_expression'/>"
|
||||
}
|
||||
if(item.exprType==0){
|
||||
html+="<spring:message code='null_expression'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='match_method'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.matchMethod==0){
|
||||
html+="<spring:message code='substring_match'/>"
|
||||
}
|
||||
if(item.matchMethod==1){
|
||||
html+="<spring:message code='right_match'/>"
|
||||
}
|
||||
if(item.matchMethod==2){
|
||||
html+="<spring:message code='left_match'/>"
|
||||
}
|
||||
if(item.matchMethod==3){
|
||||
html+="<spring:message code='exactly_match'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
/* if(index < (data.ip.length-1) && index != 0){
|
||||
alert("下一行");
|
||||
}
|
||||
html+="<h5 class='page-header'></h5>";*/
|
||||
})
|
||||
html+="</div>";
|
||||
}
|
||||
//ip信息
|
||||
if(data.ip.length >0){
|
||||
html+="<div id='ipInfo"+index+"' class='content' style='display:none'>";
|
||||
$.each(data.ip,function(index,item){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='ip_type'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.ipType==4){
|
||||
html+="<spring:message code='ipv4'/>";
|
||||
}
|
||||
if(item.ipType==6){
|
||||
html+="<spring:message code='ipv6'/>";
|
||||
}
|
||||
if(item.ipType==46){
|
||||
html+="<spring:message code='4over6'/>";
|
||||
}
|
||||
if(item.ipType==64){
|
||||
html+="<spring:message code='6over4'/>";
|
||||
}
|
||||
if(item.ipType==10){
|
||||
html+="<spring:message code='all'/>";
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='ip_pattern'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.ipPattern==1){
|
||||
html+="<spring:message code='ip_subnet'/>"
|
||||
}
|
||||
if(item.ipPattern==2){
|
||||
html+="<spring:message code='ip_range'/>"
|
||||
}
|
||||
if(item.ipPattern==3){
|
||||
html+="IP"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='client_ip'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.srcIpAddress;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='port_pattern'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.portPattern==1){
|
||||
html+="port"
|
||||
}
|
||||
if(item.portPattern==2){
|
||||
html+="<spring:message code='port_mask'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='client_port'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.srcPort;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='server_ip'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.destIpAddress;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='server_port'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.destPort;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='direction'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.direction==0){
|
||||
html+="<spring:message code='twoway'/>"
|
||||
}
|
||||
if(item.direction==1){
|
||||
html+="<spring:message code='oneway'/>"
|
||||
}
|
||||
if(item.direction==2){
|
||||
html+="<spring:message code='egress'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='protocol'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.protocol==6){
|
||||
html+="TCP"
|
||||
}
|
||||
if(item.protocol==17){
|
||||
html+="UDP"
|
||||
}
|
||||
if(item.protocol==0){
|
||||
html+="<spring:message code='arbitrary'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
/* if(index < (data.ip.length-1) && index != 0){
|
||||
alert("下一行");
|
||||
}
|
||||
html+="<h5 class='page-header'></h5>";*/
|
||||
})
|
||||
html+="</div>";
|
||||
|
||||
}
|
||||
|
||||
voipIpCfgTab=voipIpCfgTab+html;
|
||||
voipIpCfgTab+="</td>";
|
||||
voipIpCfgTab+="</tr>";
|
||||
$("#"+openId).parent().parent().after(voipIpCfgTab);
|
||||
if(hasSubscribe && ! hasIp){
|
||||
switchInfo("ip",index);
|
||||
}
|
||||
if(hasIp && ! hasSubscribe){
|
||||
switchInfo("subscribe",index);
|
||||
}
|
||||
html = html+data;
|
||||
subTab=subTab+html;
|
||||
subTab+="</td>";
|
||||
subTab+="</tr>";
|
||||
$("#"+openId).parent().parent().after(subTab);
|
||||
$("div[name='tabTitle"+index+"']").eq(0).click();
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -389,41 +103,13 @@
|
||||
});
|
||||
});
|
||||
|
||||
function switchInfo(flag,index){
|
||||
//关闭ip信息
|
||||
if("ip" ==flag){
|
||||
$("#ipInfo"+index).hide();
|
||||
$("#downIp"+index).hide();
|
||||
$("#ipTitle"+index).removeClass("badge-info");
|
||||
$("#subscribeInfo"+index).show();
|
||||
$("#subscribeDown"+index).show();
|
||||
$("#subscribeUp"+index).hide();
|
||||
$("#ipUp"+index).show();
|
||||
$("#ipDown"+index).hide();
|
||||
$("#subscribeTitle"+index).addClass("badge-info");
|
||||
}else{
|
||||
//关闭subscribe信息
|
||||
$("#subscribeInfo"+index).hide();
|
||||
$("#downsubscribe"+index).hide();
|
||||
$("#subscribeTitle"+index).removeClass("badge-info");
|
||||
$("#ipInfo"+index).show();
|
||||
$("#ipDown"+index).show();
|
||||
$("#subscribeUp"+index).show();
|
||||
$("#subscribeDown"+index).hide();
|
||||
$("#ipUp"+index).hide();
|
||||
$("#ipTitle"+index).addClass("badge-info");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="page-content">
|
||||
<div class="theme-panel hidden-xs hidden-sm">
|
||||
<shiro:hasPermission name="avVoipIp:config">
|
||||
<shiro:hasPermission name="avVoip:config">
|
||||
<button type="button" class="btn btn-primary"
|
||||
onClick="javascript:window.location='${ctx}/ntc/av/voipForm?functionId=${cfg.functionId}'">
|
||||
<i class="fa fa-plus"></i>
|
||||
@@ -432,7 +118,7 @@
|
||||
</div>
|
||||
|
||||
<h3 class="page-title">
|
||||
<spring:message code="av_voip_ip_control"/>
|
||||
<spring:message code="av_voip_control"/>
|
||||
</h3>
|
||||
<h5 class="page-header"></h5>
|
||||
<div class="col-md-12">
|
||||
@@ -470,6 +156,7 @@
|
||||
<form:option value="compileId"><spring:message code="cfg_id"/></form:option>
|
||||
<form:option value="voipIp.srcIpAddress"><spring:message code="client_ip"/></form:option>
|
||||
<form:option value="voipIp.srcPort"><spring:message code="client_port"/></form:option>
|
||||
<form:option value="voipAccount.cfgKeywords"><spring:message code="av_voip_account_control"/></form:option>
|
||||
<form:option value="action"><spring:message code="action"></spring:message></form:option>
|
||||
<form:option value="ntcSubscribeIdCfg.cfgKeywords"><spring:message code="NTC_SUBSCRIBE_ID"/></form:option>
|
||||
<form:option value="isValid"><spring:message code="is_valid"></spring:message></form:option>
|
||||
@@ -500,12 +187,12 @@
|
||||
<button type="button" class="btn btn-default" id="filter-btn"> <spring:message code="filter"/> <i class="fa fa-angle-double-down"></i></button>
|
||||
</div>
|
||||
<div class="pull-right">
|
||||
<shiro:hasPermission name="avVoipIp:config">
|
||||
<shiro:hasPermission name="avVoip:config">
|
||||
<sys:delRow url="${ctx}/ntc/av/voipForm" id="contentTable" label="update"></sys:delRow>
|
||||
<sys:delRow url="${ctx}/ntc/av/updateAvVoipValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
|
||||
</shiro:hasPermission>
|
||||
<%-- <sys:delRow url="${ctx}/ntc/av/voipExport?functionId=${cfg.functionId }" id="contentTable" label="export" maxRow="${page.maxExportSize }"></sys:delRow> --%>
|
||||
<shiro:hasPermission name="avVoipIp:confirm">
|
||||
<shiro:hasPermission name="avVoip:confirm">
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
|
||||
<i class="fa fa-wrench"></i> <spring:message code="examine"></spring:message>
|
||||
@@ -651,8 +338,8 @@
|
||||
<!-- /筛选搜索内容栏 结束-->
|
||||
</form:form>
|
||||
</div>
|
||||
<sys:message content="${message}" />
|
||||
<div class="table-responsive">
|
||||
<sys:message content="${message}" />
|
||||
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap">
|
||||
<thead>
|
||||
<tr>
|
||||
@@ -682,7 +369,7 @@
|
||||
<tr>
|
||||
<td>
|
||||
<span id="open${status.index}" class="" compileId="${indexCfg.compileId}" cfgId="${indexCfg.cfgId}"> ▷ </span><span style="display: none" id="close${status.index}" > ▼ </span>
|
||||
<input type="checkbox" class="i-checks child-checks" id="${indexCfg.cfgId}" compileId="${indexCfg.compileId}" value="${indexCfg.isAudit}">
|
||||
<input type="checkbox" class="i-checks child-checks" compileId="${indexCfg.compileId}" id="${indexCfg.cfgId}" value="${indexCfg.isAudit}">
|
||||
</td>
|
||||
<td>${indexCfg.compileId }</td>
|
||||
<td>${indexCfg.cfgDesc }</td>
|
||||
|
||||
@@ -25,12 +25,14 @@
|
||||
//搜索框提示语初始化
|
||||
if("${cfg.cfgDesc}"){
|
||||
$("#intype").val("${cfg.cfgDesc}");
|
||||
}else if("${cfg.ntcSubscribeIdCfg.cfgKeywords}"){
|
||||
$("#intype").val("${cfg.ntcSubscribeIdCfg.cfgKeywords}");
|
||||
}else if("${cfg.voipIp.srcIpAddress}"){
|
||||
$("#intype").val("${cfg.voipIp.srcIpAddress}");
|
||||
}else if("${cfg.compileId}"){
|
||||
$("#intype").val("${cfg.compileId}");
|
||||
}else if("${cfg.voipAccount.cfgKeywords}"){
|
||||
$("#intype").val("${cfg.voipAccount.cfgKeywords}");
|
||||
}else if("${cfg.voipIp.srcPort}"){
|
||||
$("#intype").val("${cfg.voipIp.srcPort}");
|
||||
}else if("${cfg.ntcSubscribeIdCfg.cfgKeywords}"){
|
||||
$("#intype").val("${cfg.ntcSubscribeIdCfg.cfgKeywords}");
|
||||
}else{
|
||||
$("#intype").attr("placeholder","<spring:message code='input'/> "+$("#seltype").find("option:selected").text());
|
||||
}
|
||||
@@ -64,15 +66,15 @@
|
||||
$("#"+closeId).show();
|
||||
var compileId=$(this).attr("compileId");
|
||||
var cfgId=$(this).attr("cfgId");
|
||||
var hasIp=false;
|
||||
var hasSubscribe=false;
|
||||
var hasAccount=false;
|
||||
if($("#"+openId).parent().parent().next("tr").hasClass("child")){
|
||||
$("#"+openId).parent().parent().next("tr").show();
|
||||
}else{
|
||||
$.ajax({
|
||||
type:'post',
|
||||
async:false,
|
||||
url:'${ctx}/ntc/av/ajaxVoipAccountInfo',
|
||||
url:'${ctx}/ntc/av/ajaxVoipIpInfo',
|
||||
data:{"compileId":compileId,"cfgId":cfgId},
|
||||
success:function(data){
|
||||
var voipIpCfgTab="<tr class='child'>"+
|
||||
@@ -82,77 +84,38 @@
|
||||
"<td colspan='"+($(".table tr").eq(0).children("th").length-1)+"'>";
|
||||
var html="";
|
||||
html+="<div class='row'>";
|
||||
/* 订阅关键字 */
|
||||
if(data.subscribe.length >0){
|
||||
hasSubscribe=true;
|
||||
html+="<div id='subscribeTitle"+index+"' onclick='switchInfo(\"account\","+index+")' class='col-md-1 tabInfo badge-info' >";
|
||||
html+="<div id='subscribeTitle"+index+"' onclick='switchInfo(\"ip\","+index+")' class='col-md-1 tabInfo badge-info' >";
|
||||
html+="<spring:message code='NTC_SUBSCRIBE_ID'/>";
|
||||
html+="<i id='subscribeDown"+index+"' class='fa fa-angle-double-down '></i>";
|
||||
html+="<i id='subscribeUp"+index+"' class='fa fa-angle-double-up ' style='display:none'></i>";
|
||||
html+="</div>";
|
||||
}
|
||||
|
||||
if(data.account.length >0){
|
||||
hasAccount=true;
|
||||
html+="<div id='accountTitle"+index+"' onclick='switchInfo(\"subscribe\","+index+")' class='col-md-1 tabInfo' >";
|
||||
html+="<spring:message code='av_voip_account_title'/>";
|
||||
html+="<i id='accountDown"+index+"' class='fa fa-angle-double-down '></i>";
|
||||
html+="<i id='accountUp"+index+"' class='fa fa-angle-double-up ' style='display:none'></i>";
|
||||
if(data.ip.length >0){
|
||||
hasIp=true;
|
||||
html+="<div id='ipTitle"+index+"' onclick='switchInfo(\"subscribe\","+index+")' class='col-md-1 tabInfo' >";
|
||||
html+="<spring:message code='av_voip_ip_title'/>";
|
||||
html+="<i id='ipDown"+index+"' class='fa fa-angle-double-down' style='display:none' ></i>";
|
||||
html+="<i id='ipUp"+index+"' class='fa fa-angle-double-up '></i>";
|
||||
html+="</div>";
|
||||
}
|
||||
|
||||
|
||||
html+="</div>";
|
||||
//subscribe信息
|
||||
if(data.subscribe.length > 0){
|
||||
html+="<div id='subscribeInfo"+index+"' class='content content2'>";
|
||||
html+="<div id='subscribeInfo"+index+"' class='content content'>";
|
||||
$.each(data.subscribe,function(index,item){
|
||||
//console.log(item.cfgKeywords);
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-8'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='NTC_SUBSCRIBE_ID'/>: ";
|
||||
html+="<label class='keyword-disinline'><spring:message code='NTC_SUBSCRIBE_ID'/>: ";
|
||||
html+=item.cfgKeywords.replace(/\*\*\*and\*\*\*/g , " ");
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='expression_type'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.exprType==1){
|
||||
html+="<spring:message code='and_expression'/>"
|
||||
}
|
||||
if(item.exprType==0){
|
||||
html+="<spring:message code='null_expression'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='match_method'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.matchMethod==0){
|
||||
html+="<spring:message code='substring_match'/>"
|
||||
}
|
||||
if(item.matchMethod==1){
|
||||
html+="<spring:message code='right_match'/>"
|
||||
}
|
||||
if(item.matchMethod==2){
|
||||
html+="<spring:message code='left_match'/>"
|
||||
}
|
||||
if(item.matchMethod==3){
|
||||
html+="<spring:message code='exactly_match'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
|
||||
if(item.isHexbin==0){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
@@ -219,26 +182,7 @@
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
}
|
||||
/* if(index < (data.ip.length-1) && index != 0){
|
||||
alert("下一行");
|
||||
}
|
||||
html+="<h5 class='page-header'></h5>";*/
|
||||
})
|
||||
html+="</div>";
|
||||
}
|
||||
//account信息
|
||||
if(data.account.length > 0){
|
||||
html+="<div id='accountInfo"+index+"' class='content content2' style='display:none'>";
|
||||
$.each(data.account,function(index,item){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-8'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='account'/>: ";
|
||||
html+=item.cfgKeywords.replace(/\*\*\*and\*\*\*/g , " ");
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
@@ -275,72 +219,6 @@
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
if(item.isHexbin==0){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_hex'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='not_hex'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_case_insenstive'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='case_insenstive'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
}
|
||||
if(item.isHexbin==1){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_hex'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='hex'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_case_insenstive'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='case_insenstive'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
}
|
||||
if(item.isHexbin==2){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_hex'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='not_hex'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='is_case_insenstive'/>:</label>";
|
||||
html+="<label>"
|
||||
html+="<spring:message code='case_senstive'/>"
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
}
|
||||
/* if(index < (data.ip.length-1) && index != 0){
|
||||
alert("下一行");
|
||||
}
|
||||
@@ -348,15 +226,152 @@
|
||||
})
|
||||
html+="</div>";
|
||||
}
|
||||
//ip信息
|
||||
if(data.ip.length >0){
|
||||
html+="<div id='ipInfo"+index+"' class='content' style='display:none'>";
|
||||
$.each(data.ip,function(index,item){
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='ip_type'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.ipType==4){
|
||||
html+="<spring:message code='ipv4'/>";
|
||||
}
|
||||
if(item.ipType==6){
|
||||
html+="<spring:message code='ipv6'/>";
|
||||
}
|
||||
if(item.ipType==46){
|
||||
html+="<spring:message code='4over6'/>";
|
||||
}
|
||||
if(item.ipType==64){
|
||||
html+="<spring:message code='6over4'/>";
|
||||
}
|
||||
if(item.ipType==10){
|
||||
html+="<spring:message code='all'/>";
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='ip_pattern'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.ipPattern==1){
|
||||
html+="<spring:message code='ip_subnet'/>"
|
||||
}
|
||||
if(item.ipPattern==2){
|
||||
html+="<spring:message code='ip_range'/>"
|
||||
}
|
||||
if(item.ipPattern==3){
|
||||
html+="IP"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='client_ip'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.srcIpAddress;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='port_pattern'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.portPattern==1){
|
||||
html+="port"
|
||||
}
|
||||
if(item.portPattern==2){
|
||||
html+="<spring:message code='port_mask'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='client_port'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.srcPort;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='server_ip'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.destIpAddress;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='server_port'/>:</label>";
|
||||
html+="<label>"
|
||||
html+=item.destPort;
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='row'>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='direction'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.direction==0){
|
||||
html+="<spring:message code='twoway'/>"
|
||||
}
|
||||
if(item.direction==1){
|
||||
html+="<spring:message code='oneway'/>"
|
||||
}
|
||||
if(item.direction==2){
|
||||
html+="<spring:message code='egress'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="<div class='col-md-4'>";
|
||||
html+="<div class='form-group'>";
|
||||
html+="<label><spring:message code='protocol'/>:</label>";
|
||||
html+="<label>"
|
||||
if(item.protocol==6){
|
||||
html+="TCP"
|
||||
}
|
||||
if(item.protocol==17){
|
||||
html+="UDP"
|
||||
}
|
||||
if(item.protocol==0){
|
||||
html+="<spring:message code='arbitrary'/>"
|
||||
}
|
||||
html+="</label>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
html+="</div>";
|
||||
/* if(index < (data.ip.length-1) && index != 0){
|
||||
alert("下一行");
|
||||
}
|
||||
html+="<h5 class='page-header'></h5>";*/
|
||||
})
|
||||
html+="</div>";
|
||||
|
||||
}
|
||||
|
||||
voipIpCfgTab=voipIpCfgTab+html;
|
||||
voipIpCfgTab+="</td>";
|
||||
voipIpCfgTab+="</tr>";
|
||||
$("#"+openId).parent().parent().after(voipIpCfgTab);
|
||||
if(hasSubscribe && ! hasAccount){
|
||||
switchInfo("account",index);
|
||||
if(hasSubscribe && ! hasIp){
|
||||
switchInfo("ip",index);
|
||||
}
|
||||
if(hasAccount && ! hasSubscribe){
|
||||
if(hasIp && ! hasSubscribe){
|
||||
switchInfo("subscribe",index);
|
||||
}
|
||||
}
|
||||
@@ -375,30 +390,28 @@
|
||||
});
|
||||
|
||||
function switchInfo(flag,index){
|
||||
|
||||
if("account" ==flag){
|
||||
//关闭account信息
|
||||
$("#accountInfo"+index).hide();
|
||||
$("#downAccount"+index).hide();
|
||||
$("#accountTitle"+index).removeClass("badge-info");
|
||||
//关闭ip信息
|
||||
if("ip" ==flag){
|
||||
$("#ipInfo"+index).hide();
|
||||
$("#downIp"+index).hide();
|
||||
$("#ipTitle"+index).removeClass("badge-info");
|
||||
$("#subscribeInfo"+index).show();
|
||||
$("#subscribeDown"+index).show();
|
||||
$("#accountUp"+index).show();
|
||||
$("#accountDown"+index).hide();
|
||||
$("#subscribeUp"+index).hide();
|
||||
$("#ipUp"+index).show();
|
||||
$("#ipDown"+index).hide();
|
||||
$("#subscribeTitle"+index).addClass("badge-info");
|
||||
|
||||
}else{
|
||||
//关闭subscribe信息
|
||||
//关闭subscribe信息
|
||||
$("#subscribeInfo"+index).hide();
|
||||
$("#downsubscribe"+index).hide();
|
||||
$("#subscribeTitle"+index).removeClass("badge-info");
|
||||
$("#accountInfo"+index).show();
|
||||
$("#accountDown"+index).show();
|
||||
$("#ipInfo"+index).show();
|
||||
$("#ipDown"+index).show();
|
||||
$("#subscribeUp"+index).show();
|
||||
$("#subscribeDown"+index).hide();
|
||||
$("#accountUp"+index).hide();
|
||||
$("#accountTitle"+index).addClass("badge-info");
|
||||
$("#ipUp"+index).hide();
|
||||
$("#ipTitle"+index).addClass("badge-info");
|
||||
}
|
||||
|
||||
|
||||
@@ -410,23 +423,23 @@
|
||||
|
||||
<div class="page-content">
|
||||
<div class="theme-panel hidden-xs hidden-sm">
|
||||
<shiro:hasPermission name="avVoipAccount:config">
|
||||
<shiro:hasPermission name="avVoipIp:config">
|
||||
<button type="button" class="btn btn-primary"
|
||||
onClick="javascript:window.location='${ctx}/ntc/av/voipAccountForm?functionId=${cfg.functionId}'">
|
||||
onClick="javascript:window.location='${ctx}/ntc/av/voipForm?functionId=${cfg.functionId}'">
|
||||
<i class="fa fa-plus"></i>
|
||||
<spring:message code="add"></spring:message></button>
|
||||
</shiro:hasPermission>
|
||||
</div>
|
||||
|
||||
<h3 class="page-title">
|
||||
<spring:message code="av_voip_account_control"/>
|
||||
<spring:message code="av_voip_ip_control"/>
|
||||
</h3>
|
||||
<h5 class="page-header"></h5>
|
||||
<div class="col-md-12">
|
||||
<div class="portlet">
|
||||
<div class="portlet-body">
|
||||
<div class="row" >
|
||||
<form:form id="searchForm" modelAttribute="cfg" action="${ctx}/ntc/av/voipAccountList?functionId=${cfg.functionId}" method="post" class="form-search">
|
||||
<form:form id="searchForm" modelAttribute="cfg" action="${ctx}/ntc/av/voipList?functionId=${cfg.functionId}" method="post" class="form-search">
|
||||
<input id="functionId" name="functionId" type="hidden" value="${cfg.functionId}"/>
|
||||
<input id="audit" name="audit" type="hidden" value="${audit}"/>
|
||||
<input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
|
||||
@@ -455,7 +468,8 @@
|
||||
<form:select path="seltype" class="selectpicker select2 input-small" >
|
||||
<form:option value="cfgDesc"><spring:message code="config_describe"></spring:message></form:option>
|
||||
<form:option value="compileId"><spring:message code="cfg_id"/></form:option>
|
||||
<form:option value="voipAccount.cfgKeywords"><spring:message code="account"/></form:option>
|
||||
<form:option value="voipIp.srcIpAddress"><spring:message code="client_ip"/></form:option>
|
||||
<form:option value="voipIp.srcPort"><spring:message code="client_port"/></form:option>
|
||||
<form:option value="action"><spring:message code="action"></spring:message></form:option>
|
||||
<form:option value="ntcSubscribeIdCfg.cfgKeywords"><spring:message code="NTC_SUBSCRIBE_ID"/></form:option>
|
||||
<form:option value="isValid"><spring:message code="is_valid"></spring:message></form:option>
|
||||
@@ -486,21 +500,21 @@
|
||||
<button type="button" class="btn btn-default" id="filter-btn"> <spring:message code="filter"/> <i class="fa fa-angle-double-down"></i></button>
|
||||
</div>
|
||||
<div class="pull-right">
|
||||
<shiro:hasPermission name="avVoipAccount:config">
|
||||
<sys:delRow url="${ctx}/ntc/av/voipAccountForm" id="contentTable" label="update"></sys:delRow>
|
||||
<sys:delRow url="${ctx}/ntc/av/updateAvVoipAccountValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
|
||||
<shiro:hasPermission name="avVoipIp:config">
|
||||
<sys:delRow url="${ctx}/ntc/av/voipForm" id="contentTable" label="update"></sys:delRow>
|
||||
<sys:delRow url="${ctx}/ntc/av/updateAvVoipValid?isValid=-1&functionId=${cfg.functionId }" id="contentTable" label="delete"></sys:delRow>
|
||||
</shiro:hasPermission>
|
||||
<%-- <sys:delRow url="${ctx}/ntc/av/voipExport?functionId=${cfg.functionId }" id="contentTable" label="export" maxRow="${page.maxExportSize }"></sys:delRow> --%>
|
||||
<shiro:hasPermission name="avVoipAccount:confirm">
|
||||
<shiro:hasPermission name="avVoipIp:confirm">
|
||||
<div class="btn-group">
|
||||
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
|
||||
<i class="fa fa-wrench"></i> <spring:message code="examine"></spring:message>
|
||||
<i class="fa fa-angle-down"></i>
|
||||
</button>
|
||||
<ul class="dropdown-menu pull-right">
|
||||
<li><sys:delRow url="${ctx}/ntc/av/auditAvVoipAccount?isAudit=1&isValid=1&functionId=${cfg.functionId }" id="contentTable" label="approved"></sys:delRow></li>
|
||||
<li><sys:delRow url="${ctx}/ntc/av/auditAvVoipAccount?isAudit=2&isValid=0&functionId=${cfg.functionId }" id="contentTable" label="unapproved"></sys:delRow></li>
|
||||
<li><sys:delRow url="${ctx}/ntc/av/auditAvVoipAccount?isAudit=3&isValid=0&functionId=${cfg.functionId }" id="contentTable" label="cancelPass"></sys:delRow></li>
|
||||
<li><sys:delRow url="${ctx}/ntc/av/auditAvVoip?isAudit=1&isValid=1&functionId=${cfg.functionId }" id="contentTable" label="approved"></sys:delRow></li>
|
||||
<li><sys:delRow url="${ctx}/ntc/av/auditAvVoip?isAudit=2&isValid=0&functionId=${cfg.functionId }" id="contentTable" label="unapproved"></sys:delRow></li>
|
||||
<li><sys:delRow url="${ctx}/ntc/av/auditAvVoip?isAudit=3&isValid=0&functionId=${cfg.functionId }" id="contentTable" label="cancelPass"></sys:delRow></li>
|
||||
</ul>
|
||||
</div>
|
||||
</shiro:hasPermission>
|
||||
@@ -637,8 +651,8 @@
|
||||
<!-- /筛选搜索内容栏 结束-->
|
||||
</form:form>
|
||||
</div>
|
||||
<sys:message content="${message}" />
|
||||
<div class="table-responsive">
|
||||
<sys:message content="${message}" />
|
||||
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap">
|
||||
<thead>
|
||||
<tr>
|
||||
331
src/main/webapp/WEB-INF/views/cfg/av/voip/voipSubList.jsp
Normal file
331
src/main/webapp/WEB-INF/views/cfg/av/voip/voipSubList.jsp
Normal file
@@ -0,0 +1,331 @@
|
||||
<%@ page contentType="text/html;charset=UTF-8"%>
|
||||
<%@ include file="/WEB-INF/include/taglib.jsp"%>
|
||||
<html>
|
||||
<head>
|
||||
<script src="${pageContext.request.contextPath}/static/global/scripts/app.min.js" type="text/javascript"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
//$("div[name='tabTitle"+index+"']").get(0).click();
|
||||
})
|
||||
</script>
|
||||
<style type="text/css">
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<c:forEach items="${tabList}" var="region" varStatus="regionStatus">
|
||||
<div id="${region[1]}Title${index}" onclick="switchSubCfgTabInfo('${region[1]}',${index})"
|
||||
class="col-md-1 tabInfo" name="tabTitle${index }">
|
||||
<spring:message code='${region[1]}' />
|
||||
<i id="${region[1]}${index}" class="fa" name="tabFlag${index}"></i>
|
||||
</div>
|
||||
</c:forEach>
|
||||
</div>
|
||||
<c:forEach items="${tabList}" var="region">
|
||||
<c:if test="${region[0] eq 1 }">
|
||||
<c:forEach items="${_cfg.voipIps}" var="cfg">
|
||||
<c:if test="${region[1] eq cfg.cfgType }">
|
||||
<div id="${region[1]}Info${index}" class="content" name="subCfg${index}">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='ip_type'/>:</label>
|
||||
<label>
|
||||
<c:forEach items="${fns:getDictList('IP_TYPE')}" var="ipTypeC">
|
||||
<c:if test="${cfg.ipType==ipTypeC.itemCode}"><spring:message code="${ipTypeC.itemValue }"/></c:if>
|
||||
</c:forEach>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='ip_pattern'/>:</label>
|
||||
<label>
|
||||
<c:forEach items="${fns:getDictList('IP_PATTERN')}" var="ipPatternC">
|
||||
<c:if test="${cfg.ipPattern==ipPatternC.itemCode}"><spring:message code="${ipPatternC.itemValue }"/></c:if>
|
||||
</c:forEach>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='client_ip'/>:</label>
|
||||
<label>
|
||||
${cfg.srcIpAddress}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='port_pattern'/>:</label>
|
||||
<label>
|
||||
<c:forEach items="${fns:getDictList('PORT_PATTERN')}" var="portPatternC">
|
||||
<c:if test="${cfg.portPattern eq portPatternC.itemCode}"><spring:message code="${portPatternC.itemValue }"/></c:if>
|
||||
</c:forEach>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='client_port'/>:</label><label>${cfg.srcPort }</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='server_ip'/>:</label><label>${cfg.destIpAddress }</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='server_port'/>:</label><label>${cfg.destPort }</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='direction'/>:</label>
|
||||
<label>
|
||||
<c:forEach items="${fns:getDictList('DIRECTION')}" var="directionC">
|
||||
<c:if test="${cfg.direction eq directionC.itemCode}"><spring:message code="${directionC.itemValue }"/></c:if>
|
||||
</c:forEach>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='protocol'/>:</label>
|
||||
<label>
|
||||
<c:forEach items="${fns:getDictList('PROTOCOL')}" var="protocolC">
|
||||
<c:if test="${cfg.protocol eq protocolC.itemCode}"><spring:message code="${protocolC.itemValue }"/></c:if>
|
||||
</c:forEach>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
<c:if test="${region[0] eq 2 }">
|
||||
<c:forEach items="${_cfg.voipAccounts}" var="cfg">
|
||||
<c:if test="${region[1] eq cfg.cfgType }">
|
||||
<div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
|
||||
<div class="row">
|
||||
<div class="col-md-8">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='keywords' />:
|
||||
${fn:replace(cfg.cfgKeywords, "***and***", " ")}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='expression_type' />:</label>
|
||||
<label>
|
||||
<c:choose>
|
||||
<c:when test="${cfg.exprType eq 1}"><spring:message code='and_expression'/></c:when>
|
||||
<c:when test="${cfg.exprType eq 0}"><spring:message code='null_expression'/></c:when>
|
||||
</c:choose>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='match_method' />:</label>
|
||||
<label>
|
||||
<c:forEach items="${fns:getDictList('MATCH_METHOD')}" var="matchMethodC">
|
||||
<c:if test="${cfg.matchMethod==matchMethodC.itemCode }"><spring:message code="${matchMethodC.itemValue}"/></c:if>
|
||||
</c:forEach>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<c:if test="${cfg.isHexbin==0 }">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_hex"/>:</label>
|
||||
<label>
|
||||
<spring:message code="not_hex"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_case_insenstive"/>:</label>
|
||||
<label>
|
||||
<spring:message code="case_insenstive"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${cfg.isHexbin==1 }">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_hex"/>:</label>
|
||||
<label>
|
||||
<spring:message code="hex"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_case_insenstive"/>:</label>
|
||||
<label>
|
||||
<spring:message code="case_insenstive"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${cfg.isHexbin==2 }">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_hex"/>:</label>
|
||||
<label>
|
||||
<spring:message code="not_hex"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_case_insenstive"/>:</label>
|
||||
<label>
|
||||
<spring:message code="case_senstive"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
</div>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
|
||||
<c:if test="${region[1] eq cfg.cfgType }">
|
||||
<div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
|
||||
<div class="row">
|
||||
<div class="col-md-8">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='keywords' />:
|
||||
${fn:replace(cfg.cfgKeywords, "***and***", " ")}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='expression_type' />:</label>
|
||||
<label>
|
||||
<c:choose>
|
||||
<c:when test="${cfg.exprType eq 1}"><spring:message code='and_expression'/></c:when>
|
||||
<c:when test="${cfg.exprType eq 0}"><spring:message code='null_expression'/></c:when>
|
||||
</c:choose>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code='match_method' />:</label>
|
||||
<label>
|
||||
<c:forEach items="${fns:getDictList('MATCH_METHOD')}" var="matchMethodC">
|
||||
<c:if test="${cfg.matchMethod==matchMethodC.itemCode }"><spring:message code="${matchMethodC.itemValue}"/></c:if>
|
||||
</c:forEach>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<c:if test="${cfg.isHexbin==0 }">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_hex"/>:</label>
|
||||
<label>
|
||||
<spring:message code="not_hex"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_case_insenstive"/>:</label>
|
||||
<label>
|
||||
<spring:message code="case_insenstive"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${cfg.isHexbin==1 }">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_hex"/>:</label>
|
||||
<label>
|
||||
<spring:message code="hex"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_case_insenstive"/>:</label>
|
||||
<label>
|
||||
<spring:message code="case_insenstive"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
<c:if test="${cfg.isHexbin==2 }">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_hex"/>:</label>
|
||||
<label>
|
||||
<spring:message code="not_hex"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label><spring:message code="is_case_insenstive"/>:</label>
|
||||
<label>
|
||||
<spring:message code="case_senstive"/>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</c:if>
|
||||
</div>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</html>
|
||||
@@ -40,15 +40,26 @@
|
||||
submitHandler : function(form) {
|
||||
//loading('onloading...');
|
||||
var flag = true;
|
||||
var subscribeId=0;
|
||||
//存在隐藏的subscribeId,不算进域配置
|
||||
if($(".boxSolid.hidden").hasClass("subscribeId")){
|
||||
subscribeId=1;
|
||||
}
|
||||
//代表所有业务都隐藏了,提示必须增加一种业务数据
|
||||
if(($(".boxSolid").length-1) ==($(".boxSolid.hidden").length-subscribeId)){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
if($(".boxSolid[class~='subscribeId']").length>0){
|
||||
if($(".boxSolid.hidden[class~='subscribeId']").is(":hidden")){
|
||||
if(($(".boxSolid").length) == ($(".boxSolid.hidden").length)){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(!$(".boxSolid.hidden[class~='subscribeId']").is(":hidden")){
|
||||
if(($(".boxSolid").length) == ($(".boxSolid.hidden").length) + 1){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
}
|
||||
}
|
||||
//代表所有业务都隐藏了,提示必须增加一种业务数据
|
||||
}else{
|
||||
if(($(".boxSolid").length) == ($(".boxSolid.hidden").length)){
|
||||
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
|
||||
return;
|
||||
}
|
||||
}
|
||||
//代表所有区域都隐藏了,提示必须增加个区域信息
|
||||
if($("input[name='isAreaEffective']:checked").val()==1 && $(".container-fluid:visible").size()==0){
|
||||
|
||||
Reference in New Issue
Block a user