mirror of
https://github.com/BTMuli/TeyvatGuide.git
synced 2026-03-19 04:29:45 +08:00
🚸 增加点赞后取消配置
This commit is contained in:
@@ -3,8 +3,10 @@
|
||||
<div class="tusm-top">
|
||||
<div class="tusm-title">米游币任务({{ todayPoints }}/{{ totalPoints }})</div>
|
||||
<div class="tusm-acts">
|
||||
<v-btn @click="tryRefresh()" class="tusm-btn" :loading="loadState">刷新</v-btn>
|
||||
<v-btn @click="tryAuto()" class="tusm-btn" :loading="loadMission">执行</v-btn>
|
||||
<span>{{ cancelLike ? "点赞后取消" : "点赞后不取消" }}</span>
|
||||
<v-switch v-model="cancelLike" class="tusm-switch" color="var(--tgc-od-red)" />
|
||||
<v-btn :loading="loadState" class="tusm-btn" @click="tryRefresh()">刷新</v-btn>
|
||||
<v-btn :loading="loadMission" class="tusm-btn" @click="tryAuto()">执行</v-btn>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tusm-content">
|
||||
@@ -18,10 +20,10 @@
|
||||
<div class="right">
|
||||
<span>
|
||||
<v-progress-linear
|
||||
rounded
|
||||
:model-value="(mission.process / mission.total) * 100"
|
||||
height="8"
|
||||
color="var(--tgc-od-blue)"
|
||||
height="8"
|
||||
rounded
|
||||
/>
|
||||
</span>
|
||||
<span>{{ mission.process }}/{{ mission.total }}</span>
|
||||
@@ -36,6 +38,7 @@ import apiHubReq from "@req/apiHubReq.js";
|
||||
import miscReq from "@req/miscReq.js";
|
||||
import painterReq from "@req/painterReq.js";
|
||||
import postReq from "@req/postReq.js";
|
||||
import useAppStore from "@store/app.js";
|
||||
import useUserStore from "@store/user.js";
|
||||
import TGLogger from "@utils/TGLogger.js";
|
||||
import { storeToRefs } from "pinia";
|
||||
@@ -53,7 +56,10 @@ type ParseMission = {
|
||||
};
|
||||
|
||||
const { cookie, uid } = storeToRefs(useUserStore());
|
||||
const { cancelLike } = storeToRefs(useAppStore());
|
||||
|
||||
const loadScript = defineModel<boolean>();
|
||||
|
||||
const todayPoints = ref<number>(0);
|
||||
const totalPoints = ref<number>(0);
|
||||
const loadState = ref<boolean>(false);
|
||||
@@ -209,15 +215,17 @@ async function tryAuto(): Promise<void> {
|
||||
await TGLogger.Script(`[米游币任务]点赞失败:${likeResp.retcode} ${likeResp.message}`);
|
||||
continue;
|
||||
}
|
||||
await TGLogger.Script(`[米游币任务]正在取消点赞帖子${post.post.post_id}`);
|
||||
await new Promise<void>((resolve) => setTimeout(resolve, 1000));
|
||||
const unlikeResp = await apiHubReq.post.like(post.post.post_id, ckPost, true);
|
||||
if (unlikeResp.retcode === 0) {
|
||||
await TGLogger.Script("[米游币任务]取消点赞成功");
|
||||
} else {
|
||||
await TGLogger.Script(
|
||||
`[米游币任务]取消点赞失败:${unlikeResp.retcode} ${unlikeResp.message}`,
|
||||
);
|
||||
if (cancelLike.value) {
|
||||
await TGLogger.Script(`[米游币任务]正在取消点赞帖子${post.post.post_id}`);
|
||||
await new Promise<void>((resolve) => setTimeout(resolve, 1000));
|
||||
const unlikeResp = await apiHubReq.post.like(post.post.post_id, ckPost, true);
|
||||
if (unlikeResp.retcode === 0) {
|
||||
await TGLogger.Script("[米游币任务]取消点赞成功");
|
||||
} else {
|
||||
await TGLogger.Script(
|
||||
`[米游币任务]取消点赞失败:${unlikeResp.retcode} ${unlikeResp.message}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -328,9 +336,18 @@ async function autoSign(ck: TGApp.App.Account.Cookie, ch?: string): Promise<void
|
||||
|
||||
.tusm-acts {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
.tusm-switch {
|
||||
display: flex;
|
||||
height: 36px;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
.tusm-btn {
|
||||
background: var(--tgc-btn-1);
|
||||
color: var(--btn-text);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/**
|
||||
* 应用状态管理
|
||||
* @since Beta v0.8.7
|
||||
* @since Beta v0.8.9
|
||||
*/
|
||||
|
||||
import { AnnoLangEnum } from "@enum/anno.js";
|
||||
@@ -61,10 +61,12 @@ const useAppStore = defineStore(
|
||||
const incognito = ref<boolean>(true);
|
||||
/* 帖子宽窄视图 */
|
||||
const postViewWide = ref<boolean>(true);
|
||||
/* 是否取消点赞 */
|
||||
const cancelLike = ref<boolean>(true);
|
||||
|
||||
/**
|
||||
* 初始化应用状态
|
||||
* @since Beta v0.8.7
|
||||
* @since Beta v0.8.9
|
||||
* @remarks 用于首次运行或重置应用状态
|
||||
* @returns void
|
||||
*/
|
||||
@@ -82,6 +84,7 @@ const useAppStore = defineStore(
|
||||
imageQualityPercent.value = 10;
|
||||
incognito.value = true;
|
||||
postViewWide.value = true;
|
||||
cancelLike.value = true;
|
||||
initDevice();
|
||||
}
|
||||
|
||||
@@ -136,6 +139,7 @@ const useAppStore = defineStore(
|
||||
imageQualityPercent,
|
||||
incognito,
|
||||
postViewWide,
|
||||
cancelLike,
|
||||
init,
|
||||
changeTheme,
|
||||
getImageUrl,
|
||||
@@ -162,6 +166,7 @@ const useAppStore = defineStore(
|
||||
"incognito",
|
||||
"sidebar",
|
||||
"postViewWide",
|
||||
"cancelLike",
|
||||
],
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user