import base64 from "base64-utf8" import request from "@/sheep/utils/request" // 将 Basic Auth 字符串提取为常量 const BASIC_AUTH = "Basic " + base64.encode(import.meta.env.VITE_OAUTH2_APP_CLIENT) export default { // 获取用户信息 userInfo: (): Promise => request({ url: "/admin/user/info", method: "GET", }), // 检查token refreshToken: (refresh_token: string): Promise => { const grant_type = "refresh_token" const scope = "server" return request({ url: "/auth/oauth2/token", header: { skipToken: "true", Authorization: BASIC_AUTH, "Content-Type": "application/x-www-form-urlencoded", }, method: "POST", params: { refresh_token, grant_type, scope }, }) }, // 浙政钉授权登录 auth: (token: string): Promise => request({ url: "/thirdparty/thirdPartyOAth2/zzdsso", method: "POST", data: { token }, }), // 诗画授权登录 authsh: (data: { accountId: string; sessionId: string }): Promise => request({ url: "/thirdparty/thirdPartyOAth2/shjnsso", method: "POST", data, }), // 账号密码登录 login: (params: any) => { const { username, password, randomStr, code, grant_type, scope } = params return request({ url: `/auth/oauth2/token`, method: "POST", params: { username, randomStr, code, grant_type, scope, }, data: { password }, header: { skipToken: true, Authorization: BASIC_AUTH, "content-type": "application/x-www-form-urlencoded", }, }) }, // 判断是否是合作商家商户角色 isMerchant: (): Promise => request({ url: "/admin/role/isMchUser", method: "GET", }), // 判断是否是共富商城商户角色 isMallMchUser: (): Promise => request({ url: "/admin/role/isMallMchUser", method: "GET", }), // 判断用户移动端角色 userRole: () => request({ url: "/admin/role/app/user-role", method: "GET", }), // 根据手机号发送验证码 getMobilePhoneCode: (mobilePhone: string) => request({ url: `/thirdparty/thirdPartyOAth2/loginSms?mobilePhone=${mobilePhone}`, method: "POST", }), // 发送忘记密码短信验证码 sendForgotPasswordSmsCode: (mobile: string) => request({ url: "/admin/user/forgot-password/sms-code", method: "GET", params: { mobile }, }), // 短信验证码重置密码 resetForgotPassword: (data: { mobile: string; smsCode: string; newPassword: string }) => request({ url: "/admin/user/forgot-password/reset", method: "POST", data, }), // 设备认证 verifyDevice: (data: { mobilePhone: string; code: string }) => request({ url: "/thirdparty/thirdPartyOAth2/verify-device", method: "POST", data, }), // 判断该设备是否被验证 isVerifyDevice: (data: { mobile: string; userId: string }) => request({ url: "/thirdparty/thirdPartyOAth2/is-verify-device", method: "POST", data, }), // 用户注册 register: (data: any) => request({ url: "/admin/register/default-user", method: "POST", data, }), // 用户申请注销 applyCloseAccount: (data: any) => request({ url: "/admin/user/app/apply/close-account", method: "POST", data, }), // 用户修改个人资料 appModifyUser: (data: any) => request({ url: "/admin/user/app/modify", method: "POST", data, }), }