From fe3ce21a469f7e2584dbcb85cb75022d149f436c Mon Sep 17 00:00:00 2001
From: zuoxiao <zuoxiao>
Date: 星期二, 25 三月 2025 19:28:56 +0800
Subject: [PATCH] 更新灌溉计划页面,添加项目选择器和总灌溉时间计算功能;优化界面样式,增加SVG图标;修复项目列表和轮灌组显示逻辑;调整配置文件,添加libVersion字段。

---
 pages/home/home.js |  167 +++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 106 insertions(+), 61 deletions(-)

diff --git a/pages/home/home.js b/pages/home/home.js
index 080656a..944db7c 100644
--- a/pages/home/home.js
+++ b/pages/home/home.js
@@ -35,7 +35,8 @@
     showProjectDialog: false,
     selectedProject: '',
     avatarTapCount: 0,
-    isFromLogin: false
+    isFromLogin: false,
+    showTipDialog:''
   },
 
   openValve: function (e) {
@@ -91,7 +92,12 @@
    */
   onLoad(options) {
     console.log('home椤甸潰onLoad寮�濮嬶紝鍙傛暟:', options);
-
+     //褰撳紑闃�鎴愬姛鍚庤皟鐢ㄥ埛鏂�
+    if (options.param === "1" || options.param === "2") {
+        this.setData({
+          options: options
+        })
+      }
     // 妫�鏌ユ槸鍚︿粠鐧诲綍椤甸潰杩斿洖
     let fromLogin = false;
 
@@ -165,14 +171,46 @@
           // 鏍规嵁椤圭洰璁剧疆瀵瑰簲鐨則ag
           if (project === 'JYG') {
             getApp().globalData.tag = 'ym'; // 鍢夊唱鍏抽」鐩搴攖ag涓簓m
+            this.setData({
+              userName: "鍢夊唱鍏抽」鐩�"
+            });
           } else if (project === 'MQ') {
             getApp().globalData.tag = 'mq'; // 姘戝嫟椤圭洰瀵瑰簲tag涓簃q
+            this.setData({
+              userName: "姘戝嫟椤圭洰"
+            });
+            // 鍔犺浇姘戝嫟椤圭洰鎸佷箙鍖栧弬鏁�
+            return storage.getItemSafe('MQ_params')
+              .then(params => {
+                if (params) {
+                  getApp().globalData.operator = params.operator;
+                  getApp().globalData.clientId = params.clientId;
+                  getApp().globalData.isLoggedIn = params.isLoggedIn;
+                  getApp().globalData.sessionId = params.sessionId;
+                }
+                return Promise.resolve();
+              });
+          } else if (project === 'TEST') {
+            getApp().globalData.tag = 'ym'; // 娴嬭瘯椤圭洰瀵瑰簲tag涓簍est
+            this.setData({
+              userName: "娴嬭瘯椤圭洰"
+            });
+            // 鍔犺浇娴嬭瘯椤圭洰鎸佷箙鍖栧弬鏁�
+            return storage.getItemSafe('TEST_params')
+              .then(params => {
+                if (params) {
+                  getApp().globalData.operator = params.operator;
+                  getApp().globalData.clientId = params.clientId;
+                  getApp().globalData.isLoggedIn = params.isLoggedIn;
+                  getApp().globalData.sessionId = params.sessionId;
+                  getApp().globalData.vcId = params.vcId;
+                }
+                return Promise.resolve();
+              });
           }
 
-          console.log('鍔犺浇宸蹭繚瀛樼殑椤圭洰:', project, '鍩熷悕:', baseUrl, 'tag:', getApp().globalData.tag);
-
-          // 妫�鏌essionId鏄惁瀛樺湪
-          return storage.getItemSafe('sessionId');
+          // 缁х画鍒濆鍖栭〉闈�
+          this.continueInitPage(options);
         } else {
           // 棣栨杩涘叆锛屾樉绀洪」鐩�夋嫨寮圭獥
           this.setData({
@@ -184,26 +222,7 @@
           }); // 缁堟鍚庣画澶勭悊
         }
       })
