operlog.html 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <!DOCTYPE html>
  2. <html lang="zh" xmlns:th="http://www.thymeleaf.org"
  3. xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
  4. <meta charset="utf-8">
  5. <head th:include="include :: header"></head>
  6. <body class="gray-bg">
  7. <div class="container-div">
  8. <div class="row">
  9. <div class="col-sm-12 select-info">
  10. <form id="operlog-form">
  11. <div class="select-list gd">
  12. <ul>
  13. <li>
  14. <label>系统模块: </label><input type="text" name="title"/>
  15. </li>
  16. <li>
  17. <label>操作人员: </label><input type="text" name="operName"/>
  18. </li>
  19. <li>
  20. <label>操作类型: </label><select name="action" th:with="type=${@dictService.selectDictData('sys_oper_type')}">
  21. <option value="">所有</option>
  22. <option th:each="e : ${type}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option>
  23. </select>
  24. </li>
  25. <li class="time">
  26. <label>操作时间: </label>
  27. <input type="text" class="layui-input" id="startTime" placeholder="开始时间" name="reqParams[beginTime]"/>
  28. <span>-</span>
  29. <input type="text" class="layui-input" id="endTime" placeholder="结束时间" name="reqParams[endTime]"/>
  30. </li>
  31. <li>
  32. <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search($('form').attr('id'))"><i class="fa fa-search"></i>&nbsp;搜索</a>
  33. <a class="btn btn-success btn-rounded btn-sm" onclick="$.table.exportExcel($('form').attr('id'))"><i class="fa fa-download"></i>&nbsp;下载</a>
  34. </li>
  35. </ul>
  36. </div>
  37. </form>
  38. </div>
  39. <div class="btn-group hidden-xs" id="toolbar" role="group">
  40. <a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()" shiro:hasPermission="monitor:logininfor:remove">
  41. <i class="fa fa-trash-o"></i> 删除
  42. </a>
  43. </div>
  44. <div class="col-sm-12 select-info order-table">
  45. <table id="bootstrap-table" data-mobile-responsive="true"></table>
  46. </div>
  47. </div>
  48. </div>
  49. <div th:include="include :: footer"></div>
  50. <script th:inline="javascript">
  51. var detailFlag = [[${@permissionService.hasPermi('monitor:operlog:detail')}]];
  52. var prefix = ctx + "monitor/operlog"
  53. $(function() {
  54. var options = {
  55. url: prefix + "/list",
  56. removeUrl: prefix + "/remove",
  57. exportUrl: prefix + "/export",
  58. sortName: "operTime",
  59. sortOrder: "desc",
  60. search: false,
  61. showExport: false,
  62. columns: [{
  63. checkbox: true
  64. },
  65. {
  66. field: 'operId',
  67. title: '日志编号'
  68. },
  69. {
  70. field: 'title',
  71. title: '系统模块'
  72. },
  73. {
  74. field: 'action',
  75. title: '操作类型',
  76. align: 'center',
  77. formatter: function(value, row, index) {
  78. if (value == 1) {
  79. return '<span class="badge badge-primary">新增</span>';
  80. } else if (value == 2) {
  81. return '<span class="badge badge-primary">修改</span>';
  82. } else if (value == 3) {
  83. return '<span class="badge badge-warning">保存</span>';
  84. } else if (value == 4) {
  85. return '<span class="badge badge-danger">删除</span>';
  86. } else if (value == 5) {
  87. return '<span class="badge badge-primary">授权</span>';
  88. } else if (value == 6) {
  89. return '<span class="badge badge-warning">导出</span>';
  90. } else if (value == 7) {
  91. return '<span class="badge badge-warning">导入</span>';
  92. } else if (value == 8) {
  93. return '<span class="badge badge-danger">强退</span>';
  94. } else if (value == 9) {
  95. return '<span class="badge badge-danger">禁止访问</span>';
  96. } else if (value == 10) {
  97. return '<span class="badge badge-warning">生成代码</span>';
  98. }
  99. }
  100. },
  101. {
  102. field: 'operName',
  103. title: '操作人员'
  104. },
  105. {
  106. field: 'deptName',
  107. title: '部门名称'
  108. },
  109. {
  110. field: 'operIp',
  111. title: '主机'
  112. },
  113. {
  114. field: 'operLocation',
  115. title: '操作地点'
  116. },
  117. {
  118. field: 'status',
  119. title: '操作状态',
  120. align: 'center',
  121. formatter: function(value, row, index) {
  122. if (value == 0) {
  123. return '<span class="badge badge-primary">成功</span>';
  124. } else if (value == 1) {
  125. return '<span class="badge badge-danger">异常</span>';
  126. }
  127. }
  128. },
  129. {
  130. field: 'operTime',
  131. title: '操作时间'
  132. },
  133. {
  134. title: '操作',
  135. align: 'center',
  136. formatter: function(value, row, index) {
  137. var actions = [];
  138. actions.push('<a class="btn btn-warning btn-xs ' + detailFlag + '" href="#" onclick="detail(\'' + row.operId + '\')"><i class="fa fa-search"></i>详细</a>');
  139. return actions.join('');
  140. }
  141. }]
  142. };
  143. $.table.init(options);
  144. });
  145. /*操作日志-详细*/
  146. function detail(id) {
  147. var url = prefix + '/detail/' + id;
  148. $.modal.open("操作日志详细", url);
  149. }
  150. layui.use('laydate', function() {
  151. var laydate = layui.laydate;
  152. laydate.render({ elem: '#startTime', theme: 'molv' });
  153. laydate.render({ elem: '#endTime', theme: 'molv' });
  154. });
  155. </script>
  156. </body>
  157. </html>