TabFour.vue 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <template>
  2. <n-space>
  3. <n-input
  4. v-model:value="queryData.T_sn"
  5. type="text"
  6. placeholder="请输入SN搜索"
  7. />
  8. <n-input
  9. v-model:value="queryData.T_id"
  10. type="text"
  11. placeholder="请输入设备编号搜索"
  12. />
  13. <n-date-picker
  14. type="datetimerange"
  15. value-format="yyyy-MM-dd HH:mm"
  16. @update:formatted-value="
  17. (value) => {
  18. queryData.Time_start = value[0];
  19. queryData.Time_end = value[1];
  20. }
  21. "
  22. clearable
  23. />
  24. <n-button type="primary" @click="extractTask">搜索</n-button>
  25. </n-space>
  26. <n-data-table
  27. remote
  28. :loading="loading"
  29. :columns="columns"
  30. :data="dataList"
  31. :pagination="pagination"
  32. :bordered="false"
  33. flex-height
  34. class="flex-1"
  35. />
  36. </template>
  37. <script setup>
  38. import { extractTaskData } from '@/api';
  39. const props = defineProps({
  40. task: {
  41. required: true,
  42. default: {},
  43. },
  44. });
  45. // 查询参数
  46. const queryData = reactive({
  47. T_task_id: props.task.T_task_id,
  48. Time_start: null,
  49. Time_end: null,
  50. });
  51. // 列表
  52. const dataList = ref([]);
  53. const loading = ref(false);
  54. // 需要展示的列
  55. const columns = [
  56. {
  57. title: 'ID',
  58. key: 'T_id',
  59. },
  60. {
  61. title: '设备编号',
  62. key: 'T_Class_id',
  63. },
  64. {
  65. title: 'SN',
  66. key: 'T_sn',
  67. },
  68. {
  69. title: '温度℃',
  70. key: 'T_t',
  71. },
  72. ];
  73. // 分页数据源
  74. const pagination = reactive({
  75. page: queryData.page,
  76. pageSize: queryData.page_z,
  77. itemCount: 0,
  78. onChange: (page) => {
  79. pagination.page = page;
  80. queryData.page = page;
  81. },
  82. });
  83. // 获取列表
  84. const extractTask = async () => {
  85. try {
  86. loading.value = true;
  87. const { data: res } = await extractTaskData({
  88. T_task_id: queryData.T_task_id,
  89. Time_start: queryData.Time_start + '',
  90. Time_end: queryData.Time_end + '',
  91. });
  92. dataList.value = res.Data.List || [];
  93. } catch (error) {
  94. console.log(error);
  95. } finally {
  96. loading.value = false;
  97. }
  98. };
  99. extractTask();
  100. </script>
  101. <style scoped></style>