Browse Source

feat: 更新用户信息获取和任务处理逻辑

refactor(readnovels): 移除scrollTop改用pageScrollTo实现滚动
fix(comment): 优化未读评论标记更新逻辑
chore(config): 更新环境和OSS配置
feat(Translation): 重构签到和任务领取逻辑
master
前端-胡立永 3 weeks ago
parent
commit
d0354aa4ba
5 changed files with 72 additions and 78 deletions
  1. +13
    -7
      config.js
  2. +1
    -8
      pages_order/comment/myComment.vue
  3. +4
    -0
      pages_order/mine/runningWater.vue
  4. +46
    -50
      pages_order/novel/Translation.vue
  5. +8
    -13
      pages_order/novel/readnovels.vue

+ 13
- 7
config.js View File

@ -8,13 +8,13 @@ import uvUI from '@/uni_modules/uv-ui-tools'
Vue.use(uvUI);
// 当前环境
const type = 'local'
const type = 'prod'
// 环境配置
const config = {
local : {
baseUrl : 'http://127.0.0.1:8002/novel-admin',
baseUrl : 'http://127.0.0.1:8003/novel-admin',
},
dev : {
baseUrl : 'http://h5.xzaiyp.top/novel-admin',
@ -23,22 +23,28 @@ const config = {
baseUrl : 'https://prod-api.budingxiaoshuo.com/novel-admin',
}
}
// oss:
// accessKey: LTAI5tG9VnnPpjvcrQ3dtaYG
// secretKey: h0nzWxMbH9RIeVVcFbtjTpocCj9GHc
// endpoint: oss-cn-shenzhen.aliyuncs.com
// bucketName: buding-oss
// staticDomain: https://oss.budingxiaoshuo.com/
// 默认配置
const defaultConfig = {
mapKey : 'XMBBZ-BCPCV-SXPPQ-5Y7MY-PHZXK-YFFVU',
aliOss: {
url: 'https://image.hhlm1688.com/',
url: 'https://oss.budingxiaoshuo.com/',
config: {
//桶的地址
region: 'oss-cn-guangzhou',
region: 'oss-cn-shenzhen',
//id
accessKeyId: 'LTAI5tQSs47izVy8DLVdwUU9',
accessKeyId: 'LTAI5tG9VnnPpjvcrQ3dtaYG',
//密钥
accessKeySecret: 'qHI7C3PaXYZySr84HTToviC71AYlFq',
accessKeySecret: 'h0nzWxMbH9RIeVVcFbtjTpocCj9GHc',
//桶的名字
bucket: 'hanhaiimage',
bucket: 'buding-oss',
endpoint: 'oss-cn-shenzhen.aliyuncs.com',
}
},


+ 1
- 8
pages_order/comment/myComment.vue View File

@ -90,14 +90,7 @@
}).then(res => {
this.unreadComments = res.records
this.unreadComments.forEach(n => {
this.updateCommentRead(n.id)
})
})
},
updateCommentRead(commentId){
this.$fetch('updateCommentRead', {
commentId
this.$fetch('updateCommentRead')
})
},
}


+ 4
- 0
pages_order/mine/runningWater.vue View File

@ -56,6 +56,10 @@
onLoad(e) {
this.status = e.status
},
onShow() {
//
this.$store.commit('getUserInfo')
},
methods: {
leftClick() { //
uni.navigateBack(-1)


+ 46
- 50
pages_order/novel/Translation.vue View File

@ -26,9 +26,9 @@
<view class="ticket-num">+ {{ day.num }}</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">
{{ isSign ? '已签到' : '签到得奖励' }}
{{ !canSignToday ? '已签到' : '签到得奖励' }}
</button>
</view>
<!-- 更多任务 -->
@ -36,14 +36,16 @@
<view class="more-header">更多任务</view>
<view class="task-list">
<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-title">{{ task.title }}</view>
<view class="task-desc">推荐票 +{{ task.num }}</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>
</view>
</view>
@ -67,19 +69,6 @@
data() {
return {
checkedDays: 3, //
tasks: [{
title: '观看视频广告',
received: false
},
{
title: '每日首阅三个章节',
received: false
},
{
title: '每日首条评论',
received: false
},
],
clockList: [],
isChecked: false, //
maxVote: 0,
@ -88,10 +77,6 @@
}
},
computed: {
isSign() {
//
return !this.canSignToday;
},
},
onShow() {
this.getMyRecommendTicketNum()
@ -162,9 +147,44 @@
this.getSignTaskList()
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', {
taskId,
taskId : task.id,
})
uni.showToast({
title: '领取成功',
@ -173,34 +193,10 @@
this.getMoreTaskList()
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() {
this.$fetch('getSignTaskToday')
.then(res => {
// res.result == 0
this.canSignToday = res.result;
this.canSignToday = res;
})
.catch(err => {
console.error('获取今日签到状态失败:', err);


+ 8
- 13
pages_order/novel/readnovels.vue View File

@ -22,8 +22,8 @@
<scroll-view :scroll-y="!isPay" :key="'scroll-' + cid" id="chapter-scroll" class="chapter-content" :class="{'full-content': isFullScreen}"
:scroll-top="scrollTop" @scroll="handleScroll" @tap="handleContentClick">
<scroll-view class="chapter-content" :class="{'full-content': isFullScreen}"
@scroll="handleScroll" @tap="handleContentClick">
<view class="chapter-content-item">
<view class="chapter-title">{{ currentChapter }}</view>
@ -100,7 +100,6 @@
cid: 0,
novelData: {},
chapterList: [],
scrollTop: 0, //
//
isPay : false,
@ -177,7 +176,10 @@
//
this.$nextTick(() => {
this.scrollTop = 0; // scroll-view
uni.pageScrollTo({
scrollTop: 0,
duration: 0
});
})
})
},
@ -195,15 +197,8 @@
this.toggleFullScreen();
},
handleScroll(e) {
//
const scrollTop = e.detail.scrollTop;
this.scrollTop = scrollTop; //
//
if (scrollTop > 50 && !this.popupShown) {
this.$refs.subscriptionPopup.open();
this.popupShown = true;
}
// scroll-viewscroll-view
// onPageScroll
},
toggleFullScreen() {
this.isFullScreen = !this.isFullScreen


Loading…
Cancel
Save