后台登录已经成功

This commit is contained in:
2025-08-31 19:31:24 +08:00
parent 8e5295b572
commit 0e0585aacc
5 changed files with 9 additions and 4 deletions

View File

@@ -98,6 +98,8 @@ const onFinish = async (values: FormState) => {
// 保存token
if (response?.data?.token) {
localStorage.setItem('admin_token', response.data.token)
} else if (response?.token) {
localStorage.setItem('admin_token', response.token)
} else {
throw new Error('登录响应中缺少token')
}
@@ -105,6 +107,8 @@ const onFinish = async (values: FormState) => {
// 更新用户状态
if (response?.data?.admin) {
appStore.setUser(response.data.admin)
} else if (response?.admin) {
appStore.setUser(response.admin)
} else {
throw new Error('登录响应中缺少用户信息')
}

View File

@@ -296,9 +296,10 @@ const adminLogin = async (req, res, next) => {
// 更新最后登录时间
await UserMySQL.updateLastLogin(user.id);
// 调整返回数据结构以匹配前端期望的格式
res.json(success({
user: UserMySQL.sanitize(user),
token,
admin: UserMySQL.sanitize(user),
message: '管理员登录成功'
}));
} catch (error) {

View File

@@ -1 +1 @@
{"version":3,"file":"config.js","sources":["api/config.js"],"sourcesContent":["// API基础配置\nconst config = {\n // 开发环境\n development: {\n baseURL: 'http://localhost:3100/api',\n timeout: 10000\n },\n // 生产环境\n production: {\n baseURL: 'https://api.jiebanke.com/api',\n timeout: 15000\n }\n}\n\n// 获取当前环境配置\nconst getConfig = () => {\n const env = process.env.NODE_ENV || 'development'\n return config[env]\n}\n\n// API端点\nconst endpoints = {\n // 用户相关\n USER: {\n LOGIN: '/auth/login',\n REGISTER: '/auth/register',\n PROFILE: '/user/profile',\n UPDATE_PROFILE: '/user/profile',\n UPLOAD_AVATAR: '/user/avatar'\n },\n \n // 旅行计划\n TRAVEL: {\n LIST: '/travel/list',\n DETAIL: '/travel/detail',\n CREATE: '/travel/create',\n JOIN: '/travel/join',\n MY_PLANS: '/travel/my-plans',\n SEARCH: '/travel/search'\n },\n \n // 动物认养\n ANIMAL: {\n LIST: '/animal/list',\n DETAIL: '/animal/detail',\n ADOPT: '/animal/adopt',\n MY_ANIMALS: '/animal/my-animals',\n CATEGORIES: '/animal/categories'\n },\n \n // 送花服务\n FLOWER: {\n LIST: '/flower/list',\n DETAIL: '/flower/detail',\n ORDER: '/flower/order',\n MY_ORDERS: '/flower/my-orders',\n CATEGORIES: '/flower/categories'\n },\n \n // 订单管理\n ORDER: {\n LIST: '/order/list',\n DETAIL: '/order/detail',\n CANCEL: '/order/cancel',\n PAY: '/order/pay',\n CONFIRM: '/order/confirm'\n },\n \n // 支付相关\n PAYMENT: {\n CREATE: '/payment/create',\n QUERY: '/payment/query',\n REFUND: '/payment/refund'\n },\n \n // 系统相关\n SYSTEM: {\n CONFIG: '/system/config',\n NOTICE: '/system/notice',\n FEEDBACK: '/system/feedback'\n }\n}\n\nexport default {\n ...getConfig(),\n endpoints\n}"],"names":[],"mappings":";AACA,MAAM,SAAS;AAAA;AAAA,EAEb,aAAa;AAAA,IACX,SAAS;AAAA,IACT,SAAS;AAAA,EACX;AAAA;AAAA,EAEA,YAAY;AAAA,IACV,SAAS;AAAA,IACT,SAAS;AAAA,EACX;AACF;AAGA,MAAM,YAAY,MAAM;AACtB,QAAM,MAAM;AACZ,SAAO,OAAO,GAAG;AACnB;AAGA,MAAM,YAAY;AAAA;AAAA,EAEhB,MAAM;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,eAAe;AAAA,EACjB;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,YAAY;AAAA,IACZ,YAAY;AAAA,EACd;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,WAAW;AAAA,IACX,YAAY;AAAA,EACd;AAAA;AAAA,EAGA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,SAAS;AAAA,EACX;AAAA;AAAA,EAGA,SAAS;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,QAAQ;AAAA,EACV;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,EACZ;AACF;AAEA,MAAe,WAAA;AAAA,EACb,GAAG,UAAU;AAAA,EACb;AACF;;"}
{"version":3,"file":"config.js","sources":["api/config.js"],"sourcesContent":["// API基础配置\r\nconst config = {\r\n // 开发环境\r\n development: {\r\n baseURL: 'http://localhost:3100/api',\r\n timeout: 10000\r\n },\r\n // 生产环境\r\n production: {\r\n baseURL: 'https://api.jiebanke.com/api',\r\n timeout: 15000\r\n }\r\n}\r\n\r\n// 获取当前环境配置\r\nconst getConfig = () => {\r\n const env = process.env.NODE_ENV || 'development'\r\n return config[env]\r\n}\r\n\r\n// API端点\r\nconst endpoints = {\r\n // 用户相关\r\n USER: {\r\n LOGIN: '/auth/login',\r\n REGISTER: '/auth/register',\r\n PROFILE: '/user/profile',\r\n UPDATE_PROFILE: '/user/profile',\r\n UPLOAD_AVATAR: '/user/avatar'\r\n },\r\n \r\n // 旅行计划\r\n TRAVEL: {\r\n LIST: '/travel/list',\r\n DETAIL: '/travel/detail',\r\n CREATE: '/travel/create',\r\n JOIN: '/travel/join',\r\n MY_PLANS: '/travel/my-plans',\r\n SEARCH: '/travel/search'\r\n },\r\n \r\n // 动物认养\r\n ANIMAL: {\r\n LIST: '/animal/list',\r\n DETAIL: '/animal/detail',\r\n ADOPT: '/animal/adopt',\r\n MY_ANIMALS: '/animal/my-animals',\r\n CATEGORIES: '/animal/categories'\r\n },\r\n \r\n // 送花服务\r\n FLOWER: {\r\n LIST: '/flower/list',\r\n DETAIL: '/flower/detail',\r\n ORDER: '/flower/order',\r\n MY_ORDERS: '/flower/my-orders',\r\n CATEGORIES: '/flower/categories'\r\n },\r\n \r\n // 订单管理\r\n ORDER: {\r\n LIST: '/order/list',\r\n DETAIL: '/order/detail',\r\n CANCEL: '/order/cancel',\r\n PAY: '/order/pay',\r\n CONFIRM: '/order/confirm'\r\n },\r\n \r\n // 支付相关\r\n PAYMENT: {\r\n CREATE: '/payment/create',\r\n QUERY: '/payment/query',\r\n REFUND: '/payment/refund'\r\n },\r\n \r\n // 系统相关\r\n SYSTEM: {\r\n CONFIG: '/system/config',\r\n NOTICE: '/system/notice',\r\n FEEDBACK: '/system/feedback'\r\n }\r\n}\r\n\r\nexport default {\r\n ...getConfig(),\r\n endpoints\r\n}"],"names":[],"mappings":";AACA,MAAM,SAAS;AAAA;AAAA,EAEb,aAAa;AAAA,IACX,SAAS;AAAA,IACT,SAAS;AAAA,EACX;AAAA;AAAA,EAEA,YAAY;AAAA,IACV,SAAS;AAAA,IACT,SAAS;AAAA,EACX;AACF;AAGA,MAAM,YAAY,MAAM;AACtB,QAAM,MAAM;AACZ,SAAO,OAAO,GAAG;AACnB;AAGA,MAAM,YAAY;AAAA;AAAA,EAEhB,MAAM;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,SAAS;AAAA,IACT,gBAAgB;AAAA,IAChB,eAAe;AAAA,EACjB;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,UAAU;AAAA,IACV,QAAQ;AAAA,EACV;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,YAAY;AAAA,IACZ,YAAY;AAAA,EACd;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,WAAW;AAAA,IACX,YAAY;AAAA,EACd;AAAA;AAAA,EAGA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,SAAS;AAAA,EACX;AAAA;AAAA,EAGA,SAAS;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,QAAQ;AAAA,EACV;AAAA;AAAA,EAGA,QAAQ;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,UAAU;AAAA,EACZ;AACF;AAEA,MAAe,WAAA;AAAA,EACb,GAAG,UAAU;AAAA,EACb;AACF;;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long