index.wxml 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <view class="checkin-container">
  2. <!-- 用户信息栏 -->
  3. <view class="user-header">
  4. <view class="user-info">
  5. <image class="avatar" src="{{userInfo.memberphoto || appAssetsUrl2 + 'new/user.png'}}" mode="aspectFill"></image>
  6. <view class="user-details">
  7. <view class="nickname">{{userInfo.vipname}} 👑</view>
  8. </view>
  9. </view>
  10. <view class="points-info">
  11. <view class="points-number" bindtap="onPointsTap">{{totalScore||0}}</view>
  12. <view class="points-label">我的积分</view>
  13. </view>
  14. </view>
  15. <!-- 签到标题和月份 -->
  16. <view class="checkin-header">
  17. <view class="checkin-title">每日签到</view>
  18. <view class="month-info">{{currentYear}}.{{currentMonth}}月</view>
  19. </view>
  20. <!-- 日历组件 -->
  21. <view class="calendar-container">
  22. <!-- 星期标题 -->
  23. <view class="weekdays">
  24. <view class="weekday" wx:for="{{weekdays}}" wx:key="index">{{item}}</view>
  25. </view>
  26. <!-- 日期网格 -->
  27. <view class="calendar-grid">
  28. <view class="calendar-day {{item.isEmpty ? 'empty' : ''}} {{item.isToday && !item.isChecked ? 'today' : ''}} {{item.isChecked ? 'checked' : ''}}" wx:for="{{calendarDays}}" wx:key="index">
  29. <view class="day-number" wx:if="{{!item.isEmpty}}">{{item.day}}</view>
  30. <view class="check-dot" wx:if="{{item.isChecked && !item.isEmpty}}">√</view>
  31. </view>
  32. </view>
  33. <!-- 签到按钮 -->
  34. <view class="checkin-btn-container">
  35. <button class="checkin-btn {{isCheckedToday ? 'disabled' : ''}}" bindtap="handleCheckin" disabled="{{isCheckedToday}}">{{
  36. isCheckedToday ? '今日已签到' : '立即签到'
  37. }}</button>
  38. </view>
  39. </view>
  40. <!-- 积分任务 -->
  41. <view class="tasks-section">
  42. <view class="tasks-title">积分任务</view>
  43. <view class="tasks-list">
  44. <view class="task-item" wx:for="{{tasks}}" wx:key="id" bindtap="handleTaskClick" data-item="{{item}}">
  45. <view class="task-content">
  46. <view class="box">
  47. <image class="task-icon" wx:if="{{item.taskName=='邀请好友'}}" mode="widthFix" src="/assets/images/task-icon/icon_1.png"></image>
  48. <!--
  49. <image class="task-icon" wx:if="{{item.taskName=='观看广告'}}" mode="widthFix" src="/assets/images/task-icon/icon_2.png"></image>
  50. -->
  51. <image class="task-icon" wx:if="{{item.taskName=='参加兼职/成长会' || item.taskName=='参与兼职'}}" mode="widthFix" src="/assets/images/task-icon/icon_3.png"></image>
  52. <image class="task-icon" wx:if="{{item.taskName=='每日签到'}}" mode="widthFix" src="/assets/images/task-icon/icon_4.png"></image>
  53. <image class="task-icon" wx:if="{{item.taskName=='购买会员' || item.taskName=='开通会员'}}" mode="widthFix" src="/assets/images/task-icon/icon_5.png"></image>
  54. <image class="task-icon" wx:if="{{item.taskName=='学籍认证' || item.taskName=='完成学籍认证'}}" mode="widthFix" src="/assets/images/task-icon/icon_6.png"></image>
  55. <image class="task-icon" wx:if="{{item.taskName=='完善资料' || item.taskName=='完善个人资料'}}" mode="widthFix" src="/assets/images/task-icon/icon_7.png"></image>
  56. <image class="task-icon" wx:if="{{item.taskName=='参与活动'}}" mode="widthFix" src="/assets/images/task-icon/icon_8.png"></image>
  57. </view>
  58. <view class="task-info">
  59. <view class="task-title">{{item.taskName}}</view>
  60. <view class="task-desc">{{item.desc}}</view>
  61. </view>
  62. </view>
  63. <view class="task-action {{item.complete ? 'complete' : ''}}">
  64. <text class="action-text">{{item.complete ? '已完成' : '去完成'}}</text>
  65. </view>
  66. </view>
  67. </view>
  68. </view>
  69. </view>