From a2c5def7cf9562312a54216bc195a6ea071a26c5 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期三, 21 一月 2026 17:38:36 +0800
Subject: [PATCH] 2026.1.21

---
 pages/mSelfPatrol/components/self-patrol/index.js |   82 ++++++++++++++++++++++++++++++++++------
 1 files changed, 69 insertions(+), 13 deletions(-)

diff --git a/pages/mSelfPatrol/components/self-patrol/index.js b/pages/mSelfPatrol/components/self-patrol/index.js
index 6a27a13..5791ed7 100644
--- a/pages/mSelfPatrol/components/self-patrol/index.js
+++ b/pages/mSelfPatrol/components/self-patrol/index.js
@@ -1,4 +1,7 @@
-import { parseSelfPatrol, refreshLedgerStatus } from '../../../../model/ledger';
+import {
+  parseSelfPatrol,
+  refreshLedgerStatus
+} from '../../../../model/ledger';
 import configservice from '../../../../service/configservice';
 const ledgerservice = require('../../../../service/ledgerservice');
 const moment = require('../../../../utils/moment.min');
@@ -16,11 +19,14 @@
   data: {
     refresh: false,
     thisMonth: '',
-    tags1: { count: 0 },
+    tags1: {
+      count: 0
+    },
     pageList1: [],
     // 鏄惁鏈夋潈闄愬彲浠ヨ繘琛岃嚜宸℃煡鎵胯
     promiseValid: app.globalData.userSetting.selfPatrolPromise,
-    promised: false
+    // 鏄惁宸叉壙璇�
+    promised: false,
   },
 
   lifetimes: {
@@ -37,7 +43,9 @@
       const now = moment();
       const nowStr = now.format('YYYY-MM-DD');
       const thisMonth = now.format('YYYY骞碝M鏈�');
-      this.setData({ thisMonth });
+      this.setData({
+        thisMonth
+      });
       this.getLedgerType(nowStr, r => {
         this.setData({
           tags1: {
@@ -50,14 +58,24 @@
           refresh: false,
         });
       });
+      this.getPromise()
     },
 
+    /**
+     * 鏌ヨ鐢ㄦ埛鏄惁瀹屾垚鑷贰鏌ユ壙璇�
+     */
     getPromise() {
-      configservice.fetchUserSettingRecord(app.globalData.accessToken.userId, {
-        success: res => {
-          
-        },
-      })
+      if (this.data.promiseValid) {
+        configservice.fetchUserSettingRecord(app.globalData.accessToken.userId, {
+          success: res => {
+            const nowYear = moment().year()
+            const promiseYear = moment(res.data?.lastPromisedTime).year()
+            this.setData({
+              promised: (res.data?.selfPatrolPromised == true) && (nowYear == promiseYear)
+            })
+          },
+        })
+      }
     },
 
     getLedgerType(time, success, lastMonth) {
@@ -65,8 +83,7 @@
       ledgerservice.getLedgerSummary(
         app.globalData.accessToken.userId,
         app.globalData.userInfo.extension2,
-        time,
-        {
+        time, {
           success(res) {
             let r = parseSelfPatrol(res);
             success(r);
@@ -76,7 +93,9 @@
     },
 
     gotoLedgerDetail(e) {
-      const { index } = e.currentTarget.dataset;
+      const {
+        index
+      } = e.currentTarget.dataset;
       const indexGroup = index;
       var ledger = this.data.pageList1[index];
       var that = this;
@@ -118,5 +137,42 @@
         },
       });
     },
+
+    /**
+     * 璺宠浆鑷宠嚜宸℃煡鎵胯鐣岄潰
+     */
+    gotoPromise() {
+      wx.navigateTo({
+        url: '/pages/mSelfPatrol/patrolpromise/index',
+        events: {
+          doPromiseDone: (data)=> {
+            this.setData({
+              promised: data.promised
+            })
+          },
+        },
+        success: (res)=> {
+          // 閫氳繃 eventChannel 鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�
+          // res.eventChannel.emit('acceptDataFromOpenerPage', {
+
+          // });
+        },
+      });
+    },
+
+    /**
+     * 鏌ョ湅鑷贰鏌ユ壙璇�
+     */
+    reviewPromise() {
+      wx.navigateTo({
+        url: '/pages/mSelfPatrol/patrolpromise/index',
+        success: (res)=> {
+          // 閫氳繃 eventChannel 鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�
+          res.eventChannel.emit('acceptDataFromOpenerPage', {
+            review: true
+          });
+        },
+      });
+    }
   },
-});
+});
\ No newline at end of file

--
Gitblit v1.9.3