Compare commits

...

2 Commits

Author SHA1 Message Date
guanzheng 978bab01e6 1:ocr_dict_init
1 year ago
guanzheng f9982088fe 1:dict
1 year ago

@ -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,313 @@
<#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/headlist.html" />
<link href="${ctx}/static/css/plugins/iCheck/custom.css" rel="stylesheet">
</head>
<body class="gray-bg">
<div class="wrapper wrapper-content animated fadeInRight">
<div class="ibox ">
<div class="ibox-content">
<div class="ibox-content">
<form id="searcheuser" class="form-inline">
<div class="form-group">
<input name='search_codeno' id='search_codeno' class='form-control' placeholder='编码'/>
</div>
<div class="form-group">
<input name='search_name' id='search_name' class='form-control' placeholder='描述'/>
</div>
<div class="form-group">
<a class="btn btn-primary btn-rounded btn-sm" onclick="refreshTable()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$('#searcheuser')[0].reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</div>
</form>
</div>
</div>
</div>
<div class="ibox-content">
<div class="row row-lg">
<div class="col-sm-12">
<div class="container-div">
<div class="btn-group-sm" id="_mybutton" role="group">
<button class="btn sbold btn-success" onclick="_distionaryAdd()"> <i class="fa fa-plus"></i> 添加</button>&nbsp;
<button class="btn sbold btn-danger" onclick="_distionaryDeletebu()"> <i class="fa fa-close"></i> 删除</button>
</div>
<br/>
</div>
</div>
<div class="col-sm-12 select-table table-striped" >
<table id="Distionary_list" ></table>
</div>
</div>
</div>
</div>
<div class="modal inmodal fade" id="distionaryModelManager" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content animated flipInY modal-lg">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h6 class="modal-title">字典详情管理</h6>
</div>
<div class="modal-body">
<div class="row">
<form name="Distionaryform" method="post" id="Distionaryform" class="form-horizontal" action="${ctx}/ocr/dictionary/save">
<input name="distionarytypeid" id="distionarytypeid" value="${distionarytypeid}" type="hidden">
<input name="groupId" id="distionatygroupid" value="${distionarygroupid}" type="hidden">
<input name="id" id="id" type="hidden">
<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="value" id="value" 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="lable" id="lable" class="form-control" placeholder="描述" class="form-control" type="text" maxlength='75' required>
</div>
</div>
</div>
</div>
</form>
</div>
</div>
<div class="modal-footer">
<button type="button" onClick="closeDistionaryModel()" class="btn btn-w-m btn-default" id="savebuttonUserIcon">关闭</button>
<button type="button" onclick="distionaryModelformSubmit()" class="btn btn-w-m btn-primary">保存</button>
</div>
</div>
</div>
</div>
<#include "/head/footlist.html" />
<script src="${ctx}/static/js/plugins/jquery-form/jquery.form.min.js?v=4.3.0"></script>
<script src="${ctx}/static/js/plugins/validate/jquery.validate.min.js"></script>
<script src="${ctx}/static/js/plugins/validate/localization/messages_zh.js" type="text/javascript"></script>
<!-- iCheck -->
<script src="${ctx}/static/js/plugins/iCheck/icheck.min.js"></script>
</body>
</html>
<script type="text/javascript">
var _tableListDistionary;
var $distionaryModelManager = $("#distionaryModelManager");
function showDistionaryModel() {
$distionaryModelManager.modal();
$distionaryModelManager.css("z-index",(parent.getMaxZIndex() + 1));
}
function closeDistionaryModel() {
$("#Distionaryform")[0].reset();
$("#distionarytypeid").val('${distionarytypeid}');
$("#distionatygroupid").val('${distionarygroupid}');
$distionaryModelManager.modal('hide');
}
jQuery(document).ready(function($){
$('.i-checks').iCheck({
checkboxClass: 'icheckbox_square-green',
radioClass: 'iradio_square-green',
});
_tableListDistionary = $('#Distionary_list').bootstrapTable({
url: '${ctx}/ocr/dictionary/list',
pagination: true, //是否显示分页(*
pageNumber:1, //初始化加载第一页,默认第一页
pageSize: 10, //每页的记录行数(*
sidePagination: "server",
height: "100%", pageList: [10, 25, 50],
ajaxOptions:{
headers: {"logintoken": parent.getLoginToken()}
},
queryParams: function queryParams(params) {
return {
sortorder: "desc",
sortname: "ID",
pagesize: params.limit,
start: (params.offset / params.limit) + 1,
search_codeno:'{"value":"' + $("#search_codeno").val() + '","op":"equal","type":"string"}',
search_distionatygroupid:'{"value":"' + $("#distionatygroupid").val() + '","op":"equal","type":"string"}',
search_name:'{"value":"' + $("#search_name").val() + '","op":"equal","type":"string"}'
};
},
responseHandler:function(res){
return{"rows": res.data.records, "total": res.data.total};
},
columns: [
{checkbox: true},
// { width:150,valign: "middle",field:'distionarytypeid',title:'数据字典分类主键',sortable:true},
// { width:150,valign: "middle",field:'distionatygroupid',title:'数据字典分组主键',sortable:true},
{ width:150,valign: "middle",field:'value',title:'编码',sortable:true},
{ width:150,valign: "middle",field:'lable',title:'描述',sortable:true},
{
width:200,
field: 'id',
title: '操作',
formatter:function(value,oData,index) {
var listOperation = "";
listOperation = listOperation + "<a href=\"javascript:_distionaryDelete('resourceid_distionary','" + oData.id + "');\" class=\"btn btn-danger btn-xs\")><i class=\"fa fa-close\"></i> 删除 </a>&nbsp;&nbsp;";
listOperation = listOperation + "<a href=\"javascript:_distionaryUpdateData('resourceid_distionary','" + oData.id + "');\" class=\"btn btn-primary btn-xs\")><i class=\"fa fa-pencil\"></i> 修改 </a>&nbsp;&nbsp;";
return listOperation;
}
}
]
});
$("#Distionaryform").attr("action","${ctx}/ocr/dictionary/save");
var distionaryForm1 = $('#Distionaryform');
var distionaryError1 = $('.alert-danger', distionaryForm1);
distionaryForm1.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();
$("#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);
refreshTable();
closeDistionaryModel();
}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 distionaryModelformSubmit() {
$("#Distionaryform").submit();
}
function getIdSelections() {
return $.map(_tableListDistionary.bootstrapTable('getSelections'), function(row) {
return row.id
});
}
function _distionaryAdd(){
$("#Distionaryform")[0].reset();
showDistionaryModel();
$("#Distionaryform")[0].reset();
}
function _distionaryUpdateData(jframeid,str){
parent.axgetXiaoyao('${ctx}/ocr/dictionary/getdata/' + str,null,false , function(data){
if(data.code == "OK"){
$("#id").val(data.data.id);
$("#value").val(data.data.value);
$("#lable").val(data.data.lable);
showDistionaryModel();
}else{
parent.toastr.error("非法请求。");
}
});
}
function _distionaryEdit(jframeid){
var str = getIdSelections() + "";
var tempstr = str.split(",");
if(str.length > 0 && tempstr.length > 1){
parent.toastr.error("每次只能修改一条信息。");
}else{
if (str.length > 0) {
updateData(jframeid,str);
} else {
parent.toastr.error("至少选择一条信息操作。");
}
}
}
function t_delete(str){
parent.layer.closeAll('loading');
parent.axgetXiaoyao('${ctx}/ocr/dictionary/delmore' , {id:str},false, function(data){
parent.layer.closeAll('loading');
if(data.code == "OK"){
swal(data.message, "您已经永久删除了这条信息。", "success");
refreshTable();
}else{
swal(data.message, "遇到未知错误!", "error");
}
});
}
function _distionaryDelete(sourceid,str){
swal({
title: "您确定要删除这条信息吗",
text: "删除后将无法恢复,请谨慎操作!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "是的,我要删除!",
cancelButtonText: "让我再考虑一下…",
closeOnConfirm: false,
closeOnCancel: false
},
function (isConfirm) {
if (isConfirm) {
t_delete(str);
} else {
swal("已取消", "您取消了删除操作!", "error");
}
});
}
function refreshTable(sourceid){
_tableListDistionary.bootstrapTable('refreshOptions',{pageNumber:1});
}
</script>

@ -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,496 @@
<#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/headlist.html" />
<link href="${ctx}/static/css/plugins/iCheck/custom.css" rel="stylesheet">
</head>
<body class="gray-bg">
<div class="wrapper wrapper-content animated fadeInRight">
<div class="col-sm-9">
<div class="ibox ">
<div class="ibox-content">
<div class="ibox-content">
<form id="searcheuser" class="form-inline">
<div class="form-group">
<input name='search_codeno' id='search_codeno' class='form-control' placeholder='字典组名称'/>
</div>
<div class="form-group">
<input name='search_groupname' id='search_groupname' class='form-control' placeholder='字典组描述'/>
</div>
<div class="form-group">
<a class="btn btn-primary btn-rounded btn-sm" onclick="refreshTable()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$('#searcheuser')[0].reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</div>
</form>
</div>
</div>
</div>
<div class="ibox-content">
<div class="row row-lg">
<div class="col-sm-12">
<div class="container-div">
<div class="btn-group-sm" id="_mybutton" role="group">
</div>
<br/>
</div>
</div>
<div class="col-sm-12 select-table table-striped" >
<table id="Distionarygroup_list" ></table>
</div>
</div>
</div>
</div>
</div>
<div class="modal inmodal fade" id="distionaryManager" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content animated flipInY modal-lg">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h6 class="modal-title">字典详情管理</h6>
</div>
<div class="modal-body">
<div class="row">
<form name="userImageform" method="post" id="userImageform" class="form-horizontal" enctype="multipart/form-data">
<div class="col-sm-8">
<div class="form-group">
<img src="" id="usericonImage" />
<input type="file" id="headPhoto" name="headPhoto" onchange="changeFile()" style="display: none;"/>
</div>
</div>
<div class="col-sm-4">
<div class="form-group">
<div id="preview-pane">
<div class="preview-container">
<img src="" id="usericonImageCut" class="jcrop-preview" />
</div>
</div>
</div>
</div>
</form>
</div>
</div>
<div class="modal-footer">
<button type="button" onClick="" class="btn btn-w-m btn-primary" id="savebuttonUserIcon">选择图片</button>
<button type="button" onclick="" class="btn btn-w-m btn-primary">保存</button>
</div>
</div>
</div>
</div>
<div class="modal inmodal fade" id="distionaryTypeManager" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content animated flipInY modal-lg">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h6 class="modal-title">字典分类管理</h6>
</div>
<div class="modal-body">
<div class="row">
<form name="Distionarytypeform" method="post" id="Distionarytypeform" class="form-horizontal" >
<input name="id" id="id" type="hidden">
<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="typename" id="typename" 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">
<div class="radio i-checks">
<label>
<input type="radio" checked="" value="1" name="enabled"> <i></i>启用
</label>
<label>
<input type="radio" value="0" name="enabled"> <i></i>禁用
</label>
</div>
</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="sorting" id="sorting" class="form-control" number="true" placeholder="排序" class="form-control" type="text" required>
</div>
</div>
</div>
</div>
</form>
</div>
</div>
<div class="modal-footer">
<button type="button" onClick="closeTypeModel()" class="btn btn-w-m btn-default" id="savebuttonUserIcon">关闭</button>
<button type="button" onclick="distionarytypeformSubmit()" class="btn btn-w-m btn-primary">保存</button>
</div>
</div>
</div>
</div>
<#include "/head/footlist.html" />
<script src="${ctx}/static/js/plugins/jquery-form/jquery.form.min.js?v=4.3.0"></script>
<script src="${ctx}/static/js/plugins/validate/jquery.validate.min.js"></script>
<script src="${ctx}/static/js/plugins/validate/localization/messages_zh.js" type="text/javascript"></script>
<!-- iCheck -->
<script src="${ctx}/static/js/plugins/iCheck/icheck.min.js"></script>
</body>
</html>
<script type="text/javascript">
var $distionaryTypeManager = $("#distionaryTypeManager");
var $distionaryManager = $("#distionaryManager");
function showTypeModel() {
$distionaryTypeManager.modal();
$distionaryTypeManager.css("z-index",(parent.getMaxZIndex() + 1));
}
function closeTypeModel() {
$("#Distionarytypeform")[0].reset();
$distionaryTypeManager.modal('hide');
}
function showManagerModel() {
$distionaryManager.modal();
$distionaryManager.css("z-index",(parent.getMaxZIndex() + 1));
}
function closeManagerModel() {
$distionaryManager.modal('hide');
}
var _distionarytype_list;
var _tableListDistionarygroup;
var jsptoolbar = '';
var jspOperation = '';
jQuery(document).ready(function($){
$('.i-checks').iCheck({
checkboxClass: 'icheckbox_square-green',
radioClass: 'iradio_square-green',
});
parent.axgetXiaoyao("${ctx}/backstage/admin/user/toolsbarOperation?" + "resourceid=${resourceid}",null,true ,
function(data){
if(data.code == "OK"){
jsptoolbar = data.data.Jsptoolbar;
jspOperation = data.data.JspOperation;
$("#_mybutton").empty();
$(jsptoolbar).each(function (i, toolbar) {
if(toolbar.methodid != '104'){
$("#_mybutton").append('<button class="btn sbold ' + toolbar.img + '" onClick="' + toolbar.actionmethod + '(\'${resourceid}' + toolbar.methodid + '\')"> ' + ' <i class="fa ' + toolbar.methodkey + '"></i> ' + toolbar.text + '</button>&nbsp');
}
});
_tableListDistionarygroup = $('#Distionarygroup_list').bootstrapTable({
url: '${ctx}/ocr/dictionaryGroup/list' ,
pagination: true, //是否显示分页(*
pageNumber:1, //初始化加载第一页,默认第一页
pageSize: 10, //每页的记录行数(*
sidePagination: "server",
height: "100%", pageList: [10, 25, 50],
ajaxOptions:{
headers: {"logintoken": parent.getLoginToken()}
},
queryParams: function queryParams(params) {
return {
sortorder: "desc",
sortname: "ID",
pagesize: params.limit,
start: (params.offset / params.limit) + 1,
search_codeno:'{"value":"' + $("#search_codeno").val() + '","op":"equal","type":"string"}',
search_groupname:'{"value":"' + $("#search_groupname").val() + '","op":"equal","type":"string"}'
};
},
responseHandler:function(res){
return{"rows": res.data.records, "total": res.data.total};
},
columns: [
{checkbox: true},
{ width:150,valign: "middle",field:'field',title:'字典组字段名',sortable:true},
{ width:150,valign: "middle",field:'label',title:'字典组描述',sortable:false},
{ width:150,valign: "middle",field:'remark',title:'备注',sortable:true},
{
width:200,
field: 'id',
title: '操作',
formatter:function(value,oData,index) {
var listOperation = "";
$(jspOperation).each(function (i, toolbar) {
listOperation = listOperation + "<a href=\"javascript:" + toolbar.actionmethod + "('${resourceid}" + toolbar.methodid + "','" + oData.id + "');\" class=\"btn " + toolbar.img + " btn-xs\")><i class=\"fa " + toolbar.methodkey + "\"></i> " + toolbar.text + " </a>&nbsp;&nbsp;";
});
return listOperation;
}
}
]
});
}
}
);
$("#Distionarytypeform").attr("action","${ctx}/backstage/admin/distionarytype/save");
var formType = $('#Distionarytypeform');
var errorType = $('.alert-danger', formType);
formType.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();
$("#savebutton").addClass('disabled');
$("#Distionarytypeform").ajaxSubmit({
headers:{"logintoken": parent.getLoginToken()},
success:function(data){
parent.layer.closeAll('loading');
if(data.code == "OK"){
parent.toastr.success(data.message);
refreshTableType();
closeTypeModel();
}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 distionarytypeformSubmit() {
$("#Distionarytypeform").submit();
}
function getIdSelections() {
return $.map(_tableListDistionarygroup.bootstrapTable('getSelections'), function(row) {
return row.id
});
}
function getIdSelectionsType() {
return $.map(_distionarytype_list.bootstrapTable('getSelections'), function(row) {
return row.id
});
}
function _editType(sourceid,dataid){
parent.axgetXiaoyao('${ctx}/backstage/admin/distionarytype/getdata/' + dataid,null,false , function(data){
if(data.code == "OK"){
$("#id").val(data.data.id);
$("#codeno").val(data.data.codeno);
$("#typename").val(data.data.typename);
$("#sorting").val(data.data.sorting);
if(data.data.enabled == 1){
$("input:radio[name='enabled']").eq(0).attr('checked',true);
}else if(data.data.enabled == 0){
$("input:radio[name='enabled']").eq(1).attr('checked',true);
}
showTypeModel();
}else{
parent.toastr.error("非法请求。");
}
});
}
function _addtType(sourceid,dataid){
showTypeModel();
}
function _useradd(jframeid){
parent._xiaoyaoOpenMenuTab('${ctx}/backstage/admin/ocrDistionarygroupHtml/toSave',"添加字典分组",jframeid + '_add');
}
function viewManager(sourceid,distionarygroupid) {
parent._xiaoyaoOpenMenuTab('${ctx}/backstage/admin/ocrDistionaryHtml/toList?distionarygroupid=' + distionarygroupid + "#sourceid=" +sourceid,"详情管理",distionarygroupid + '_list_child');
}
function updateData(jframeid,str){
var url = '${ctx}/backstage/admin/ocrDistionarygroupHtml/toEdit/' + str ;
parent._xiaoyaoOpenMenuTab(url,"修改数据字典分组",jframeid + '_edit');
}
function _useredit(jframeid){
var str = getIdSelections() + "";
var tempstr = str.split(",");
if(str.length > 0 && tempstr.length > 1){
parent.toastr.error("每次只能修改一条信息。");
}else{
if (str.length > 0) {
updateData(jframeid,str);
} else {
parent.toastr.error("至少选择一条信息操作。");
}
}
}
function t_delete(str){
parent.layer.closeAll('loading');
parent.axgetXiaoyao('${ctx}/ocr/dictionaryGroup/delmore' , {id:str},false, function(data){
parent.layer.closeAll('loading');
if(data.code == "OK"){
swal(data.message, "您已经永久删除了这条信息。", "success");
refreshTable();
}else{
swal(data.message, "遇到未知错误!", "error");
}
});
}
function _deleteType(sourceid,str){
var tempstr = str.split(",");
if (str.length > 0 && tempstr.length > 0) {
swal({
title: "您确定要删除这条信息吗",
text: "删除后将无法恢复,请谨慎操作!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "是的,我要删除!",
cancelButtonText: "让我再考虑一下…",
closeOnConfirm: false,
closeOnCancel: false
},
function (isConfirm) {
if (isConfirm) {
parent.axgetXiaoyao('${ctx}/backstage/admin/distionarytype/delmore' , {id:str},false, function(data){
parent.layer.closeAll('loading');
if(data.code == "OK"){
swal(data.message, "您已经永久删除了这条信息。", "success");
refreshTableType();
closeTypeModel();
}else{
swal(data.message, "遇到未知错误!", "error");
}
});
} else {
swal("已取消", "您取消了删除操作!", "error");
}
});
} else {
parent.toastr.error("至少选择一条数据操作");
}
}
function _deletebu(sourceid){
var str = getIdSelections() + "";
var tempstr = str.split(",");
if (str.length > 0 && tempstr.length > 0) {
swal({
title: "您确定要删除这条信息吗",
text: "删除后将无法恢复,请谨慎操作!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "是的,我要删除!",
cancelButtonText: "让我再考虑一下…",
closeOnConfirm: false,
closeOnCancel: false
},
function (isConfirm) {
if (isConfirm) {
t_delete(str);
} else {
swal("已取消", "您取消了删除操作!", "error");
}
});
} else {
parent.toastr.error("至少选择一条数据操作");
}
}
function _delete(sourceid,str){
swal({
title: "您确定要删除这条信息吗",
text: "删除后将无法恢复,请谨慎操作!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "是的,我要删除!",
cancelButtonText: "让我再考虑一下…",
closeOnConfirm: false,
closeOnCancel: false
},
function (isConfirm) {
if (isConfirm) {
t_delete(str);
} else {
swal("已取消", "您取消了删除操作!", "error");
}
});
}
function refreshTable(sourceid){
_tableListDistionarygroup.bootstrapTable('refreshOptions',{pageNumber:1});
}
function refreshTableType(){
_distionarytype_list.bootstrapTable('refreshOptions',{pageNumber:1});
}
</script>

@ -1,10 +1,25 @@
package cn.jyjz.xiaoyao.ocr.controller; package cn.jyjz.xiaoyao.ocr.controller;
import cn.jyjz.xiaoyao.admin.service.ResourcesService;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.constant.SystemConstants;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.framework.security.model.AdminUserModel;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary; import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup; import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup;
import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService; import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -16,6 +31,7 @@ import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.util.Objects;
/** /**
* ocr_ * ocr_
@ -27,11 +43,22 @@ import java.io.IOException;
@Api(tags="ocr_业务数据数据字典") @Api(tags="ocr_业务数据数据字典")
@RestController @RestController
@RequestMapping("/ocr/dictionary") @RequestMapping("/ocr/dictionary")
public class OcrDictionaryController { public class OcrDictionaryController extends BaseController {
@Autowired @Autowired
private OcrDictionaryService ocrDictionaryService; private OcrDictionaryService ocrDictionaryService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
@Autowired
private ResourcesService resourcesService;
/** /**
* *
*mail.zhangyong@gmail.com *mail.zhangyong@gmail.com
@ -81,4 +108,80 @@ public class OcrDictionaryController {
return new ResultVo<>(ResultVo.ERROR,result); return new ResultVo<>(ResultVo.ERROR,result);
} }
/**
*jsondto
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/list")
public ResultVo<IPage<OcrDictionary>> listDistionarygroup(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException {
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
cn.jyjz.xiaoyao.admin.dataobject.User user = this.userService.getSessionUser(request);
OcrDictionary distionarygroup = new OcrDictionary();
distionarygroup.setSearchQueryrolesShowleave(user.getSearchQueryrolesShowleave());
QueryWrapper<OcrDictionary> queryWrapper = SearchQueryFormat
.queryStringFormat(searchQuery,distionarygroup);
IPage<OcrDictionary> page = this.ocrDictionaryService.selectSearchListPage(paramterPage,queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@PostMapping("/save")
public ResultVo saveDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionary tab) throws IOException{
OcrDictionary ocrDictionaryGroup = ocrDictionaryService.getOne(new LambdaQueryWrapper<OcrDictionary>().eq(OcrDictionary::getValue, tab.getValue()));
if(Objects.nonNull(ocrDictionaryGroup)&&!ocrDictionaryGroup.getId().equals(tab.getId())){
return ResultVoUtil.error("字段名称重复");
}
this.ocrDictionaryService.saveOrUpdate(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@PostMapping("/edit")
public ResultVo editDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionary tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrDictionaryService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateDistionarygroup(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrDictionary dto = this.ocrDictionaryService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreDistionarygroup(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrDictionaryService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
} }

@ -0,0 +1,186 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.jyjz.xiaoyao.admin.dataobject.Distionarygroup;
import cn.jyjz.xiaoyao.admin.dataobject.Distionarytype;
import cn.jyjz.xiaoyao.admin.service.ResourcesService;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.constant.SystemConstants;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.param.ParamterPage;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat;
import cn.jyjz.xiaoyao.framework.security.model.AdminUserModel;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup;
import cn.jyjz.xiaoyao.ocr.dataobject.OcrField;
import cn.jyjz.xiaoyao.ocr.dto.OcrFieldDto;
import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryGroupService;
import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService;
import cn.jyjz.xiaoyao.ocr.vo.OcrFieldVo;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* ocr_
*
* @author hugh(shuli.yao) 1397940314@qq.com
* @version 1.0
* @date 2024/3/16 15:16
*/
@Api(tags="ocr_业务数据数据字典")
@RestController
@RequestMapping("/ocr/dictionaryGroup")
public class OcrDictionaryGropuController extends BaseController {
@Autowired
private OcrDictionaryGroupService ocrDictionaryGroupService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
@Autowired
private ResourcesService resourcesService;
/**
*jsondto
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/list")
public ResultVo<IPage<OcrDictionaryGroup>> listDistionarygroup(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException {
SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_");
cn.jyjz.xiaoyao.admin.dataobject.User user = this.userService.getSessionUser(request);
OcrDictionaryGroup distionarygroup = new OcrDictionaryGroup();
distionarygroup.setSearchQueryrolesShowleave(user.getSearchQueryrolesShowleave());
QueryWrapper<OcrDictionaryGroup> queryWrapper = SearchQueryFormat
.queryStringFormat(searchQuery,distionarygroup);
IPage<OcrDictionaryGroup> page = this.ocrDictionaryGroupService.selectSearchListPage(paramterPage,queryWrapper);;
return ResultVoUtil.success(page);
}
/**
*
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/toolsbarOther")
@ResponseBody
public ResultVo<JSONObject> toolsbarOther(HttpServletResponse response, HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
if(StringUtils.isBlank(resourceid)){
resourceid = "26";
}
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
AdminUserModel adminUserModel = (AdminUserModel) this.userTokenService.getSessionUserFromCache(userToken.getTokenid());
cn.jyjz.xiaoyao.common.base.vo.User user = adminUserModel.getUser();
JSONObject jsonObject = this.resourcesService.getResourceMethod(Long.decode(resourceid), user);
JSONArray toolsbar = (JSONArray) jsonObject.get(SystemConstants.SYS_JSP_TOOLSBAR);
if(null == toolsbar || toolsbar.isEmpty()){
jsonObject = this.resourcesService.getObjectByResourceid(resourceid);
}
return ResultVoUtil.success(jsonObject);
}
/**
*
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@PostMapping("/save")
public ResultVo saveDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionaryGroup tab) throws IOException{
OcrDictionaryGroup ocrDictionaryGroup = ocrDictionaryGroupService.getOne(new LambdaQueryWrapper<OcrDictionaryGroup>().eq(OcrDictionaryGroup::getField, tab.getField()));
if(Objects.nonNull(ocrDictionaryGroup)&&!ocrDictionaryGroup.getId().equals(tab.getId())){
return ResultVoUtil.error("字段名称重复");
}
this.ocrDictionaryGroupService.saveOrUpdate(tab);
return ResultVoUtil.success();
}
/**
*form
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@PostMapping("/edit")
public ResultVo editDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionaryGroup tab) throws IOException{
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));
this.ocrDictionaryGroupService.updateById(tab);
return ResultVoUtil.success();
}
/**
*
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/getdata/{id}")
@ResponseBody
public ResultVo getdateDistionarygroup(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{
OcrDictionaryGroup dto = this.ocrDictionaryGroupService.selectDtoById(id);
if(null != dto){
return ResultVoUtil.success(dto);
}else{
return ResultVoUtil.error();
}
}
/**
*id1,2,3
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/delmore")
@ResponseBody
public ResultVo delMoreDistionarygroup(HttpServletResponse response,HttpServletRequest request) throws IOException{
String ids = request.getParameter("id");
this.ocrDictionaryGroupService.deleteByIdMore(ids);
return ResultVoUtil.success();
}
@GetMapping("/listall")
public ResultVo<List<OcrDictionaryGroup>> listall(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{
List<OcrDictionaryGroup> list = this.ocrDictionaryGroupService.list();
return ResultVoUtil.success(list);
}
}

@ -0,0 +1,78 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.jyjz.xiaoyao.admin.dataobject.Distionarygroup;
import cn.jyjz.xiaoyao.admin.service.DistionaryService;
import cn.jyjz.xiaoyao.admin.service.DistionarygroupService;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@Controller
@RequestMapping("/backstage/admin/ocrDistionaryHtml")
public class OcrDistionaryHtmlController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private DistionaryService distionaryService;
@Autowired
private DistionarygroupService distionarygroupService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*
*mail.zhangyong@gmail.com
*2022-03-29 16:00:28
**/
@GetMapping("/toList")
public String toListDistionary(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
String distionarygroupid = request.getParameter("distionarygroupid");
request.setAttribute("resourceid",resourceid);
request.setAttribute("distionarygroupid",distionarygroupid);
request.setAttribute("distionarytypeid","212");
return "/backstage/oa/ocr/distionary/list";
}
/**
*
*mail.zhangyong@gmail.com
*2022-03-29 16:00:28
**/
@GetMapping("/toSave")
public String toSaveDistionary(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/distionary/add";
}
/**
*ID
*mail.zhangyong@gmail.com
*2022-03-29 16:00:28
**/
@GetMapping("/toEdit/{id}")
public String toEditDistionary(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
request.setAttribute("id", id);
return "/backstage/oa/ocr/distionary/edit";
}
}

@ -0,0 +1,71 @@
package cn.jyjz.xiaoyao.ocr.controller;
import cn.jyjz.xiaoyao.admin.service.DistionarygroupService;
import cn.jyjz.xiaoyao.admin.service.UserService;
import cn.jyjz.xiaoyao.common.base.controller.BaseController;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@Controller
@RequestMapping("/backstage/admin/ocrDistionarygroupHtml")
public class OcrDistionarygroupHtmlController extends BaseController{
private Logger log = LoggerFactory.getLogger(this.getClass());
@Autowired
private DistionarygroupService distionarygroupService;
@Autowired
private UserTokenService userTokenService;
@Autowired
private UserService userService;
/**
*
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/toList")
public String toListDistionarygroup(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/distionarygroup/list";
}
/**
*
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/toSave")
public String toSaveDistionarygroup(HttpServletResponse response,HttpServletRequest request){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
return "/backstage/oa/ocr/distionarygroup/add";
}
/**
*ID
*mail.zhangyong@gmail.com
*2022-03-07 15:15:08
**/
@GetMapping("/toEdit/{id}")
public String toEditDistionarygroup(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){
String resourceid = request.getParameter("resourceid");
request.setAttribute("resourceid",resourceid);
request.setAttribute("id", id);
return "/backstage/oa/ocr/distionarygroup/edit";
}
}

@ -1,10 +1,13 @@
package cn.jyjz.xiaoyao.ocr.dataobject; package cn.jyjz.xiaoyao.ocr.dataobject;
import cn.jyjz.xiaoyao.common.base.jsonDomain.DateSerializer; import cn.jyjz.xiaoyao.common.base.jsonDomain.DateSerializer;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
@ -15,6 +18,11 @@ import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.util.AbstractMap;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/** /**
* TODO * TODO
* *
@ -29,7 +37,7 @@ import lombok.NoArgsConstructor;
@Schema(name = "业务数据字典值表", title = "业务数据字典值表") @Schema(name = "业务数据字典值表", title = "业务数据字典值表")
@ApiModel(value="业务数据字典值表", description="业务数据字典值表") @ApiModel(value="业务数据字典值表", description="业务数据字典值表")
@TableName(value = "ocr_dictionary") @TableName(value = "ocr_dictionary")
public class OcrDictionary { public class OcrDictionary implements BaseDto,java.io.Serializable{
@ApiModelProperty(value ="主键") @ApiModelProperty(value ="主键")
@TableId(value = "id",type = IdType.ASSIGN_ID) @TableId(value = "id",type = IdType.ASSIGN_ID)
@ -57,4 +65,30 @@ public class OcrDictionary {
@TableField(value="group_id") @TableField(value="group_id")
private Long groupId; private Long groupId;
@TableField(exist = false)
@JsonIgnore
private final Map<String,String> query = Stream.of(
new AbstractMap.SimpleEntry<>("ID","id"),
new AbstractMap.SimpleEntry<>("DISTIONATYGROUPID","group_id"),
new AbstractMap.SimpleEntry<>("CODENO","value"),
new AbstractMap.SimpleEntry<>("NAME","lable")
)
.collect(Collectors.toMap(AbstractMap.SimpleEntry::getKey, AbstractMap.SimpleEntry::getValue));
@Override
public String getQueryFiled(String filedname){
String obj = null;
if(null != query && query.size() > 0){
obj = query.get(filedname);
}
return obj;
}
//保存当前登录用户的数据权限范围的搜索条件
@TableField(exist = false)
@JsonIgnore
private SearchQuery searchQueryrolesShowleave;
} }

@ -1,9 +1,14 @@
package cn.jyjz.xiaoyao.ocr.dataobject; package cn.jyjz.xiaoyao.ocr.dataobject;
import cn.jyjz.xiaoyao.admin.dataobject.Distionary;
import cn.jyjz.xiaoyao.admin.dataobject.Distionarytype;
import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery;
import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
@ -15,6 +20,12 @@ import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.util.AbstractMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/** /**
* TODO * TODO
* *
@ -29,7 +40,7 @@ import lombok.NoArgsConstructor;
@Schema(name = "业务数据字典组表", title = "业务数据字典组表") @Schema(name = "业务数据字典组表", title = "业务数据字典组表")
@ApiModel(value="业务数据字典组表", description="业务数据字典组表") @ApiModel(value="业务数据字典组表", description="业务数据字典组表")
@TableName(value = "ocr_dictionary_group") @TableName(value = "ocr_dictionary_group")
public class OcrDictionaryGroup { public class OcrDictionaryGroup implements BaseDto,java.io.Serializable {
@ApiModelProperty(value ="主键") @ApiModelProperty(value ="主键")
@TableId(value = "id",type = IdType.ASSIGN_ID) @TableId(value = "id",type = IdType.ASSIGN_ID)
@JsonSerialize(using = ToStringSerializer.class) @JsonSerialize(using = ToStringSerializer.class)
@ -47,4 +58,33 @@ public class OcrDictionaryGroup {
@ApiModelProperty(value ="备注") @ApiModelProperty(value ="备注")
@TableField(value="remark") @TableField(value="remark")
private String remark; private String remark;
@TableField(exist = false)
private List<OcrDictionary> distionaryList;
//保存当前登录用户的数据权限范围的搜索条件
@TableField(exist = false)
@JsonIgnore
private SearchQuery searchQueryrolesShowleave;
@TableField(exist = false)
@JsonIgnore
private final Map<String,String> query = Stream.of(
new AbstractMap.SimpleEntry<>("listdept","deptid"),
new AbstractMap.SimpleEntry<>("ID","id"),
new AbstractMap.SimpleEntry<>("CODENO","field"),
new AbstractMap.SimpleEntry<>("GROUPNAME","label")
)
.collect(Collectors.toMap(AbstractMap.SimpleEntry::getKey, AbstractMap.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,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> {
}

@ -36,4 +36,8 @@ public interface OcrDictionaryService extends BaseService<OcrDictionary> {
* @return * @return
*/ */
String queryLabelByValue(String field, String value, String tenantId); String queryLabelByValue(String field, String value, String tenantId);
} }

@ -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 {
}
Loading…
Cancel
Save