From e864cad88cbf8ffd30327e0d83785382f7852128 Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Thu, 20 Nov 2025 11:10:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SettingManage/OperateLog/SysOperateLog.js | 301 +++++++++++------- .../AttendanceAnalyseList.html | 150 +++++---- .../OperateLog/SysOperateLog.html | 111 ++++--- 3 files changed, 335 insertions(+), 227 deletions(-) diff --git a/modules/bmw/src/main/resources/static/js/work/SettingManage/OperateLog/SysOperateLog.js b/modules/bmw/src/main/resources/static/js/work/SettingManage/OperateLog/SysOperateLog.js index 73cddce..52f73c2 100644 --- a/modules/bmw/src/main/resources/static/js/work/SettingManage/OperateLog/SysOperateLog.js +++ b/modules/bmw/src/main/resources/static/js/work/SettingManage/OperateLog/SysOperateLog.js @@ -1,6 +1,6 @@ var pers = checkPermission(); var example; -layui.use(['form','layer','laydate'], function () { +layui.use(["form", "layer", "laydate"], function () { var layer = layui.layer; var form = layui.form; var laydate = layui.laydate; @@ -9,20 +9,21 @@ layui.use(['form','layer','laydate'], function () { example.ajax.reload(); }); - var minListDate = $('#hidMinListDate').val();//最小可选时间,例:1990-02-01 - var maxListDate = $('#hidMaxListDate').val();//最大可选时间,例:2200-12-31 - $('#startTime').val(getNowTime()); - $('#endTime').val(getNowTime()); - var begin = "#startTime", end = "#endTime";//开始时间选择框、结束时间选择框:文本框 + var minListDate = $("#hidMinListDate").val(); //最小可选时间,例:1990-02-01 + var maxListDate = $("#hidMaxListDate").val(); //最大可选时间,例:2200-12-31 + $("#startTime").val(getNowTime()); + $("#endTime").val(getNowTime()); + var begin = "#startTime", + end = "#endTime"; //开始时间选择框、结束时间选择框:文本框 var endChange = function (val, date) { if (date && date.year) begindate.config.max = { year: date.year, - month: date.month - 1,//必须减1才是正确值 + month: date.month - 1, //必须减1才是正确值 date: date.date, hours: date.hours, minutes: date.minutes, - seconds: date.seconds + seconds: date.seconds, }; else { var dateInit = new Date(maxListDate.replace(/-/g, "/")); @@ -32,7 +33,7 @@ layui.use(['form','layer','laydate'], function () { date: dateInit.getDate(), hours: dateInit.getHours(), minutes: dateInit.getMinutes(), - seconds: dateInit.getSeconds() + seconds: dateInit.getSeconds(), }; } }; @@ -44,7 +45,7 @@ layui.use(['form','layer','laydate'], function () { date: date.date, hours: date.hours, minutes: date.minutes, - seconds: date.seconds + seconds: date.seconds, }; else { var dateInit = new Date(minListDate.replace(/-/g, "/")); @@ -54,131 +55,212 @@ layui.use(['form','layer','laydate'], function () { date: dateInit.getDate(), hours: dateInit.getHours(), minutes: dateInit.getMinutes(), - seconds: dateInit.getSeconds() + seconds: dateInit.getSeconds(), }; } }; var enddate = laydate.render({ elem: end, - format: 'yyyy-MM-dd', + format: "yyyy-MM-dd", min: minListDate, max: maxListDate, - done: endChange + done: endChange, }); var begindate = laydate.render({ elem: begin, - format: 'yyyy-MM-dd', + format: "yyyy-MM-dd", min: minListDate, max: maxListDate, - done: beginChange + done: beginChange, }); init(); }); function init() { - example = - $('#dt-table').DataTable({ - "sort": false, - "searching": false, - "processing": true, - "serverSide": true, - "language": { - "url": ctxPath + "/js/plugin/datatables/Chinese.lang" + example = $("#dt-table").DataTable({ + sort: false, + searching: false, + processing: true, + serverSide: true, + language: { + url: ctxPath + "/js/plugin/datatables/Chinese.lang", + }, + ajax: { + url: systemPath + "/operlog/getAllList", + type: "post", + data: function (d) { + d.keyWord = $("#keyWord").val(); + d.module = $("#module").val(); + d.result = $("#result").val(); + d.type = $("#type").val(); + d.startTime = $("#startTime").val(); + d.endTime = $("#endTime").val(); }, - "ajax": { - "url": systemPath + "/operlog/getAllList", - "type": "post", - "data": function (d) { - d.keyWord = $('#keyWord').val(); - d.module = $('#module').val(); - d.result = $('#result').val(); - d.type = $('#type').val(); - d.startTime = $('#startTime').val(); - d.endTime = $('#endTime').val(); - }, - "error": function (xhr, textStatus, errorThrown) { - var msg = xhr.responseText; - console.log(msg); - var response = JSON.parse(msg); - var code = response.code; - var message = response.message; - if (code == 400) { - layer.msg(message); - } else if (code == 401) { - localStorage.removeItem("smz-token"); - layer.msg("token过期,请先登录", {shift: -1, time: 1000}, function () { - location.href = ctxPath + '/login.html'; - }); - } else if (code == 403) { - console.log("未授权:" + message); - layer.msg('未授权'); - } else if (code == 500) { - console.log('系统错误:' + message); - } + error: function (xhr, textStatus, errorThrown) { + var msg = xhr.responseText; + console.log(msg); + var response = JSON.parse(msg); + var code = response.code; + var message = response.message; + if (code == 400) { + layer.msg(message); + } else if (code == 401) { + localStorage.removeItem("smz-token"); + layer.msg( + "token过期,请先登录", + { shift: -1, time: 1000 }, + function () { + location.href = ctxPath + "/login.html"; + } + ); + } else if (code == 403) { + console.log("未授权:" + message); + layer.msg("未授权"); + } else if (code == 500) { + console.log("系统错误:" + message); } }, - "drawCallback": function() { - // alert( '表格重绘了' ); - var thisDataTable = $('#dt-table').DataTable(); - $(".pagination").append("
  • " + + }, + drawCallback: function () { + // alert( '表格重绘了' ); + var thisDataTable = $("#dt-table").DataTable(); + $(".pagination").append( + "
  • " + "" + - "确认
  • "); - //点击按钮跳转指定页数 - $('#dataTable-btn').click(function (e) { + "确认" + ); + //点击按钮跳转指定页数 + $("#dataTable-btn").click(function (e) { + if ($("#changePage").val() && $("#changePage").val() > 0) { + var redirectpage = $("#changePage").val() - 1; + } else { + var redirectpage = 0; + } + thisDataTable.page(redirectpage).draw("page"); + }); + //敲击回车键跳转指定页数 + $("#changePage").keypress(function (e) { + if (event.keyCode == 13) { if ($("#changePage").val() && $("#changePage").val() > 0) { var redirectpage = $("#changePage").val() - 1; } else { var redirectpage = 0; } - thisDataTable.page(redirectpage).draw( 'page' ); - }); - //敲击回车键跳转指定页数 - $("#changePage").keypress(function (e) { - if(event.keyCode==13){ - if ($("#changePage").val() && $("#changePage").val() > 0) { - var redirectpage = $("#changePage").val() - 1; - } else { - var redirectpage = 0; - } - thisDataTable.page(redirectpage).draw( 'page' ); - } - }); - }, - "createdRow": function (row, data, dataIndex) { - var measures = data.registerCapital; - if (measures != null) { - if (measures.length > remarkShowLength) {//只有超长,才有td点击事件 - $(row).children('td').eq(3).attr('onclick', 'javascript:changeShowRemarks(this);'); - $(row).children('td').eq(3).css('cursor', 'pointer'); - } - $(row).children('td').eq(3).attr('content', data.registerCapital); + thisDataTable.page(redirectpage).draw("page"); } - }, - "dom": "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-4 col-xs-4 hidden-xs'i><'col-xs-8 col-sm-8' p v>>", - "columns": [ - {"width":"5%", - data: function (row, type, set, meta) { - var c = meta.settings._iDisplayStart + meta.row + 1; - return c; - } + }); + }, + createdRow: function (row, data, dataIndex) { + var measures = data.registerCapital; + if (measures != null) { + if (measures.length > remarkShowLength) { + //只有超长,才有td点击事件 + $(row) + .children("td") + .eq(3) + .attr("onclick", "javascript:changeShowRemarks(this);"); + $(row).children("td").eq(3).css("cursor", "pointer"); + } + $(row) + .children("td") + .eq(3) + .attr("content", data.registerCapital); + } + }, + dom: "<'dt-toolbar'r>t<'dt-toolbar-footer'<'col-sm-4 col-xs-4 hidden-xs'i><'col-xs-8 col-sm-8' p v>>", + columns: [ + { + width: "5%", + data: function (row, type, set, meta) { + var c = meta.settings._iDisplayStart + meta.row + 1; + return c; }, - {"data": "operName", "defaultContent": "","width":"8%"}, - {"data": "phone", "defaultContent": "","width":"8%"}, - {"data": "type", "defaultContent": "","width":"8%"}, - {"data": "title", "defaultContent": "","width":"10%"}, - {"render": function (data, type, row) { - let jsonResult = row['jsonResult']; - let id = row['id']; - let html = ""; - html = ''; - return html; - }, width: "43%"}, - {"data": "operatoType", "defaultContent": "","width":"8%"}, - {"data": "opersTime", "defaultContent": "","width":"10%"}, - ], - "order": [[0, "desc"], [1, "asc"]] - }); + }, + { data: "operName", defaultContent: "", width: "8%" }, + { data: "phone", defaultContent: "", width: "8%" }, + { data: "type", defaultContent: "", width: "8%" }, + { data: "title", defaultContent: "", width: "10%" }, + { + render: function (data, type, row) { + let jsonResult = row["jsonResult"]; + let id = row["id"]; + let html = ""; + html = + '"; + return html; + }, + width: "43%", + }, + { data: "operatoType", defaultContent: "", width: "8%" }, + { data: "opersTime", defaultContent: "", width: "10%" }, + ], + order: [ + [0, "desc"], + [1, "asc"], + ], + }); +} + +/** + * 导出数据 + */ +function exportBtn() { + var index = layer.msg("数据较多,请稍等。。。", { + icon: 4, + time: 100000, //2秒关闭(如果不配置,默认是3秒) + }); + var token = localStorage.getItem("smz-token"); + var keyWord = $("#keyWord").val(); + var module = $("#module").val(); + var result = $("#result").val(); + var type = $("#type").val(); + var startTime = $("#startTime").val(); + var endTime = $("#endTime").val(); + let param = { + keyWord: keyWord, + module: module, + result: result, + type: type, + startTime: startTime, + endTime: endTime, + }; + let url = + ctxPath + + "/operlog/export?param=" + + encodeURIComponent(JSON.stringify(param)); + let xhr = new XMLHttpRequest(); + xhr.open("get", url, true); + //设置xhr请求的超时时间 + xhr.timeout = 100000; + //设置响应返回的数据格式 + xhr.responseType = "blob"; // 转换流 + xhr.setRequestHeader("Authorization", token); + //构造表单数据 + xhr.onload = function () { + if (this.status === 200) { + let blob = this.response; + var a = document.createElement("a"); + var url = window.URL.createObjectURL(blob); + a.href = url; + layer.close(index); + a.download = "操作日志" + startTime + "-" + endTime + ".xlsx"; // 文件名 + } else if (this.status === 401) { + localStorage.removeItem("smz-token"); + layer.msg( + "用户登录过期,请重新登录", + { icon: 5, time: 2000 }, + function () { + location.href = ctxPath + "/login.html"; + } + ); + } + a.click(); + window.URL.revokeObjectURL(url); + }; + xhr.send(); } /** @@ -188,7 +270,10 @@ function init() { function getNowTime() { var time = new Date(); var year = time.getFullYear(); - var month = time.getMonth() + 1 >= 10 ? time.getMonth() + 1 : '0' + (time.getMonth() + 1); - var day = time.getDate() >= 10 ? time.getDate() : '0' + time.getDate(); + var month = + time.getMonth() + 1 >= 10 + ? time.getMonth() + 1 + : "0" + (time.getMonth() + 1); + var day = time.getDate() >= 10 ? time.getDate() : "0" + time.getDate(); return year + "-" + month + "-" + day; } diff --git a/modules/bmw/src/main/resources/static/pages/work/Person/AttendanceManage/AttendanceAnalyseList.html b/modules/bmw/src/main/resources/static/pages/work/Person/AttendanceManage/AttendanceAnalyseList.html index bdd707f..1f5e528 100644 --- a/modules/bmw/src/main/resources/static/pages/work/Person/AttendanceManage/AttendanceAnalyseList.html +++ b/modules/bmw/src/main/resources/static/pages/work/Person/AttendanceManage/AttendanceAnalyseList.html @@ -1,5 +1,6 @@ + 施工人员考勤打卡 @@ -7,76 +8,92 @@ - -
    -
    -
    -
    - - - - -
    -
    -
    -
    - - - - - - - ~ - - -   - - - -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - - - - - - - - - - - - - -
    序号姓名身份证号工种公司工程名称工程状态分包商班组考勤天数缺勤天数操作
    + +
    +
    +
    +
    + + + + +
    +
    +
    +
    + + + + + + + ~ + + +   + + + +
    +
    +
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + +
    序号姓名身份证号工种公司工程名称工程状态分包商班组考勤天数缺勤天数操作
    +
    -
    + @@ -88,6 +105,7 @@ - + \ No newline at end of file diff --git a/modules/bmw/src/main/resources/static/pages/work/SettingManage/OperateLog/SysOperateLog.html b/modules/bmw/src/main/resources/static/pages/work/SettingManage/OperateLog/SysOperateLog.html index a265666..5a71512 100644 --- a/modules/bmw/src/main/resources/static/pages/work/SettingManage/OperateLog/SysOperateLog.html +++ b/modules/bmw/src/main/resources/static/pages/work/SettingManage/OperateLog/SysOperateLog.html @@ -1,5 +1,6 @@ + 系统操作日志 @@ -10,81 +11,85 @@ + -
    -
    -
    -
    -
    -
    -
    -
    - - - - - ~ - +
    +
    +
    +
    + +
    +
    +
    + + + + + ~ + +
    + + + +
    - - - -
    - -
    -
    -
    -
    - - - - - - - - - - - - - - - - - -
    序号用户名手机号操作功能日志返回值资源类型操作时间
    + +
    + +
    +
    + + + + + + + + + + + + + + + + + +
    序号用户名手机号操作功能日志返回值资源类型操作时间
    +
    -
    + @@ -97,4 +102,4 @@ \ No newline at end of file + defer="defer"> \ No newline at end of file