From 1519870c0e18171ced014a840e86a459dc6b00f1 Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期二, 12 十二月 2023 17:26:06 +0800
Subject: [PATCH] 报工记录列表增加人员姓名

---
 src/views/dashboard/components/TaskControl.vue |   93 ++++++++++++++++++++++++++++++++++------------
 1 files changed, 69 insertions(+), 24 deletions(-)

diff --git a/src/views/dashboard/components/TaskControl.vue b/src/views/dashboard/components/TaskControl.vue
index 755a2d9..cb9d2e2 100644
--- a/src/views/dashboard/components/TaskControl.vue
+++ b/src/views/dashboard/components/TaskControl.vue
@@ -89,6 +89,20 @@
  */
 function finishTaskProduce() {
   if (task?.value && task.value?.Procedure?.ID) {
+    //鐐瑰嚮鐨勬椂鍊欎笉鑳芥瘮瀹為檯寮�濮嬫椂闂村ぇ浜�1鍒嗛挓
+    let realStartTime = task.value?.Procedure?.realStartTime
+    if (realStartTime) {
+      realStartTime = realStartTime * 1000
+      let time = Date.now()
+      let differ = Math.abs(time - realStartTime) / 1000
+      if (differ < 60) {
+        ElMessage({
+          message: '宸ュ簭鍒堕�犳椂闂村お鐭紝璇锋鏌ワ紒',
+          type: 'warning'
+        })
+        return true
+      }
+    }
     finishTask({ id: task!.value.Procedure.ID }).then(
       (res) => {
         ElMessage({
@@ -134,7 +148,35 @@
 // 鎶ュ伐
 const showReportModal = ref(false)
 function openReportModal() {
-  showReportModal.value = true
+  // 鏈変汉鍛樻墠鍙互鎶ュ伐
+  if (!workers.value || workers.value.length == 0) {
+    ElMessage({
+      message: '娌℃湁浜哄憳淇℃伅涓嶅厑璁告墜鍔ㄦ姤宸ワ紒',
+      type: 'error',
+      duration: 3000
+    })
+    return true
+  }
+  // 浠庡紑濮嬬敓浜у埌鎶ュ伐鐨勭偣鍑绘椂闂翠笉鑳藉皬浜�1鍒嗛挓
+  if (task?.value && task.value?.Procedure?.realStartTime) {
+    let realStartTime = task.value?.Procedure?.realStartTime
+    if (realStartTime) {
+      realStartTime = realStartTime * 1000
+      let time = Date.now()
+      let differ = Math.abs(time - realStartTime) / 1000
+      if (differ < 60) {
+        ElMessage({
+          message: '宸ュ簭鍒堕�犳椂闂村お鐭紝璇锋鏌ワ紒',
+          type: 'warning'
+        })
+        return true
+      }
+    }
+  }
+
+  if (workers.value[0].workerId) {
+    showReportModal.value = true
+  }
 }
 
 /**
@@ -145,30 +187,33 @@
   if (!task?.value) {
     return
   }
-  apiReportWork({
-    procedureId: task.value?.Procedure.ID,
-    reportAmount: amount,
-    workerID: workers.value[0].workerId
-  })
-    .then((res) => {
-      if (res.code === 200) {
-        ElMessage({
-          message: '鎶ュ伐鎴愬姛',
-          type: 'success',
-          duration: 2000
-        })
-        showReportModal.value = false
-      } else {
-        ElMessage({
-          message: '鎶ュ伐澶辫触',
-          type: 'error',
-          duration: 3000
-        })
-      }
+  // 鏈変汉鍛樻墠鍙互鎶ュ伐
+  if (workers.value[0].workerId) {
+    apiReportWork({
+      procedureId: task.value?.Procedure.ID,
+      reportAmount: amount,
+      workerID: workers.value[0].workerId
     })
-    .catch((err) => {
-      console.error(err)
-    })
+      .then((res) => {
+        if (res.code === 200) {
+          ElMessage({
+            message: '鎶ュ伐鎴愬姛',
+            type: 'success',
+            duration: 2000
+          })
+          showReportModal.value = false
+        } else {
+          ElMessage({
+            message: '鎶ュ伐澶辫触',
+            type: 'error',
+            duration: 3000
+          })
+        }
+      })
+      .catch((err) => {
+        console.error(err)
+      })
+  }
 }
 </script>
 <style scoped lang="scss">

--
Gitblit v1.8.0