From 1788c96aea9247cc36ef8b82734997f1a6a92fb4 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 23 八月 2024 11:07:42 +0800
Subject: [PATCH] 新增新版本。静安区特供版

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

diff --git a/src/components/mission/MIssionCreate.vue b/src/components/mission/MIssionCreate.vue
index 58565ab..11ddbb4 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,57 @@
   </CardDialog>
 </template>
 <script setup>
+import moment from 'moment';
 import { ref, reactive, computed } from 'vue';
 import missionApi from '@/api/missionApi';
 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) => {
+        console.log(rule);
+        console.log(value);
+        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 +115,7 @@
   fetchData((page, pageSize) => {
     return missionApi.putNewMission(param.value).then((res) => {
       dialogVisible.value = false;
+      missionStore.fetchMission();
     });
   });
 }
@@ -104,4 +129,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