瀏覽代碼

feat: update

Hu Cheng 2 年之前
父節點
當前提交
6e12cbe39f

+ 0 - 5
src/views/data/edit/HumidityChart.vue

@@ -1,5 +0,0 @@
-<template></template>
-
-<script setup></script>
-
-<style scoped></style>

+ 0 - 77
src/views/data/edit/TemperatureChart.vue

@@ -1,77 +0,0 @@
-<template>
-  <Chart
-    :style="{ minHeight: `${minHeight}px` }"
-    ref="chart"
-    constructor-type="stockChart"
-    :options="options"
-  ></Chart>
-</template>
-
-<script setup>
-import { Chart } from 'highcharts-vue';
-
-defineProps({
-  minHeight: {
-    type: Number,
-    default: 0,
-  },
-  dataList: {
-    type: Array,
-    default: () => [],
-  },
-});
-
-// 图表配置
-const options = {
-  xAxis: {
-    labels: {
-      format: '{value:%Y-%m-%d %H:%M:%S}',
-    },
-  },
-
-  yAxis: {
-    // labels: {
-    //   format: `{text}℃`,
-    // },
-    plotLines: [],
-  },
-
-  legend: {
-    enabled: true,
-  },
-
-  accessibility: {
-    enabled: false,
-  },
-
-  chart: {
-    zoomType: 'xy',
-  },
-
-  boost: {
-    useGPUTranslations: true,
-    seriesThreshold: 5,
-  },
-
-  title: {
-    text: '车载冷藏箱',
-  },
-
-  subtitle: {
-    align: 'left',
-    text: '车载冷藏箱',
-  },
-
-  tooltip: {
-    valueDecimals: 2,
-  },
-
-  series: [],
-
-  scrollbar: {
-    enabled: false,
-  },
-};
-</script>
-
-<style scoped></style>

+ 2 - 2
src/views/data/edit/TemplateForm.vue

@@ -14,7 +14,7 @@
         >
           <n-date-picker
             v-model:formatted-value="item.T_value"
-            value-format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd HH:mm"
             type="datetime"
             clearable
           />
@@ -28,7 +28,7 @@
         >
           <n-date-picker
             v-model:formatted-value="item.T_value"
-            value-format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd HH:mm"
             type="datetimerange"
             clearable
           />

+ 61 - 83
src/views/data/edit/index.vue

@@ -16,11 +16,10 @@
           <n-scrollbar
             :style="{ maxHeight: `${height - 260}px` }"
             trigger="none"
-            @scroll="onScroll"
           >
             <n-checkbox-group
-              @update:value="onUpdateValues"
               v-model:value="checkValues"
+              @update:value="onUpdateValues"
             >
               <template v-for="item of classList" :key="item.T_id">
                 <n-list-item class="mr-5">
@@ -60,18 +59,15 @@
         <div class="h-full flex flex-col gap-y-3">
           <n-space align="center">
             <n-date-picker
-              v-model:formatted-value="queryData.Time_start"
-              value-format="yyyy-MM-dd HH:mm:ss"
-              type="datetime"
-              clearable
-              placeholder="请选择开始时间"
-            />
-            <n-date-picker
-              v-model:formatted-value="queryData.Time_end"
-              value-format="yyyy-MM-dd HH:mm:ss"
-              type="datetime"
+              value-format="yyyy-MM-dd HH:mm"
+              @update:formatted-value="
+                (value) => {
+                  queryData.Time_start = value[0];
+                  queryData.Time_end = value[1];
+                }
+              "
+              type="datetimerange"
               clearable
-              placeholder="请选择结束时间"
             />
             <n-button type="primary" @click="getDataList">搜索</n-button>
             <ExportVue :task="task" :class-list="classList" />
@@ -172,9 +168,6 @@ const task = window.sessionStorage.getItem('task')
 const chart1 = ref(null);
 const chart2 = ref(null);
 
