From b95cf940af8e01e4eca30b2599b029c2f645bd1e Mon Sep 17 00:00:00 2001
From: charles <981744753@qq.com>
Date: 星期一, 29 四月 2024 10:44:26 +0800
Subject: [PATCH] feat:创建新分支

---
 src/views/dashboard/components/TaskControlModal.vue |   89 ++++++++++++++++++++++++++------------------
 1 files changed, 53 insertions(+), 36 deletions(-)

diff --git a/src/views/dashboard/components/TaskControlModal.vue b/src/views/dashboard/components/TaskControlModal.vue
index c51b154..c4c6db6 100644
--- a/src/views/dashboard/components/TaskControlModal.vue
+++ b/src/views/dashboard/components/TaskControlModal.vue
@@ -7,7 +7,7 @@
       <div class="modal-content">
         <template v-if="['鍒濆鍖�', '璁℃椂涓�', '鍑嗗鐢熶骇', '涓嬪彂鍙傛暟涓�'].includes(state.value as string)">
           <div class="content-title">
-            <div class="content-title-item">褰撳墠浠诲姟锛歿{ task?.Procedure.procedure.procedureName || '' }}</div>
+            <div class="content-title-item">褰撳墠浠诲姟锛歿{ task?.Procedure?.procedure?.procedureName || '' }}</div>
             <div class="content-title-item">
               鐢熶骇鏁伴噺锛�
               <div class="leaf-shape">
@@ -26,11 +26,11 @@
                     <div class="info-item">浜у搧鍚嶇О锛歿{ task.Order.productName || '' }}</div>
                     <div class="info-item">鏁伴噺锛歿{ task.Order.amount || 0 }}{{ task.Order.unit }}</div>
                     <div class="info-item">浜よ揣鏃ユ湡锛歿{ task.Order.deliverDate || '' }}</div>
-                    <div class="info-item">宸ユ椂锛� {{ task.Procedure.procedure.workHours || '' }}</div>
+                    <div class="info-item">宸ユ椂锛� {{ task?.Procedure?.procedure?.workHours || '' }}</div>
                     <div class="info-item">
-                      璁″垝鏃堕棿锛� {{ formatDate(task.Procedure.startTime) || '' }}
+                      璁″垝鏃堕棿锛� {{ formatDate(task?.Procedure?.startTime) || '' }}
                       -
-                      {{ formatDate(task.Procedure.endTime) }}
+                      {{ formatDate(task?.Procedure?.endTime) }}
                     </div>
 
                     <div class="info-item">瀹㈡埛鍚嶇О锛歿{ task.Order.customer || '' }}</div>
@@ -40,6 +40,10 @@
 
                     <div class="info-item-two">
                       <div style="color: #4efefa; font-size: 18px; margin-bottom: 10px; margin-top: 20px">宸ヨ壓鍙傛暟</div>
+                      <!-- 鏈幏鍙栧埌宸ヨ壓鍙傛暟, 涓斿綋鍓嶈澶囧厑璁稿湪娌℃湁宸ヨ壓鍙傛暟鐨勬儏鍐典笅鐢熶骇, 鍒欐彁绀�-->
+                      <div v-if="!craftParams?.length && currentDeviceAllowNoParams" class="info-item info-item-two">
+                        鏈幏鍙栧埌宸ヨ壓鍙傛暟, 璇锋墜鍔ㄨ缃垨鍦ㄤ簯绔伐鑹烘ā鍨嬩腑涓婁紶
+                      </div>
                       <div v-for="(item, index) in craftParams" :key="index" class="info-item info-item-two">
                         {{ item.Key }}锛歿{ item.Value || '' }}
                       </div>
@@ -52,7 +56,7 @@
         </template>
 
         <!--        鍙湁鑾峰彇鍒板伐鑹哄弬鏁版墠鍙互杩涜鎿嶄綔-->
-        <template v-if="getCraftParamsTip">
+        <template v-if="getCraftParamsTip && !currentDeviceAllowNoParams">
           <div class="content-tips">
             <div class="craft-params-error">
               <div class="error-icon">
@@ -108,7 +112,7 @@
         </template>
       </div>
       <template #footer>
-        <template v-if="getCraftParamsTip">
+        <template v-if="getCraftParamsTip && !currentDeviceAllowNoParams">
           <div class="btn">
             <BigButton bg-color="#4765c0" @click="closeModal"> 鍏抽棴 </BigButton>
           </div>
