From c40500d288339cd9b2200f8f909e3cd5471c0c22 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 30 八月 2024 17:38:29 +0800
Subject: [PATCH] 1. 优化3D动画中风向的变化逻辑; 2. 修复折线图切换因子时,数据直接跳转至起始处的问题; 3. 折线图和表格加回风向因子; 4. 优化风向的均值计算为矢量计算,同时最大最小值不显示; 5. 新增表格数据导出功能;

---
 src/components/search/OptionMission.vue |   44 +++++++++++++++++++-------------------------
 1 files changed, 19 insertions(+), 25 deletions(-)

diff --git a/src/components/search/OptionMission.vue b/src/components/search/OptionMission.vue
index 8e200aa..f26efe3 100644
--- a/src/components/search/OptionMission.vue
+++ b/src/components/search/OptionMission.vue
@@ -1,25 +1,26 @@
 <template>
   <el-form-item label="浠诲姟">
     <el-select
-      :model-value="modelValue"
+      v-model="index"
       @change="handleChange"
-      placeholder="浠诲姟"
+      placeholder="閫夋嫨浠诲姟"
       size="small"
       class="w-150"
     >
       <el-option
-        v-for="(s, i) in missionList"
+        v-for="(s, i) in missionStore.missionList"
         :key="i"
-        :label="s.label"
-        :value="s.value"
+        :label="s.missionCode"
+        :value="i"
       />
     </el-select>
   </el-form-item>
 </template>
 
 <script>
-import missionApi from '../../api/missionApi';
+import { mapStores } from 'pinia';
 import { useFetchData } from '@/composables/fetchData';
+import { useMissionStore } from '@/stores/mission';
 
 export default {
   setup() {
@@ -30,33 +31,26 @@
     type: String,
     modelValue: String
   },
-  emits: ['update:modelValue'],
+  emits: ['update:modelValue', 'change'],
   data() {
     return {
-      missionList: []
+      index: undefined
     };
+  },
+  computed: {
+    ...mapStores(useMissionStore)
   },
   methods: {
     fetchMission() {
-      this.fetchData((page, pageSize) => {
-        return missionApi
-          .fethchMission({ type: this.type, page, pageSize })
-          .then((res) => {
-            this.missionList = res.data.map((item) => {
-              return {
-                label: item.missionCode,
-                value: item.missionCode
-              };
-            });
-            if (this.missionList.length > 0) {
-              this.handleChange(this.missionList[0].value);
-            }
-            return res.head;
-          });
+      this.missionStore.fetchMission(this.type).then((res) => {
+        if (res.success && res.data.length > 0) {
+          this.index = 0;
+          this.handleChange(0);
+        }
       });
     },
     handleChange(value) {
-      this.$emit('update:modelValue', value);
+      this.$emit('update:modelValue', this.missionStore.missionList[value]);
     }
   },
   mounted() {
@@ -64,7 +58,7 @@
   }
 };
 </script>
-<style scoped>
+<style>
 /* :deep() .el-form-item__label {
   color: red !important;
 } */

--
Gitblit v1.9.3