123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- <view class="checkin-container">
- <!-- 用户信息栏 -->
- <view class="user-header">
- <view class="user-info">
- <image class="avatar" src="{{userInfo.avatar || appAssetsUrl2 + 'new/user.png'}}" mode="aspectFill"></image>
- <view class="user-details">
- <view class="nickname">{{userInfo.nickname}} 👑</view>
- </view>
- </view>
- <view class="points-info">
- <view class="points-number">{{userInfo.points}}</view>
- <view class="points-label">我的积分</view>
- </view>
- </view>
- <!-- 签到标题和月份 -->
- <view class="checkin-header">
- <view class="checkin-title">每日签到</view>
- <view class="month-info">{{currentYear}}.{{currentMonth}}月</view>
- </view>
- <!-- 日历组件 -->
- <view class="calendar-container">
- <!-- 星期标题 -->
- <view class="weekdays">
- <view class="weekday" wx:for="{{weekdays}}" wx:key="index">{{item}}</view>
- </view>
-
- <!-- 日期网格 -->
- <view class="calendar-grid">
- <view class="calendar-day {{item.isEmpty ? 'empty' : ''}} {{item.isToday ? 'today' : ''}} {{item.isChecked ? 'checked' : ''}}"
- wx:for="{{calendarDays}}" wx:key="index">
- <view class="day-number" wx:if="{{!item.isEmpty}}">{{item.day}}</view>
- <view class="check-dot" wx:if="{{item.isChecked && !item.isEmpty}}"></view>
- </view>
- </view>
- </view>
- <!-- 签到按钮 -->
- <view class="checkin-btn-container">
- <button class="checkin-btn {{isCheckedToday ? 'disabled' : ''}}"
- bindtap="handleCheckin"
- disabled="{{isCheckedToday}}">
- {{isCheckedToday ? '今日已签到' : '立即签到'}}
- </button>
- </view>
- <!-- 积分任务 -->
- <view class="tasks-section">
- <view class="tasks-title">积分任务</view>
- <view class="tasks-list">
- <view class="task-item" wx:for="{{tasks}}" wx:key="id" bindtap="handleTaskClick" data-id="{{item.id}}">
- <view class="task-content">
- <image class="task-icon" src="{{item.icon || appAssetsUrl2 + 'new/user.png'}}" mode="aspectFit"></image>
- <view class="task-info">
- <view class="task-title">{{item.title}} {{item.count || ''}}</view>
- <view class="task-desc">{{item.desc}}</view>
- </view>
- </view>
- <view class="task-action">
- <text class="action-text">{{item.status}}</text>
- </view>
- </view>
- </view>
- </view>
- </view>
|