liyangzheng há 1 ano atrás
pai
commit
0151be03b2

+ 11 - 1
src/pages/components/drawModal/AbilityModal.vue

@@ -114,7 +114,17 @@ export default {
         function upTemplate(e) {
             // 调用接口进行文件上传
             flow.excelInData({ code: "ied_func_fcda", file: e.file, model_id: modelIds.value - 0 }).then(res => {
-                console.log(res, 'fuahsfk');
+                if (res.returncode == 200) {
+                    ElMessage({
+                        message: "上传成功!",
+                        type: "success"
+                    })
+                } else {
+                    ElMessage({
+                        message: res.msg,
+                        type: "error"
+                    })
+                }
             })
         }
         function copyReload() {

+ 20 - 4
src/pages/login/LoginNow.vue

@@ -21,8 +21,8 @@
                             placeholder="你的密码..." maxlength="32" />
                     </el-form-item>
                 </el-form>
-                <div @keyup.enter="sureLog">
-                    <el-button class="loginBtn" type="primary" @click="sureLog">登录</el-button>
+                <div @keyup.enter="debouncedSureLog">
+                    <el-button class="loginBtn" type="primary" @click="debouncedSureLog">登录</el-button>
                 </div>
             </div>
 
@@ -33,7 +33,7 @@
 <script>
 import { ref, onMounted, onBeforeUnmount } from "vue"
 import { useRouter } from 'vue-router'
-import { ElMessage } from "element-plus"
+import { ElMessage, ElLoading } from "element-plus"
 import login from "@/api/login"
 import { useDataStore } from '@/store/modules/golbal-data';
 const userStoreCode = useDataStore();
@@ -46,6 +46,7 @@ export default {
         })
         let isLogin = ref(false)
         let router = useRouter()
+        let timer = ref(null)//添加防抖,防止用户多次点击
         function encryptPassword(password) {
             if (typeof SmCrypto == 'undefined') {
                 window.location.reload()
@@ -66,6 +67,20 @@ export default {
                 return val
             }
         }
+        // 防抖函数
+        function debouncedSureLog() {
+            clearTimeout(timer); // 清除之前的定时器
+            const loading = ElLoading.service({
+                lock: true,
+                text: "正在登陆",
+                background: "rgba(0, 0, 0, 0.7)",
+            });
+            timer = setTimeout(() => {
+                sureLog();
+                loading.close()
+            }, 500); // 设置防抖延迟时间为500毫秒
+        };
+
         function sureLog() {
             let kis = encryptPassword(loginForm.value.userpass)
             login.LoginNow({
@@ -97,7 +112,7 @@ export default {
         // 添加键盘事件监听器
         function handleKeyUp(event) {
             if (event.key === 'Enter') {
-                sureLog();
+                debouncedSureLog();
             }
         };
         function WinClose() {
@@ -127,6 +142,7 @@ export default {
             WinMin,
             WinClose,
             handleKeyUp,
+            debouncedSureLog,//防抖函数
         }
     }
 }

+ 5 - 2
src/pages/mission/MissionVue.vue

@@ -16,7 +16,7 @@
                 <NoBox v-if="btnSelect == 0 && listLength == 0 && sizeNum == 0" :btnSelect="btnSelect" :taskList="taskList"
                     @backToMission="backToMission"></NoBox>
                 <!-- 有检测任务的盒子 -->
-                <HaveMis v-if="btnSelect == 0 && listLength != 0 && sizeNum == 0" @moreBack="moreBack" @hmBack="hmBack"
+                <HaveMis v-if="btnSelect == 0 && listLength != 0 && sizeNum == 0" :numType="numType" @moreBack="moreBack" @hmBack="hmBack"
                     @haveBack="haveBack" @haveInCreate="haveInCreate"></HaveMis>
                 <!-- 新建任务盒子 -->
                 <CreateNew v-if="btnSelect == 1" :btnSelect="btnSelect" :taskList="taskList" :editRow="editRow"
@@ -76,6 +76,7 @@ export default {
         let editRow = ref({})//需要编辑的任务
         let status = ref(0)
         let listLength = ref(0)//有无任务
+        let numType = ref(false)//刷新havemis状态
         function searchAllTask() {
             // 0为待检测
             task.getTask({ pageno: 1, pagesize: 10, state: 0 }).then(res => {
@@ -128,8 +129,9 @@ export default {
             startMis.value = obj
             sizeNum.value = data
         }
-        function smBack(data) {
+        function smBack(data, type) {
             sizeNum.value = data
+            numType.value = type
         }
         function createBack(data) {
             btnSelect.value = data
@@ -181,6 +183,7 @@ export default {
             status,
             moreBack,
             listLength,//有无任务
+            numType
         }
     },
     components: {

+ 9 - 1
src/pages/mission/components/HaveMis.vue

@@ -140,12 +140,18 @@
 </template>
 
 <script>
-import { ref, onMounted, computed, toRefs } from "vue";
+import { ref, onMounted, computed, toRefs, watch } from "vue";
 import { useRouter } from "vue-router";
 import task from "@/api/task"
 import imgs from "../jscom/img";
 import { ElLoading, ElMessage } from "element-plus";
 export default {
+  props: {
+    numType: {
+      type: Boolean,
+      required: true,
+    },//startmission组件返回刷新状态
+  },
   setup(props, { emit }) {
     let imgBack = ref("@/assets/image/card_blue.png");
     let router = useRouter();
@@ -161,6 +167,7 @@ export default {
     let isImgs = ref(false)
     let isIndex = ref(999999)
     let isIndexs = ref(999999)
+    let isType = ref(false)//本组件刷新状态
     function scdLink() {
       router.push("/home/scdMap");
     }
@@ -345,6 +352,7 @@ export default {
       relison,//开始检测后选择模型change事件
       outcome,//生成报告和跳转yemian
       moreMis,
+      isType,//本组件刷新状态
     };
   },
   components: {

+ 3 - 3
src/pages/mission/components/StartMission.vue

@@ -65,7 +65,7 @@
 </template>
 
 <script>
-import { ref, onMounted, toRefs, watch } from 'vue';
+import { ref, onMounted, toRefs, watch,onBeforeUnmount } from 'vue';
 import StepMethod from './StepMethod.vue';
 import task from '@/api/task';
 import slc from '@/api/slc/slc';
@@ -100,16 +100,16 @@ export default {
                         message: "取消成功",
                         type: "success"
                     })
+                    emit("smBack", arrow.value, true)
                 }
             })
-            emit("smBack", arrow.value)
         }
         async function misState() {
             try {
                 const res = await task.lookStep({ id: loadingMis.value.id - 0 });
                 if (res.data) {
                     stepList.value = res.data;
-                    console.log(stepList.value, 'step');
+                    // console.log(stepList.value, 'step');
                 } else {
                     showError(res.msg);
                 }

+ 1 - 1
src/pages/mission/components/StepMethod.vue

@@ -49,7 +49,7 @@ export default {
                     msg: item.state_msg
                 }
             })
-            console.log(steps.value,'steps');
+            // console.log(steps.value,'steps');
         }
         function nextStep() {
             if (activeStep.value > 0 && activeStep.value < steps.value.length) {