From 6b6eff08baa3d052b66fd2e68f1ac0d8495f6f8a Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期四, 29 八月 2024 17:35:33 +0800
Subject: [PATCH] 修改历史数据获取逻辑

---
 src/components/mission/MIssionCreate.vue |   76 +++++++++++++++++++++++++++++--------
 1 files changed, 59 insertions(+), 17 deletions(-)

diff --git a/src/components/mission/MIssionCreate.vue b/src/components/mission/MIssionCreate.vue
index 58565ab..c7d00f8 100644
--- a/src/components/mission/MIssionCreate.vue
+++ b/src/components/mission/MIssionCreate.vue
@@ -15,6 +15,15 @@
       label-position="right"
       label-width="100px"
     >
+      <el-form-item label="鍖哄幙" prop="location">
+        <OptionLocation2
+          :level="3"
+          :initValue="false"
+          :checkStrictly="false"
+          :allOption="false"
+          v-model="formObj.location"
+        ></OptionLocation2>
+      </el-form-item>
       <el-form-item label="浠诲姟缂栧彿" prop="missionCode">
         <el-input
           size="small"
@@ -24,14 +33,10 @@
         />
       </el-form-item>
       <OptionType v-model="formObj.deviceType"></OptionType>
-      <el-form-item label="璁惧缂栧彿" prop="acountname">
-        <el-input
-          size="small"
-          clearable
-          v-model="formObj.deviceCode"
-          placeholder="璁惧缂栧彿"
-        />
-      </el-form-item>
+      <OptionDevice
+        :type="formObj.deviceType"
+        v-model="formObj.deviceCode"
+      ></OptionDevice>
       <OptionTime v-model="formObj.timeArray"></OptionTime>
       <el-form-item>
         <el-button
@@ -47,38 +52,56 @@
   </CardDialog>
 </template>
 <script setup>
+import moment from 'moment';
 import { ref, reactive, computed } from 'vue';
 import missionApi from '@/api/missionApi';
+import thirdPartyDataApi from '@/api/thirdPartyDataApi';
 import { useFormConfirm } from '@/composables/formConfirm';
 import { useFetchData } from '@/composables/fetchData';
+import { useMissionStore } from '@/stores/mission';
 
+const missionStore = useMissionStore();
 const dialogVisible = ref(false);
 const { loading, fetchData } = useFetchData();
-const baseRules = reactive({
-  _usertype: [
+const rules = reactive({
+  location: [
     {
       required: true,
-      message: '鐢ㄦ埛绫诲瀷涓嶈兘涓虹┖',
+      message: '鍖哄幙涓嶈兘涓虹┖',
       trigger: 'change'
     }
   ],
-  _locations: [
+  missionCode: [
     {
       required: true,
-      message: '琛屾斂鍖哄垝涓嶈兘涓虹┖',
-      trigger: 'change'
+      message: '浠诲姟缂栧彿涓嶈兘涓虹┖',
+      trigger: 'blur'
     }
   ],
-  _scenetype: [
+  timeArray: [
     {
       required: true,
-      message: '鍦烘櫙绫诲瀷涓嶈兘涓虹┖',
-      trigger: 'change'
+      // message: '鏃堕棿涓嶈兘涓虹┖',
+      trigger: 'change',
+      validator: (rule, value, callback) => {
+        if (value == null) {
+          callback(new Error('鏃堕棿涓嶈兘涓虹┖'));
+        } else {
+          const st = moment(value[0]);
+          const et = moment(value[1]);
+          const range = et.diff(st, 'second');
+          if (range > 12 * 60 * 60) {
+            callback(new Error('浠诲姟鏃堕暱鏈�澶氫负12灏忔椂'));
+          }
+        }
+        callback();
+      }
     }
   ]
 });
 const param = computed(() => {
   return {
+    districtName: formObj.value.location.dName,
     missionCode: formObj.value.missionCode,
     deviceType: formObj.value.deviceType,
     deviceCode: formObj.value.deviceCode,
@@ -91,6 +114,9 @@
   fetchData((page, pageSize) => {
     return missionApi.putNewMission(param.value).then((res) => {
       dialogVisible.value = false;
+      missionStore.fetchMission();
+      // 閫氱煡鏈嶅姟绔惎鍔ㄤ换鍔¤寖鍥村唴鐨勭涓夋柟鏁版嵁鑾峰彇浠诲姟
+      thirdPartyDataApi.fetchMissionData(param.value.missionCode);
     });
   });
 }
@@ -104,4 +130,20 @@
     }
   }
 });
+
+if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+  formObj.value.location = {
+    pCode: '31',
+    pName: '涓婃捣甯�',
+    cCode: '3100',
+    cName: '涓婃捣甯�',
+    dCode: '310106',
+    dName: '闈欏畨鍖�'
+  };
+}
 </script>
+<style scoped>
+/* .el-form-item {
+  margin-bottom: 0px;
+} */
+</style>

--
Gitblit v1.9.3