星火管控前端
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

devicePush.vue 4.4KB

před 10 měsíci
před 10 měsíci
před 9 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 9 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
před 10 měsíci
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. <template>
  2. <div class="main_root">
  3. <div class="search_header">
  4. <div class="search_left">
  5. <DatePicker
  6. v-model="searchForm.dataRange"
  7. @on-change="searchList()"
  8. :editable="false"
  9. :transfer="true"
  10. format="yyyy-MM-dd"
  11. type="daterange"
  12. placement="bottom-start"
  13. placeholder="请选择日期段"
  14. style="margin-right: 10px; width: 220px"
  15. ></DatePicker>
  16. <Input
  17. v-model="searchForm.name"
  18. placeholder="请输入登录名、事件"
  19. search
  20. @on-search="searchList()"
  21. style="width: 180px"
  22. />
  23. </div>
  24. </div>
  25. <div class="table_wrap">
  26. <Table :columns="columns" :data="searchForm.list">
  27. <template slot-scope="{ row }" slot="pushTypeSlot">
  28. <!-- 1发送消息 2解除锁定 3锁定 4更新策略 5重启设备 6恢复出厂 -->
  29. <div>{{ pushTypeInfo[row.pushType] }}</div>
  30. </template>
  31. </Table>
  32. </div>
  33. <div class="page_wrap">
  34. <Page
  35. :transfer="true"
  36. :total="searchForm.total"
  37. :current="searchForm.page"
  38. :page-size="searchForm.size"
  39. :page-size-opts="[10, 20, 40, 60]"
  40. @on-change="pageChange"
  41. @on-page-size-change="pageSizeChange"
  42. show-total
  43. show-sizer
  44. ></Page>
  45. </div>
  46. </div>
  47. </template>
  48. <script>
  49. import { dateFormat, pushTypeInfo } from "@/utils";
  50. import { logPush_list } from "@/api/log";
  51. export default {
  52. data() {
  53. return {
  54. pushTypeInfo,
  55. searchForm: {
  56. dataRange: [],
  57. name: "",
  58. page: 1,
  59. size: 10,
  60. list: [],
  61. total: 0
  62. },
  63. columns: [
  64. {
  65. title: "序号",
  66. align: "center",
  67. width: 70,
  68. render: (h, params) => {
  69. return h(
  70. "span",
  71. params.index +
  72. (this.searchForm.page - 1) * this.searchForm.size +
  73. 1
  74. );
  75. }
  76. },
  77. {
  78. title: "登录名",
  79. key: "loginname",
  80. align: "center"
  81. },
  82. {
  83. title: "姓名",
  84. key: "aname",
  85. align: "center"
  86. },
  87. {
  88. title: "事件",
  89. slot: "pushTypeSlot",
  90. align: "center"
  91. },
  92. {
  93. title: "设备号",
  94. key: "sn",
  95. align: "center"
  96. },
  97. {
  98. title: "时间",
  99. key: "createtime",
  100. width: 190,
  101. align: "center"
  102. }
  103. ]
  104. };
  105. },
  106. created() {
  107. this.searchList();
  108. },
  109. computed: {
  110. powerParams() {
  111. return this.$store.getters.powerParams;
  112. }
  113. },
  114. methods: {
  115. // 搜索
  116. searchList() {
  117. this.searchForm.page = 1;
  118. this.getList();
  119. },
  120. // 页码改变
  121. pageChange(page) {
  122. this.searchForm.page = page;
  123. this.getList();
  124. },
  125. // 每页显示数量改变
  126. pageSizeChange(size) {
  127. this.searchForm.size = size;
  128. this.searchForm.page = 1;
  129. this.getList();
  130. },
  131. // 获取列表
  132. getList() {
  133. let _begindate = this.searchForm.dataRange[0];
  134. _begindate = _begindate ? dateFormat(_begindate, "yyyy-MM-dd") : null;
  135. let _enddate = this.searchForm.dataRange[1];
  136. _enddate = _enddate ? dateFormat(_enddate, "yyyy-MM-dd") : null;
  137. let _regionids = this.$store.state.userPower.regionids;
  138. _regionids = [..._regionids];
  139. logPush_list({
  140. rtype: this.powerParams.rtype,
  141. objectid: this.powerParams.objectid,
  142. regionid: _regionids.pop(),
  143. schoolid: this.powerParams.objectid,
  144. page: this.searchForm.page,
  145. size: this.searchForm.size,
  146. begindate: _begindate,
  147. enddate: _enddate,
  148. name: this.searchForm.name
  149. }).then((data) => {
  150. if (data.code === 0) {
  151. this.searchForm.list = data.obj.data;
  152. this.searchForm.total = data.obj.total;
  153. } else {
  154. this.$Message.error(data.msg);
  155. }
  156. });
  157. }
  158. }
  159. };
  160. </script>
  161. <style lang="less" scoped>
  162. .search_header {
  163. display: flex;
  164. justify-content: space-between;
  165. align-items: center;
  166. margin: 16px 16px;
  167. .search_left {
  168. display: flex;
  169. justify-content: flex-start;
  170. align-items: center;
  171. }
  172. }
  173. </style>