import { req } from '@/common/js/index.js'; const AUTH_PREFIX = '/newApi/doctor-wx-auth'; function unwrapResult(res) { if (!res) return null; if (res.code === 0 && res.result !== undefined) return res.result; return res.result != null ? res.result : res.data; } function doctorAuthRequest(options) { return req.request({ ...options, url: `${AUTH_PREFIX}${options.url}`, }).then((res) => { const data = unwrapResult(res); const ok = res && res.code === 0; return { res, data, ok }; }); } export function sendDoctorWxCode(phone, password) { return req.request({ url: `${AUTH_PREFIX}/send-verification-code`, method: 'POST', data: { phone, password }, header: { isToken: false }, }); } export function doctorWxLogin(payload) { // client_type=mobile:医生/药师/诊所管理员等统一按手机端会话管理 return req.request({ url: `${AUTH_PREFIX}/login`, method: 'POST', data: { ...(payload || {}), client_type: 'mobile' }, header: { isToken: false }, }); } export function getDoctorWxSiblingAccounts() { return doctorAuthRequest({ url: '/sibling-accounts', method: 'GET', }); } export function switchDoctorWxAccount(payload) { // client_type=mobile:切换账号按手机端会话管理 return doctorAuthRequest({ url: '/switch-account', method: 'POST', data: { ...(payload || {}), client_type: 'mobile' }, }); } export function getDoctorWxAuthConfig() { return req.request({ url: `${AUTH_PREFIX}/config`, method: 'GET', header: { isToken: false }, }); } export function doctorWxLoginByWechat(payload) { // 微信登录同样标记为手机端会话 return req.request({ url: `${AUTH_PREFIX}/wx-login`, method: 'POST', data: { ...(payload || {}), client_type: 'mobile' }, header: { isToken: false }, }); } export function getDoctorWxBindStatus() { return doctorAuthRequest({ url: '/wx-bind-status', method: 'GET', }); } export function bindDoctorWxWechat(code) { return doctorAuthRequest({ url: '/bind-wechat', method: 'POST', data: { code }, }); }