From d4fe921568bc29d72644a55fd194adf7f9277cb5 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期六, 22 十一月 2025 15:28:35 +0800
Subject: [PATCH] feat: 将旧系统数据同步到新系统

---
 app/pages/task/index.vue |   54 +++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 35 insertions(+), 19 deletions(-)

diff --git a/app/pages/task/index.vue b/app/pages/task/index.vue
index 6fa2349..0358e7f 100644
--- a/app/pages/task/index.vue
+++ b/app/pages/task/index.vue
@@ -108,7 +108,7 @@
       
       <scroll-view class="task-list-scroll" scroll-y="true">
         <view class="task-list">
-          <view class="task-item" v-for="task in filteredTaskList" :key="task.id">
+          <view class="task-item" v-for="task in filteredTaskList" :key="task.taskId">
             <view class="task-main" @click="viewTaskDetail(task)">
               <!-- 浠诲姟澶撮儴锛氭爣棰樺拰鐘舵�佹爣绛� -->
               <view class="task-header">
@@ -220,6 +220,7 @@
   import uniDatetimePicker from '@/uni_modules/uni-datetime-picker/components/uni-datetime-picker/uni-datetime-picker.vue'
   import { listTask, changeTaskStatus } from '@/api/task'
   import { mapState } from 'vuex'
+  import { formatDateTime } from '@/utils/common'
   
   export default {
     components: {
@@ -322,11 +323,28 @@
     },
     onLoad() {
       this.loadTaskList()
+      
+      // 鐩戝惉浠诲姟鍒楄〃鍒锋柊浜嬩欢
+      uni.$on('refreshTaskList', this.handleRefreshEvent)
+    },
+    onShow() {
+      // 椤甸潰鏄剧ず鏃跺埛鏂板垪琛紙浠庡叾浠栭〉闈㈣繑鍥炴椂锛�
+      this.loadTaskList()
+    },
+    onUnload() {
+      // 椤甸潰閿�姣佹椂绉婚櫎浜嬩欢鐩戝惉
+      uni.$off('refreshTaskList', this.handleRefreshEvent)
     },
     onPullDownRefresh() {
       this.refreshList()
     },
     methods: {
+      // 澶勭悊鍒锋柊浜嬩欢
+      handleRefreshEvent() {
+        console.log('鏀跺埌鍒锋柊浠诲姟鍒楄〃浜嬩欢')
+        this.refreshList()
+      },
+      
       // 鍔犺浇浠诲姟鍒楄〃
       loadTaskList() {
         this.loading = true
@@ -359,7 +377,7 @@
               vehicleList: task.assignedVehicles || [],
               startLocation: this.formatAddress(task.departureAddress || task.startLocation || '鏈缃�'),
               endLocation: this.formatAddress(task.destinationAddress || task.endLocation || '鏈缃�'),
-              startTime: task.plannedStartTime ? this.formatDateTime(task.plannedStartTime) : '鏈缃�',
+              startTime: task.plannedStartTime ? formatDateTime(task.plannedStartTime, 'YYYY-MM-DD HH:mm') : '鏈缃�',
               assignee: task.assigneeName || '鏈垎閰�'
             }
           })
@@ -367,19 +385,6 @@
           this.loading = false
           console.error('鍔犺浇浠诲姟鍒楄〃澶辫触:', error)
           this.$modal.showToast('鍔犺浇浠诲姟鍒楄〃澶辫触')
-        })
-      },
-      
-      // 鏍煎紡鍖栨棩鏈熸椂闂�
-      formatDateTime(dateTime) {
-        if (!dateTime) return ''
-        const date = new Date(dateTime)
-        return date.toLocaleString('zh-CN', {
-          year: 'numeric',
-          month: '2-digit',
-          day: '2-digit',
-          hour: '2-digit',
-          minute: '2-digit'
         })
       },
       
@@ -429,7 +434,7 @@
         this.loadTaskList()
         setTimeout(() => {
           this.refreshing = false
-          this.$modal.showToast('鍒楄〃宸插埛鏂�');
+          // this.$modal.showToast('鍒楄〃宸插埛鏂�');
           // 鍋滄涓嬫媺鍒锋柊
           uni.stopPullDownRefresh()
         }, 1000)
@@ -442,8 +447,17 @@
       
       // 鏌ョ湅浠诲姟璇︽儏
       viewTaskDetail(task) {
-        // 璺宠浆鍒颁换鍔¤鎯呴〉闈� - 淇:浣跨敤taskId鑰屼笉鏄痠d
-        this.$tab.navigateTo(`/pages/task/detail?id=${task.taskId}`);
+        // 闃插尽鎬ф鏌�
+        if (!task || !task.taskId) {
+          console.error('浠诲姟鏁版嵁鏃犳晥:', task)
+          this.$modal.showToast('浠诲姟鏁版嵁寮傚父')
+          return
+        }
+        
+        // 璺宠浆鍒颁换鍔¤鎯呴〉闈� - 浣跨敤uni.navigateTo
+        uni.navigateTo({
+          url: `/pages/task/detail?id=${task.taskId}`
+        });
       },
       
       // 澶勭悊浠诲姟鎿嶄綔
@@ -528,6 +542,7 @@
             
             changeTaskStatus(taskId, statusData).then(response => {
               that.$modal.showToast('鐘舵�佹洿鏂版垚鍔�')
+              // 鍒锋柊浠诲姟鍒楄〃
               that.loadTaskList()
             }).catch(error => {
               console.error('鏇存柊浠诲姟鐘舵�佸け璐�:', error)
@@ -545,6 +560,7 @@
               
               changeTaskStatus(taskId, statusData).then(response => {
                 that.$modal.showToast('鐘舵�佹洿鏂版垚鍔�')
+                // 鍒锋柊浠诲姟鍒楄〃
                 that.loadTaskList()
               }).catch(error => {
                 console.error('鏇存柊浠诲姟鐘舵�佸け璐�:', error)
@@ -587,7 +603,7 @@
           'MAINTENANCE': '缁翠慨淇濆吇',
           'FUEL': '鍔犳补',
           'OTHER': '鍏朵粬',
-          'EMERGENCY_TRANSFER': '鎬ユ晳杞繍',
+          'EMERGENCY_TRANSFER': '杞繍浠诲姟',
           'WELFARE': '绂忕杞�'
         }
         return typeMap[type] || '鏈煡绫诲瀷'

--
Gitblit v1.9.1