123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239 |
- $(function() {
- var defaultPage = 0;
- var defaultSize = 10;
- var currentPage = defaultPage;
- var currentSize = defaultSize;
- var tableFirstLoad = true;
- Date.prototype.Format = function(fmt) {
- var o = {
- "M+": this.getMonth() + 1, //月份
- "d+": this.getDate(), //日
- "h+": this.getHours(), //小时
- "m+": this.getMinutes(), //分
- "s+": this.getSeconds(), //秒
- "q+": Math.floor((this.getMonth() + 3) / 3), //季度
- "S": this.getMilliseconds() //毫秒
- };
- if (/(y+)/.test(fmt))
- fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
- for (var k in o)
- if (new RegExp("(" + k + ")").test(fmt))
- fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
- return fmt;
- };
- function formatDate(t) {
- var now = new Date(t),
- y = now.getFullYear(),
- m = now.getMonth() + 1,
- d = now.getDate();
- return y + "-" + (m < 10 ? "0" + m : m) + "-" + (d < 10 ? "0" + d : d) + " " + now.toTimeString().substr(0, 8);
- }
- layui.config({
- base: './lib/layui_exts/'
- }).use(["table", 'excel', "laypage", "layer"], function() {
- var table = layui.table;
- var laypage = layui.laypage;
- excel = layui.excel;
- function loadLogList(page, size) {
- if (page === null || page === undefined) page = defaultPage;
- if (size === null || size === undefined) size = defaultSize;
- var tableOption = {
- elem: "#logList",
- height: "full-81",
- limit: size,
- cols: [
- [{
- type: "checkbox"
- },
- {
- field: "realName",
- title: "姓名",
- align: "center"
- },
- {
- field: "beginTime",
- title: "开始时间",
- align: "center"
- },
- {
- field: "finishTime",
- title: "结束时间",
- align: "center"
- },
- {
- field: "requestDescription",
- title: "功能",
- align: "center"
- },
- {
- field: "execStatus",
- title: "执行状态",
- align: "center",
- templet: function(d) {
- return d.execStatus == 0 ? "成功" : "失败"
- }
- },
- {
- fixed: "right",
- title: "操作",
- toolbar: "#operationToolbar",
- width: 200,
- align: "center"
- }
- ]
- ]
- };
- var url = "api/log/listpage?page=" + (page + 1) + "&size=" + size;
- fetchJSON(url, {}, "get", function(data) {
- if (data.status === 0) {
- if (tableFirstLoad) {
- tableFirstLoad = false;
- laypage.render({
- curr: page + 1,
- elem: "pagination",
- count: data.data.total,
- layout: ["count", "prev", "page", "next", "limit", "refresh", "skip"],
- jump: function(obj, first) {
- if (first) return;
- currentPage = obj.curr - 1;
- currentSize = obj.limit;
- loadLogList(currentPage, currentSize);
- }
- });
- }
- tableOption.data = data.data.list;
- table.render(tableOption);
- } else {
- showMsg(data.msg, 2, 2000);
- }
- });
- }
- loadLogList();
- $("#searchArticle").on("click", function(e) {
- e.preventDefault();
- tableFirstLoad = true;
- searchTitleKey = title.val().trim();
- if (searchTitleKey === "")
- loadLogList(0, currentSize);
- else
- loadLogList(0, currentSize, searchTitleKey);
- });
- $("#keyword").on("keyup", function(e) {
- e.preventDefault();
- if (e.keyCode === 13) {
- $("#searchArticle").click();
- }
- });
- // 监听表内工具条
- table.on("tool(logList)", function(obj) {
- var data = obj.data;
- // 删除
- var ids = [];
- ids.push(data.id);
- let form = {
- ids: ids
- };
- layer.confirm("确认要删除吗?", function() {
- fetchJSON("api/log/delete", form, "post", function(data) {
- if (data.status === 0) {
- showMsg("已删除!");
- tableFirstLoad = true;
- loadLogList(currentPage, currentSize);
- } else {
- showMsg(data.msg, 2, 2000);
- }
- });
- });
- });
- //表格导出
- function exportFile(id) {
- //根据传入tableID获取表头
- var headers = layui.$("div[lay-id='logList'] .layui-table-box table").get(0);
- var htrs = Array.from(headers.querySelectorAll('tr'));
- var titles = {};
- for (var j = 0; j < htrs.length; j++) {
- var hths = Array.from(htrs[j].querySelectorAll("th"));
- for (var i = 1; i < hths.length - 1; i++) {
- //排除居左、具有、隐藏字段
- //修改:默认字段data-field+i,兼容部分数据表格中不存在data-field值的问题
- titles['data-field' + i] = hths[i].innerText;
- }
- }
- //根据传入tableID获取table内容
- var bodys = layui.$("div[lay-id='logList'] .layui-table-box table").get(1);
- var btrs = Array.from(bodys.querySelectorAll("tr"))
- var bodysArr = new Array();
- for (var j = 0; j < btrs.length; j++) {
- var contents = {};
- var btds = Array.from(btrs[j].querySelectorAll("td"));
- for (var i = 1; i < btds.length - 1; i++) {
- for (var key in titles) {
- //修改:默认字段data-field+i,兼容部分数据表格中不存在data-field值的问题
- var field = 'data-field' + i;
- if (field === key) {
- //根据表头字段获取table内容字段
- contents[field] = btds[i].innerText;
- }
- }
- }
- bodysArr.push(contents)
- }
- //将标题行置顶添加到数组
- bodysArr.unshift(titles);
- //导出excel
- excel.exportExcel({
- sheet1: bodysArr
- }, '日志' + new Date().toLocaleString() + '.xlsx', 'xlsx');
- }
- $("#exportLog").on("click", function(e) {
- exportFile("logList");
- });
- // 批量删除
- $("#batchDelete").on("click", function(e) {
- e.preventDefault();
- var checkedData = table.checkStatus("logList").data;
- if (checkedData.length === 0) {
- showMsg("未选择需要删除的日志", 2, 2000);
- return;
- }
- layer.confirm("确认要删除吗?", function() {
- var ids = [];
- for (var i = 0; i < checkedData.length; i++) {
- ids.push(checkedData[i].id);
- }
- fetchJSON("api/log/delete", {
- ids: ids
- }, "post", function(data) {
- if (data.status === 0) {
- showMsg("已删除!");
- tableFirstLoad = true;
- loadLogList(currentPage, currentSize);
- } else {
- showMsg(data.msg, 2, 2000);
- }
- });
- });
- });
- });
- });
|