1、多域配置时,增强字符串类的配置,多个匹配区域可组合设置为一条功能更配置域字典,也可单独设置为多条功能配置域字典【单独匹配区域设置字典时,每个匹配区域下拉列表只有一项内容,这种设置,可以灵活组合配置,但取决于具体业务是否允许这种情况】;2、关键字内容与表达式的分隔符使用特殊字符串***and***分隔,提交审核配置时下发服务的配置关键字进行特殊转义处理;3、存在与表达式的关键字内容,在界面静态显示时需处理,将***and***替换为空格。

This commit is contained in:
zhangwei
2018-06-06 14:54:14 +08:00
parent 44b149a694
commit 5a1dae8dd0
16 changed files with 68 additions and 33 deletions

View File

@@ -131,7 +131,7 @@ public class BaseStringCfg extends BaseCfg<BaseStringCfg> {
*/
public String getCfgKeywords() {
cfgKeywords = StringEscapeUtils.unescapeHtml4(cfgKeywords);
// cfgKeywords = StringEscapeUtils.unescapeHtml4(cfgKeywords);
/*cfgKeywords = cfgKeywords.replace("&", "\\&");
cfgKeywords = cfgKeywords.replace(" ", "\\b");
cfgKeywords = cfgKeywords.replace("\\", "\\\\");

View File

@@ -8,6 +8,8 @@
*/
package com.nis.domain.configuration;
import org.apache.commons.lang3.StringEscapeUtils;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
@@ -73,6 +75,7 @@ public class ComplexkeywordCfg extends BaseCfg<ComplexkeywordCfg>{
this.district = district;
}
public String getCfgKeywords() {
// cfgKeywords = StringEscapeUtils.unescapeHtml4(cfgKeywords);
return cfgKeywords;
}
public void setCfgKeywords(String cfgKeywords) {

View File

@@ -302,4 +302,5 @@ public final class Constants {
public static final String SSL_SAN_REGION = Configurations.getStringProperty("ssl_san_region","ssl_san");
public static final String SSL_CA_REGION = Configurations.getStringProperty("ssl_ca_region","ssl_ca");
public static final String KEYWORD_EXPR = Configurations.getStringProperty("keyword_expr","***and***");
}

View File

@@ -266,7 +266,7 @@ public class WebsiteController extends BaseController{
CfgIndexInfo entity = new CfgIndexInfo();
String[] idArray = ids.split(",");
for(String id :idArray){
entity = websiteCfgService.getHttpCfg(Long.parseLong(id));
entity = websiteCfgService.getSslCfg(Long.parseLong(id));
entity.setIsAudit(isAudit);
entity.setIsValid(isValid);
entity.setAuditorId(UserUtils.getUser().getId());

View File

@@ -30,7 +30,7 @@
<if test="configRegionCode != null">
AND config_region_code=#{configRegionCode,jdbcType=VARCHAR}
</if>
order by dict_id
order by dict_id,config_region_code
</select>
</mapper>

View File

@@ -8,6 +8,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.StringEscapeUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
@@ -336,13 +337,8 @@ public abstract class BaseService {
cfg.setRegionId(ConfigServiceUtil.getId(3, 1).get(0));
cfg.setAuditTime(baseCfg.getAuditTime());
cfg.setIsValid(baseCfg.getIsValid());
String cfgKeywords = cfg.getCfgKeywords();
cfgKeywords=cfgKeywords.replace("\\", "\\\\");
cfgKeywords=cfgKeywords.replace("&", "\\&");
cfgKeywords=cfgKeywords.replace(" ", "\\b");
//英文逗号在界面表示多个关键字的与表达式maat端以&表示
cfgKeywords=cfgKeywords.replace(",", "&");
cfg.setCfgKeywords(cfgKeywords);
//处理配置关键字转译
cfg.setCfgKeywords(keywordsEscape(cfg.getCfgKeywords()));
dstList.add(cfg);
regionValue = cfg.getCfgType();
}
@@ -560,4 +556,14 @@ public abstract class BaseService {
}
}
}
public static String keywordsEscape(String cfgKeywords){
//不转译特殊字符
cfgKeywords = StringEscapeUtils.unescapeHtml4(cfgKeywords);
cfgKeywords=cfgKeywords.replace("\\", "\\\\");
cfgKeywords=cfgKeywords.replace("&", "\\&");
cfgKeywords=cfgKeywords.replace(" ", "\\b");
//***and***在界面表示多个关键字的与表达式此特殊字符串在common.js中使用定义maat端以&表示
cfgKeywords=cfgKeywords.replace(Constants.KEYWORD_EXPR, "&");
return cfgKeywords;
}
}

View File

@@ -262,4 +262,6 @@ voip_account=av_voip_account
ssl_sni_region=ssl_sni
ssl_san_region=ssl_san
ssl_ca_region=ssl_ca
ssl_ip_region=ssl_ip
ssl_ip_region=ssl_ip
#存在与表达式的关键字特殊分隔符
keyword_expr=***and***

View File

@@ -115,7 +115,8 @@
<div class="row">
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label><label>
${fn:replace(cfg.cfgKeywords, "***and***", " ")}</label>
</div>
</div>
<div class="col-md-4">

View File

@@ -77,16 +77,7 @@
/* $("span[title='add']").on("click", function() {
$(".ipPort0").removeClass("hidden");
}); */
$(".district").each(function(){
if($(this).siblings(".otherValue").val()!=''){
if($(this).val()!=$(this).siblings(".otherValue").val()){
$(this).find("option[value=others]").attr("selected","selected");
$(this).siblings(".otherValue").prop("type","text");
}
}
});
});
//业务窗口打开
@@ -225,7 +216,7 @@
<c:set var="isBreak" value="false" ></c:set>
<c:forEach items="${_cfg.complexList}" var="complexCfg">
<c:choose>
<c:when test="${region.configRegionValue eq complexCfg.cfgType and !isBreak}">
<c:when test="${region.configRegionCode eq complexCfg.cfgRegionCode and !isBreak}">
<div class="row boxSolid ${tabName}${status.index}">
<%@include file="/WEB-INF/views/cfg/complexCfgForm.jsp"%>
</div>

