346 lines
15 KiB
Plaintext
346 lines
15 KiB
Plaintext
<%@ page language="java" pageEncoding="UTF-8" %>
|
||
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %>
|
||
<%@ taglib uri="http://www.springsecurity.org/jsp" prefix="security" %>
|
||
<style type="text/css">
|
||
.select2-container .select2-selection--single {
|
||
height: 34px;
|
||
line-height: 34px;
|
||
}
|
||
|
||
.select2-selection__arrow {
|
||
margin-top: 3px;
|
||
}
|
||
</style>
|
||
<!--编辑器-->
|
||
<script type="text/javascript"
|
||
src="<%=request.getContextPath()%>/node_modules/ckeditor5-build-balloon/ckeditor.js"
|
||
charset="utf-8"></script>
|
||
<script type="text/javascript"
|
||
src="<%=request.getContextPath()%>/node_modules/ckeditor5-build-balloon/translations/zh-cn.js"
|
||
charset="utf-8"></script>
|
||
|
||
<script type="text/javascript"
|
||
src="<%=request.getContextPath()%>/node_modules/wangeditor/wangEditor.min.js"></script>
|
||
<script type="text/javascript">
|
||
var masterId = '${data.id}';
|
||
var tbName = 'tb_doc_file'; //数据表
|
||
var nameSpace = 'Document';//保存文件夹
|
||
//上传文件
|
||
var fileinput = function () {
|
||
$.post(ext.contextPath + '/document/fileinput4data.do', {
|
||
masterId: masterId,
|
||
tbName: tbName,
|
||
nameSpace: nameSpace,
|
||
companyId: '${param.companyId}'
|
||
}, function (data) {
|
||
$("#fileInputDiv").html(data);
|
||
openModal('fileInputModal');
|
||
});
|
||
};
|
||
// 新增资料
|
||
var insertWord = function () {
|
||
$.post(ext.contextPath + '/documentData/doaddData.do', {
|
||
masterId: masterId,
|
||
tbName: tbName,
|
||
nameSpace: nameSpace,
|
||
companyId: '${param.companyId}'
|
||
}, function (data) {
|
||
$("#fileInputDiv").html(data);
|
||
openModal('fileInputModal');
|
||
});
|
||
};
|
||
var editEqu = function (id) {
|
||
$.post(ext.contextPath + '/document/fileEditEqu.do', {
|
||
id: id,
|
||
tbName: tbName,
|
||
}, function (data) {
|
||
$("#fileInputDiv").html(data);
|
||
openModal('fileInputModal');
|
||
});
|
||
};
|
||
//下载文件
|
||
var fileDownload = function (id) {
|
||
window.open(ext.contextPath + "/base/downloadFile.do?key=" + id + "&tbName=" + tbName);
|
||
};
|
||
var delFileFun = function (id) {
|
||
stopBubbleDefaultEvent();
|
||
swal({
|
||
text: "您确定要删除此记录?",
|
||
dangerMode: true,
|
||
buttons: {
|
||
cancel: {
|
||
text: "取消",
|
||
value: null,
|
||
visible: true,
|
||
className: "btn btn-default btn-sm",
|
||
closeModal: true,
|
||
},
|
||
confirm: {
|
||
text: "确定",
|
||
value: true,
|
||
visible: true,
|
||
className: "btn btn-danger btn-sm",
|
||
closeModal: true
|
||
}
|
||
}
|
||
})
|
||
.then(function (willDelete) {
|
||
if (willDelete) {
|
||
$.post(ext.contextPath + '/documentData/dodeleteFile.do', {id: id, tbName: tbName}, function (data) {
|
||
if (data == 1) {
|
||
$("#fileTable").bootstrapTable('refresh');
|
||
} else {
|
||
showAlert('d', '删除失败', 'mainAlertdiv');
|
||
}
|
||
});
|
||
|
||
}
|
||
});
|
||
};
|
||
var dosearchFile = function () {
|
||
$("#fileTable").bootstrapTable("refresh");
|
||
};
|
||
//浏览
|
||
var viewFun = function (id) {
|
||
$.post(ext.contextPath + '/documentData/doview.do', {
|
||
id: id,
|
||
tbName: tbName
|
||
}, function (data) {
|
||
$("#fileInputDiv").html(data);
|
||
openModal('fileInputViewModal');
|
||
});
|
||
}
|
||
//浏览
|
||
var documentFun = function (id) {
|
||
$.post(ext.contextPath + '/documentData/doeditData.do', {
|
||
id: id,
|
||
masterId: masterId,
|
||
companyId: '${param.companyId}',
|
||
nameSpace: nameSpace,
|
||
tbName: tbName
|
||
}, function (data) {
|
||
$("#fileInputDiv").html(data);
|
||
openModal('fileInputEditModal');
|
||
});
|
||
}
|
||
//获取路径
|
||
var fileView = function (id) {
|
||
var tbName = 'tb_doc_file';
|
||
$.post(ext.contextPath + '/base/getInputFile4Id.do', {id: id, tbName: tbName}, function (data) {
|
||
if (data.length > 0) {
|
||
var jsonstr = $.parseJSON(data);
|
||
//图片路径转换
|
||
var path = jsonstr[0].abspath;
|
||
path = path.substring(path.indexOf('webapps') + 7, path.length);
|
||
path = ext.basePath.replace(ext.contextPath, '') + path.replace(/\\/g, "\/");
|
||
;
|
||
|
||
//判断是否为图片
|
||
if (jsonstr[0].type.indexOf('image') != -1) {
|
||
showimg(path);
|
||
} else {
|
||
layer.msg("不是图片格式!");
|
||
}
|
||
}
|
||
});
|
||
}
|
||
|
||
//弹出图片 宽高自适应
|
||
function showimg(src) {
|
||
if (src == "") {
|
||
layer.msg("无图片!");
|
||
return;
|
||
}
|
||
//src = "../" + src;//加入 ../ 防止找不到图片
|
||
var img = new Image();
|
||
img.onload = function () {//避免图片还未加载完成无法获取到图片的大小。
|
||
//避免图片太大,导致弹出展示超出了网页显示访问,所以图片大于浏览器时下窗口可视区域时,进行等比例缩小。
|
||
var max_height = $(window).height() - 100;
|
||
var max_width = $(window).width();
|
||
|
||
//rate1,rate2,rate3 三个比例中取最小的。
|
||
var rate1 = max_height / img.height;
|
||
var rate2 = max_width / img.width;
|
||
var rate3 = 1;
|
||
var rate = Math.min(rate1, rate2, rate3);
|
||
//等比例缩放
|
||
var imgHeight = img.height * rate; //获取图片高度
|
||
var imgWidth = img.width * rate; //获取图片宽度
|
||
|
||
var imgHtml = "<img src='" + src + "' width='" + imgWidth + "px' height='" + imgHeight + "px'/>";
|
||
//弹出层
|
||
layer.open({
|
||
type: 1,
|
||
title: false,
|
||
closeBtn: 0,
|
||
area: ['auto', 'auto'],
|
||
skin: 'layui-layer-nobg', //没有背景色
|
||
shadeClose: true,
|
||
content: imgHtml
|
||
});
|
||
}
|
||
img.src = src;
|
||
}
|
||
|
||
|
||
$(function () {
|
||
$("#search_fileName").keyup(function () {
|
||
if (event.keyCode == 13) {
|
||
event.preventDefault();
|
||
//回车查询
|
||
dosearchFile();
|
||
event.stopPropagation();
|
||
}
|
||
})
|
||
$("#st").select2({minimumResultsForSearch: 10}).val("${data.st}").trigger("change");
|
||
$("#fileTable").bootstrapTable({ // 对应table标签的id
|
||
url: ext.contextPath + '/documentData/getList.do', // 获取表格数据的url
|
||
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
|
||
striped: true, //表格显示条纹,默认为false
|
||
pagination: true, // 在表格底部显示分页组件,默认false
|
||
pageList: [10, 15, 20], // 设置页面可以显示的数据条数
|
||
pageSize: 10, // 页面数据条数
|
||
pageNumber: 1, // 首页页码
|
||
sidePagination: 'server', // 设置为服务器端分页
|
||
queryParams: function (params) { // 请求服务器数据时发送的参数,可以在这里添加额外的查询参数,返回false则终止请求
|
||
return {
|
||
rows: params.limit, // 每页要显示的数据条数
|
||
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
|
||
sort: params.sort, // 要排序的字段
|
||
order: params.order, // 排序规则
|
||
masterId: '${nodeIds}',
|
||
tbName: tbName,
|
||
fileName: $("#search_fileName").val()
|
||
}
|
||
},
|
||
sortName: 'insdt', // 要排序的字段
|
||
sortOrder: 'desc', // 排序规则
|
||
columns: [
|
||
{
|
||
// field: 'filename', // 返回json数据中的name
|
||
//field: 'documentName', // 返回json数据中的name
|
||
field: 'wName', // 返回json数据中的name
|
||
title: '资料名称', // 表格表头显示文字
|
||
align: 'center', // 左右居中
|
||
valign: 'middle' // 上下居中
|
||
},/* {
|
||
field: 'abspath', // 返回json数据中的name
|
||
title: '路径', // 表格表头显示文字
|
||
align: 'left', // 左右居中
|
||
valign: 'middle',// 上下居中
|
||
formatter:function(value,row,index){
|
||
return '<a onclick="fileDownload(\'' + row.id + '\')">'+value+'</a>'
|
||
}
|
||
}, */{
|
||
field: 'user.caption', // 返回json数据中的name
|
||
title: '上传者', // 表格表头显示文字
|
||
align: 'center', // 左右居中
|
||
valign: 'middle',// 上下居中
|
||
}, {
|
||
field: 'insertTime', // 返回json数据中的name
|
||
title: '上传时间', // 表格表头显示文字
|
||
align: 'center', // 左右居中
|
||
valign: 'middle',// 上下居中
|
||
formatter: function (value, row, index) {
|
||
return value.substring(0, 19);
|
||
}
|
||
}, {
|
||
field: 'fileSum', // 返回json数据中的name
|
||
title: '附件数量', // 表格表头显示文字
|
||
align: 'center', // 左右居中
|
||
valign: 'middle',// 上下居中
|
||
}, {
|
||
field: 'fileSize', // 返回json数据中的name
|
||
title: '附件大小', // 表格表头显示文字
|
||
align: 'center', // 左右居中
|
||
valign: 'middle',// 上下居中
|
||
formatter: function (value, row, index) {
|
||
var size = '0KB'
|
||
var re = /([0-9]+\.[0-9]{2})[0-9]*/;
|
||
if (value > 1048576) {
|
||
var num = value/1024/1024
|
||
size = num.toString().replace(re,"$1") + 'MB'
|
||
} else if (value > 0) {
|
||
var num = value/1024
|
||
size = num.toString().replace(re,"$1") + 'KB'
|
||
}
|
||
return size
|
||
}
|
||
},
|
||
// {
|
||
// field: 'equipmentcardnames', // 返回json数据中的name
|
||
// title: '关联设备', // 表格表头显示文字
|
||
// align: 'center', // 左右居中
|
||
// valign: 'middle', // 上下居中
|
||
// },
|
||
/*{
|
||
field: 'st', // 返回json数据中的name
|
||
title: '状态', // 表格表头显示文字
|
||
align: 'center', // 左右居中
|
||
valign: 'middle' // 上下居中
|
||
}, */
|
||
{
|
||
title: "操作",
|
||
align: 'center',
|
||
valign: 'middle',
|
||
width: 200, // 定义列的宽度,单位为像素px
|
||
formatter: function (value, row, index) {
|
||
var buts = '';
|
||
buts += '<button class="btn btn-default btn-sm" title="浏览" onclick="viewFun(\'' + row.id + '\')"><i class="fa fa-eye"></i><span class="hidden-md hidden-lg">浏览</span></button>';
|
||
// buts += '<button class="btn btn-default btn-sm" title="图片预览" onclick="fileView(\'' + row.id + '\')"><i class="fa fa-eye"></i><span class="hidden-md hidden-lg">图片预览</span></button>';
|
||
// buts += '<button class="btn btn-default btn-sm" title="关联设备" onclick="editEqu(\'' + row.id + '\')"><i class="fa fa-edit"></i><span class="hidden-md hidden-lg">关联设备</span></button>';
|
||
<%--buts += '<security:authorize buttonUrl="document/fileDownload.do">';--%>
|
||
<%--buts += '<button class="btn btn-default btn-sm" title="下载" onclick="fileDownload(\'' + row.id + '\')"><i class="fa fa-download"></i><span class="hidden-md hidden-lg">下载</span></button>';--%>
|
||
<%--buts += '</security:authorize>';--%>
|
||
buts += '<security:authorize buttonUrl="document/fileDelete.do">';
|
||
buts += '<button class="btn btn-default btn-sm" title="文档编辑" onclick="documentFun(\'' + row.id + '\')"><i class="fa fa fa-file-text-o"></i><span class="hidden-md hidden-lg">编辑</span></button>';
|
||
buts += '</security:authorize>';
|
||
buts += '<security:authorize buttonUrl="document/fileDelete.do">';
|
||
buts += '<button class="btn btn-default btn-sm" title="删除" onclick="delFileFun(\'' + row.id + '\')"><i class="fa fa fa-trash-o"></i><span class="hidden-md hidden-lg">删除</span></button>';
|
||
buts += '</security:authorize>';
|
||
buts = '<div class="btn-group" >' + buts + '</div>';
|
||
return buts;
|
||
}
|
||
}
|
||
],
|
||
onLoadSuccess: function () { //加载成功时执行
|
||
//$(".bs-checkbox").css({'text-align':'center','vertical-align':'middle'})
|
||
adjustBootstrapTableView("fileTable");
|
||
},
|
||
onLoadError: function () { //加载失败时执行
|
||
console.info("加载数据失败");
|
||
}
|
||
})
|
||
});
|
||
</script>
|
||
<div class="box box-primary">
|
||
<div class="box-header with-border">
|
||
<h3 class="box-title">${param.text}</h3>
|
||
<div class="box-tools pull-right">
|
||
</div>
|
||
</div>
|
||
|
||
<!-- /.box-header -->
|
||
<div class="box-body ">
|
||
<div>
|
||
<div class="btn-group" style="width: 220px;padding-bottom:10px;">
|
||
<security:authorize buttonUrl="document/fileUpload.do">
|
||
<%-- <button type="button" class="btn btn-default" onclick="fileinput();"><i class="fa fa-plus"></i>上传文件--%>
|
||
<%-- </button>--%>
|
||
<%-- <!-- <button type="button" class="btn btn-default" onclick="delDocFun();"><i class="fa fa-trash"></i> 删除</button> -->--%>
|
||
</security:authorize>
|
||
<button type="button" class="btn btn-default" onclick="insertWord();"><i class="fa fa-plus"></i>新增资料
|
||
</button>
|
||
</div>
|
||
<div class="input-group input-group-sm pull-right" style="width:250px">
|
||
<input type="text" id="search_fileName" name="search_fileName" autocomplete="off" style="height:35px"
|
||
class="form-control pull-right" placeholder="资料名称">
|
||
<div class="input-group-btn">
|
||
<button class="btn btn-default" style="height:35px" onclick="dosearchFile();"><i
|
||
class="fa fa-search"></i></button>
|
||
</div>
|
||
</div>
|
||
<table id="fileTable"></table>
|
||
</div>
|
||
</div>
|
||
</div> |