From a1a6630f2eabfc78a379b5808b1bf7231a084d0b Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期三, 11 十月 2023 18:02:44 +0800
Subject: [PATCH] 工序弹框的 列表和详情的更新同步

---
 src/components/AddIssue.vue |  138 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 98 insertions(+), 40 deletions(-)

diff --git a/src/components/AddIssue.vue b/src/components/AddIssue.vue
index 41ab225..223ce43 100644
--- a/src/components/AddIssue.vue
+++ b/src/components/AddIssue.vue
@@ -9,7 +9,7 @@
   >
     <div class="tank-box">
       <div slot="title" class="tac drawerHeader">
-        <span class="title-l">鏂颁换鍔�</span>
+        <span class="title-l">{{messageError?'鎻愮ず':'鏂颁换鍔�'}}</span>
         <!-- <span class="title-r" @click="closeClick">
           <img src="../../public/close.png" />
         </span> -->
@@ -24,17 +24,10 @@
             text-align: left;
           "
         >
-          <div class="title-box margin_bottom_13">
-            <div class="title-item color_4efefa font_size_20 title-bng">
-              褰撳墠浠诲姟锛歿{ taskData.Procedure.procedure.procedureName || "" }}
-            </div>
-            <div class="title-item title-bng color_4efefa font_size_20">
-              鐢熶骇鏁伴噺锛�<span style="color:#fff;">{{ taskData.Order.amount || 0 }}</span>
-            </div>
-          </div>
           <template v-if="messageError">
             <div class="error-t">
-              <img src="../../public/error.png" />
+              <span v-if="messageError =='涓嬪彂鎴愬姛锛�'"  class="el-icon-success color_success"></span>
+              <span  v-else class="el-icon-error color_error"></span>
             </div>
             <div class="error-m">
               {{ messageError }}
@@ -43,10 +36,20 @@
               class="font_size_20 color_fff"
               style="text-align: center; width: 100%; margin: 10px 0"
             >
-              璇烽噸璇�
+              <span v-if="messageError =='涓嬪彂鎴愬姛锛�'" style="font-size:30px;">{{3-Number(sencond)}}s</span>
+              <span v-else>璇烽噸璇�</span>
             </div>
+            
           </template>
-          <template v-else>
+          <template v-else-if="Object.keys(taskData).length > 0 ">
+            <div class="title-box margin_bottom_13">
+              <div class="title-item color_4efefa font_size_20 title-bng">
+                褰撳墠浠诲姟锛歿{ taskData.Procedure.procedure.procedureName || "" }}
+              </div>
+              <div class="title-item title-bng color_4efefa font_size_20">
+                鐢熶骇鏁伴噺锛�<span style="color:#fff;">{{ taskData.Order.amount || 0 }}</span>
+              </div>
+            </div>
             <div class="title-auto-box">
               <div class="title-box margin_bottom_20">
                 <div class="title-item">
@@ -162,18 +165,22 @@
         </div> -->
         </div>
       </div>
-      <div slot="footer" class="dialog-footer tac" style="overflow: hidden">
+      <div slot="footer" :class="messageError?'dialog-footer tac btn-error':'dialog-footer tac'" style="overflow: hidden">
         <template v-if="messageError">
-          <div class="btn"  @click="confirmClick2">
-            <img src="../../public/agin.png" />
+          <div class="btn" v-if="messageError =='涓嬪彂鎴愬姛锛�'||ArrError"  @click="closeClick">
+            <img  src="../../public/close-btn.png" />
+          </div>
+          <div class="btn" v-else  @click="confirmClick2">
+            <img  src="../../public/agin.png" />
           </div>
         </template>
         <template v-else>
           <div class="btn" @click="closeClick">
               <img src="../../public/btn1.png" />
           </div>
-          <div class="btn" v-if="showBtn == 1" @click="confirmClick1">
-            <img src="../../public/confirm1.png" />
+          <div class="btn" v-if="showBtn == 1">
+            <div v-if='taskData&&taskData.CanStarted' @click="confirmClick1"><img  src="../../public/confirm1.png" /></div>
+            <div v-else><img  src="../../public/confirm2.png" /></div>
           </div>
           <div class="btn" v-if="showBtn == 2">
             <img src="../../public/confirm2.png" />
@@ -222,6 +229,24 @@
         return [];
       },
     },
+    ArrError:{
+      type: [String],
+      default: () => {
+        return '';
+      },
+    },
+    safeProduce:{
+      type: [String],
+      default: () => {
+        return '';
+      },
+    },
+    activeName:{
+      type: [String,Number],
+      default: () => {
+        return 1;
+      },
+    },
   },
   data() {
     return {
@@ -229,23 +254,33 @@
       showBtn:1,
       num: 0,
       timer: null,
-      message: "璇风‘璁ょ敓浜у畨鍏紒",
+      message: this.safeProduce,
       messageError: "",
       resParams: {},
       isLoading:false,
+      sencond:0,
+      sencondTimer:null,
     };
   },
   mounted() {
+    this.message=this.safeProduce;
     this.getInfo();
   },
   watch: {
     taskData(val) {
+      this.message=this.safeProduce;
       this.getInfo();
     },
     num() {
       if (this.num == 30) {
         clearInterval(this.timer);
         this.showBtn = 3;
+      }
+    },
+    sencond(){
+      if(this.sencond==3){
+        clearInterval(this.sencondTimer);
+        this.closeClick()
       }
     },
     islook(){
@@ -255,6 +290,10 @@
       this.num = 0;
       this.showBtn=1;
       this.isLoading=false
+      this.sencond=0
+      this.sencondTimer=null
+      this.messageError=''
+      this.resParams= {},
       this.$emit('isTip',this.islook)
     },
   },
