fix: check-in
This commit is contained in:
8
api/user.js
Normal file
8
api/user.js
Normal file
@@ -0,0 +1,8 @@
|
||||
import { request } from "@/utils/request.js";
|
||||
|
||||
export const getUserSignInfo = async (data) => {
|
||||
return request({
|
||||
url: "/api/sign/info",
|
||||
method: "GET",
|
||||
});
|
||||
};
|
||||
@@ -213,6 +213,7 @@ import { getStatusBarHeight } from "@/utils/system";
|
||||
import { onShareAppMessage, onShareTimeline, onShow } from "@dcloudio/uni-app";
|
||||
import { useUserStore } from "@/stores/user";
|
||||
import { getRecommendList } from "@/api/system";
|
||||
import { getUserSignInfo } from "@/api/user";
|
||||
|
||||
import LoginPopup from "@/components/LoginPopup/LoginPopup.vue";
|
||||
import LuckyPopup from "@/components/LuckyPopup/LuckyPopup.vue";
|
||||
@@ -223,6 +224,7 @@ const loginPopupRef = ref(null);
|
||||
const luckyPopupRef = ref(null);
|
||||
const userInfo = computed(() => userStore?.userInfo || {});
|
||||
const isLoggedIn = computed(() => !!userStore.userInfo.nickName);
|
||||
const signInfo = ref({}); // 用户签到信息
|
||||
|
||||
const greetingText = computed(() => {
|
||||
const hour = new Date().getHours();
|
||||
@@ -262,6 +264,7 @@ const lunarDate = ref({
|
||||
const rankingList = ref([]);
|
||||
|
||||
onMounted(() => {
|
||||
fetchUserSingInfo(); // 获取用户签到信息
|
||||
fetchRankingData();
|
||||
});
|
||||
|
||||
@@ -271,6 +274,12 @@ onShow(() => {
|
||||
}
|
||||
});
|
||||
|
||||
const fetchUserSingInfo = async () => {
|
||||
if (!isLoggedIn.value) return;
|
||||
const res = await getUserSignInfo();
|
||||
signInfo.value = res || {};
|
||||
};
|
||||
|
||||
const fetchRankingData = async () => {
|
||||
// 模拟数据或调用 API
|
||||
// 实际项目中可以调用 getRecommendList 并根据 currentTab 筛选
|
||||
|
||||
Reference in New Issue
Block a user