From 46d143d1d6fe8f286399f4d027c9a86adf7cd7fc Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期三, 09 七月 2025 08:50:01 +0800
Subject: [PATCH] feat(inspection,maintenance): - 实现保养工单批量确认功能 - 在点检记录确认时增加时间限制,距离上次更新时间两小时内不允许确认

---
 eims-ui-mobile/src/pages/maint/order-detail.vue |  139 +++++++++++++++++++++++-----------------------
 1 files changed, 69 insertions(+), 70 deletions(-)

diff --git a/eims-ui-mobile/src/pages/maint/order-detail.vue b/eims-ui-mobile/src/pages/maint/order-detail.vue
index 9823cd4..6672463 100644
--- a/eims-ui-mobile/src/pages/maint/order-detail.vue
+++ b/eims-ui-mobile/src/pages/maint/order-detail.vue
@@ -2,29 +2,25 @@
 {
   layout: 'default',
   needLogin: true,
-  style: {
-    navigationBarTitleText: '宸ュ崟鏄庣粏',
-    'app-plus': {
-      titleNView: {
-        buttons: [
-          {
-            text: '鎻愪氦',
-            fontSize: '14px',
-            color: '#FFFFFF',
-          },
-          {
-            text: '',
-            fontSize: '24px',
-            color: '#FFFFFF',
-          },
-        ],
-      },
-    },
-  },
+  style: { navigationBarTitleText: '宸ュ崟鏄庣粏', navigationStyle: 'custom' },
 }
 </route>
 <template>
   <view class="bg-base container" safeAreaInsetTopBottom>
+    <wd-navbar
+      title="淇濆吇宸ュ崟"
+      left-arrow
+      @click-left="goBack"
+      right-text="鎻愪氦"
+      @click-right="handleClickRight"
+      custom-style="background: #4D80F0;"
+      safeAreaInsetTop
+    >
+      <template #right>
+        <text v-if="isLineOrRepair()" class="text-white">鎻愪氦</text>
+        <text v-else-if="isLeader()" class="text-white">楠岃瘉</text>
+      </template>
+    </wd-navbar>
     <wd-form ref="form" :model="order" :rules="rules">
       <wd-cell-group custom-class="group" title="璁惧淇℃伅" border>
         <wd-cell title="璁惧鍚嶇О" title-width="200rpx" is-link>
@@ -65,7 +61,6 @@
         />
         <wd-cell title="淇濆吇鍥剧墖" title-width="200rpx" prop="fileList">
           <wd-upload
-            :auto-upload="false"
             :file-list="fileList"
             @change="handleFileChange"
           ></wd-upload>
@@ -98,7 +93,7 @@
       <wd-cell
         title="淇濆吇瀹屾垚(鎿嶄綔宸�)"
         title-width="200px"
-        v-if="order.status === '1' && isOperatorOrRepair()"
+        v-if="order.status === '1' && isLineOrRepair()"
       >
         <view style="text-align: right">
           <wd-switch v-model="isFinish" />
@@ -114,7 +109,7 @@
 import { reactive, onMounted } from 'vue'
 import { FormRules } from 'wot-design-uni/components/wd-form/types'
 import { useToast, useMessage } from 'wot-design-uni'
-import { isLeader, isOperatorOrRepair } from '@/utils/RoleUtils'
+import { isLeader, isLineOrRepair } from '@/utils/RoleUtils'
 const toast = useToast()
 const message = useMessage()
 
@@ -137,6 +132,7 @@
   endTime?: string
   maintDesc: string
   remark: string
