From 375c18a6d2713ff19b22093eec57315992d8333f Mon Sep 17 00:00:00 2001
From: Codex Assistant <codex@example.com>
Date: 星期四, 06 十一月 2025 13:33:52 +0800
Subject: [PATCH] 增加评审下载
---
wx/pages/profile/profile.wxml | 119 +++++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 87 insertions(+), 32 deletions(-)
diff --git a/wx/pages/profile/profile.wxml b/wx/pages/profile/profile.wxml
index f3574a8..6b3b802 100644
--- a/wx/pages/profile/profile.wxml
+++ b/wx/pages/profile/profile.wxml
@@ -21,54 +21,109 @@
<text class="avatar-text">{{avatarText}}</text>
</view>
</view>
- <text class="user-name">{{userInfo.name || 'Ethan'}}</text>
- <text class="user-role">{{userRoles.includes('JUDGE') ? '璇勫' : userRoles.includes('ORGANIZER') ? '涓诲姙鏂�' : '鍙傝禌鑰�'}}</text>
+ <view class="user-info">
+ <text class="user-name">{{userInfo.name || 'Ethan'}}</text>
+ <text class="user-role">{{userRoles.includes('JUDGE') ? '璇勫' : userRoles.includes('ORGANIZER') ? '涓诲姙鏂�' : '鍙傝禌鑰�'}}</text>
+ </view>
+ <view class="settings-btn" bindtap="goToPersonalInfo">
+ <text class="icon-settings">鈿欙笍</text>
+ </view>
</view>
<!-- 鎴戠殑椤圭洰鍖哄煙 -->
<view class="projects-section">
<text class="section-title">鎴戠殑椤圭洰</text>
- <view class="project-list">
- <view class="project-card project-a" bindtap="onMenuItemTap" data-path="/pages/profile/registrations">
+ <view class="project-list" wx:if="{{userProjects && userProjects.length > 0}}">
+ <view
+ class="project-card"
+ wx:for="{{userProjects}}"
+ wx:key="id"
+ bindtap="goToProjectDetail"
+ data-project-id="{{item.id}}"
+ >
<view class="project-icon">
- <text class="icon-plant">馃尡</text>
+ <!-- 濡傛灉鏈夌缉鐣ュ浘锛屾樉绀哄浘鐗� -->
+ <image
+ wx:if="{{item.thumbnailUrl}}"
+ class="project-thumbnail"
+ src="{{item.thumbnailUrl}}"
+ mode="aspectFill"
+ />
+ <!-- 鍚﹀垯鏄剧ず鍥炬爣 -->
+ <text wx:else class="icon {{item.icon}}"></text>
</view>
<view class="project-info">
- <text class="project-name">鎴戠殑鎶ュ悕</text>
- <text class="project-desc">鏌ョ湅鎶ュ悕璁板綍</text>
+ <text class="project-title">{{item.projectName || '鏈懡鍚嶉」鐩�'}}</text>
+ <text class="project-subtitle">{{item.activityName || ''}}</text>
+ </view>
+ <view class="project-status">
+ <text class="status-text status-{{item.statusType}}">{{item.statusText}}</text>
</view>
<text class="project-arrow">></text>
</view>
- <view class="project-card project-b" bindtap="onMenuItemTap" data-path="/pages/profile/achievements">
- <view class="project-icon">
- <text class="icon-trophy">馃弳</text>
- </view>
- <view class="project-info">
- <text class="project-name">鎴戠殑鎴愮哗</text>
- <text class="project-desc">鏌ョ湅娲诲姩鎴愮哗</text>
- </view>
- <text class="project-arrow">></text>
+ </view>
+ <view class="empty-projects" wx:else>
+ <text class="empty-icon">馃搵</text>
+ <text class="empty-text">鏆傛棤椤圭洰</text>
+ <text class="empty-desc">鍙傚姞娲诲姩鍚庯紝鎮ㄧ殑椤圭洰灏嗗湪杩欓噷鏄剧ず</text>
+ </view>
+ </view>
+
+ <!-- 鎴戠殑璇勫鍖哄煙 - 浠呰瘎濮斿彲瑙� -->
+ <view class="review-section" wx:if="{{isJudge}}">
+ <view class="section-header">
+ <text class="section-title">鎴戠殑璇勫</text>
+ <view class="review-action-btn" bindtap="goToReviewPage">
+ <text class="action-text">璇勫</text>
+ <text class="action-arrow">></text>
+ </view>
+ </view>
+
+ <view class="review-stats">
+ <view class="stat-item">
+ <text class="stat-number">{{judgeStats.pendingReviews || 0}}</text>
+ <text class="stat-label">寰呰瘎瀹�</text>
+ </view>
+ <view class="stat-divider"></view>
+ <view class="stat-item">
+ <text class="stat-number">{{judgeStats.completedReviews || 0}}</text>
+ <text class="stat-label">宸茶瘎瀹�</text>
+ </view>
+ <view class="stat-divider"></view>
+ <view class="stat-item">
+ <text class="stat-number">{{judgeStats.studentUnReviewedCount || 0}}</text>
+ <text class="stat-label">瀛﹀憳鏈瘎瀹�</text>
</view>
</view>
</view>
- <!-- 鍏朵粬鍔熻兘鑿滃崟 -->
- <view class="other-menu-section">
- <view class="menu-item-simple" bindtap="onMenuItemTap" data-path="/pages/profile/favorites">
- <text class="menu-icon">猸�</text>
- <text class="menu-title">鎴戠殑鏀惰棌</text>
- <text class="menu-arrow">></text>
+ <!-- 鎴戠殑瀹℃牳鍖哄煙 - 浠呭憳宸ュ彲瑙� -->
+ <view class="review-section" wx:if="{{isEmployee}}">
+ <view class="section-header">
+ <text class="section-title">鎴戠殑瀹℃牳</text>
+ <view class="review-action-btn" bindtap="goToEmployeeReviewPage">
+ <text class="action-text">瀹℃牳</text>
+ <text class="action-arrow">></text>
+ </view>
</view>
- <view class="menu-item-simple" bindtap="onMenuItemTap" data-path="/pages/profile/settings">
- <text class="menu-icon">鈿欙笍</text>
- <text class="menu-title">璁剧疆</text>
- <text class="menu-arrow">></text>
- </view>
- <view class="menu-item-simple" bindtap="onLogout">
- <text class="menu-icon">馃毆</text>
- <text class="menu-title">閫�鍑虹櫥褰�</text>
- <text class="menu-arrow">></text>
+
+ <view class="review-stats">
+ <view class="stat-item">
+ <text class="stat-number">{{employeeReviewStats.pendingCount || 0}}</text>
+ <text class="stat-label">寰呭鏍�</text>
+ </view>
+ <view class="stat-divider"></view>
+ <view class="stat-item">
+ <text class="stat-number">{{employeeReviewStats.approvedCount || 0}}</text>
+ <text class="stat-label">宸插鏍�</text>
+ </view>
+ <view class="stat-divider"></view>
+ <view class="stat-item">
+ <text class="stat-number">{{employeeReviewStats.rejectedCount || 0}}</text>
+ <text class="stat-label">椹冲洖</text>
+ </view>
</view>
</view>
+
</view>
-</view>
\ No newline at end of file
+</view>
--
Gitblit v1.8.0