const { get, post, clearSession } = require("./api"); function getStoredUser() { return wx.getStorageSync("auth_user") || null; } function saveSession(token, user) { wx.setStorageSync("auth_token", token); wx.setStorageSync("auth_user", user); const app = getApp(); if (app && app.setUser) app.setUser(user); } function requireLogin() { if (!wx.getStorageSync("auth_token")) { wx.navigateTo({ url: "/pages/bind/index" }); return false; } return true; } async function refreshMe() { const user = await get("/api/auth/me"); wx.setStorageSync("auth_user", user); const app = getApp(); if (app && app.setUser) app.setUser(user); return user; } function loginWithWeChat() { return new Promise((resolve, reject) => { wx.login({ success: async ({ code }) => { try { resolve(await post("/api/wechat/login", { code })); } catch (error) { reject(error); } }, fail: () => reject(new Error("微信登录失败")) }); }); } module.exports = { clearSession, getStoredUser, loginWithWeChat, refreshMe, requireLogin, saveSession };