-// const chartData1 = ref([]);
-// const chartData2 = ref([]);
-
 // Modal 数据源
 const modal = reactive({
   showModal: false,
@@ -186,8 +179,8 @@ const queryData = reactive({
   T_task_id: task.T_task_id,
   T_sn: '',
   T_id: '',
-  Time_start: null,
-  Time_end: null,
+  Time_start: '',
+  Time_end: '',
   page: 1,
   page_z: 1000,
 });
@@ -208,7 +201,7 @@ const dataList = ref([]);
 const dataInfo = ref({});
 
 // 选项组受控模式下的值
-const checkValues = ref([]);
+const checkValues = ref(null);
 
 // tab
 const tabChart = ref('温度');
@@ -222,16 +215,6 @@ const handleTabChange = (value) => {
 };
 
 //
-const onScroll = (e) => {
-  const clientHeight = e.target.clientHeight;
-  const scrollTop = e.target.scrollTop;
-  const scrollHeight = e.target.scrollHeight;
-  console.log(clientHeight);
-  console.log(scrollTop);
-  console.log(scrollHeight);
-};
-
-//
 const handleSet = (data) => {
   chart1.value.chart.yAxis[0].addPlotLine({
     color: 'red',
@@ -268,19 +251,17 @@ const handleSet = (data) => {
 };
 
 // 全选
-const handleCheckAll = () => {
-  if (checkValueAll.value) {
+const handleCheckAll = (checked) => {
+  checkValues.value = [];
+  if (checked) {
     checkValues.value = classList.value.map((item) => item.T_id);
     checkValues.value.forEach(async (item) => {
       queryData.T_id = item;
       await getDataList();
-      const data1 = dataList.value
-        .map((item) => [new Date(item.T_time).getTime(), item.T_t])
-        .sort((a, b) => a[0] - b[0]);
-      const data2 = dataList.value
-        .map((item) => [new Date(item.T_time).getTime(), item.T_rh])
-        .sort((a, b) => a[0] - b[0]);
       if (tabChart.value === '温度') {
+        const data1 = dataList.value
+          .map((item) => [new Date(item.T_time).getTime(), item.T_t])
+          .sort((a, b) => a[0] - b[0]);
         chart1.value.chart.addSeries({
           id: item,
           name: item,
@@ -299,6 +280,9 @@ const handleCheckAll = () => {
           },
         });
       } else {
+        const data2 = dataList.value
+          .map((item) => [new Date(item.T_time).getTime(), item.T_rh])
+          .sort((a, b) => a[0] - b[0]);
         chart2.value.chart.addSeries({
           id: item,
           name: item,
@@ -319,17 +303,15 @@ const handleCheckAll = () => {
       }
     });
   } else {
-    const arr = checkValues.value;
     if (tabChart.value === '温度') {
-      arr.forEach(async (item) => {
-        chart1.value.chart.get(item).remove();
+      classList.value.forEach((item) => {
+        chart1.value.chart.get(item.T_id).remove();
       });
     } else {
-      arr.forEach(async (item) => {
-        chart2.value.chart.get(item).remove();
+      classList.value.forEach((item) => {
+        chart2.value.chart.get(item.T_id).remove();
       });
     }
-    checkValues.value = [];
   }
 };
 
@@ -530,13 +512,7 @@ const getClassList = async () => {
 
 // 获取任务数据列表
 const getDataList = async () => {
-  const data = {};
-  for (const key in queryData) {
-    if (queryData[key]) {
-      data[key] = queryData[key];
-    }
-  }
-  const { data: res } = await getTaskDataList(data);
+  const { data: res } = await getTaskDataList(queryData);
   dataList.value = res.Data.List || [];
   if (queryData.page_z <= res.Data.Page_size) {
     const arr = classList.value.filter((item) =>
@@ -552,39 +528,41 @@ const getDataList = async () => {
 
 getClassList();
 
-if (task.T_collection_state === 0) {
-  notification.info({
-    closable: false,
-    title: '未完成',
-    meta: `当前时间:${formatted.value}`,
-    duration: 2500,
-    keepAliveOnHover: true,
-  });
-} else if (task.T_collection_state === 1) {
-  notification.info({
-    closable: false,
-    title: '已完成',
-    meta: `当前时间:${formatted.value}`,
-    duration: 2500,
-    keepAliveOnHover: true,
-  });
-} else if (task.T_collection_state === 2) {
-  notification.info({
-    closable: false,
-    title: '处理中',
-    meta: `当前时间:${formatted.value}`,
-    duration: 2500,
-    keepAliveOnHover: true,
-  });
-} else if (task.T_collection_state === 3) {
-  notification.info({
-    closable: false,
-    title: '已采集-无数据',
-    meta: `当前时间:${formatted.value}`,
-    duration: 2500,
-    keepAliveOnHover: true,
-  });
-}
+onMounted(() => {
+  if (task.T_collection_state === 0) {
+    notification.info({
+      closable: false,
+      title: '未完成',
+      meta: `当前时间:${formatted.value}`,
+      duration: 2500,
+      keepAliveOnHover: true,
+    });
+  } else if (task.T_collection_state === 1) {
+    notification.info({
+      closable: false,
+      title: '已完成',
+      meta: `当前时间:${formatted.value}`,
+      duration: 2500,
+      keepAliveOnHover: true,
+    });
+  } else if (task.T_collection_state === 2) {
+    notification.info({
+      closable: false,
+      title: '处理中',
+      meta: `当前时间:${formatted.value}`,
+      duration: 2500,
+      keepAliveOnHover: true,
+    });
+  } else if (task.T_collection_state === 3) {
+    notification.info({
+      closable: false,
+      title: '已采集-无数据',
+      meta: `当前时间:${formatted.value}`,
+      duration: 2500,
+      keepAliveOnHover: true,
+    });
+  }
+});
 </script>
 
 <style lang="scss" scoped></style>

+ 9 - 12
src/views/data/source/index.vue

@@ -7,17 +7,14 @@
       <n-input v-model:value="queryData.T_sn" placeholder="请输入SN" />
       <n-input v-model:value="queryData.T_id" placeholder="请输入ID" />
       <n-date-picker
-        v-model:formatted-value="queryData.Time_start"
-        value-format="yyyy-MM-dd HH:mm:ss"
-        type="datetime"
-        placeholder="请选择开始时间"
-        clearable
-      />
-      <n-date-picker
-        v-model:formatted-value="queryData.Time_end"
-        value-format="yyyy-MM-dd HH:mm:ss"
-        type="datetime"
-        placeholder="请选择结束时间"
+        value-format="yyyy-MM-dd HH:mm"
+        @update:formatted-value="
+          (value) => {
+            queryData.Time_start = value[0];
+            queryData.Time_end = value[1];
+          }
+        "
+        type="datetimerange"
         clearable
       />
       <n-button type="primary" @click="getDataList">搜索</n-button>
@@ -48,7 +45,7 @@
     >
       <n-form-item label="自定义时间">
         <n-date-picker
-          value-format="yyyy-MM-dd HH:mm:ss"
+          value-format="yyyy-MM-dd HH:mm"
           @update:formatted-value="
             (value) => {
               queryData.Time_start = value[0];

+ 18 - 18
src/views/report/audit/TabFour.vue

@@ -12,7 +12,13 @@
     />
     <n-date-picker
       type="datetimerange"
-      @update:formatted-value="handleUpdateDate"
+      value-format="yyyy-MM-dd HH:mm"
+      @update:formatted-value="
+        (value) => {
+          queryData.Time_start = value[0];
+          queryData.Time_end = value[1];
+        }
+      "
       clearable
     />
     <n-button type="primary" @click="extractTask">搜索</n-button>
@@ -29,7 +35,7 @@
 </template>
 
 <script setup>
-import { extractTaskData } from "@/api";
+import { extractTaskData } from '@/api';
 
 const props = defineProps({
   task: {
@@ -51,20 +57,20 @@ const dataList = ref([]);
 // 需要展示的列
 const columns = [
   {
-    title: "ID",
-    key: "T_id",
+    title: 'ID',
+    key: 'T_id',
   },
   {
-    title: "设备编号",
-    key: "T_Class_id",
+    title: '设备编号',
+    key: 'T_Class_id',
   },
   {
-    title: "SN",
-    key: "T_sn",
+    title: 'SN',
+    key: 'T_sn',
   },
   {
-    title: "温度℃",
-    key: "T_t",
+    title: '温度℃',
+    key: 'T_t',
   },
 ];
 
@@ -79,18 +85,12 @@ const pagination = reactive({
   },
 });
 
-// 选择起止时间
-const handleUpdateDate = (value) => {
-  queryData.Time_start = value[0];
-  queryData.Time_end = value[1];
-};
-
 // 获取列表
 const extractTask = async () => {
   const { data: res } = await extractTaskData({
     ...queryData,
-    Time_start: queryData.Time_start !== null ? queryData.Time_start : "",
-    Time_end: queryData.Time_end !== null ? queryData.Time_end : "",
+    Time_start: queryData.Time_start !== null ? queryData.Time_start : '',
+    Time_end: queryData.Time_end !== null ? queryData.Time_end : '',
   });
   console.log(res);
 };

+ 4 - 3
src/views/report/create/index.vue

@@ -103,7 +103,7 @@
           <n-form-item :label="item.T_name" v-else-if="item.T_label === 7">
             <n-date-picker
               v-model:formatted-value="item.T_value"
-              value-format="yyyy-MM-dd HH:mm:ss"
+              value-format="yyyy-MM-dd HH:mm"
               type="datetime"
               clearable
               class="w-full"
@@ -120,7 +120,7 @@
           <n-form-item :label="item.T_name" v-else-if="item.T_label === 9">
             <n-date-picker
               v-model:formatted-value="item.T_value"
-              value-format="yyyy-MM-dd HH:mm:ss"
+              value-format="yyyy-MM-dd HH:mm"
               type="datetimerange"
               clearable
               class="w-full"
@@ -207,8 +207,9 @@
       </n-space>
       <n-button
         v-else
+        type="primary"
         :disabled="code !== 201"
-        @click="window.location.href = keyInfo.Data"
+        @click="window.open(keyInfo.Data)"
         >下载文件</n-button
       >
     </template>

+ 4 - 4
src/views/scheme/index.vue

@@ -103,7 +103,7 @@
           <n-form-item :label="item.T_name" v-else-if="item.T_label === 7">
             <n-date-picker
               v-model:formatted-value="item.T_value"
-              value-format="yyyy-MM-dd HH:mm:ss"
+              value-format="yyyy-MM-dd HH:mm"
               type="datetime"
               clearable
               class="w-full"
@@ -120,7 +120,7 @@
           <n-form-item :label="item.T_name" v-else-if="item.T_label === 9">
             <n-date-picker
               v-model:formatted-value="item.T_value"
-              value-format="yyyy-MM-dd HH:mm:ss"
+              value-format="yyyy-MM-dd HH:mm"
               type="datetimerange"
               clearable
               class="w-full"
@@ -207,8 +207,9 @@
       </n-space>
       <n-button
         v-else
+        type="primary"
         :disabled="code !== 201"
-        @click="window.location.href = keyInfo.Data"
+        @click="window.open(keyInfo.Data)"
         >下载文件</n-button
       >
     </template>
@@ -453,7 +454,6 @@ const putTemplateData = async () => {
       VerifyTemplateMapData,
     });
     if (res.Code === 200) {
-      message.success(res.Msg);
       const arr = toRaw(templateList.value);
       const obj = {};
       for (let i of arr) {