import request from '@/utils/request' // 登录方法 export function login(username, password, code, uuid, referrerType, referrerId, latitude, longitude, referrerQrCodeVersion) { // 如果经纬度保留6位小数 - 直接使用字符串格式传递 const lat = typeof latitude === 'number' ? latitude.toFixed(6) : (latitude || "0.000000") const lng = typeof longitude === 'number' ? longitude.toFixed(6) : (longitude || "0.000000") // 只有当referrerQrCodeVersion有值且不为空字符串时才转换为数字 const qrCodeVersion = referrerQrCodeVersion === "" || referrerQrCodeVersion === undefined ? "" : Number(referrerQrCodeVersion) // 确保referrerType有默认值1 const type = 1 // 确保referrerId有默认值 const id = referrerId || "" const data = { username, password, code, uuid, referrerType: type, referrerId: id, referrerQrCodeVersion: qrCodeVersion, // 使用转换为数字的变量 latitude: lat, longitude: lng } console.log('API发送经纬度字符串格式:', lat, lng) console.log('referrerQrCodeVersion数字类型:', qrCodeVersion, typeof qrCodeVersion) return request({ url: '/login', headers: { isToken: false }, method: 'post', data: data }) } // 注册方法 export function register(data) { return request({ url: '/register', headers: { isToken: false }, method: 'post', data: data }) } // 获取用户详细信息 export function getInfo() { return request({ url: '/getInfo', method: 'get' }) } // 退出方法 export function logout() { return request({ url: '/logout', method: 'post' }) } // 获取验证码 export function getCodeImg() { return request({ url: '/captchaImage', headers: { isToken: false }, method: 'get', timeout: 20000 }) } // 志愿者/普通用户 export function userOrWorker(data) { return request({ url: `/setUserOrWorker/${data.userType}`, // 动态替换 userType method: 'put', data: data // 如果需要额外参数,可以传递 }); }