loginLogManagement.vue 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. <template>
  2. <div>
  3. <search-layout :needBox="true">
  4. <template slot="searchItem1">
  5. <span class="label">账户名称</span>
  6. <el-input
  7. v-model="searchParams.username"
  8. size="small"
  9. clearable
  10. placeholder="请输入"
  11. maxlength="60"
  12. >
  13. </el-input>
  14. </template>
  15. <template slot="searchItem2">
  16. <span class="label">登录时间</span>
  17. <el-date-picker
  18. v-model="createDate"
  19. type="daterange"
  20. format="yyyy-MM-dd"
  21. value-format="yyyy-MM-dd"
  22. range-separator="至"
  23. start-placeholder="开始日期"
  24. end-placeholder="结束日期"
  25. >
  26. </el-date-picker>
  27. </template>
  28. <template slot="searchBtn1">
  29. <el-button type="primary" @click="doSearch">查询</el-button>
  30. </template>
  31. <template slot="searchBtn2">
  32. <el-button type="primary" @click="doReset">重置</el-button>
  33. </template>
  34. </search-layout>
  35. <tableList
  36. ref="table"
  37. style="margin: 30px"
  38. :columns="columns"
  39. :getDataWay="getDataWay"
  40. :pagination="pagination"
  41. index
  42. >
  43. </tableList>
  44. </div>
  45. </template>
  46. <script>
  47. import searchLayout from "@/components/grid/searchLayout";
  48. import tableList from "@/components/grid/TableList";
  49. export default {
  50. name: "loginLogManagement", // 登录日志
  51. components: { searchLayout, tableList },
  52. data() {
  53. return {
  54. searchParams: {
  55. //搜索参数
  56. username: "", // 操作账户
  57. createTimeBegin: "", // 上传时间起
  58. createTimeEnd: "", // 上传时间止
  59. },
  60. createDate: "",
  61. columns: [
  62. //表格列
  63. {
  64. label: "账户名称",
  65. prop: "username",
  66. },
  67. {
  68. label: "IP",
  69. prop: "ip",
  70. },
  71. {
  72. label: "登录状态",
  73. prop: "state",
  74. formatter: (data)=>{
  75. return data.state == 1 ? "成功" : "失败";
  76. }
  77. },
  78. {
  79. label: "登录时间",
  80. prop: "createTime",
  81. },
  82. ],
  83. pagination: {
  84. //分页使用
  85. currentPage: 1,
  86. pageSize: 10,
  87. position: "right",
  88. pageSizes: [10, 30, 50, 100, 200],
  89. layout: "sizes, total, prev, pager, next, jumper",
  90. },
  91. getDataWay: {
  92. //加载表格数据
  93. dataType: "url",
  94. type: "post",
  95. // firstRequest: false,
  96. data: this.$api.systemManagement.getLoginLogPageList,
  97. param: {},
  98. },
  99. };
  100. },
  101. methods: {
  102. doSearch() {
  103. if (this.createDate) {
  104. this.searchParams.createTimeBegin = `${this.createDate[0]}`;
  105. this.searchParams.createTimeEnd = `${this.createDate[1]}`;
  106. } else {
  107. this.searchParams.createTimeBegin = "";
  108. this.searchParams.createTimeEnd = "";
  109. }
  110. let pageMap = {
  111. username: this.searchParams.username,
  112. createTimeBegin: this.searchParams.createTimeBegin,
  113. createTimeEnd: this.searchParams.createTimeEnd,
  114. };
  115. this.refreshList(pageMap);
  116. },
  117. //刷新table
  118. refreshList(param) {
  119. param
  120. ? this.$refs["table"].loadData(param)
  121. : this.$refs["table"].loadData();
  122. },
  123. doReset() {
  124. this.searchParams = {
  125. username: "",
  126. createTimeBegin: "",
  127. createTimeEnd: "",
  128. };
  129. this.createDate = "";
  130. this.doSearch();
  131. },
  132. },
  133. mounted() {},
  134. };
  135. </script>
  136. <style scoped lang="less">
  137. </style>