+  picture: string
 }
 
 const order = reactive<MaintOrder>({
@@ -199,7 +195,7 @@
   toast.success('鎿嶄綔鎴愬姛')
 }
 
-function handleClickRight(data: any) {
+function handleSubmit(data: any) {
   message
     .confirm({
       msg: '纭畾鎻愪氦锛�',
@@ -208,61 +204,64 @@
         updateOrder(data, resolve)
       },
     })
-    .then(() => {})
+    .then(() => {
+      goBack()
+    })
     .catch((error) => {
       console.log(error)
     })
 }
 
-onNavigationBarButtonTap((e) => {
-  if (e.index === 0) {
-    // 绠$悊鍛樿鑹� 涓斿緟楠岃瘉鐘舵��
-    if (isLeader()) {
-      switch (order.status) {
-        case '0':
-        case '1':
-          toast.warning('褰撳墠宸ュ崟绛夊緟鎿嶄綔宸ヤ繚鍏荤姸鎬侊紝涓嶅彲鎿嶄綔')
-          break
-        case '2':
-          // 鍕鹃�夐獙璇侊紝鍙彁浜�
-          if (isVerify.value) {
-            // 淇敼宸ュ崟鐘舵�佷负宸插畬鎴�
-            const data: any = Object.assign({}, { id: order.id, status: order.status })
-            data.status = '3'
-            handleClickRight(data)
-          } else {
-            toast.warning('璇烽�夋嫨鏄惁楠岃瘉閫氳繃')
+const goBack = () => {
+  uni.navigateBack()
+}
+function handleClickRight() {
+  // 绠$悊鍛樿鑹� 涓斿緟楠岃瘉鐘舵��
+  if (isLeader()) {
+    switch (order.status) {
+      case '0':
+      case '1':
+        toast.warning('褰撳墠宸ュ崟绛夊緟鎿嶄綔宸ヤ繚鍏荤姸鎬侊紝涓嶅彲鎿嶄綔')
+        break
+      case '2':
+        // 鍕鹃�夐獙璇侊紝鍙彁浜�
+        if (isVerify.value) {
+          // 淇敼宸ュ崟鐘舵�佷负宸插畬鎴�
+          const data: any = Object.assign({}, { id: order.id, status: order.status })
+          data.status = '3'
+          handleSubmit(data)
+        } else {
+          toast.warning('璇烽�夋嫨鏄惁楠岃瘉閫氳繃')
+        }
+        break
+      case '3':
+        toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔')
+        break
+    }
+  } else if (isLineOrRepair()) {
+    switch (order.status) {
+      case '0':
+        break
+      case '1':
+        {
+          const data = Object.assign({}, order)
+          // 鍕鹃�夊伐鍗曞畬鎴愶紝鏀瑰彉鐘舵��
+          if (isFinish.value) {
+            // 淇敼宸ュ崟鐘舵�佷负寰呴獙璇�
+            data.status = '2'
           }
-          break
-        case '3':
-          toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔')
-          break
-      }
-    } else if (isOperatorOrRepair()) {
-      switch (order.status) {
-        case '0':
-          break
-        case '1':
-          {
-            const data = Object.assign({}, order)
-            // 鍕鹃�夊伐鍗曞畬鎴愶紝鏀瑰彉鐘舵��
-            if (isFinish.value) {
-              // 淇敼宸ュ崟鐘舵�佷负寰呴獙璇�
-              data.status = '2'
-            }
-            handleClickRight(data)
-          }
-          break
-        case '2':
-          toast.warning('褰撳墠宸ュ崟绛夊緟绠$悊楠岃瘉鐘舵�侊紝涓嶅彲鎿嶄綔')
-          break
-        case '3':
-          toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔')
-          break
-      }
+          handleSubmit(data)
+        }
+        break
+      case '2':
+        toast.warning('褰撳墠宸ュ崟绛夊緟绠$悊楠岃瘉鐘舵�侊紝涓嶅彲鎿嶄綔')
+        break
+      case '3':
+        toast.warning('褰撳墠宸ュ崟瀹屾垚鐘舵�侊紝涓嶅彲鎿嶄綔')
+        break
     }
   }
-})
+}
 
 onMounted(() => {})
 onLoad((options) => {

--
Gitblit v1.9.3