@@ -153,13 +157,14 @@
 import { ref, toRefs, watch } from 'vue'
 import BigButton from '@/views/dashboard/components/BigButton.vue'
 import { CHANNEL_NAME_MAP } from '@/common/constants'
-import { getCraftParams, sendProcessParams } from '@/api'
+import { procedureUpdate, sendProcessParams } from '@/api'
 import { useCountDown } from '@/common/composable'
 import { storeToRefs } from 'pinia'
 import { useTasksStore } from '@/stores/tasks'
 import { createMachine } from 'xstate'
 import { useMachine } from '@xstate/vue'
 import { CircleCloseFilled, Loading, SuccessFilled } from '@element-plus/icons-vue'
+import { useDevicesStore } from '@/stores/devices'
 
 export interface TaskControlModalProps {
   task?: Task
@@ -196,7 +201,8 @@
 const craftParams = ref<CraftParam[]>()
 // 鑾峰彇宸ヨ壓鍙傛暟缁撴灉淇℃伅
 const getCraftParamsTip = ref('')
-
+// 褰撳墠璁惧鑻ユ病鏈夊伐鑹哄弬鏁版槸鍚﹀厑璁镐笅鍙�
+const { currentDeviceAllowNoParams } = storeToRefs(useDevicesStore())
 /**
  * 鑾峰彇褰撳墠灞曠ず鐨勪换鍔$殑宸ヨ壓鍙傛暟
  */
@@ -204,17 +210,6 @@
   if (taskId) {
     craftParams.value = []
     getCraftParamsTip.value = ''
-    getCraftParams({ id: taskId }).then(
-      (res) => {
-        craftParams.value = res.data.Params ?? []
-        getCraftParamsTip.value = ''
-      },
-      (err) => {
-        console.error(err)
-        craftParams.value = []
-        getCraftParamsTip.value = '鑾峰彇宸ヨ壓鍙傛暟澶辫触锛�'
-      }
-    )
   }
 }
 
@@ -334,22 +329,38 @@
 function startProduce() {
   send('寮�濮嬬敓浜�')
 
-  sendProcessParams({
-    procedureId: task!.value!.Procedure.ID
-  })
-    .then(
-      (res) => {
-        deliveryTip.value = '涓嬪彂鎴愬姛'
-        send('鎴愬姛')
-        countdown3s.startCountdown()
-      },
-      (err) => {
-        console.error(err)
-        deliveryTip.value = err.msg ? err.msg : '鎶辨瓑锛屽伐搴忎笅鍙戝け璐ワ紒'
-        send('澶辫触')
-      }
-    )
-    .finally(() => {})
+  procedureUpdate({
+    isFinish: false,
+    isProcessing: true,
+    workOrderProcedureID: Number(task!.value!.Procedure.ID)
+  }).then(
+    (res) => {
+      deliveryTip.value = '涓嬪彂鎴愬姛'
+      send('鎴愬姛')
+      countdown3s.startCountdown()
+    },
+    (err) => {
+      console.error(err)
+      deliveryTip.value = err.msg ? err.msg : '鎶辨瓑锛屽伐搴忎笅鍙戝け璐ワ紒'
+      send('澶辫触')
+    }
+  )
+  // sendProcessParams({
+  //   procedureId: task!.value!.Procedure.ID
+  // })
+  //   .then(
+  //     (res) => {
+  //       deliveryTip.value = '涓嬪彂鎴愬姛'
+  //       send('鎴愬姛')
+  //       countdown3s.startCountdown()
+  //     },
+  //     (err) => {
+  //       console.error(err)
+  //       deliveryTip.value = err.msg ? err.msg : '鎶辨瓑锛屽伐搴忎笅鍙戝け璐ワ紒'
+  //       send('澶辫触')
+  //     }
+  //   )
+  //   .finally(() => {})
 }
 
 /**
@@ -441,7 +452,13 @@
 .btn {
   display: flex;
   align-items: center;
-  justify-content: space-around;
+  justify-content: center;
+  & > button {
+    margin-right: 20px;
+    &:last-child {
+      margin-right: 0;
+    }
+  }
 }
 .content-title {
   display: flex;

--
Gitblit v1.8.0