commit
d27d4b2889
@ -0,0 +1,150 @@
|
||||
<#include "/common/taglibs.html" />
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>前端菜单管理</title>
|
||||
|
||||
|
||||
|
||||
<#include "/head/headaddedit.html" />
|
||||
</head>
|
||||
<body class="gray-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基本信息</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="main-content">
|
||||
<form name="SFrontmenuTform" method="post" id="SFrontmenuTform" class="form-horizontal" action="${ctx}/backstage/sfrontmenut/save">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 菜单名称:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="name" id="name" class="form-control" placeholder="菜单名称" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 菜单关键字:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="reskey" id="reskey" class="form-control" placeholder="菜单关键字" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 菜单链接:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="resurl" id="resurl" class="form-control" placeholder="菜单链接" class="form-control" type="text" maxlength='100' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 描述:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="description" id="description" class="form-control" placeholder="描述" class="form-control" type="text" maxlength='100' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-5">
|
||||
<button id="savebutton" type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "/head/footadd.html" />
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
$('.i-checks').iCheck({
|
||||
checkboxClass: 'icheckbox_square-green',
|
||||
radioClass: 'iradio_square-green',
|
||||
});
|
||||
$("#SFrontmenuTform").attr("action","${ctx}/backstage/oa/frontmenu/save");
|
||||
var form1 = $('#SFrontmenuTform');
|
||||
var error1 = $('.alert-danger', form1);
|
||||
form1.validate({
|
||||
debug: true,
|
||||
errorElement: 'span',
|
||||
errorClass: 'help-block help-block-error',
|
||||
focusInvalid: false,
|
||||
ignore: "",
|
||||
errorPlacement: function (error, element) {
|
||||
if (element.parent(".input-group").size() > 0) {
|
||||
error.insertAfter(element.parent(".input-group"));
|
||||
} else if (element.attr("data-error-container")) {
|
||||
error.appendTo(element.attr("data-error-container"));
|
||||
} else if (element.parents('.radio-list').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||
} else if (element.parents('.radio-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||
} else {
|
||||
error.insertAfter(element);
|
||||
}
|
||||
},
|
||||
highlight: function (element) {
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
},
|
||||
unhighlight: function (element) {
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
success: function (label) {
|
||||
label.closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
submitHandler: function (){
|
||||
parent.layer.load();
|
||||
$("#savebutton").addClass('disabled');
|
||||
$("#SFrontmenuTform").ajaxSubmit({
|
||||
headers:{"logintoken": parent.getLoginToken()},
|
||||
success:function(data){
|
||||
parent.layer.closeAll('loading');
|
||||
if(data.code == "OK"){
|
||||
parent.toastr.success(data.message);
|
||||
rolesback();
|
||||
}else if(data.code == "ERRORM"){
|
||||
$.each(data.message,function(name,anArray) {
|
||||
$.each(anArray,function(n,value){
|
||||
$("#" + n).closest('.form-group').addClass('has-error');
|
||||
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||
});
|
||||
});
|
||||
}else{
|
||||
$("#savebutton").addClass('removeClass');
|
||||
parent.toastr.error(data.message);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
function rolesback() {
|
||||
parent.closeItem(window.frameElement.name);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,166 @@
|
||||
<#include "/common/taglibs.html" />
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>前端菜单管理</title>
|
||||
|
||||
<#include "/head/headaddedit.html" />
|
||||
</head>
|
||||
<body class="gray-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基本信息</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="main-content">
|
||||
<form name="SFrontmenuTform" method="post" id="SFrontmenuTform" class="form-horizontal" action="${ctx}/backstage/sfrontmenut/edit">
|
||||
|
||||
<input type="hidden" id="id" name="id">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 菜单名称:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="name" id="name" class="form-control" placeholder="菜单名称" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 菜单关键字:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="reskey" id="reskey" class="form-control" placeholder="菜单关键字" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 菜单链接:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="resurl" id="resurl" class="form-control" placeholder="菜单链接" class="form-control" type="text" maxlength='100' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 描述:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="description" id="description" class="form-control" placeholder="描述" class="form-control" type="text" maxlength='100' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-5">
|
||||
<button type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "/head/footadd.html" />
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
parent.axgetXiaoyao('${ctx}/backstage/oa/frontmenu/getdata/${id}',null,false , function(data){
|
||||
if(data.code == "OK"){
|
||||
$("#id").val(data.data.id);
|
||||
$("#name").val(data.data.name);
|
||||
$("#parentid").val(data.data.parentid);
|
||||
$("#reskey").val(data.data.reskey);
|
||||
$("#resurl").val(data.data.resurl);
|
||||
$("#level").val(data.data.level);
|
||||
$("#icon").val(data.data.icon);
|
||||
$("#ordernum").val(data.data.ordernum);
|
||||
$("#ishide").val(data.data.ishide);
|
||||
$("#description").val(data.data.description);
|
||||
}else{
|
||||
parent.toastr.error("非法请求。");
|
||||
}
|
||||
});
|
||||
$('.i-checks').iCheck({
|
||||
checkboxClass: 'icheckbox_square-green',
|
||||
radioClass: 'iradio_square-green',
|
||||
});
|
||||
$("#SFrontmenuTform").attr("action","${ctx}/backstage/oa/frontmenu/edit");
|
||||
var form1 = $('#SFrontmenuTform');
|
||||
var error1 = $('.alert-danger', form1);
|
||||
form1.validate({
|
||||
debug: true,
|
||||
errorElement: 'span',
|
||||
errorClass: 'help-block help-block-error',
|
||||
focusInvalid: false,
|
||||
ignore: ":hidden",
|
||||
errorPlacement: function (error, element) {
|
||||
if (element.parent(".input-group").size() > 0) {
|
||||
error.insertAfter(element.parent(".input-group"));
|
||||
} else if (element.attr("data-error-container")) {
|
||||
error.appendTo(element.attr("data-error-container"));
|
||||
} else if (element.parents('.radio-list').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||
} else if (element.parents('.radio-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||
} else {
|
||||
error.insertAfter(element);
|
||||
}
|
||||
},
|
||||
highlight: function (element) {
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
},
|
||||
unhighlight: function (element) {
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
success: function (label) {
|
||||
label.closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
submitHandler: function (){
|
||||
parent.layer.load();
|
||||
$("#SFrontmenuTform").ajaxSubmit({
|
||||
headers:{"logintoken": parent.getLoginToken()},
|
||||
success:function(data){
|
||||
parent.layer.closeAll('loading');
|
||||
if(data.code == "OK"){
|
||||
parent.toastr.success(data.message);
|
||||
rolesback();
|
||||
}else if(data.code == "ERRORM"){
|
||||
$.each(data.message,function(name,anArray) {
|
||||
$.each(anArray,function(n,value){
|
||||
$("#" + n).closest('.form-group').addClass('has-error');
|
||||
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||
});
|
||||
});
|
||||
}else{
|
||||
parent.toastr.error(data.message);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
function rolesback() {
|
||||
parent.closeItem(window.frameElement.name);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,214 @@
|
||||
<#include "/common/taglibs.html" />
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>数据字典</title>
|
||||
|
||||
|
||||
|
||||
<#include "/head/headaddedit.html" />
|
||||
</head>
|
||||
<body class="gray-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基本信息</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="main-content">
|
||||
<form name="Distionaryform" method="post" id="Distionaryform" class="form-horizontal" action="${ctx}/backstage/distionary/save">
|
||||
<input name="distionarytypeid" id="distionarytypeid" type="hidden" value="${distionarytypeid}">
|
||||
<input name="distionatygroupid" id="distionatygroupid" type="hidden" value="${distionatygroupid}">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 数据字典分类主键:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="distionarytypeid" id="distionarytypeid" class="form-control" placeholder="数据字典分类主键" class="form-control" type="text" maxlength='10' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 数据字典分组主键:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="distionatygroupid" id="distionatygroupid" class="form-control" placeholder="数据字典分组主键" class="form-control" type="text" maxlength='10' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 编码:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="codeno" id="codeno" class="form-control" placeholder="编码" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 数据名称:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="name" id="name" class="form-control" placeholder="数据名称" class="form-control" type="text" maxlength='75' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 字典内容:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="content" id="content" class="form-control" placeholder="字典内容" class="form-control" type="text" maxlength='50' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 是否启用:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="enabled" id="enabled" class="form-control" placeholder="是否启用" class="form-control" type="text" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 排序字段:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="sorting" id="sorting" class="form-control" number="true" placeholder="排序字段" class="form-control" type="text" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 创建人:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="createuser" id="createuser" class="form-control" placeholder="创建人" class="form-control" type="text" maxlength='95' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 创建时间:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="createdate" id="createdate" class="form-control" placeholder="创建时间" class="form-control" type="text" maxlength='7' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 修改人:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="updateuser" id="updateuser" class="form-control" placeholder="修改人" class="form-control" type="text" maxlength='95' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 更新时间:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="updatetime" id="updatetime" class="form-control" placeholder="更新时间" class="form-control" type="text" maxlength='7' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-5">
|
||||
<button id="savebutton" type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "/head/footadd.html" />
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
$('.i-checks').iCheck({
|
||||
checkboxClass: 'icheckbox_square-green',
|
||||
radioClass: 'iradio_square-green',
|
||||
});
|
||||
$("#Distionaryform").attr("action","${ctx}/backstage/admin/distionary/save");
|
||||
var form1 = $('#Distionaryform');
|
||||
var error1 = $('.alert-danger', form1);
|
||||
form1.validate({
|
||||
debug: true,
|
||||
errorElement: 'span',
|
||||
errorClass: 'help-block help-block-error',
|
||||
focusInvalid: false,
|
||||
ignore: "",
|
||||
errorPlacement: function (error, element) {
|
||||
if (element.parent(".input-group").size() > 0) {
|
||||
error.insertAfter(element.parent(".input-group"));
|
||||
} else if (element.attr("data-error-container")) {
|
||||
error.appendTo(element.attr("data-error-container"));
|
||||
} else if (element.parents('.radio-list').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||
} else if (element.parents('.radio-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||
} else {
|
||||
error.insertAfter(element);
|
||||
}
|
||||
},
|
||||
highlight: function (element) {
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
},
|
||||
unhighlight: function (element) {
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
success: function (label) {
|
||||
label.closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
submitHandler: function (){
|
||||
parent.layer.load();
|
||||
$("#savebutton").addClass('disabled');
|
||||
$("#Distionaryform").ajaxSubmit({
|
||||
headers:{"logintoken": parent.getLoginToken()},
|
||||
success:function(data){
|
||||
parent.layer.closeAll('loading');
|
||||
if(data.code == "OK"){
|
||||
parent.toastr.success(data.message);
|
||||
rolesback();
|
||||
}else if(data.code == "ERRORM"){
|
||||
$.each(data.message,function(name,anArray) {
|
||||
$.each(anArray,function(n,value){
|
||||
$("#" + n).closest('.form-group').addClass('has-error');
|
||||
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||
});
|
||||
});
|
||||
}else{
|
||||
$("#savebutton").addClass('removeClass');
|
||||
parent.toastr.error(data.message);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
function rolesback() {
|
||||
parent.closeItem(window.frameElement.name);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,212 @@
|
||||
<#include "/common/taglibs.html" />
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>数据字典</title>
|
||||
|
||||
|
||||
|
||||
<#include "/head/headaddedit.html" />
|
||||
</head>
|
||||
<body class="gray-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基本信息</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="main-content">
|
||||
<form name="Distionaryform" method="post" id="Distionaryform" class="form-horizontal" action="${ctx}/backstage/distionary/edit">
|
||||
|
||||
<input type="hidden" id="id" name="id">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 数据字典分类主键:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="distionarytypeid" id="distionarytypeid" class="form-control" placeholder="数据字典分类主键" class="form-control" type="text" maxlength='10' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 数据字典分组主键:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="distionatygroupid" id="distionatygroupid" class="form-control" placeholder="数据字典分组主键" class="form-control" type="text" maxlength='10' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 编码:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="codeno" id="codeno" class="form-control" placeholder="编码" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 数据名称:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="name" id="name" class="form-control" placeholder="数据名称" class="form-control" type="text" maxlength='75' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 排序字段:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="sorting" id="sorting" class="form-control" placeholder="排序字段" class="form-control" type="text" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 创建人:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="createuser" id="createuser" class="form-control" placeholder="创建人" class="form-control" type="text" maxlength='95' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 创建时间:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="createdate" id="createdate" class="form-control" placeholder="创建时间" class="form-control" type="text" maxlength='7' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 修改人:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="updateuser" id="updateuser" class="form-control" placeholder="修改人" class="form-control" type="text" maxlength='95' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 更新时间:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="updatetime" id="updatetime" class="form-control" placeholder="更新时间" class="form-control" type="text" maxlength='7' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-5">
|
||||
<button type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "/head/footadd.html" />
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
parent.axgetXiaoyao('${ctx}/backstage/admin/distionary/getdata/' + $("#id").val(),null,false , function(data){
|
||||
if(data.code == "OK"){
|
||||
$("#id").val(data.data.id);
|
||||
$("#distionarytypeid").val(data.data.distionarytypeid);
|
||||
$("#distionatygroupid").val(data.data.distionatygroupid);
|
||||
$("#codeno").val(data.data.codeno);
|
||||
$("#name").val(data.data.name);
|
||||
$("#content").val(data.data.content);
|
||||
$("#enabled").val(data.data.enabled);
|
||||
$("#sorting").val(data.data.sorting);
|
||||
$("#createuser").val(data.data.createuser);
|
||||
$("#createdate").val(data.data.createdate);
|
||||
$("#updateuser").val(data.data.updateuser);
|
||||
$("#updatetime").val(data.data.updatetime);
|
||||
}else{
|
||||
parent.toastr.error("非法请求。");
|
||||
}
|
||||
});
|
||||
$('.i-checks').iCheck({
|
||||
checkboxClass: 'icheckbox_square-green',
|
||||
radioClass: 'iradio_square-green',
|
||||
});
|
||||
$("#Distionaryform").attr("action","${ctx}/backstage/admin/distionary/edit" + );
|
||||
var form1 = $('#Distionaryform');
|
||||
var error1 = $('.alert-danger', form1);
|
||||
form1.validate({
|
||||
debug: true,
|
||||
errorElement: 'span',
|
||||
errorClass: 'help-block help-block-error',
|
||||
focusInvalid: false,
|
||||
ignore: ":hidden",
|
||||
errorPlacement: function (error, element) {
|
||||
if (element.parent(".input-group").size() > 0) {
|
||||
error.insertAfter(element.parent(".input-group"));
|
||||
} else if (element.attr("data-error-container")) {
|
||||
error.appendTo(element.attr("data-error-container"));
|
||||
} else if (element.parents('.radio-list').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||
} else if (element.parents('.radio-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||
} else {
|
||||
error.insertAfter(element);
|
||||
}
|
||||
},
|
||||
highlight: function (element) {
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
},
|
||||
unhighlight: function (element) {
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
success: function (label) {
|
||||
label.closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
submitHandler: function (){
|
||||
parent.layer.load();
|
||||
$("#Distionaryform").ajaxSubmit({
|
||||
headers:{"logintoken": parent.getLoginToken()},
|
||||
success:function(data){
|
||||
parent.layer.closeAll('loading');
|
||||
if(data.code == "OK"){
|
||||
parent.toastr.success(data.message);
|
||||
rolesback();
|
||||
}else if(data.code == "ERRORM"){
|
||||
$.each(data.message,function(name,anArray) {
|
||||
$.each(anArray,function(n,value){
|
||||
$("#" + n).closest('.form-group').addClass('has-error');
|
||||
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||
});
|
||||
});
|
||||
}else{
|
||||
parent.toastr.error(data.message);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
function rolesback() {
|
||||
parent.closeItem(window.frameElement.name);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,186 @@
|
||||
<#include "/common/taglibs.html" />
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>数据字典分组</title>
|
||||
|
||||
|
||||
|
||||
<#include "/head/headaddedit.html" />
|
||||
<link href="${ctx}/static/css/plugins/chosen/chosen.css" rel="stylesheet">
|
||||
</head>
|
||||
<body class="gray-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基本信息</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="main-content">
|
||||
<form name="Distionarygroupform" method="post" id="Distionarygroupform" class="form-horizontal" action="${ctx}/backstage/admin/distionarygroup/save">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 字典字段名:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="field" id="field" class="form-control" placeholder="字典字段名" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 字典组描述:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="label" id="label" class="form-control" placeholder="字典字段名" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 备注:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="remark" id="remark" class="form-control" placeholder="分组名称" class="form-control" type="text" maxlength='75' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-5">
|
||||
<button id="savebutton" type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "/head/footadd.html" />
|
||||
<!-- Chosen -->
|
||||
<script src="${ctx}/static/js/plugins/chosen/chosen.jquery.js"></script>
|
||||
<script type="text/javascript">
|
||||
var selectConfig = {
|
||||
'.chosen-select': {},
|
||||
'.chosen-select-deselect': {
|
||||
allow_single_deselect: true
|
||||
},
|
||||
'.chosen-select-no-single': {
|
||||
disable_search_threshold: 10
|
||||
},
|
||||
'.chosen-select-no-results': {
|
||||
no_results_text: 'Oops, nothing found!'
|
||||
},
|
||||
'.chosen-select-width': {
|
||||
width: "95%"
|
||||
}
|
||||
};
|
||||
|
||||
$(document).ready(function () {
|
||||
$('.i-checks').iCheck({
|
||||
checkboxClass: 'icheckbox_square-green',
|
||||
radioClass: 'iradio_square-green',
|
||||
});
|
||||
changeDistionarytype("");
|
||||
|
||||
$("#Distionarygroupform").attr("action","${ctx}/ocr/dictionaryGroup/save");
|
||||
var form1 = $('#Distionarygroupform');
|
||||
var error1 = $('.alert-danger', form1);
|
||||
form1.validate({
|
||||
debug: true,
|
||||
errorElement: 'span',
|
||||
errorClass: 'help-block help-block-error',
|
||||
focusInvalid: false,
|
||||
ignore: "",
|
||||
errorPlacement: function (error, element) {
|
||||
if (element.parent(".input-group").size() > 0) {
|
||||
error.insertAfter(element.parent(".input-group"));
|
||||
} else if (element.attr("data-error-container")) {
|
||||
error.appendTo(element.attr("data-error-container"));
|
||||
} else if (element.parents('.radio-list').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||
} else if (element.parents('.radio-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||
} else {
|
||||
error.insertAfter(element);
|
||||
}
|
||||
},
|
||||
highlight: function (element) {
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
},
|
||||
unhighlight: function (element) {
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
success: function (label) {
|
||||
label.closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
submitHandler: function (){
|
||||
console.log("parent.getLoginToken()===" + parent.getLoginToken())
|
||||
parent.layer.load();
|
||||
$("#savebutton").addClass('disabled');
|
||||
$("#Distionarygroupform").ajaxSubmit({
|
||||
headers:{"logintoken": parent.getLoginToken()},
|
||||
success:function(data){
|
||||
parent.layer.closeAll('loading');
|
||||
if(data.code == "OK"){
|
||||
parent.toastr.success(data.message);
|
||||
rolesback();
|
||||
}else if(data.code == "ERRORM"){
|
||||
$.each(data.message,function(name,anArray) {
|
||||
$.each(anArray,function(n,value){
|
||||
$("#" + n).closest('.form-group').addClass('has-error');
|
||||
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||
});
|
||||
});
|
||||
}else{
|
||||
$("#savebutton").addClass('removeClass');
|
||||
parent.toastr.error(data.message);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
function changeDistionarytype(distionarytypeid) {
|
||||
|
||||
parent.axgetXiaoyao('${ctx}/backstage/admin/distionarytype/listall/',null,false , function(result) {
|
||||
|
||||
if(result.code == 'OK'){
|
||||
var data = result.data;
|
||||
|
||||
console.log(data);
|
||||
var posthtml = "";
|
||||
$(data).each(function(idx,item){
|
||||
|
||||
if(undefined != distionarytypeid && distionarytypeid == item.id){
|
||||
posthtml = posthtml + '<option value="' + item.id + '" hassubinfo="true" selected>' + item.typename + '</option>';
|
||||
}else{
|
||||
posthtml = posthtml + '<option value="' + item.id + '" hassubinfo="true">' + item.typename + '</option>';
|
||||
}
|
||||
});
|
||||
|
||||
$("#distionarytypeid").append(posthtml);
|
||||
}
|
||||
});
|
||||
|
||||
$("#distionarytypeid").chosen(selectConfig[$("#distionarytypeid")]);
|
||||
}
|
||||
function rolesback() {
|
||||
parent.closeItem(window.frameElement.name);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,197 @@
|
||||
<#include "/common/taglibs.html" />
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>数据字典分组</title>
|
||||
|
||||
|
||||
|
||||
<#include "/head/headaddedit.html" />
|
||||
<link href="${ctx}/static/css/plugins/chosen/chosen.css" rel="stylesheet">
|
||||
</head>
|
||||
<body class="gray-bg">
|
||||
<div class="wrapper wrapper-content animated fadeInRight">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基本信息</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="main-content">
|
||||
<form name="Distionarygroupform" method="post" id="Distionarygroupform" class="form-horizontal" action="${ctx}/backstage/admin/distionarygroup/edit">
|
||||
|
||||
<input type="hidden" id="id" name="id">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 字典字段名:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="field" id="field" class="form-control" placeholder="字典字段名" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 字典组描述:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="label" id="label" class="form-control" placeholder="字典字段名" class="form-control" type="text" maxlength='25' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label is-required">* 备注:</label>
|
||||
<div class="col-sm-9">
|
||||
<input name="remark" id="remark" class="form-control" placeholder="分组名称" class="form-control" type="text" maxlength='75' required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="form-group">
|
||||
<div class="col-sm-offset-5">
|
||||
<button type="submit" class="btn btn-w-m btn-primary">保存</button>
|
||||
<button type="button" onclick="rolesback()" class="btn btn-w-m btn-success">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "/head/footadd.html" />
|
||||
<script src="${ctx}/static/js/plugins/chosen/chosen.jquery.js"></script>
|
||||
<script type="text/javascript">
|
||||
var selectConfig = {
|
||||
'.chosen-select': {},
|
||||
'.chosen-select-deselect': {
|
||||
allow_single_deselect: true
|
||||
},
|
||||
'.chosen-select-no-single': {
|
||||
disable_search_threshold: 10
|
||||
},
|
||||
'.chosen-select-no-results': {
|
||||
no_results_text: 'Oops, nothing found!'
|
||||
},
|
||||
'.chosen-select-width': {
|
||||
width: "95%"
|
||||
}
|
||||
};
|
||||
$(document).ready(function () {
|
||||
parent.axgetXiaoyao('${ctx}/ocr/dictionaryGroup/getdata/${id}',null,false , function(data){
|
||||
if(data.code == "OK"){
|
||||
$("#id").val(data.data.id);
|
||||
$("#field").val(data.data.field);
|
||||
|
||||
$("#label").val(data.data.label);
|
||||
$("#remark").val(data.data.remark);
|
||||
|
||||
changeDistionarytype(data.data.distionarytypeid);
|
||||
}else{
|
||||
parent.toastr.error("非法请求。");
|
||||
}
|
||||
});
|
||||
$('.i-checks').iCheck({
|
||||
checkboxClass: 'icheckbox_square-green',
|
||||
radioClass: 'iradio_square-green',
|
||||
});
|
||||
$("#Distionarygroupform").attr("action","${ctx}/ocr/dictionaryGroup/save");
|
||||
var form1 = $('#Distionarygroupform');
|
||||
var error1 = $('.alert-danger', form1);
|
||||
form1.validate({
|
||||
debug: true,
|
||||
errorElement: 'span',
|
||||
errorClass: 'help-block help-block-error',
|
||||
focusInvalid: false,
|
||||
ignore: ":hidden",
|
||||
errorPlacement: function (error, element) {
|
||||
if (element.parent(".input-group").size() > 0) {
|
||||
error.insertAfter(element.parent(".input-group"));
|
||||
} else if (element.attr("data-error-container")) {
|
||||
error.appendTo(element.attr("data-error-container"));
|
||||
} else if (element.parents('.radio-list').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-list').attr("data-error-container"));
|
||||
} else if (element.parents('.radio-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.radio-inline').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-list').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-list').attr("data-error-container"));
|
||||
} else if (element.parents('.checkbox-inline').size() > 0) {
|
||||
error.appendTo(element.parents('.checkbox-inline').attr("data-error-container"));
|
||||
} else {
|
||||
error.insertAfter(element);
|
||||
}
|
||||
},
|
||||
highlight: function (element) {
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
},
|
||||
unhighlight: function (element) {
|
||||
$(element).closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
success: function (label) {
|
||||
label.closest('.form-group').removeClass('has-error');
|
||||
},
|
||||
submitHandler: function (){
|
||||
parent.layer.load();
|
||||
$("#Distionarygroupform").ajaxSubmit({
|
||||
headers:{"logintoken": parent.getLoginToken()},
|
||||
success:function(data){
|
||||
parent.layer.closeAll('loading');
|
||||
if(data.code == "OK"){
|
||||
parent.toastr.success(data.message);
|
||||
rolesback();
|
||||
}else if(data.code == "ERRORM"){
|
||||
$.each(data.message,function(name,anArray) {
|
||||
$.each(anArray,function(n,value){
|
||||
$("#" + n).closest('.form-group').addClass('has-error');
|
||||
$("<span>").attr( "id", n + "-error" ).addClass("help-block help-block-error").html(value).insertAfter($("#" + n));
|
||||
});
|
||||
});
|
||||
}else{
|
||||
parent.toastr.error(data.message);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
function changeDistionarytype(distionarytypeid) {
|
||||
|
||||
parent.axgetXiaoyao('${ctx}/backstage/admin/distionarytype/listall/',null,false , function(result) {
|
||||
|
||||
if(result.code == 'OK'){
|
||||
var data = result.data;
|
||||
|
||||
console.log(data);
|
||||
var posthtml = "";
|
||||
$(data).each(function(idx,item){
|
||||
|
||||
if(undefined != distionarytypeid && distionarytypeid == item.id){
|
||||
posthtml = posthtml + '<option value="' + item.id + '" hassubinfo="true" selected>' + item.typename + '</option>';
|
||||
}else{
|
||||
posthtml = posthtml + '<option value="' + item.id + '" hassubinfo="true">' + item.typename + '</option>';
|
||||
}
|
||||
});
|
||||
|
||||
$("#distionarytypeid").append(posthtml);
|
||||
}
|
||||
});
|
||||
|
||||
$("#distionarytypeid").chosen(selectConfig[$("#distionarytypeid")]);
|
||||
}
|
||||
function rolesback() {
|
||||
parent.closeItem(window.frameElement.name);
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,11 @@
|
||||
package cn.jyjz.xiaoyao.frontmenu.dataDao;
|
||||
|
||||
import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
/**
|
||||
* 数据持久化
|
||||
*/
|
||||
@Mapper
|
||||
public interface FrontmenuMybatisDao extends BaseMapper<Frontmenu> {
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package cn.jyjz.xiaoyao.frontmenu.dataDao;
|
||||
|
||||
import cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
/**
|
||||
* 数据持久化
|
||||
*/
|
||||
@Mapper
|
||||
public interface UserFrontmenuMybatisDao extends BaseMapper<UserFrontmenu> {
|
||||
}
|
@ -0,0 +1,57 @@
|
||||
package cn.jyjz.xiaoyao.frontmenu.dataobject;
|
||||
|
||||
import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto;
|
||||
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.util.Map;
|
||||
import java.util.AbstractMap.SimpleEntry;
|
||||
import java.util.stream.Stream;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Schema(name = "用户和前端菜单关系表", title = "用户和前端菜单关系表")
|
||||
@TableName(value = "s_user_frontmenu_t")
|
||||
public class UserFrontmenu implements BaseDto,java.io.Serializable {
|
||||
|
||||
private static final long serialVersionUID = 3139365577414759746L;
|
||||
@Schema(description = "用户主键id")
|
||||
@TableField(value="userId")
|
||||
private Long userid;
|
||||
|
||||
@Schema(description = "菜单ID")
|
||||
@TableField(value="menuId")
|
||||
private Long menuid;
|
||||
|
||||
|
||||
//保存当前登录用户的数据权限范围的搜索条件
|
||||
@TableField(exist = false)
|
||||
private SearchQuery searchQueryrolesShowleave;
|
||||
|
||||
@TableField(exist = false)
|
||||
private final Map<String,String> query = Stream.of(
|
||||
new SimpleEntry<>("listdept","deptid"),
|
||||
new SimpleEntry<>("userId","userid"),
|
||||
new SimpleEntry<>("menuId","menuid")
|
||||
)
|
||||
.collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue));
|
||||
@Override
|
||||
public String getQueryFiled(String filedname){
|
||||
String obj = null;
|
||||
if(null != query && query.size() > 0){
|
||||
obj = query.get(filedname);
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package cn.jyjz.xiaoyao.frontmenu.service;
|
||||
|
||||
import java.util.List;
|
||||
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService;
|
||||
import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu;
|
||||
|
||||
/**
|
||||
* 业务层
|
||||
*/
|
||||
public interface FrontmenuService extends BaseService<Frontmenu> {
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package cn.jyjz.xiaoyao.frontmenu.service.impl;
|
||||
|
||||
import cn.jyjz.xiaoyao.frontmenu.dataDao.FrontmenuMybatisDao;
|
||||
import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu;
|
||||
import cn.jyjz.xiaoyao.frontmenu.service.FrontmenuService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
/**
|
||||
* 业务层实现
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class FrontmenuServiceImpl extends BaseServiceImpl<FrontmenuMybatisDao, Frontmenu> implements FrontmenuService {
|
||||
@Autowired
|
||||
private FrontmenuMybatisDao frontmenuMybatisDao;
|
||||
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
package cn.jyjz.xiaoyao.ocr.service;
|
||||
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
|
||||
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService;
|
||||
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 业务向 数据字典 操作接口
|
||||
*
|
||||
* @author hugh(shuli.yao) 1397940314@qq.com
|
||||
* @version 1.0
|
||||
* @date 2024/3/16 12:48
|
||||
*/
|
||||
public interface OcrDictionaryGroupService extends BaseService<OcrDictionaryGroup> {
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
package cn.jyjz.xiaoyao.ocr.service.impl;
|
||||
|
||||
import cn.jyjz.xiaoyao.admin.cache.CacheAdminConstants;
|
||||
import cn.jyjz.xiaoyao.admin.dataobject.Distionarytype;
|
||||
import cn.jyjz.xiaoyao.admin.service.DistionaryService;
|
||||
import cn.jyjz.xiaoyao.admin.service.DistionarytypeService;
|
||||
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
|
||||
import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseServiceImpl;
|
||||
import cn.jyjz.xiaoyao.common.redis.cache.ICacheManager;
|
||||
import cn.jyjz.xiaoyao.ocr.dataDao.OcrDictionaryGroupDao;
|
||||
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup;
|
||||
import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryGroupService;
|
||||
import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 业务向 数据字典 操作接口实现类
|
||||
*
|
||||
* @author hugh(shuli.yao) 1397940314@qq.com
|
||||
* @version 1.0
|
||||
* @date 2024/3/16 12:48
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class OcrDictionaryGroupServiceImpl extends BaseServiceImpl<OcrDictionaryGroupDao, OcrDictionaryGroup> implements OcrDictionaryGroupService {
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="cn.jyjz.xiaoyao.ocr.dataDao.OcrPrevailCloudLogMapper">
|
||||
<resultMap id="BaseResultMap" type="cn.jyjz.xiaoyao.ocr.dataobject.OcrPrevailCloudLog">
|
||||
<!--@mbg.generated-->
|
||||
<!--@Table ocr_prevail_cloud_log-->
|
||||
<id column="id" jdbcType="BIGINT" property="id" />
|
||||
<result column="form_id" jdbcType="BIGINT" property="formId" />
|
||||
<result column="request_param" jdbcType="VARCHAR" property="requestParam" />
|
||||
<result column="response_param" jdbcType="VARCHAR" property="responseParam" />
|
||||
<result column="status" jdbcType="INTEGER" property="status" />
|
||||
<result column="type" jdbcType="INTEGER" property="type" />
|
||||
<result column="create_by" jdbcType="VARCHAR" property="createBy" />
|
||||
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
|
||||
<result column="update_by" jdbcType="VARCHAR" property="updateBy" />
|
||||
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
|
||||
<result column="task_id" jdbcType="VARCHAR" property="taskId" />
|
||||
<result column="picture_id" jdbcType="BIGINT" property="pictureId" />
|
||||
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" />
|
||||
<result column="redundance" jdbcType="VARCHAR" property="redundance" />
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
<!--@mbg.generated-->
|
||||
id, form_id, request_param, response_param, `status`, `type`, create_by, create_time,
|
||||
update_by, update_time, task_id, picture_id, tenant_id, redundance
|
||||
</sql>
|
||||
</mapper>
|
@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="cn.jyjz.xiaoyao.frontmenu.dataDao.FrontmenuMybatisDao">
|
||||
<resultMap id="BaseResultMap" type="cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu">
|
||||
<id column="id" property="id" jdbcType="BIGINT"/>
|
||||
<result column="name" property="name" jdbcType="VARCHAR"/>
|
||||
<result column="parentId" property="parentid" jdbcType="INTEGER"/>
|
||||
<result column="resKey" property="reskey" jdbcType="VARCHAR"/>
|
||||
<result column="resUrl" property="resurl" jdbcType="VARCHAR"/>
|
||||
<result column="level" property="level" jdbcType="INTEGER"/>
|
||||
<result column="icon" property="icon" jdbcType="VARCHAR"/>
|
||||
<result column="orderNum" property="ordernum" jdbcType="INTEGER"/>
|
||||
<result column="ishide" property="ishide" jdbcType="INTEGER"/>
|
||||
<result column="description" property="description" jdbcType="VARCHAR"/>
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
id AS id,
|
||||
name AS name,
|
||||
parentId AS parentid,
|
||||
resKey AS reskey,
|
||||
resUrl AS resurl,
|
||||
level AS level,
|
||||
icon AS icon,
|
||||
orderNum AS ordernum,
|
||||
ishide AS ishide,
|
||||
description AS description
|
||||
</sql>
|
||||
|
||||
<sql id="Base_Where">
|
||||
<where>
|
||||
<trim prefixOverrides="and|or">
|
||||
<if test="id != null"> and id ${id.dataOp} ${id.likestar}#{id.value}${id.likeend}</if>
|
||||
<if test="name != null"> and name ${name.dataOp} ${name.likestar}#{name.value}${name.likeend}</if>
|
||||
<if test="parentid != null"> and parentId ${parentid.dataOp} ${parentid.likestar}#{parentid.value}${parentid.likeend}</if>
|
||||
<if test="reskey != null"> and resKey ${reskey.dataOp} ${reskey.likestar}#{reskey.value}${reskey.likeend}</if>
|
||||
<if test="resurl != null"> and resUrl ${resurl.dataOp} ${resurl.likestar}#{resurl.value}${resurl.likeend}</if>
|
||||
<if test="level != null"> and level ${level.dataOp} ${level.likestar}#{level.value}${level.likeend}</if>
|
||||
<if test="icon != null"> and icon ${icon.dataOp} ${icon.likestar}#{icon.value}${icon.likeend}</if>
|
||||
<if test="ordernum != null"> and orderNum ${ordernum.dataOp} ${ordernum.likestar}#{ordernum.value}${ordernum.likeend}</if>
|
||||
<if test="ishide != null"> and ishide ${ishide.dataOp} ${ishide.likestar}#{ishide.value}${ishide.likeend}</if>
|
||||
<if test="description != null"> and description ${description.dataOp} ${description.likestar}#{description.value}${description.likeend}</if>
|
||||
<if test="userid != null"> and USERID ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend}</if>
|
||||
<if test="listdept != null">
|
||||
and DEPARTID in
|
||||
<foreach collection="listdept.value" item="item" index="index" open="(" separator="," close=")" >
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
</trim>
|
||||
</where>
|
||||
<if test="page != null">
|
||||
<if test="page.sortname != null"> order by ${page.sortname} ${page.sortorder}</if>
|
||||
limit ${page.start}, ${page.Pagesize}
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
</mapper>
|
@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="cn.jyjz.xiaoyao.frontmenu.dataDao.UserFrontmenuMybatisDao">
|
||||
<resultMap id="BaseResultMap" type="cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu">
|
||||
<result column="userId" property="userid" jdbcType="BIGINT"/>
|
||||
<result column="menuId" property="menuid" jdbcType="BIGINT"/>
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
userId AS userid,
|
||||
menuId AS menuid
|
||||
</sql>
|
||||
|
||||
<sql id="Base_Where">
|
||||
<where>
|
||||
<trim prefixOverrides="and|or">
|
||||
<if test="userid != null"> and userId ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend}</if>
|
||||
<if test="menuid != null"> and menuId ${menuid.dataOp} ${menuid.likestar}#{menuid.value}${menuid.likeend}</if>
|
||||
<if test="userid != null"> and USERID ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend}</if>
|
||||
<if test="listdept != null">
|
||||
and DEPARTID in
|
||||
<foreach collection="listdept.value" item="item" index="index" open="(" separator="," close=")" >
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
</trim>
|
||||
</where>
|
||||
<if test="page != null">
|
||||
<if test="page.sortname != null"> order by ${page.sortname} ${page.sortorder}</if>
|
||||
limit ${page.start}, ${page.Pagesize}
|
||||
</if>
|
||||
</sql>
|
||||
|
||||
</mapper>
|
Loading…
Reference in new issue