diff --git a/src/pages/User/Abyss.vue b/src/pages/User/Abyss.vue
index 1dbddab7..1d017d59 100644
--- a/src/pages/User/Abyss.vue
+++ b/src/pages/User/Abyss.vue
@@ -59,7 +59,7 @@
统计数据
-
{{ hutaoEmail ?? "胡桃云邮箱" }}
+
{{ userName ?? "登录胡桃云" }}
上传
@@ -131,6 +131,7 @@ import recordReq from "@req/recordReq.js";
import TSUserAbyss from "@Sqlm/userAbyss.js";
import TSUserAvatar from "@Sqlm/userAvatar.js";
import useAppStore from "@store/app.js";
+import useHutaoStore from "@store/hutao.js";
import useUserStore from "@store/user.js";
import { getVersion } from "@tauri-apps/api/app";
import { open } from "@tauri-apps/plugin-dialog";
@@ -142,8 +143,11 @@ import { onMounted, ref, shallowRef, watch } from "vue";
import { useRouter } from "vue-router";
const router = useRouter();
+const hutaoStore = useHutaoStore();
+
const { isLogin } = storeToRefs(useAppStore());
-const { account, cookie, hutaoEmail } = storeToRefs(useUserStore());
+const { account, cookie } = storeToRefs(useUserStore());
+const { userName } = storeToRefs(hutaoStore);
const userTab = ref
(0);
const version = ref();
const uidCur = ref();
@@ -185,27 +189,8 @@ async function toWiki(): Promise {
await router.push({ name: "深渊数据库" });
}
-async function editHutaoEmail(): Promise {
- if (hutaoEmail.value) {
- const chgCheck = await showDialog.check("是否更改胡桃云账号", `当前账号:${hutaoEmail.value}`);
- if (!chgCheck) {
- showSnackbar.cancel("已取消更改胡桃云账号");
- return;
- }
- }
- const newEmail = await showDialog.input("请输入胡桃云账号", "胡桃云账号", hutaoEmail.value);
- if (!newEmail) {
- showSnackbar.cancel("已取消设置胡桃云账号");
- return;
- }
- // 简单验证邮箱格式
- const mailReg = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
- if (!mailReg.test(newEmail)) {
- showSnackbar.error("邮箱格式错误");
- return;
- }
- hutaoEmail.value = newEmail;
- showSnackbar.success("已设置胡桃云账号");
+async function tryLoginHutao(): Promise {
+ if (!userName.value) await hutaoStore.tryLogin();
}
async function loadAbyss(): Promise {
@@ -353,7 +338,7 @@ async function tryReadAbyss(): Promise {
}
async function uploadAbyss(): Promise {
- if (!hutaoEmail.value || hutaoEmail.value === "") {
+ if (!userName.value || userName.value === "") {
const check = await showDialog.check("确定上传?", "未设置胡桃云账号");
if (!check) return;
}
@@ -382,7 +367,7 @@ async function uploadAbyss(): Promise {
try {
await showLoading.start(`正在上传${account.value.gameUid}的深渊数据`, `期数:${abyssData.id}`);
const transAbyss = hutao.Abyss.utils.transData(abyssData);
- if (hutaoEmail.value) transAbyss.ReservedUserName = hutaoEmail.value;
+ if (userName.value) transAbyss.ReservedUserName = userName.value;
await showLoading.update("正在获取角色数据");
const roles = await TSUserAvatar.getAvatars(Number(account.value.gameUid));
if (!roles) {
diff --git a/src/pages/User/Combat.vue b/src/pages/User/Combat.vue
index 304807ae..c3b8f07b 100644
--- a/src/pages/User/Combat.vue
+++ b/src/pages/User/Combat.vue
@@ -64,7 +64,7 @@
统计数据
- {{ hutaoEmail ?? "设置胡桃云邮箱" }}
+ {{ userName ?? "登录胡桃云" }}
(0);
const version = ref();
const uidCur = ref();
@@ -204,27 +209,8 @@ async function loadCombat(): Promise {
if (localCombat.value.length > 0) userTab.value = localCombat.value[0].id;
}
-async function editHutaoEmail(): Promise {
- if (hutaoEmail.value) {
- const chgCheck = await showDialog.check("是否更改胡桃云账号", `当前账号:${hutaoEmail.value}`);
- if (!chgCheck) {
- showSnackbar.cancel("已取消更改胡桃云账号");
- return;
- }
- }
- const newEmail = await showDialog.input("请输入胡桃云账号", "胡桃云账号", hutaoEmail.value);
- if (!newEmail) {
- showSnackbar.cancel("已取消设置胡桃云账号");
- return;
- }
- // 简单验证邮箱格式
- const mailReg = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
- if (!mailReg.test(newEmail)) {
- showSnackbar.error("邮箱格式错误");
- return;
- }
- hutaoEmail.value = newEmail;
- showSnackbar.success("已设置胡桃云账号");
+async function tryLoginHutao(): Promise {
+ if (!userName.value) await hutaoStore.tryLogin();
}
async function refreshCombat(): Promise {
@@ -314,7 +300,7 @@ async function deleteCombat(): Promise {
}
async function uploadCombat(): Promise {
- if (!hutaoEmail.value || hutaoEmail.value === "") {
+ if (!userName.value || userName.value === "") {
const check = await showDialog.check("确定上传?", "未设置胡桃云账号");
if (!check) return;
}
diff --git a/src/pages/common/PageTest.vue b/src/pages/common/PageTest.vue
index 9e241944..5d503f8d 100644
--- a/src/pages/common/PageTest.vue
+++ b/src/pages/common/PageTest.vue
@@ -22,6 +22,10 @@
import showDialog from "@comp/func/dialog.js";
import showSnackbar from "@comp/func/snackbar.js";
import hutao from "@Hutao/index.js";
+import useHutaoStore from "@store/hutao.js";
+import { storeToRefs } from "pinia";
+
+const { userName, accessToken, refreshToken } = storeToRefs(useHutaoStore());
async function test() {
const inputN = await showDialog.input("UserName");
@@ -30,7 +34,12 @@ async function test() {
const resp = await hutao.Account.login(inputN, inputP);
if ("retcode" in resp) {
showSnackbar.warn(`${resp.retcode}-${resp.message}`);
+ return;
}
+ userName.value = inputN;
+ accessToken.value = resp.AccessToken;
+ refreshToken.value = resp.RefreshToken;
+ showSnackbar.success("登录成功!");
}