1.serviceId改为自动获取,不能手动输入

2.修改时serviceId、动作、类型、表类型不可更改
3.增加单域、多域时关联表数量的限制
This commit is contained in:
chenjinsong
2018-03-02 10:13:28 +08:00
parent 75038d900c
commit 6aec4683a5
7 changed files with 169 additions and 18 deletions

View File

@@ -14,7 +14,8 @@
required:true
},
'serviceId':{
required:true
required:true,
remote:"${ctx}/systemService/serviceIdValidate?id=" + encodeURIComponent($("#id").val())
},
'action':{
required:true
@@ -31,7 +32,8 @@
required:'必填项'
},
'serviceId':{
required:'必填项'
required:'必填项',
remote:'重复的serviceId'
},
'action':{
required:'必填项'
@@ -72,8 +74,78 @@
}
}
});
changeType($("#serviceType").val(), $("#serviceType"));
//类型、动作不允许修改
if ("${systemServiceInfo.id}") {
$("#action").attr("disabled", true);
$("#serviceType").attr("disabled", true);
$("[name=tableType]").attr("disabled", true);
}
});
function changeType(v, obj) {
if ($(obj).val() == '') {
$("#addBtn").attr("disabled", true);
} else if ($(obj).val() == '1') {
if ($(".table-list").length > 1) {
alert("单域业务只能关联一个表");
$(obj).val(v);
} else if ($(".table-list").length == 1) {
$("#addBtn").attr("disabled", true);
} else if ($(".table-list").length == 0) {
$("#addBtn").attr("disabled", false);
}
} else if ($(obj).val() == '2') {
$("#addBtn").attr("disabled", false);
} else if ($(obj).val() == '3') {
if ($(".table-list").length > 1) {
alert("特定服务只能关联一个表");
$(obj).val(v);
} else if ($(".table-list").length == 1) {
$("#addBtn").attr("disabled", true);
} else if ($(".table-list").length == 0) {
$("#addBtn").attr("disabled", false);
}
}
autoServiceId();
}
//自动获取serviceId
function autoServiceId() {
var type = $("[name=tableType]").val();
var action = $("#action").val();
var serviceIdPre;
if ($("#serviceType").val() == "1" && action && type) {
serviceIdPre = type + "0" + (action < 10 ? ("0" + action) : action);
} else if ($("#serviceType").val() == "2" && action) {
type = "60";
serviceIdPre = type + (action < 10 ? ("0" + action) : action);
} else if ($("#serviceType").val() == "3" && action) {
type = "50";
serviceIdPre = type + (action < 10 ? ("0" + action) : action);
} else {
serviceIdPre = "";
}
if (serviceIdPre) {
$.ajax({
type:"get",
url:"${ctx}/systemService/newServiceId?serviceIdPre=" + serviceIdPre,
dataType:"text",
success: function(data) {
if (data) {
$("#serviceIdInput").val(data);
}
}
})
} else {
$("#serviceIdInput").val("");
}
}
function addDatatable() {
$("#datatables").append(
'<div class="table-list col-md-10">' +
@@ -84,7 +156,7 @@
'<span><input class="child-required form-control child-input" name="tableName"/></span> ' +
'<span class="child-label"><font color="red">*</font>表类型:</span> ' +
'<span> ' +
'<select class="child-required" name="tableType"> ' +
'<select class="child-required" name="tableType" onchange="autoServiceId()"> ' +
'<option value="">请选择</option>' +
'<option value="1">IP</option>' +
'<option value="2">字符串</option>' +
@@ -102,15 +174,21 @@
'</div>' +
'</div>'
);
if ($("#serviceType").val() == '1' || $("#serviceType").val() == '3') {
$("#addBtn").attr("disabled", true);
}
}
function del(obj) {
$(obj).parent().parent().find("[name=sciIsValid]").val("0");
$(obj).parent().parent().css("display", "none");
$(obj).parent().parent().css("display", "none").attr("class", "table-delete");
changeType($("#serviceType").val(), $("#serviceType"));
}
function del2(obj) {
$(obj).parent().parent().remove();
changeType($("#serviceType").val(), $("#serviceType"));
}
</script>
@@ -138,7 +216,7 @@
<!-- BEGIN FORM-->
<form:form id="inputForm" modelAttribute="systemServiceInfo" action="${ctx}/systemService/save" method="post" class="form-horizontal">
<form:hidden path="id"/>
<form:hidden path="id" id="id"/>
<sys:message content="${message}"/>
<div class="form-group">
@@ -148,17 +226,10 @@
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font>业务ID:</label>
<div class="col-md-4">
<form:input path="serviceId" htmlEscape="false" maxlength="30" class="required form-control"/>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font>动作:</label>
<div class="col-md-4">
<form:select path="action" class="required form-control">
<form:select id="action" path="action" class="required form-control" onchange="autoServiceId()">
<form:option value="">请选择</form:option>
<form:option value="1">阻断</form:option>
<form:option value="2">监测</form:option>
@@ -173,10 +244,11 @@
<div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font>类型:</label>
<div class="col-md-4">
<form:select path="serviceType" class="required form-control">
<form:select id="serviceType" path="serviceType" class="required form-control" onclick="now=this.value" onchange="changeType(now, this)">
<form:option value="">请选择</form:option>
<form:option value="1">单域</form:option>
<form:option value="2">多域</form:option>
<form:option value="3">特定服务</form:option>
</form:select>
</div>
</div>
@@ -186,7 +258,7 @@
<div class="col-md-8" id="datatables">
<shiro:hasPermission name="system:service:edit">
<div>
<button type="button" class="btn btn-default" onclick="addDatatable()">增加</button>
<button id="addBtn" type="button" class="btn btn-default" onclick="addDatatable()">增加</button>
<label for="childTableFlag" class="error" style="display:none">有未填项</label>
</div>
</shiro:hasPermission>
@@ -223,6 +295,13 @@
</c:forEach>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font>业务ID:</label>
<div class="col-md-4">
<input id="serviceIdInput" class="required form-control" name="serviceId" value="${systemServiceInfo.serviceId }" readonly="readonly">
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font>描述:</label>

View File

@@ -74,6 +74,7 @@ function deleteService(id) {
<form:option value="">请选择</form:option>
<form:option value="1">单域</form:option>
<form:option value="2">多域</form:option>
<form:option value="3">特定服务</form:option>
</form:select>
</span>
@@ -121,6 +122,7 @@ function deleteService(id) {
<td>
<c:if test="${1 eq ssi.serviceType }">单域</c:if>
<c:if test="${2 eq ssi.serviceType }">多域</c:if>
<c:if test="${3 eq ssi.serviceType }">特定服务</c:if>
</td>
<td>${ssi.creator.loginId }</td>
<td><fmt:formatDate value="${ssi.createTime }" pattern="yyyy-MM-dd HH:mm:ss"/></td>