@@ -266,7 +305,7 @@
     confirmClick1() {
       this.num = 0;
       this.showBtn = 2;
-      (this.message = "璇风‘璁ょ敓浜у畨鍏紒"),
+      (this.message = this.safeProduce),
         (this.timer = setInterval(() => {
           this.num = this.num + 1;
         }, 1000));
@@ -281,16 +320,20 @@
     getInfo() {
       // 1 鏈敓浜� 2鐢熶骇涓� 3鐢熶骇瀹屾垚
       if (
-        Object.keys(this.taskData).length > 0 &&
-        this.taskData.Procedure.ID &&
-        this.taskData.Procedure.Status == 1
+        Object.keys(this.taskData).length > 0 && this.taskData.Procedure.ID &&
+          this.taskData.Procedure.Status == 1
       ) {
-        this.num = 0;
-        this.showBtn = 1;
-        this.islook = true;
+          this.num = 0;
+          this.showBtn = 1;
+          this.islook = true;
       } else {
         this.islook = false;
-        // this.islook = true;
+        //  this.islook = true;
+        
+      }
+      if(this.ArrError){
+        this.messageError=this.ArrError;
+        
       }
       
     },
@@ -326,7 +369,7 @@
     formatDate(value) {
       if (value) {
         const now = value ? new Date(value * 1000) : new Date();
-        let time = this.getDateObj(now, "yyyy-MM-dd");
+        let time = this.getDateObj(now, "MM-dd hh:mm");
         return time;
       } else {
         return "";
@@ -365,15 +408,20 @@
       if (res.code == 200) {
         if (this.num == 30) {
           this.messageError = "涓嬪彂鎴愬姛锛�";
+          if (!this.sencondTimer) {
+            this.sencondTimer = setInterval(() => {
+              this.sencond = this.sencond + 1;
+            }, 1000);
+          }
           clearInterval(this.timer);
           // this.num = 30;
           // this.showBtn = 2;
-          this.message = "璇风‘璁ょ敓浜у畨鍏紒";
+          this.message = this.safeProduce;
 
           this.num = 0;
           this.showBtn= 1
           this.shutdown();
-          this.$emit('getSetProductNumber')
+          this.$emit('getSetProductNumber',this.activeName)
           // this.$message.success("涓嬪彂鐢熶骇鏁伴噺鎴愬姛锛�");
         }
       } else {
@@ -381,7 +429,7 @@
         clearInterval(this.timer);
         this.num = 30;
         this.showBtn = 2;
-        this.message = "璇风‘璁ょ敓浜у畨鍏紒";
+        this.message =this.safeProduce;
       }
     },
     shutdown() {
@@ -392,6 +440,12 @@
 </script>
 
 <style lang="scss" scoped>
+.color_error{
+  color:red;
+}
+.color_success{
+  color:green;
+}
 .tank-box {
   width: 753px;
   height: 728px;
@@ -455,16 +509,16 @@
   }
 }
 .error-t {
-  width: 120px;
-  margin: 50px auto 40px;
-  img {
-    width: 100%;
+  width: 100px;
+  margin: 100px auto 40px;
+  font-size:98px;
+  span {
     display: inline-block;
   }
 }
 .error-m {
   line-height: 35px;
-  font-size: 26px;
+  font-size: 28px;
   color: #fff;
   margin-bottom: 20px;
   text-align: center;
@@ -477,6 +531,9 @@
 }
 ::v-deep .el-dialog__body {
   padding: 0 !important;
+}
+.btn-error{
+  bottom:80px!important;
 }
 .btn {
   width: 150px;
@@ -593,6 +650,7 @@
   .gif-box{
     width:230px;
     margin:0 auto;
+    margin-bottom:5px;
     .gif-right{
       width:210px;
       font-size:14px;
@@ -605,7 +663,7 @@
     }
   }
   .gif{
-    width:56px;
+    width:55px;
     vertical-align: middle;
     float:left;
     margin-right:20px;
@@ -613,13 +671,13 @@
       width:100%;
     }
     .yuandian {
-        width: 56px;
-        height: 56px;
-        display: inline-block;
+        width: 55px;
+        height: 55px;
+        float:left;
         // background: #15d815;
         background:red;
         border-radius: 50%;
-        margin-top:-5px;
+        // margin-top:-5px;
         vertical-align: middle;
       }
   }

--
Gitblit v1.8.0