|
@ -26,9 +26,9 @@ |
|
|
<view class="ticket-num">+ {{ day.num }}</view> |
|
|
<view class="ticket-num">+ {{ day.num }}</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
<button class="checkin-btn" :class="{ 'checked-btn': isSign }" :disabled="isSign" |
|
|
|
|
|
|
|
|
<button class="checkin-btn" :class="{ 'checked-btn': !canSignToday }" :disabled="!canSignToday" |
|
|
@click="clickSignTask"> |
|
|
@click="clickSignTask"> |
|
|
{{ isSign ? '已签到' : '签到得奖励' }} |
|
|
|
|
|
|
|
|
{{ !canSignToday ? '已签到' : '签到得奖励' }} |
|
|
</button> |
|
|
</button> |
|
|
</view> |
|
|
</view> |
|
|
<!-- 更多任务 --> |
|
|
<!-- 更多任务 --> |
|
@ -36,14 +36,16 @@ |
|
|
<view class="more-header">更多任务</view> |
|
|
<view class="more-header">更多任务</view> |
|
|
<view class="task-list"> |
|
|
<view class="task-list"> |
|
|
<view class="task-item" v-for="(task, idx) in list" :key="idx" |
|
|
<view class="task-item" v-for="(task, idx) in list" :key="idx" |
|
|
:class="{ 'no-border': idx === tasks.length - 1 }"> |
|
|
|
|
|
|
|
|
:class="{ 'no-border': idx == list.length - 1 }"> |
|
|
<view class="task-info"> |
|
|
<view class="task-info"> |
|
|
<view class="task-title">{{ task.title }}</view> |
|
|
<view class="task-title">{{ task.title }}</view> |
|
|
<view class="task-desc">推荐票 +{{ task.num }}</view> |
|
|
<view class="task-desc">推荐票 +{{ task.num }}</view> |
|
|
</view> |
|
|
</view> |
|
|
<button class="get-btn" :class="{ 'received-btn': task.commonTaskLog }" |
|
|
|
|
|
:disabled="task.commonTaskLog" @click="clickMoreTask(task.id)"> |
|
|
|
|
|
{{ task.commonTaskLog ? '已领取' : '去领取' }} |
|
|
|
|
|
|
|
|
<button class="get-btn" |
|
|
|
|
|
:class="{ 'received-btn': task.commonTaskLog || !task.isTask }" |
|
|
|
|
|
:disabled="task.commonTaskLog" |
|
|
|
|
|
@click="clickMoreTask(task)"> |
|
|
|
|
|
{{ task.commonTaskLog ? '已领取' : (task.isTask ? '去领取' : '未达成') }} |
|
|
</button> |
|
|
</button> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
@ -67,19 +69,6 @@ |
|
|
data() { |
|
|
data() { |
|
|
return { |
|
|
return { |
|
|
checkedDays: 3, // 已签到天数 |
|
|
checkedDays: 3, // 已签到天数 |
|
|
tasks: [{ |
|
|
|
|
|
title: '观看视频广告', |
|
|
|
|
|
received: false |
|
|
|
|
|
}, |
|
|
|
|
|
{ |
|
|
|
|
|
title: '每日首阅三个章节', |
|
|
|
|
|
received: false |
|
|
|
|
|
}, |
|
|
|
|
|
{ |
|
|
|
|
|
title: '每日首条评论', |
|
|
|
|
|
received: false |
|
|
|
|
|
}, |
|
|
|
|
|
], |
|
|
|
|
|
clockList: [], |
|
|
clockList: [], |
|
|
isChecked: false, // 新增:签到按钮状态 |
|
|
isChecked: false, // 新增:签到按钮状态 |
|
|
maxVote: 0, |
|
|
maxVote: 0, |
|
@ -88,10 +77,6 @@ |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
computed: { |
|
|
computed: { |
|
|
isSign() { |
|
|
|
|
|
// 如果今日不可签到,则表示已签到 |
|
|
|
|
|
return !this.canSignToday; |
|
|
|
|
|
}, |
|
|
|
|
|
}, |
|
|
}, |
|
|
onShow() { |
|
|
onShow() { |
|
|
this.getMyRecommendTicketNum() |
|
|
this.getMyRecommendTicketNum() |
|
@ -162,9 +147,44 @@ |
|
|
this.getSignTaskList() |
|
|
this.getSignTaskList() |
|
|
this.getMyRecommendTicketNum() |
|
|
this.getMyRecommendTicketNum() |
|
|
}, |
|
|
}, |
|
|
async clickMoreTask(taskId) { |
|
|
|
|
|
|
|
|
playTask(task){ |
|
|
|
|
|
if ("key_comment" == task.keyName){ |
|
|
|
|
|
//每日首条评论 |
|
|
|
|
|
uni.showModal({ |
|
|
|
|
|
title: '发布一条评论即可领取', |
|
|
|
|
|
showCancel: false, |
|
|
|
|
|
success: (res) => { |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
}else if ("key_chapter" == task.keyName){ |
|
|
|
|
|
//每日首阅三个章节 |
|
|
|
|
|
uni.showModal({ |
|
|
|
|
|
title: '阅读3个新的章节小说即可领取', |
|
|
|
|
|
showCancel: false, |
|
|
|
|
|
success: (res) => { |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
return chapterCount >= 3; |
|
|
|
|
|
}else if ("key_advertisement" == task.keyName){ |
|
|
|
|
|
// TODO 观看视频广告 |
|
|
|
|
|
uni.showModal({ |
|
|
|
|
|
title: '暂未开放', |
|
|
|
|
|
showCancel: false, |
|
|
|
|
|
success: (res) => { |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
async clickMoreTask(task) { |
|
|
|
|
|
|
|
|
|
|
|
if (!task.isTask) { |
|
|
|
|
|
this.playTask(task) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
await this.$fetch('clickMoreTask', { |
|
|
await this.$fetch('clickMoreTask', { |
|
|
taskId, |
|
|
|
|
|
|
|
|
taskId : task.id, |
|
|
}) |
|
|
}) |
|
|
uni.showToast({ |
|
|
uni.showToast({ |
|
|
title: '领取成功', |
|
|
title: '领取成功', |
|
@ -173,34 +193,10 @@ |
|
|
this.getMoreTaskList() |
|
|
this.getMoreTaskList() |
|
|
this.getMyRecommendTicketNum() |
|
|
this.getMyRecommendTicketNum() |
|
|
}, |
|
|
}, |
|
|
handleCheckin() { |
|
|
|
|
|
if (this.checkedDays < 8) { |
|
|
|
|
|
this.checkedDays++; |
|
|
|
|
|
this.isChecked = true; |
|
|
|
|
|
uni.showToast({ |
|
|
|
|
|
title: '签到成功', |
|
|
|
|
|
icon: 'none' |
|
|
|
|
|
}); |
|
|
|
|
|
} else { |
|
|
|
|
|
this.isChecked = true; |
|
|
|
|
|
uni.showToast({ |
|
|
|
|
|
title: '已全部签到', |
|
|
|
|
|
icon: 'none' |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
handleReceive(idx) { |
|
|
|
|
|
this.tasks[idx].received = true; |
|
|
|
|
|
uni.showToast({ |
|
|
|
|
|
title: '领取成功', |
|
|
|
|
|
icon: 'success' |
|
|
|
|
|
}); |
|
|
|
|
|
}, |
|
|
|
|
|
checkTodaySignStatus() { |
|
|
checkTodaySignStatus() { |
|
|
this.$fetch('getSignTaskToday') |
|
|
this.$fetch('getSignTaskToday') |
|
|
.then(res => { |
|
|
.then(res => { |
|
|
// res.result == 0 表示可以签到,否则表示已签到 |
|
|
|
|
|
this.canSignToday = res.result; |
|
|
|
|
|
|
|
|
this.canSignToday = res; |
|
|
}) |
|
|
}) |
|
|
.catch(err => { |
|
|
.catch(err => { |
|
|
console.error('获取今日签到状态失败:', err); |
|
|
console.error('获取今日签到状态失败:', err); |
|
|