View File

@@ -121,7 +121,10 @@
</div>
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label>
<label>
${fn:replace(cfg.cfgKeywords, "***and***", " ")}
</label>
</div>
</div>
<div class="col-md-4">

View File

@@ -120,7 +120,10 @@
</div>
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label>
<label>
${fn:replace(cfg.cfgKeywords, "***and***", " ")}
</label>
</div>
</div>
<div class="col-md-4">

View File

@@ -143,7 +143,7 @@
<div class="row">
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label><label>${fn:replace(cfg.cfgKeywords, "***and***", " ")}</label>
</div>
</div>
<div class="col-md-4">
@@ -198,7 +198,7 @@
</div>
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label><label>${fn:replace(cfg.cfgKeywords, "***and***", " ")}</label>
</div>
</div>
<div class="col-md-4">
@@ -247,7 +247,7 @@
<div class="row">
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label><label>${fn:replace(cfg.cfgKeywords, "***and***", " ")}</label>
</div>
</div>
<div class="col-md-4">
@@ -302,7 +302,7 @@
</div>
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label><label>${fn:replace(cfg.cfgKeywords, "***and***", " ")}</label>
</div>
</div>
<div class="col-md-4">
@@ -352,7 +352,7 @@
<div class="row">
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label><label>${fn:replace(cfg.cfgKeywords, "***and***", " ")}</label>
</div>
</div>

View File

@@ -115,7 +115,7 @@
<div class="row">
<div class="col-md-4">
<div class="form-group">
<label><spring:message code='keywords' />:</label><label>${cfg.cfgKeywords }</label>
<label><spring:message code='keywords' />:</label><label>${fn:replace(cfg.cfgKeywords, "***and***", " ")}</label>
</div>
</div>
<div class="col-md-4">

View File

@@ -22551,4 +22551,16 @@ transition: background-color .1s ease-in-out;
border: 1px solid #c2cad8;
padding: 5px;
}
.keyword_tag{
border: 1px solid #a5d24a;
-moz-border-radius:2px;
-webkit-border-radius:2px;
display: block;
float: left;
padding: 5px;
text-decoration:none;
background: #cde69c;
color: #638421;
margin-right: 5px;
margin-bottom:-15px;
}

View File

@@ -215,6 +215,7 @@ $(function(){
$(tagsInputSettings).tagsInput({
width:$(".form-control").width(),
defaultText:'please input keywords',
'delimiter':'***and***',//特殊字符串分隔与表达式的多关键词
onAddTag:function(tag,size){
//var keywordValue = "";
var objNamePrefix = $(this).attr("name").split("cfgKeywords")[0];
@@ -260,6 +261,18 @@ $(function(){
}
})*/
//处理增强字符串配置的匹配区域
$(".district").each(function(){
if($(this).siblings(".otherValue").val()!=''){
if($(this).val()!=$(this).siblings(".otherValue").val()){
$(this).find("option[value=others]").attr("selected","selected");
$(this).siblings(".otherValue").prop("type","text");
}
}
});
});
var switchIpType=function(obj){
var type=$(obj).val();

View File

@@ -297,7 +297,7 @@
//if (event.which==event.data.delimiter.charCodeAt(0) || event.which==38 || event.which==13) {
//38Ϊ&
if (event.which==event.data.delimiter.charCodeAt(0)||event.which==13) {
if (event.which==13) {
event.preventDefault();
if( (event.data.minChars <= $(event.data.fake_input).val().length) && (!event.data.maxChars || (event.data.maxChars >= $(event.data.fake_input).val().length)) )
$(event.data.real_input).addTag($(event.data.fake_input).val(),{focus:true,unique:(settings.unique)});