url分组配置查询、添加和编辑页面的修改

This commit is contained in:
shangguanyanfei
2019-02-21 17:45:12 +08:00
parent 31edf93fdc
commit 80ede65fb1
6 changed files with 143 additions and 42 deletions

View File

@@ -15,10 +15,11 @@ public class UrlCommGroupCfg extends BaseStringCfg<UrlCommGroupCfg>{
// protected Integer matchMethod;//匹配类型 // protected Integer matchMethod;//匹配类型
protected Integer isHexbin;//是否大小写敏感 protected Integer isHexbin;//是否大小写敏感
protected String ratelimit;//限速比例,0到1之间 protected String ratelimit;//限速比例,0到1之间
@ExcelField(title="group_name",sort=108)
protected String groupName;//公共组名称
public String getCfgKeywords() { public String getCfgKeywords() {
return cfgKeywords; return cfgKeywords;
} }
@@ -53,6 +54,11 @@ public class UrlCommGroupCfg extends BaseStringCfg<UrlCommGroupCfg>{
return tableName; return tableName;
} }
public String getGroupName() {
return groupName;
}
public void setGroupName(String groupName) {
this.groupName = groupName;
}
} }

View File

@@ -139,8 +139,35 @@ public class UrlCommGroupController extends BaseController{
//选中配置审核 //选中配置审核
if(!StringUtil.isEmpty(ids)) { if(!StringUtil.isEmpty(ids)) {
List<UrlCommGroupCfg> urlGroupCfgs=urlCommGroupService.getByIds(ids); List<UrlCommGroupCfg> urlGroupCfgs=urlCommGroupService.getByIds(ids);
// Map<Long,List<UrlCommGroupCfg>> urlcfgMap=Maps.newHashMap();
// for(UrlCommGroupCfg urlCommCfg:urlGroupCfgs) {
// urlCommCfg.setIsAudit(isAudit);
// urlCommCfg.setIsValid(isValid);
// urlCommCfg.setAuditorId(UserUtils.getUser().getId());
// urlCommCfg.setAuditTime(new Date());
// urlCommCfg.setFunctionId(functionId);
// if(urlcfgMap.containsKey(Long.parseLong(urlCommCfg.getUserRegion3()))) {
// urlcfgMap.get(Long.parseLong(urlCommCfg.getUserRegion3())).add(urlCommCfg);
// }else {
// List<UrlCommGroupCfg> _urlCfgs=Lists.newArrayList();
// _urlCfgs.add(urlCommCfg);
// urlcfgMap.put(Long.parseLong(urlCommCfg.getUserRegion3()), _urlCfgs);
// }
// }
/********************每次下发一个组的region保证事物********************/ /********************每次下发一个组的region保证事物********************/
// for (Long groupId : urlcfgMap.keySet()) {
// try {
// urlCommGroupService.audit(urlcfgMap.get(groupId),groupId,isValid);
// } catch (Exception e) {
// logger.error("配置下发失败:",e);
// if(e instanceof MaatConvertException) {
// addMessage(redirectAttributes,"error", "request_service_failed");
// }else {
// addMessage(redirectAttributes,"error", "audit_failed");
// }
//
// }
// }
for (UrlCommGroupCfg urlCommGroup : urlGroupCfgs) { for (UrlCommGroupCfg urlCommGroup : urlGroupCfgs) {
try { try {
urlCommGroupService.audit(urlCommGroup,isAudit,isValid); urlCommGroupService.audit(urlCommGroup,isAudit,isValid);
@@ -198,7 +225,7 @@ public class UrlCommGroupController extends BaseController{
classMap.put(entity.getMenuNameCode(), UrlCommGroupCfg.class); classMap.put(entity.getMenuNameCode(), UrlCommGroupCfg.class);
String cfgIndexInfoNoExport=",block_type,do_log,action" String cfgIndexInfoNoExport=",block_type,do_log,action"
+ ",letter,whether_area_block,classification,attribute,label,expression_type,match_method" + ",letter,whether_area_block,classification,attribute,label,expression_type,match_method"
+",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,group_name,asn_no,is_hex,is_case_insenstive,"; +",userregion1,userregion2,userregion3,userregion4,userregion5,ir_type,asn_no,is_hex,is_case_insenstive,";
// 时间过滤 // 时间过滤
if (entity.getSearch_create_time_start() == null ) { if (entity.getSearch_create_time_start() == null ) {
cfgIndexInfoNoExport = ",config_time" + cfgIndexInfoNoExport; cfgIndexInfoNoExport = ",config_time" + cfgIndexInfoNoExport;

View File

@@ -35,6 +35,7 @@
<result column="user_region4" property="userRegion4" jdbcType="VARCHAR" /> <result column="user_region4" property="userRegion4" jdbcType="VARCHAR" />
<result column="user_region5" property="userRegion5" jdbcType="VARCHAR" /> <result column="user_region5" property="userRegion5" jdbcType="VARCHAR" />
<result column="group_name" property="groupName" jdbcType="VARCHAR" />
</resultMap> </resultMap>
<select id="findAllPageList" parameterType="com.nis.domain.basics.UrlCommGroupCfg" resultMap="urlCommGroupCfgMap"> <select id="findAllPageList" parameterType="com.nis.domain.basics.UrlCommGroupCfg" resultMap="urlCommGroupCfgMap">
@@ -45,12 +46,13 @@
r.expr_type,r.match_method,r.is_hexbin,r.area_effective_ids,r.function_id, r.expr_type,r.match_method,r.is_hexbin,r.area_effective_ids,r.function_id,
r.cfg_region_code,r.cfg_type,r.ratelimit,r.user_region1,r.user_region2, r.cfg_region_code,r.cfg_type,r.ratelimit,r.user_region1,r.user_region2,
r.user_region3,r.user_region4,r.user_region5, r.user_region3,r.user_region4,r.user_region5,
s.name AS creator_name,e.name AS editor_name,u.name AS auditor_name s.name AS creator_name,e.name AS editor_name,u.name AS auditor_name,c.group_name
FROM FROM
http_url_cfg r http_url_cfg r
LEFT JOIN sys_user s ON r.creator_id = s.id LEFT JOIN sys_user s ON r.creator_id = s.id
LEFT JOIN sys_user e ON r.editor_id = e.id LEFT JOIN sys_user e ON r.editor_id = e.id
LEFT JOIN sys_user u ON r.auditor_id = u.id LEFT JOIN sys_user u ON r.auditor_id = u.id
LEFT JOIN policy_group_info c ON c.service_group_id=r.user_region3
<trim prefix="WHERE" prefixOverrides="AND |OR "> <trim prefix="WHERE" prefixOverrides="AND |OR ">
<if test="page !=null and page.where != null and page.where != ''"> <if test="page !=null and page.where != null and page.where != ''">
AND ${page.where} AND ${page.where}
@@ -133,7 +135,7 @@
ORDER BY ${page.orderBy} ORDER BY ${page.orderBy}
</when> </when>
<otherwise> <otherwise>
ORDER BY r.create_time desc ORDER BY r.is_audit,r.create_time desc
</otherwise> </otherwise>
</choose> </choose>

View File

@@ -5,22 +5,53 @@
<title><spring:message code="url_group_configuration"></spring:message></title> <title><spring:message code="url_group_configuration"></spring:message></title>
<script type="text/javascript"> <script type="text/javascript">
var defaultIpInfo; var defaultIpInfo;
var protectedList = [".com"];
$(function(){ $(function(){
defaultIpInfo=$(".strInfo").clone(true); defaultIpInfo=$(".strInfo").clone(true);
// reSort($(defaultIpInfo),-1); // reSort($(defaultIpInfo),-1);
$(".asnIpAdd").click(); $(".asnIpAdd").click();
$("#cfgFrom").validate({ $("#cfgFrom").validate({
errorPlacement: function(error,element){ errorPlacement: function(error,element){
$(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){ submitHandler: function(form){
/* $("[name='country']").val($("[name='userRegion1'] option:selected").attr("country")); /* $("[name='country']").val($("[name='userRegion1'] option:selected").attr("country"));
$("[name='detail']").val($("[name='userRegion1'] option:selected").attr("detail")); $("[name='detail']").val($("[name='userRegion1'] option:selected").attr("detail"));
$("[name='asnIpGroup']").val($("[name='userRegion1'] option:selected").attr("asnIpGroup")); */ $("[name='asnIpGroup']").val($("[name='userRegion1'] option:selected").attr("asnIpGroup")); */
loading('onloading...'); var flag = true;
form.submit(); /* $(".boxSolid:visible").find("input[name$='cfgKeywords']").each(function(){
if($(this).val()==''){
$(this).parents(".form-group").find(
"div[for='"
+ $(this).attr("name")
+ "']").html("<label id=\"cfgKeywordsError\" class=\"error\">"+$("#keywordError").text()+"</label>");
flag = false;
}
}); */
$(".tagsinput:visible").each(function(){
var text='';
$(this).find(".tag").each(function(){
text+=$(this).children("span").text().trim();
});
if(text.length < 4 || text.length > 1024){
$(this).parents(".col-md-6").next("div").html("<label id=\"cfgKeywordsError\" class=\"error\">"+$.validator.messages.keywordLength+"</label>");
if(flag){
flag=false;
}
}
});
if(flag){
loading('onloading...');
form.submit();
}else{
return;
}
}, },
errorContainer: "#messageBox", errorContainer: "#messageBox",
}); });
@@ -47,17 +78,16 @@ var addContent = function(obj, contentClassName) {
index++; index++;
}); });
$(".selectpicker").selectpicker("render"); $(".selectpicker").selectpicker("render");
var aaa=0
/* $(".tagsinput").each(function(){ var flag1=0;
$(this).attr("id","tags_"+aaa+"_tagsinput"); $(".tagsinput").each(function(){
if(aaa>0 && aaa==($(".tagsinput").length-1)){ $(this).attr("id","tags_"+flag1+"_tagsinput");
// if(aaa==($(".tagsinput").length-1) && aaa !=0){ if(flag1>0 && flag1==($(".tagsinput").length-1)){
$("#tags_"+aaa+"_tagsinput").remove(); $("#tags_"+flag1+"_tagsinput").remove();
// } inputToDiv();
ssss();
} }
aaa++; flag1++;
}); */ });
} }
//业务窗口关闭 //业务窗口关闭
@@ -90,14 +120,14 @@ var reSort=function(obj,index){
} }
} }
}) });
} }
//input框标签化方法
function ssss(leng){ function inputToDiv(){
var tagsInputSettings1="#tags"; var tagsInputSettings1="#tags";
var options; var options;
var ccc=0; var flag2=0;
$("input[name$='cfgKeywords']").each(function(){ $("input[name$='cfgKeywords']").each(function(){
var tagsId = $(this).attr("id"); var tagsId = $(this).attr("id");
var objNamePrefix = $(this).attr("name").split("cfgKeywords")[0]; var objNamePrefix = $(this).attr("name").split("cfgKeywords")[0];
@@ -115,10 +145,10 @@ function ssss(leng){
$("input:radio[name='"+objNamePrefix+"exprType']").attr("disabled",true); $("input:radio[name='"+objNamePrefix+"exprType']").attr("disabled",true);
} }
if(tagsId !="tags_0" && ccc>0 && ccc==($("input[name$='cfgKeywords']").length-1)){ if(tagsId !="tags_0" && flag2>0 && flag2==($("input[name$='cfgKeywords']").length-1)){
tagsInputSettings1 = tagsInputSettings1+",#"+tagsId; tagsInputSettings1 = tagsInputSettings1+",#"+tagsId;
} }
ccc++; flag2++;
} }
}); });
@@ -141,9 +171,9 @@ function ssss(leng){
}); });
$(this).prev("input[name$='cfgKeywords']").val(keywordValue);*/ $(this).prev("input[name$='cfgKeywords']").val(keywordValue);*/
exprTypeChecked(objNamePrefix,size,options); exprTypeChecked(objNamePrefix,size,options);
/* if($(this).hasClass("urlCheck")){ if($(this).hasClass("urlCheck")){
protectedListWarn($("#"+$(this).attr("id")+"_tagsinput"),$(this).val(),protectedList); protectedListWarn($("#"+$(this).attr("id")+"_tagsinput"),$(this).val(),protectedList);
} */ }
}, },
onRemoveTag:function(tag,size){ onRemoveTag:function(tag,size){
// $(this).parent(".col-md-6").next("div").html(""); // $(this).parent(".col-md-6").next("div").html("");
@@ -154,9 +184,9 @@ function ssss(leng){
}); });
$(this).prev("input[name$='cfgKeywords']").val(keywordValue);*/ $(this).prev("input[name$='cfgKeywords']").val(keywordValue);*/
exprTypeChecked(objNamePrefix,size,options); exprTypeChecked(objNamePrefix,size,options);
/* if($(this).hasClass("urlCheck")){ if($(this).hasClass("urlCheck")){
protectedListWarn($("#"+$(this).attr("id")+"_tagsinput"),$(this).val(),protectedList); protectedListWarn($("#"+$(this).attr("id")+"_tagsinput"),$(this).val(),protectedList);
} */ }
} }
}); });
$(".tagsinput").popover({ $(".tagsinput").popover({
@@ -177,7 +207,8 @@ function ssss(leng){
</script> </script>
</head> </head>
<body> <body>
<span id="keywordError" style="display:none"><spring:message code="required"></spring:message></span>
<span id="tagsinputTip" style="display:none"><spring:message code="multiple_keywords_tip"></spring:message></span>
<div class="page-content"> <div class="page-content">
<h3 class="page-title"> <h3 class="page-title">
@@ -242,7 +273,7 @@ function ssss(leng){
<select name="userRegion3" data-live-search="true" data-live-search-placeholder="search" class="selectpicker form-control required"> <select name="userRegion3" data-live-search="true" data-live-search-placeholder="search" class="selectpicker form-control required">
<option value=""><spring:message code="select"/></option> <option value=""><spring:message code="select"/></option>
<c:forEach items="${policyGroupInfos}" var="urlGroupInfo"> <c:forEach items="${policyGroupInfos}" var="urlGroupInfo">
<option value="${urlGroupInfo.groupId}">${urlGroupInfo.groupName}</option> <option value="${urlGroupInfo.serviceGroupId}">${urlGroupInfo.groupName}</option>
</c:forEach> </c:forEach>
</select> </select>
</div> </div>

View File

@@ -8,14 +8,45 @@ $(function(){
$("#cfgFrom").validate({ $("#cfgFrom").validate({
errorPlacement: function(error,element){ errorPlacement: function(error,element){
$(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){ submitHandler: function(form){
/* $("[name='country']").val($("[name='userRegion1'] option:selected").attr("country")); /* $("[name='country']").val($("[name='userRegion1'] option:selected").attr("country"));
$("[name='detail']").val($("[name='userRegion1'] option:selected").attr("detail")); $("[name='detail']").val($("[name='userRegion1'] option:selected").attr("detail"));
$("[name='asnIpGroup']").val($("[name='userRegion1'] option:selected").attr("asnIpGroup")); */ $("[name='asnIpGroup']").val($("[name='userRegion1'] option:selected").attr("asnIpGroup")); */
loading('onloading...'); var flag = true;
form.submit(); /* $(".boxSolid:visible").find("input[name$='cfgKeywords']").each(function(){
if($(this).val()==''){
$(this).parents(".form-group").find(
"div[for='"
+ $(this).attr("name")
+ "']").html("<label id=\"cfgKeywordsError\" class=\"error\">"+$("#keywordError").text()+"</label>");
flag = false;
}
}); */
$(".tagsinput:visible").each(function(){
var text='';
$(this).find(".tag").each(function(){
text+=$(this).children("span").text().trim();
});
if(text.length < 4 || text.length > 1024){
$(this).parents(".col-md-6").next("div").html("<label id=\"cfgKeywordsError\" class=\"error\">"+$.validator.messages.keywordLength+"</label>");
if(flag){
flag=false;
}
}
});
if(flag){
loading('onloading...');
form.submit();
}else{
return;
}
}, },
errorContainer: "#messageBox", errorContainer: "#messageBox",
}); });
@@ -24,7 +55,8 @@ $(function(){
</script> </script>
</head> </head>
<body> <body>
<span id="keywordError" style="display:none"><spring:message code="required"></spring:message></span>
<span id="tagsinputTip" style="display:none"><spring:message code="multiple_keywords_tip"></spring:message></span>
<div class="page-content"> <div class="page-content">
<h3 class="page-title"> <h3 class="page-title">
@@ -91,8 +123,8 @@ $(function(){
<select name="userRegion3" data-live-search="true" data-live-search-placeholder="search" class="selectpicker form-control required"> <select name="userRegion3" data-live-search="true" data-live-search-placeholder="search" class="selectpicker form-control required">
<option value="${_cfg.userRegion3}"><spring:message code="select"/></option> <option value="${_cfg.userRegion3}"><spring:message code="select"/></option>
<c:forEach items="${policyGroupInfos}" var="urlGroupInfo"> <c:forEach items="${policyGroupInfos}" var="urlGroupInfo">
<option value="${urlGroupInfo.groupId}" <option value="${urlGroupInfo.serviceGroupId}"
<c:if test="${_cfg.userRegion3 eq urlGroupInfo.groupId }"> <c:if test="${_cfg.userRegion3 eq urlGroupInfo.serviceGroupId }">
selected selected
</c:if> </c:if>
>${urlGroupInfo.groupName}</option> >${urlGroupInfo.groupName}</option>
@@ -119,7 +151,8 @@ $(function(){
onClick="delContent(this,'strInfo');" /> onClick="delContent(this,'strInfo');" />
</div> </div>
</div> --> </div> -->
<div class=" boxSolid ">
<div class="row" style="height: 15px;"></div>
<c:forEach items="${regionList}" var="region" varStatus="status"> <c:forEach items="${regionList}" var="region" varStatus="status">
<%-- <c:set var="cfgName" value="urlCommGroupList[-1]"></c:set> --%> <%-- <c:set var="cfgName" value="urlCommGroupList[-1]"></c:set> --%>
<%-- <input type="hidden" name="${cfgName}.sourceCompileId" value="${cfg.sourceCompileId }"> --%> <%-- <input type="hidden" name="${cfgName}.sourceCompileId" value="${cfg.sourceCompileId }"> --%>
@@ -239,7 +272,7 @@ $(function(){
</c:forEach> </c:forEach>
</div>
</div> </div>
<div class="form-actions"> <div class="form-actions">

View File

@@ -257,12 +257,13 @@
<th column="config_describe" ><spring:message code="config_describe"/></th> <th column="config_describe" ><spring:message code="config_describe"/></th>
<th class="sort-column cfg_keywords">URL<spring:message code="key_word"/></th> <th class="sort-column cfg_keywords">URL<spring:message code="key_word"/></th>
<th><spring:message code="is_audit"/></th> <th><spring:message code="is_audit"/></th>
<th column="sort-column group_name" ><spring:message code="group_name"/></th>
<th column="valid_identifier" ><spring:message code="valid_identifier"/></th> <th column="valid_identifier" ><spring:message code="valid_identifier"/></th>
<th column="creator" ><spring:message code="creator"/></th> <th column="creator" ><spring:message code="creator"/></th>
<th column="config_time" class="sort-column create_time"><spring:message code="config_time"/></th> <th column="config_time" class="sort-column create_time"><spring:message code="config_time"/></th>
<th column="editor" ><spring:message code="editor"/></th> <th column="editor" ><spring:message code="editor"/></th>
<th column="edit_time" class="sort-column edit_time"><spring:message code="edit_time"/></th> <th column="edit_time" class="sort-column edit_time"><spring:message code="edit_time"/></th>
<th><spring:message code="auditor"/></th> <th column="auditor"><spring:message code="auditor"/></th>
<th class="sort-column audit_time"><spring:message code="audit_time"/></th> <th class="sort-column audit_time"><spring:message code="audit_time"/></th>
</tr> </tr>
@@ -282,6 +283,7 @@
<c:when test="${cfg.isAudit eq '3'}"><span class="label label-warning"><spring:message code="cancel_approved"></spring:message></span></c:when> <c:when test="${cfg.isAudit eq '3'}"><span class="label label-warning"><spring:message code="cancel_approved"></spring:message></span></c:when>
</c:choose> </c:choose>
</td> </td>
<td>${cfg.groupName }</td>
<td> <td>
<c:if test="${cfg.isValid==0}"><spring:message code="no"/></c:if> <c:if test="${cfg.isValid==0}"><spring:message code="no"/></c:if>
<c:if test="${cfg.isValid==1}"><spring:message code="yes"/></c:if> <c:if test="${cfg.isValid==1}"><spring:message code="yes"/></c:if>