From 2d410989d32380d31ae3fe6d42aa3b3ba9e09d00 Mon Sep 17 00:00:00 2001
From: lrj <owen.stl@gmail.com>
Date: 星期五, 03 十月 2025 22:13:29 +0800
Subject: [PATCH] UI优化和bug修复: 1.调整小程序消息列表图标样式 2.优化web端比赛晋级页面布局 3.修复小程序消息列表日期显示问题

---
 wx/pages/registration/registration.js |   75 +++++++++++++++++++++++++++++++++++++
 1 files changed, 74 insertions(+), 1 deletions(-)

diff --git a/wx/pages/registration/registration.js b/wx/pages/registration/registration.js
index f4ca562..68e7b91 100644
--- a/wx/pages/registration/registration.js
+++ b/wx/pages/registration/registration.js
@@ -10,6 +10,9 @@
     activity: null,
     loading: false,
     userInfo: null, // 褰撳墠鐢ㄦ埛淇℃伅
+    // 鎶ュ悕鐘舵�佹帶鍒�
+    submitDisabled: false,
+    submitText: '鎻愪氦鎶ュ悕',
     
     // 琛ㄥ崟鏁版嵁
     formData: {
@@ -98,6 +101,9 @@
       this.setData({
         activityId: activityId
       })
+      // 浼樺厛妫�鏌ユ姤鍚嶇姸鎬�
+      this.checkRegistrationStatus(activityId)
+      // 鍔犺浇娲诲姩淇℃伅
       this.loadActivityInfo()
     } else {
       console.log('鉂� 娌℃湁鎺ユ敹鍒癮ctivityId鍙傛暟')
@@ -111,7 +117,15 @@
     
     // 鍔犺浇鍖哄煙鏁版嵁
     this.loadRegions()
-  }
+  },
+
+  onShow() {
+    // 杩斿洖鏈〉鏃跺埛鏂版姤鍚嶇姸鎬�
+    const { activityId } = this.data
+    if (activityId) {
+      this.checkRegistrationStatus(activityId)
+    }
+  },
 
   // 鍔犺浇娲诲姩淇℃伅
   async loadActivityInfo() {
@@ -1158,6 +1172,14 @@
 
   async onSubmit() {
     if (this.data.isSubmitting) return
+    if (this.data.submitDisabled) {
+      // 绂佺敤鎬佺洿鎺ユ嫤鎴偣鍑�
+      wx.showToast({
+        title: this.data.submitText,
+        icon: 'none'
+      })
+      return
+    }
     
     // 琛ㄥ崟楠岃瘉
     if (!this.validateForm()) {
@@ -1418,6 +1440,57 @@
     }
   },
 
+  // 妫�鏌ュ綋鍓嶆椿鍔ㄧ殑鎶ュ悕鐘舵�侊紝杩涘叆椤甸潰鏃惰皟鐢�
+  async checkRegistrationStatus(activityId) {
+    try {
+      // GraphQL 鏌ヨ鏈�鏂版姤鍚嶇姸鎬侊紙鍚庣杩斿洖鏈�鏂颁竴鏉¤褰曪級
+      const query = `
+        query GetPlayerRegistrationState($activityId: ID!) {
+          getPlayerRegistrationState(activityId: $activityId) {
+            id
+            status
+            registrationTime
+            reviewStatus
+            reviewComment
+          }
+        }
+      `
+      const res = await app.graphqlRequest(query, { activityId: parseInt(activityId) })
+      console.log('馃煢 鎶ュ悕鐘舵�佹煡璇㈢粨鏋滃師濮�:', res)
+
+      // 鍏煎澶氱杩斿洖缁撴瀯
+      const dataRoot = res?.getPlayerRegistrationState
+        || res?.playerRegistration
+        || res?.data?.getPlayerRegistrationState
+        || res?.data?.playerRegistration
+
+      let submitDisabled = false
+      let submitText = '鎻愪氦鎶ュ悕'
+
+      if (dataRoot && dataRoot.status !== undefined && dataRoot.status !== null) {
+        const statusNum = Number(dataRoot.status)
+        console.log('馃煢 瑙f瀽鍒版姤鍚嶇姸鎬�:', statusNum)
+        if (statusNum === 1) {
+          submitDisabled = true
+          submitText = '宸茬粡鎶ュ悕'
+        } else if (statusNum === 0) {
+          submitDisabled = true
+          submitText = '绛夊緟瀹℃牳'
+        } else {
+          submitDisabled = false
+          submitText = '鎻愪氦鎶ュ悕'
+        }
+      } else {
+        console.log('馃煢 鏈壘鍒版姤鍚嶈褰曟垨鐘舵�侊紝鍏佽鎻愪氦')
+      }
+
+      this.setData({ submitDisabled, submitText })
+    } catch (err) {
+      console.warn('鈿狅笍 鎶ュ悕鐘舵�佹煡璇㈠け璐ワ紝鍏佽鐢ㄦ埛鎻愪氦:', err)
+      this.setData({ submitDisabled: false, submitText: '鎻愪氦鎶ュ悕' })
+    }
+  },
+
   // 鑾峰彇鏂囦欢鎵╁睍鍚�
   getFileExtension(fileName) {
     if (!fileName) return ''

--
Gitblit v1.8.0