-      .then(sessionId => {
-        if (sessionId) {
-          // 濡傛灉sessionId瀛樺湪锛岃缃叏灞�鐧诲綍鐘舵��
-          getApp().globalData.sessionId = sessionId;
-          getApp().globalData.isLoggedIn = true;
-
-          // 灏濊瘯鑾峰彇clientId
-          return storage.getItemSafe('clientId');
-        } else {
-          return Promise.reject({
-            type: 'session_not_found',
-            message: '鏈壘鍒皊essionId'
-          });
-        }
-      })
-      .then(clientId => {
-        if (clientId) {
-          getApp().globalData.clientId = clientId;
-        }
-
+      .then(() => {
         // 缁х画鍒濆鍖栭〉闈�
         this.continueInitPage(options);
       })
@@ -231,26 +250,6 @@
           return;
         }
 
-        // 澶勭悊鏈壘鍒皊essionId鐨勬儏鍐�
-        if (error.type === 'session_not_found' && this.data.selectedProject) {
-          // 妫�鏌ユ槸鍚﹀凡浠庣櫥褰曢〉杩斿洖
-          const isReturning = this.getFromLogin();
-          console.log('鏈壘鍒皊essionId锛屾槸鍚︿粠鐧诲綍椤佃繑鍥�:', isReturning);
-
-          // 濡傛灉宸茬粡鏄粠鐧诲綍椤佃繑鍥炵殑锛屼笉瑕佸啀璺冲洖鍘�
-          if (isReturning) {
-            console.log('宸茬粡浠庣櫥褰曢〉杩斿洖锛屼笉鍐嶈烦杞洖鍘�');
-            this.continueInitPage(options);
-            return;
-          }
-
-          console.log('鏈壘鍒皊essionId锛岃烦杞埌鐧诲綍椤�');
-          wx.redirectTo({
-            url: `/pages/login/login?project=${this.data.selectedProject}`
-          });
-          return;
-        }
-
         // 鍏朵粬鏈煡閿欒锛屽皾璇曠户缁垵濮嬪寲椤甸潰
         console.warn('鏈煡閿欒锛屽皾璇曠户缁垵濮嬪寲椤甸潰:', error);
         this.continueInitPage(options);
@@ -261,7 +260,22 @@
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚
    */
   onReady() {
-
+    if (this.data.options.param === "1") {
+        this.setData({
+          showTipDialog: true,
+          tipData: "寮�闃�鍛戒护涓嬪彂鎴愬姛锛屽洜寮�闃�闇�瑕佹椂闂达紝绾�20-60绉掑悗鍙埛鏂板揩閫熷叧闃�鍒楄〃鏌ョ湅鎵ц缁撴灉銆�"
+        })
+        setTimeout(() => {
+          this.getOpenList();
+        }, 20000)
+  
+      } else if (this.data.options.param === "2") {
+        this.setData({
+          showTipDialog: true,
+          tipData: "棰勭害寮�闃�鍛戒护涓嬪彂鎴愬姛锛屽綋鍒拌揪棰勭害鏃堕棿骞朵笖鎴愬姛寮�闃�鍚庡揩閫熷叧闃�鍒楄〃浼氭樉绀烘湭鍏抽榾璁板綍"
+        })
+        this.getOpenList();
+      }
   },
 
   /**
@@ -908,7 +922,9 @@
     // 鑾峰彇褰撳墠宸查�夐」鐩拰鏂伴�夋嫨鐨勯」鐩�
     const currentProject = getApp().globalData.selectedProject;
     const newProject = this.data.selectedProject;
-    const projectName = newProject === 'JYG' ? '鍢夊唱鍏抽」鐩�' : '姘戝嫟椤圭洰';
+    const projectName = newProject === 'JYG' ? '鍢夊唱鍏抽」鐩�' : 
+                       newProject === 'MQ' ? '姘戝嫟椤圭洰' : 
+                       newProject === 'TEST' ? '娴嬭瘯椤圭洰' : '鏈煡椤圭洰';
 
     // 妫�鏌ユ槸鍚﹀垏鎹簡椤圭洰锛堝鏋滃綋鍓嶉」鐩笉鍚屼簬鏂伴�夋嫨鐨勯」鐩級
     const isProjectChanged = currentProject && currentProject !== newProject;
@@ -955,11 +971,46 @@
       getApp().globalData.baseUrl = baseUrl;
       getApp().globalData.selectedProject = newProject;
 
-      // 鏍规嵁椤圭洰璁剧疆瀵瑰簲鐨則ag
+      // 鏍规嵁椤圭洰璁剧疆瀵瑰簲鐨則ag鍜宑lientId
       if (newProject === 'JYG') {
         getApp().globalData.tag = 'ym'; // 鍢夊唱鍏抽」鐩搴攖ag涓簓m
+        this.setData({
+          userName: "鍢夊唱鍏抽」鐩�"
+        });
       } else if (newProject === 'MQ') {
         getApp().globalData.tag = 'mq'; // 姘戝嫟椤圭洰瀵瑰簲tag涓簃q
+        getApp().globalData.operator = '2025030517095000006';
+        getApp().globalData.clientId = '2025030517095000006';
+        getApp().globalData.isLoggedIn = true;
+        getApp().globalData.sessionId = '2025030517095000006';
+        this.setData({
+          userName: "姘戝嫟椤圭洰"
+        });
+        // 鎸佷箙鍖栧瓨鍌ㄦ皯鍕ら」鐩弬鏁�
+        storage.setItem('MQ_params', {
+          operator: '2025030517095000006',
+          clientId: '2025030517095000006',
+          isLoggedIn: true,
+          sessionId: '2025030517095000006'
+        });
+      } else if (newProject === 'TEST') {
+        getApp().globalData.tag = 'ym'; // 娴嬭瘯椤圭洰瀵瑰簲tag涓簍est
+        getApp().globalData.operator = '2025032411245000006';
+        getApp().globalData.clientId = '2025032411245000006';
+        getApp().globalData.isLoggedIn = true;
+        getApp().globalData.sessionId = '2025032411245000006';
+        getApp().globalData.vcId = '2024122617295800009';
+        this.setData({
+          userName: "娴嬭瘯椤圭洰"
+        });
+        // 鎸佷箙鍖栧瓨鍌ㄦ祴璇曢」鐩弬鏁�
+        storage.setItem('TEST_params', {
+          operator: '2025032411245000006',
+          clientId: '2025032411245000006',
+          isLoggedIn: true,
+          sessionId: '2025032411245000006',
+          vcId: '2024122617295800009'
+        });
       }
 
       console.log('宸插垏鎹㈠埌椤圭洰:', projectName, '鍩熷悕:', baseUrl, 'tag:', getApp().globalData.tag);
@@ -970,22 +1021,16 @@
 
       // 鏄剧ず鍒囨崲鎴愬姛鎻愮ず
       wx.showToast({
-        title: isProjectChanged ? `宸插垏鎹㈣嚦${projectName}锛岃閲嶆柊鐧诲綍` : `宸查�夋嫨${projectName}`,
+        title: `宸查�夋嫨${projectName}`,
         icon: 'success',
         duration: 2000
       });
 
-      // 濡傛灉鍒囨崲浜嗛」鐩紝寤惰繜璺宠浆鍒扮櫥褰曢〉闈�
-      if (isProjectChanged) {
-        setTimeout(() => {
-          console.log('椤圭洰宸插垏鎹紝姝e湪璺宠浆鍒扮櫥褰曢〉闈�');
-          wx.redirectTo({
-            url: `/pages/login/login?project=${newProject}`,
-            success: () => console.log('鎴愬姛璺宠浆鍒扮櫥褰曢〉'),
-            fail: (err) => console.error('璺宠浆鍒扮櫥褰曢〉澶辫触:', err)
-          });
-        }, 2000);
-      }
+      // 鐩存帴鍒濆鍖栨暟鎹�
+      setTimeout(() => {
+        console.log('椤圭洰宸插垏鎹紝姝e湪鍒濆鍖栨暟鎹�');
+        this.initData();
+      }, 1000);
     }).catch(err => {
       console.error('淇濆瓨椤圭洰閫夋嫨澶辫触锛�', err);
       wx.showToast({

--
Gitblit v1.8.0