Files
SIPAIIS_WMS_JSSW/WebRoot/jsp/report/rptInfoSetEdit.jsp

1309 lines
58 KiB
Plaintext
Raw Normal View History

2026-01-16 14:13:44 +08:00
<%@ page language="java" pageEncoding="UTF-8" %>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %>
<%@page import="com.sipai.entity.report.RptInfoSet" %>
<% request.setAttribute("RptType_Day", RptInfoSet.RptType_Day); %>
<% request.setAttribute("RptType_Week", RptInfoSet.RptType_Week); %>
<% request.setAttribute("RptType_Tenday", RptInfoSet.RptType_Tenday); %>
<% request.setAttribute("RptType_Month", RptInfoSet.RptType_Month); %>
<% request.setAttribute("RptType_Quarterly", RptInfoSet.RptType_Quarterly); %>
<% request.setAttribute("RptType_HalfYear", RptInfoSet.RptType_HalfYear); %>
<% request.setAttribute("RptType_Year", RptInfoSet.RptType_Year); %>
<%@page import="com.sipai.entity.report.RptSpSet" %>
<% request.setAttribute("RptSpSet_Type_Cal", RptSpSet.RptSpSet_Type_Cal); %>
<% request.setAttribute("RptSpSet_Type_Insuser", RptSpSet.RptSpSet_Type_Insuser); %>
<% request.setAttribute("RptSpSet_Type_Confirm", RptSpSet.RptSpSet_Type_Confirm); %>
<% request.setAttribute("RptSpSet_Type_Checkuser", RptSpSet.RptSpSet_Type_Checkuser); %>
<% request.setAttribute("RptSpSet_Type_Rptdt", RptSpSet.RptSpSet_Type_Rptdt); %>
<% request.setAttribute("RptSpSet_Type_BanZhang", RptSpSet.RptSpSet_Type_BanZhang); %>
<% request.setAttribute("RptSpSet_Type_ZuYuan", RptSpSet.RptSpSet_Type_ZuYuan); %>
<%request.setAttribute("TYPE_CATALOGUE", RptInfoSet.TYPE_CATALOGUE);%>
<%request.setAttribute("TYPE_SETTING", RptInfoSet.TYPE_SETTING);%>
<!-- 拖拽排序-->
<script type="text/javascript" src="<%=request.getContextPath()%>/plugins/bootstrap-table/jquery.tablednd.js"
charset="utf-8"></script>
<script type="text/javascript"
src="<%=request.getContextPath()%>/plugins/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.js"
charset="utf-8"></script>
<link rel="stylesheet"
href="<%=request.getContextPath()%>/plugins/bootstrap-table/extensions/reorder-rows/bootstrap-table-reorder-rows.css"/>
<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">
var masterId = '${rptInfoSet.id}';
var tbName = 'TB_Report_RptInfoSetFile'; //数据表
var nameSpace = 'rptinfosetfile';//保存文件夹
var bucketName = 'rptinfosetfile';
var masterId_process = '${rptInfoSet.id}';//业务Id
var tbName_process = 'TB_Report_RptInfoSetFile'; //数据表
var nameSpace_process = 'rptinfosetfile';//保存文件夹
var status = 'delete';//有删除权限
function dodel() {
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 + '/report/rptInfoSet/dodelete.do', $("#subForm").serialize(), function (result) {
// var data= $.parseJSON(result);
if (result.code == 1) {
initTreeView();
} else {
showAlert('d', result.msg);
}
}, 'json');
}
});
}
//弹出目录
var showTree4SelectFun = function () {
$.post(ext.contextPath + '/report/rptInfoSet/showTree4Select.do', {
formId: "subForm",
hiddenId: "pid",
textId: "pname"
}, function (data) {
$("#menu4SelectDiv").html(data);
openModal("menu4SelectModal")
});
};
//可生成报表用户
var showUser4SelectsFun2 = function () {
var userIds = $("#createusers").val();
$.post(ext.contextPath + '/user/userForSelectByCompany.do', {
formId: "subForm",
hiddenId: "createusers",
textId: "auditMan2",
userIds: userIds
}, function (data) {
$("#user4SelectDiv").html(data);
openModal("user4SelectModal");
});
};
//可审核报表用户
var showUser4SelectsFun1 = function () {
var userIds = $("#checkuser").val();
$.post(ext.contextPath + '/user/userForSelectByCompany.do', {
formId: "subForm",
hiddenId: "checkuser",
textId: "auditMan1",
userIds: userIds
}, function (data) {
$("#user4SelectDiv").html(data);
openModal("user4SelectModal");
});
};
//可浏览报表用户
var showUser4SelectsFun3 = function () {
var userIds = $("#browseusers").val();
$.post(ext.contextPath + '/user/userForSelectByCompany.do', {
formId: "subForm",
hiddenId: "browseusers",
textId: "auditMan3",
userIds: userIds
}, function (data) {
$("#user4SelectDiv").html(data);
openModal("user4SelectModal");
});
};
function dosave() {
var id = $('#id').val();
var pid = $('#pid').val();
if (id == pid) {
showAlert('d', '不能选择自己作为上级目录');
return false;
}
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
var value = $("#generateJurisdiction").val();
userOrJob(value, 'createusers', 'generatePosition');
value = $("#browseJurisdiction").val();
userOrJob(value, 'browseusers', 'browsePosition');
$.post(ext.contextPath + "/report/rptInfoSet/doupdate.do", $("#subForm").serialize(), function (result) {
if (result.code == 1) {
//刷新树
initTreeView();
showAlert('s', '保存成功');
} else {
showAlert('d', '保存失败');
}
}, 'json');
}
}
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
message: '名称不能为空'
}
}
},
morder: {
validators: {
notEmpty: {
message: '顺序不能为空'
},
regexp: {
regexp: /^[0-9]*$/,
message: '顺序必须为数字'
}
}
}
}
});
var fileinput = function () {
$.post(ext.contextPath + '/base/fileinputMinio_Report.do', {
masterId: masterId,
tbName: tbName,
nameSpace: nameSpace,
divId: ''
}, function (data) {
$("#fileInputDiv").html(data);
openModal('fileInputModal');
});
};
//下载文件
var fileDownload = function (id) {
// window.open(ext.contextPath + "/base/downloadFile.do?key=" + id + "&tbName=" + tbName);
window.open(ext.contextPath + "/report/rptInfoSetFile/downloadFile4minio.do?id=" + id);
};
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 + '/document/dodeleteFile.do', {id: id, tbName: tbName}, function (data) {
if (data == 1) {
$("#fileTable").bootstrapTable('refresh');
} else {
showAlert('d', '删除失败', 'mainAlertdiv');
}
});
}
});
};
var typeChecker = "";
$('#sheet_select').change(function () {
loadtable(typeChecker)
})
$.post(ext.contextPath + '/report/rptSpSet/getSheetNameList.do', {
id: '${rptInfoSet.id}'
// type: type
}, function (json) {
var data = eval('(' + json + ')')
for (let i = 0; i < data.rows.length; i++) {
// console.log(data.rows)
document.getElementById("sheet_select").options.add(new Option(data.rows[i], data.rows[i]));
}
});
var loadtable = function (type) {
typeChecker = type;
if (type == '${RptSpSet_Type_Cal}') {
$('#tableSp').bootstrapTable('destroy');
$("#tableSp").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/report/rptSpSet/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
id: '${rptInfoSet.id}',
sheet: $('#sheet_select').val(),
type: type
}
},
sortName: 'id', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
/*{
field: '',
title: '拖动', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '50px',
formatter: function (value, row, index) {
//pointer-events:none; 为标签失去鼠标事件
return '<i class="fa fa-bars" style="color:#C0C0C0;pointer-events:none;" ></i>';
}
},*/
{
checkbox: true, // 显示一个勾选框
width: '40px'
},
{
field: '', // 返回json数据中的name
title: '报表类型', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '8%',
formatter: function (value, row, index) {
if (row.type == '${RptSpSet_Type_Cal}') {
switch (row.spname) {
case '${RptType_Day}':
return '日报';
break;
case '${RptType_Week}':
return '周报';
break;
case '${RptType_Tenday}':
return '旬报';
break;
case '${RptType_Month}':
return '月报';
break;
case '${RptType_Quarterly}':
return '季报';
break;
case '${RptType_HalfYear}':
return '半年报';
break;
case '${RptType_Year}':
return '年报';
break;
default:
return '-';
}
} else {
switch (row.spname) {
case '${RptSpSet_Type_Insuser}':
return '记录人';
break;
case '${RptSpSet_Type_Confirm}':
return '接班人员';
break;
case '${RptSpSet_Type_BanZhang}':
return '值班班长';
break;
case '${RptSpSet_Type_ZuYuan}':
return '值班组员';
break;
case '${RptSpSet_Type_Checkuser}':
return '审核人';
break;
case '${RptSpSet_Type_Rptdt}':
return '报表日期';
break;
default:
return '-';
}
}
}
}, {
field: '', // 返回json数据中的name
title: 'sheet名', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '16%',
formatter: function (value, row, index) {
return row.sheet;
//return "<span style='display: block;user-select: none;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;pointer-events:none;' title='" + row.sheet + "'>" + row.sheet + "</span>";
}
}, {
field: '', // 返回json数据中的name
title: '单元格X值', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '9%',
formatter: function (value, row, index) {
return row.posx;
}
}, {
field: '', // 返回json数据中的name
title: '单元格Y值', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '9%',
formatter: function (value, row, index) {
return row.posy;
}
}, {
field: '', // 返回json数据中的name
title: '插入方式', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '8%',
formatter: function (value, row, index) {
return row.writermode;
}
}, {
field: '', // 返回json数据中的name
title: '开始日期', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '8%',
formatter: function (value, row, index) {
return row.rptsdt;
}
}, {
field: '', // 返回json数据中的name
title: '结束日期', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '8%',
formatter: function (value, row, index) {
return row.rptedt;
}
}, {
field: '', // 返回json数据中的name
title: '时间间隔', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '8%',
formatter: function (value, row, index) {
return row.intv;
}
}, {
field: '', // 返回json数据中的name
title: '开始时间', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '8%',
formatter: function (value, row, index) {
return row.starthour;
}
}, {
field: '', // 返回json数据中的name
title: '结束时间', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '8%',
formatter: function (value, row, index) {
return row.endhour;
}
}, {
field: '', // 返回json数据中的name
title: '是否启用', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '8%',
formatter: function (value, row, index) {
return row.active;
}
}, {
title: "操作",
align: 'center',
valign: 'middle',
width: '10%',
formatter: function (value, row, index) {
return '<div class="btn-group">' +
'<button class="btn btn-default btn-sm" onclick="doSpEdit(\'' + row.id + '\',\'' + row.type + '\')"><i class="fa fa-edit"></i></button>' +
// '<button class="btn btn-default btn-sm" onclick="doSpDelete(\'' + row.id + '\')"><i class="fa fa-trash-o"></i></button>' +
'<button class="btn btn-default btn-sm" onclick="doMpList(\'' + row.id + '\')"><i class="fa fa-list"></i></button>' +
'</div>';
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("tableSp");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
},
//当拖拽结束后,整个表格的数据
/*onReorderRow: function (newData) {
//这里的newData是整个表格数据数组形式
$.post(ext.contextPath + '/report/rptSpSet/dosort.do', {jsondata: JSON.stringify(newData)},//将整张表数据 不能分页
function (data) {
if (data == 1) {
//$("#table").bootstrapTable('refresh');
} else {
showAlert('d', '数据错误', 'mainAlertdiv');
}
});
}*/
})
} else {
$('#tableSp').bootstrapTable('destroy');
$("#tableSp").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/report/rptSpSet/getList.do', // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false
pageList: [10, 20, 50], // 设置页面可以显示的数据条数
pageSize: 50, // 页面数据条数
pageNumber: 1, // 首页页码
sidePagination: 'server', // 设置为服务器端分页
queryParams: function (params) { // 请求服务器数据时发送的参数可以在这里添加额外的查询参数返回false则终止请求
return {
rows: params.limit, // 每页要显示的数据条数
page: params.offset / params.limit + 1, // 每页显示数据的开始页码
sort: params.sort, // 要排序的字段
order: params.order,
id: '${rptInfoSet.id}',
sheet: $('#sheet_select').val(),
type: type
}
},
sortName: 'id', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
field: '',
title: '拖动', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '50px',
formatter: function (value, row, index) {
//pointer-events:none; 为标签失去鼠标事件
return '<i class="fa fa-bars" style="color:#C0C0C0;pointer-events:none;" ></i>';
}
},
{
checkbox: true, // 显示一个勾选框
width: '40px'
},
{
field: '', // 返回json数据中的name
title: '类型', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '20%',
formatter: function (value, row, index) {
switch (row.spname) {
case '${RptSpSet_Type_Insuser}':
return '记录人';
break;
case '${RptSpSet_Type_Checkuser}':
return '审核人';
break;
case '${RptSpSet_Type_Rptdt}':
return '报表日期';
break;
case '${RptSpSet_Type_Confirm}':
return '接班人员';
break;
case '${RptSpSet_Type_BanZhang}':
return '值班班长';
break;
case '${RptSpSet_Type_ZuYuan}':
return '值班组员';
break;
default:
return '-';
}
}
}, {
field: '', // 返回json数据中的name
title: 'sheet名', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '19%',
formatter: function (value, row, index) {
return row.sheet;
}
}, {
field: '', // 返回json数据中的name
title: '单元格X值', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '10%',
formatter: function (value, row, index) {
return row.posx;
}
}, {
field: '', // 返回json数据中的name
title: '单元格Y值', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '10%',
formatter: function (value, row, index) {
return row.posy;
}
}, {
field: 'groupType.name', // 返回json数据中的name
title: '班组类型', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '10%'
}, {
field: 'groupTime.name', // 返回json数据中的name
title: '班次类型', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '10%'
}, {
field: 'intv', // 返回json数据中的name
title: '时间跨度', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle', // 上下居中
width: '10%',
formatter: function (value, row, index) {
if (row.intv == '-1') {
return '前一天';
}
if (row.intv == '0') {
return '当天';
}
if (row.intv == '1') {
return '后一天';
}
}
}, {
title: "操作",
align: 'center',
valign: 'middle',
width: '10%',
formatter: function (value, row, index) {
return '<div class="btn-group">' +
'<button class="btn btn-default btn-sm" onclick="doSpEdit(\'' + row.id + '\',\'' + row.type + '\')"><i class="fa fa-edit"></i></button>' +
'</div>';
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("tableSp");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
},
//当拖拽结束后,整个表格的数据
onReorderRow: function (newData) {
//这里的newData是整个表格数据数组形式
$.post(ext.contextPath + '/report/rptSpSet/dosort.do', {jsondata: JSON.stringify(newData)},//将整张表数据 不能分页
function (data) {
if (data == 1) {
//$("#table").bootstrapTable('refresh');
} else {
showAlert('d', '数据错误', 'mainAlertdiv');
}
});
}
})
}
}
var userOrJob = function (value, id1, id2) {
if (value == 0) {
$("#" + id2).val('');
} else if (value == 1) {
$("#" + id1).val('');
} else {
$("#" + id1).val('');
$("#" + id2).val('');
}
}
var selectChange = function (value, id1, id2) {
if (value == 0) {
$("#" + id1).show();
$("#" + id2).hide();
} else if (value == 1) {
$("#" + id1).hide();
$("#" + id2).show();
} else {
$("#" + id1).hide();
$("#" + id2).hide();
}
}
var showJob4SelectsFun = function (hiddenId, textId) {
var jobIds = $("#" + hiddenId).val();
$.post(ext.contextPath + '/user/jobForSelectByStructure.do', {
formId: "subForm",
hiddenId: hiddenId,
textId: textId,
jobIds: jobIds,
companyId: unitId
}, function (data) {
$("#user4SelectDiv").html(data);
openModal("job4SelectModal");
});
};
//后台解析报表渲染到前端
function onlineExcel4minio(id, layerType) {
window.parent.window.onlineExcel4minio(id, layerType);
}
$(function () {
//预加载数据配置
doChoiceData();
//报表模板列表
$("#fileTable").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/base/getInputFileList_minio2.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: '${rptInfoSet.id}',
tbName: tbName,
bucketName: bucketName
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
field: 'filename', // 返回json数据中的name
title: '文件名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '30%'
},
{
field: 'user.caption', // 返回json数据中的name
title: '上传人', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '20%'
},
{
field: 'insdt', // 返回json数据中的name
title: '上传时间', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '20%',
formatter: function (value, row, index) {
if (row.insdt != null && row.insdt != '') {
return row.insdt.substring(0, 19);
}
}
},
{
field: 'insdt', // 返回json数据中的name
title: '文件大小', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '20%',
formatter: function (value, row, index) {
if (row.size != null && row.size != '') {
return row.size / 1000 + 'kb';
}
}
},
{
title: "操作",
align: 'center',
valign: 'middle',
width: '10%',
formatter: function (value, row, index) {
var buts = '';
buts += '<button class="btn btn-default btn-sm" title="预览" onclick="onlineExcel4minio(\'' + row.id + '\',\'view\')"><i class="fa fa-eye"></i><span class="hidden-md hidden-lg">预览</span></button>';
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 += '<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 = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("fileTable");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
})
//报表模板列表
$("#sheetTable").bootstrapTable({ // 对应table标签的id
url: ext.contextPath + '/report/rptInfoSet/getSheetHide.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, // 排序规则
id: '${rptInfoSet.id}',
}
},
sortName: 'insdt', // 要排序的字段
sortOrder: 'desc', // 排序规则
columns: [
{
field: 'sheetName', // 返回json数据中的name
title: 'sheet名称', // 表格表头显示文字
align: 'center', // 左右居中
valign: 'middle',
width: '90%'
},
{
title: "操作",
align: 'center',
valign: 'middle',
width: '10%',
formatter: function (value, row, index) {
var buts = '';
buts += '<button class="btn btn-default btn-sm" title="删除" onclick="deleteSheet(\'' + row.id + '\')"><i class="fa fa fa-trash-o"></i><span class="hidden-md hidden-lg">删除</span></button>';
buts = '<div class="btn-group" >' + buts + '</div>';
return buts;
}
}
],
onLoadSuccess: function () { //加载成功时执行
adjustBootstrapTableView("sheetTable");
},
onLoadError: function () { //加载失败时执行
console.info("加载数据失败");
}
})
$('#rpttype').select2({minimumResultsForSearch: 10}).val('${rptInfoSet.rpttype}').trigger('change');
$('#checkst').select2({minimumResultsForSearch: 10}).val('${rptInfoSet.checkst}').trigger('change');
$('#createauto').select2({minimumResultsForSearch: 10}).val('${rptInfoSet.createauto}').trigger('change');
//不审核则不显示 “可审核报表用户” 框
var checkst = $('#checkst').val();
if (checkst == '是') {
$('#checkDivId').show();
}
if (checkst == '否') {
$('#checkDivId').hide();
}
selectChange('${rptInfoSet.generateJurisdiction}', 'generate', 'generate_position');
selectChange('${rptInfoSet.browseJurisdiction}', 'browse', 'browse_position');
$.post(ext.contextPath + "/report/rptInfoSet/getRoleType4Select.do", {}, function (data) {
var select = $("#generateJurisdiction").select2({
data: data,
placeholder: '请选择',//默认文字提示
allowClear: false,//允许清空
escapeMarkup: function (markup) {
return markup;
}, // 自定义格式化防止xss注入
language: "zh-CN",
minimumInputLength: 0,
minimumResultsForSearch: 10,//数据大于10个启用搜索框
formatResult: function formatRepo(repo) {
return repo.text;
}, // 函数用来渲染结果
formatSelection: function formatRepoSelection(repo) {
return repo.text;
} // 函数用于呈现当前的选择
});
$(".select2-selection--single").css({'height': '30px', 'paddingTop': '4px'})
select.val('${rptInfoSet.generateJurisdiction}').trigger("change");
select.on("change", function (e) {
selectChange($("#generateJurisdiction").val(), 'generate', 'generate_position');
});
var select_browse = $("#browseJurisdiction").select2({
data: data,
placeholder: '请选择',//默认文字提示
allowClear: false,//允许清空
escapeMarkup: function (markup) {
return markup;
}, // 自定义格式化防止xss注入
language: "zh-CN",
minimumInputLength: 0,
minimumResultsForSearch: 10,//数据大于10个启用搜索框
formatResult: function formatRepo(repo) {
return repo.text;
}, // 函数用来渲染结果
formatSelection: function formatRepoSelection(repo) {
return repo.text;
} // 函数用于呈现当前的选择
});
$(".select2-selection--single").css({'height': '30px', 'paddingTop': '4px'})
select_browse.val('${rptInfoSet.browseJurisdiction}').trigger("change");
select_browse.on("change", function (e) {
selectChange($("#browseJurisdiction").val(), 'browse', 'browse_position');
});
}, 'json');
});
//是否审核 不审核则不显示 “可审核报表用户” 框
$('#checkst').on('change', function () {
var val = $(this).val();
if (val == '是') {
$('#checkDivId').show();
}
if (val == '否') {
$('#checkDivId').hide();
}
});
//新增sp--数据
var doSpAdd = function (pid, rpttype, unitId) {
$.post(ext.contextPath + '/report/rptSpSet/doadd.do', {
pid: pid,
rpttype: rpttype,
unitId: unitId
}, function (data) {
$("#subDivSp").html(data);
openModal('subModalSp');
});
}
//新增sp--其他 如 记录人、确认人、日期等
var doSpAddOther = function (pid, rpttype, unitId) {
$.post(ext.contextPath + '/report/rptSpSet/doaddOther.do', {
pid: pid,
rpttype: rpttype,
unitId: unitId
}, function (data) {
$("#subDivSp").html(data);
openModal('subModalSp');
});
}
//修改sp
var doSpEdit = function (id, type) {
if (type == '${RptSpSet_Type_Cal}') {
$.post(ext.contextPath + '/report/rptSpSet/doedit.do', {id: id}, function (data) {
$("#subDivSp").html(data);
openModal('subModalSp');
});
} else {
$.post(ext.contextPath + '/report/rptSpSet/doeditOther.do', {id: id}, function (data) {
$("#subDivSp").html(data);
openModal('subModalSp');
});
}
}
//配置测量点列表
var doMpList = function (id) {
$.post(ext.contextPath + '/report/rptMpSet/showList.do', {spId: id}, function (data) {
$("#subDivMpList").html(data);
openModal('subModalMpList');
});
}
//删除sp--多删
var doSpDeletes = function () {
var checkedItems = $("#tableSp").bootstrapTable('getSelections');
var datas = "";
$.each(checkedItems, function (index, item) {
datas += item.id + ",";
});
if (datas == "") {
showAlert('d', '请先选择记录', 'mainAlertdiv2');
} else {
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 + '/report/rptSpSet/dodeletes.do', {ids: datas}, function (data) {
var datastr = eval('(' + data + ')');
if (datastr.code == 1) {
$("#tableSp").bootstrapTable('refresh');
} else {
showAlert('d', '删除失败', 'mainAlertdiv2');
}
});
}
});
}
};
//收起修改div
function doclose4edit() {
$('#editDiv').css('display', 'none');
$('#close4edit').css('display', 'none');
$('#open4edit').css('display', 'block');
}
//展开修改div
function doopen4edit() {
$('#editDiv').css('display', 'block');
$('#close4edit').css('display', 'block');
$('#open4edit').css('display', 'none');
}
//收起模板div
function doclose4template() {
$('#templateDiv').css('display', 'none');
$('#close4template').css('display', 'none');
$('#open4template').css('display', 'block');
}
//展开模板div
function doopen4template() {
$('#templateDiv').css('display', 'block');
$('#close4template').css('display', 'block');
$('#open4template').css('display', 'none');
}
//选择数据配置
function doChoiceData() {
document.getElementById('button1').className = 'btn btn-primary btn-sm';
document.getElementById('button2').className = 'btn btn-default btn-sm';
$('#button14add').css('display', 'block');
$('#button24add').css('display', 'none');
loadtable('${RptSpSet_Type_Cal}');
}
//选择其他配置
function doChoiceOther() {
document.getElementById('button1').className = 'btn btn-default btn-sm';
document.getElementById('button2').className = 'btn btn-primary btn-sm';
$('#button14add').css('display', 'none');
$('#button24add').css('display', 'block');
loadtable('other');
}
//新增
var dosheet_add = function () {
$.post(ext.contextPath + '/report/rptInfoSet/showSheetAll.do', {
id: '${rptInfoSet.id}'
}, function (data) {
$("#subDivSheet").html(data);
openModal('subModalSheet');
});
}
var deleteSheet = function (id) {
$.post(ext.contextPath + '/report/rptInfoSet/deleteSheet.do', {
id: id
}, function (data) {
$("#sheetTable").bootstrapTable('refresh');
});
}
</script>
<%--修改 div--%>
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">修改</h3>
<div class="box-tools pull-right" id="close4edit">
<a onclick="dosave()" class="btn btn-box-tool" data-toggle="tooltip" title="保存"><i
class="glyphicon glyphicon-floppy-disk"></i></a>
<a onclick="dodel()" class="btn btn-box-tool" data-toggle="tooltip" title="删除"><i
class="glyphicon glyphicon-trash"></i></a>
<a onclick="doclose4edit()" class="btn btn-box-tool" data-toggle="tooltip" title="收起"><i
class="glyphicon glyphicon-chevron-up"></i></a>
</div>
<div class="box-tools pull-right" id="open4edit" style="display:none;">
<a onclick="doopen4edit()" class="btn btn-box-tool" data-toggle="tooltip" title="展开"><i
class="glyphicon glyphicon-chevron-down"></i></a>
</div>
</div>
<div class="box-body" id="editDiv">
<form class="form-horizontal " id="subForm">
<input id="id" name="id" type="hidden" value="${rptInfoSet.id}"/>
<input id="unitId" name="unitId" type="hidden" value="${rptInfoSet.unitId}"/>
<input type="hidden" id="type" name="type" value="${TYPE_SETTING}">
<div id="alertDiv"></div>
<div id="menu4SelectDiv"></div>
<div class="form-group">
<label class="col-sm-2 control-label">报表名称</label>
<div class="col-sm-4">
<input type="text" class="form-control" id="name" name="name" placeholder="报表名称"
value="${rptInfoSet.name }">
</div>
<label class="col-sm-2 control-label">上级菜单</label>
<div class="col-sm-4">
<input type="text" class="form-control" id="pname" name="pname" placeholder="上级菜单"
onclick="showTree4SelectFun()" value="${pname}" readonly>
<input id="pid" name="pid" type="hidden" value="${rptInfoSet.pid}"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">类别</label>
<div class="col-sm-4">
<select id="rpttype" name="rpttype" class="form-control select2">
<option value="${RptType_Day}" selected>日报</option>
<%-- <option value="${RptType_Week}">周报</option>--%>
<%-- <option value="${RptType_Tenday}">旬报</option>--%>
<option value="${RptType_Month}">月报</option>
<option value="${RptType_Quarterly}">季报</option>
<option value="${RptType_HalfYear}">半年报</option>
<option value="${RptType_Year}">年报</option>
</select>
</div>
<label class="col-sm-2 control-label">顺序</label>
<div class="col-sm-4">
<input type="text" class="form-control" id="morder" name="morder" placeholder="顺序"
value="${rptInfoSet.morder}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">审核</label>
<div class="col-sm-4">
<select id="checkst" name="checkst" class="form-control select2">
<option value="是">是</option>
<option value="否" selected>否</option>
</select>
</div>
<label class="col-sm-2 control-label">自动生成</label>
<div class="col-sm-4">
<select id="createauto" name="createauto" class="form-control select2">
<option value="是" selected>是</option>
<option value="否">否</option>
</select>
</div>
</div>
<div class="form-group" id="checkDivId">
<label class="col-sm-2 control-label">可审核报表用户</label>
<div class="col-sm-10">
<textarea class="form-control" rows="2" id="auditMan1" name="auditMan1" placeholder="点击选择" readonly
onclick="showUser4SelectsFun1();">${rptInfoSet.checkuserName}</textarea>
<input id="checkuser" name="checkuser" type="hidden" value="${rptInfoSet.checkuser}"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">生成权限</label>
<div class="col-sm-4">
<select id="generateJurisdiction" name="generateJurisdiction" class="form-control select2"></select>
</div>
<label class="col-sm-2 control-label">浏览权限</label>
<div class="col-sm-4">
<select id="browseJurisdiction" name="browseJurisdiction" class="form-control select2"></select>
</div>
</div>
<div class="form-group" id="generate">
<label class="col-sm-2 control-label">可生成报表用户</label>
<div class="col-sm-10">
<textarea class="form-control" rows="2" id="auditMan2" name="auditMan2" placeholder="点击选择" readonly
onclick="showUser4SelectsFun2();">${rptInfoSet.createuserName}</textarea>
<input id="createusers" name="createusers" type="hidden" value="${rptInfoSet.createusers}"/>
</div>
</div>
<div class="form-group" id="generate_position">
<label class="col-sm-2 control-label">可生成报表岗位</label>
<div class="col-sm-10">
<textarea class="form-control" rows="2" id="generatePositionName" name="generatePositionName"
placeholder="点击选择" readonly
onclick="showJob4SelectsFun('generatePosition','generatePositionName');">${rptInfoSet.generatePositionName}</textarea>
<input id="generatePosition" name="generatePosition" type="hidden"
value="${rptInfoSet.generatePosition}"/>
</div>
</div>
<div class="form-group" id="browse">
<label class="col-sm-2 control-label">可浏览报表用户</label>
<div class="col-sm-10">
<textarea class="form-control" rows="2" id="auditMan3" name="auditMan3" placeholder="点击选择" readonly
onclick="showUser4SelectsFun3();">${rptInfoSet.browseuserName}</textarea>
<input id="browseusers" name="browseusers" type="hidden" value="${rptInfoSet.browseusers}"/>
</div>
</div>
<div class="form-group" id="browse_position">
<label class="col-sm-2 control-label">可浏览报表岗位</label>
<div class="col-sm-10">
<textarea class="form-control" rows="2" id="browsePositionName" name="browsePositionName"
placeholder="点击选择"
readonly
onclick="showJob4SelectsFun('browsePosition','browsePositionName');">${rptInfoSet.browsePositionName}</textarea>
<input id="browsePosition" name="browsePosition" type="hidden"
value="${rptInfoSet.browsePosition}"/>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">备注</label>
<div class="col-sm-10">
<textarea class="form-control" rows="2" id="memo" name="memo"
placeholder="请输入">${rptInfoSet.memo}</textarea>
</div>
</div>
</form>
</div>
</div>
<%--报表模板列表 div--%>
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">报表模板列表</h3>
<div class="box-tools pull-right" id="close4template">
<a onclick="doclose4template()" class="btn btn-box-tool" data-toggle="tooltip" title="收起"><i
class="glyphicon glyphicon-chevron-up"></i></a>
</div>
<div class="box-tools pull-right" id="open4template" style="display:none;">
<a onclick="doopen4template()" class="btn btn-box-tool" data-toggle="tooltip" title="展开"><i
class="glyphicon glyphicon-chevron-down"></i></a>
</div>
</div>
<div class="box-body" id="templateDiv">
<div>
<div class="btn-group" style="width: 220px;padding-bottom:10px;">
<button type="button" class="btn btn-default" onclick="fileinput();"><i class="fa fa-upload"></i>
上传模板
</button>
</div>
<table id="fileTable"></table>
</div>
</div>
</div>
<%--隐藏Sheet列表 div--%>
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">隐藏Sheet列表</h3>
<div class="box-tools pull-right">
<a onclick="dosheet_add()" class="btn btn-box-tool" data-toggle="tooltip" title="选择sheet"><i
class="fa fa-plus"></i></a>
</div>
</div>
<div class="box-body">
<div>
<table id="sheetTable"></table>
</div>
</div>
</div>
<%--报表配置列表 div--%>
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">报表配置列表</h3>
</div>
<div class="box-body">
<div>
<div id="alertDiv_power"></div>
<div class="btn-group" style="width: 220px;">
<button type="button" id="button1" class="btn btn-primary btn-sm" onclick="doChoiceData();"><i
class="fa fa-cog"></i>
数据配置
</button>
<button type="button" id="button2" class="btn btn-default btn-sm" onclick="doChoiceOther();"><i
class="fa fa-cog"></i>
其他配置
</button>
</div>
<div class="box-tools pull-right form-inline">
<div class="form-group">
<label class="form-label">sheet名称筛选:</label>
<select class="form-control select2 " id="sheet_select" name="sheet_select"
style="width: 160px;">
<option value="" selected>全部</option>
</select>
</div>
<div class="box-tools pull-right" id="button14add" style="padding-left: 3px">
<button type="button" class="btn btn-default btn-sm"
onclick="doSpAdd('${rptInfoSet.id}','${rptInfoSet.rpttype}','${rptInfoSet.unitId}');"><i
class="fa fa-plus"></i>
新增
</button>
<button type="button" class="btn btn-default btn-sm" onclick="doSpDeletes();"><i
class="fa fa-trash-o"></i> 删除
</button>
</div>
<div class="box-tools pull-right" id="button24add">
<button type="button" class="btn btn-default btn-sm"
onclick="doSpAddOther('${rptInfoSet.id}','${rptInfoSet.rpttype}','${rptInfoSet.unitId}');">
<i
class="fa fa-plus"></i>
新增
</button>
<button type="button" class="btn btn-default btn-sm" onclick="doSpDeletes();"><i
class="fa fa-trash-o"></i> 删除
</button>
</div>
</div>
<div id="powerDiv"></div>
<div id="menu4SelectDiv_func"></div>
<br/>
<%-- <table id="tableSp" style="table-layout:fixed;" data-use-row-attr-func="true" data-reorderable-rows="true">--%>
<table id="tableSp" style="table-layout:fixed;">
</table>
</div>
</div>
</div>