queue.vue 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <template>
  2. <view v-show="show">
  3. <operate-list :list="list" />
  4. </view>
  5. </template>
  6. <script>
  7. let paging = {}
  8. import operateList from "./operateList";
  9. export default {
  10. components: { operateList },
  11. name: "queue",
  12. props: {
  13. w_deviceid: String
  14. },
  15. data() {
  16. return {
  17. show: false,
  18. uninitialized: true,
  19. list: [],
  20. "where": {
  21. "begindate": "",
  22. "enddate": ""
  23. }
  24. }
  25. },
  26. methods: {
  27. getList(init = false) {
  28. if (init) paging = {
  29. pageNumber: 1,
  30. pageTotal: 1,
  31. };
  32. return new Promise((resolve) => {
  33. if (paging.pageNumber > paging.pageTotal) return resolve()
  34. this.$Http.basic({
  35. "id": 20230701132202,
  36. "content": {
  37. "type": 2,
  38. "w_deviceid": this.w_deviceid,
  39. ...paging,
  40. "where": this.where
  41. }
  42. }).then(res => {
  43. console.log('操作队列', res)
  44. resolve(!this.cutoff(res.msg));
  45. if (this.cutoff(res.msg)) return;
  46. paging.pageNumber = res.pageNumber + 1;
  47. paging.pageTotal = res.pageTotal;
  48. this.list = res.pageNumber == 1 ? res.data : this.list.concat(res.data)
  49. })
  50. })
  51. }
  52. },
  53. }
  54. </script>
  55. <style lang="scss" scoped>
  56. .search {
  57. position: sticky;
  58. top: 34px;
  59. z-index: 998;
  60. }
  61. </style>