201 lines
4.6 KiB
JavaScript
201 lines
4.6 KiB
JavaScript
import request from '@/api/request'
|
||
import common from "@/common/common";
|
||
import {
|
||
queryCurrentValidMascotInfo
|
||
} from "@/api/mascot.js"
|
||
|
||
import {
|
||
setToken,
|
||
setUserInfo,
|
||
getUserInfo
|
||
} from "@/common/common";
|
||
import {
|
||
get_base_url
|
||
} from '@/api/request.js'
|
||
|
||
// 账号登录接口
|
||
export const useAccountLoginApp = (data) => request({
|
||
url: '/traapp/access/userLogin',
|
||
method: 'post',
|
||
data
|
||
}).then(async ({
|
||
rtnCode,
|
||
body
|
||
}) => {
|
||
if (rtnCode === '0000') {
|
||
setToken(body)
|
||
// 获取科技鹿
|
||
// queryCurrentValidMascotInfo().then(({body}) => {
|
||
// const userInfo = getUserInfo()
|
||
// setUserInfo({
|
||
// ...userInfo,
|
||
// 'mascotInfo': body
|
||
// })
|
||
// const userInfo2 = getUserInfo()
|
||
// console.log('设置科技鹿', userInfo2);
|
||
// if (body.imgAddr) {
|
||
// setTimeout(() => {
|
||
// const img = new Image(); // 创建Image对象
|
||
// // 图片加载成功(缓存完成)
|
||
// img.onload = () => {
|
||
// console.log(`图片缓存成功: ${url}`);
|
||
// resolve(img); // 返回加载完成的Image对象
|
||
// };
|
||
|
||
// // 图片加载失败
|
||
// img.onerror = () => {
|
||
// console.error(`图片缓存失败: ${url}`);
|
||
// reject(new Error(`Failed to load image: ${url}`));
|
||
// };
|
||
|
||
// // 开始加载图片(设置src触发请求,浏览器会自动缓存)
|
||
// img.src = url;
|
||
// })
|
||
// }
|
||
// })
|
||
// const user_data = await queryCurrentUser()
|
||
const res = await Promise.all([queryCurrentUser(), queryCurrentValidMascotInfo()])
|
||
const userInfo = getUserInfo()
|
||
const mascotInfo = res[1]
|
||
setUserInfo({
|
||
...userInfo,
|
||
'mascotInfo': mascotInfo
|
||
})
|
||
console.log(mascotInfo);
|
||
return {
|
||
mascotState:!mascotInfo.mascotId
|
||
}
|
||
}
|
||
return Promise.reject({
|
||
rtnCode,
|
||
body
|
||
})
|
||
}).catch(res => {
|
||
/**
|
||
error: "Service Unavailable"
|
||
path: "/traapp/access/userLogin"
|
||
requestId: "74d60800-104"
|
||
status: 503
|
||
timestamp: "2025-06-24T00:53:35.293+00:00"
|
||
*/
|
||
/**
|
||
body: null
|
||
channelNo: "FF6944B69A99745C009F4D0B3C3B22B8E81B22F587D68455E354BABBABCCB6246C54ABD28F3C55AAD34224A16CE7E24E"
|
||
head: null
|
||
message: "系统异常"
|
||
rtnCode: "9999"
|
||
rtnTime: "2025-06-24 08:54:52"
|
||
*/
|
||
|
||
return Promise.reject(res)
|
||
})
|
||
|
||
/**
|
||
* 获取个人信息
|
||
* 入参
|
||
gender f是女 m男
|
||
imageAddr: 图片
|
||
loginName ID
|
||
userName 姓名
|
||
*/
|
||
export const queryCurrentUser = (data) => request({
|
||
url: '/traapp/access/queryCurrentUser',
|
||
method: 'post',
|
||
data
|
||
}).then(res => {
|
||
|
||
// deptId: ""
|
||
// deptName: null
|
||
// loginName: "ADMIN" // todo id
|
||
// orgId: "00E200"
|
||
// orgName: "金融科技部"
|
||
// userId: "USER001"
|
||
// userName: "ADMIN" / todo name
|
||
// userStatus: "01"
|
||
|
||
setUserInfo(res.body)
|
||
|
||
console.log('预加载头像');
|
||
const base_url = get_base_url()
|
||
// 预加载头像
|
||
// #ifdef APP-PLUS
|
||
const updateUserAvatar = (imagePath) => {
|
||
const userInfo = getUserInfo()
|
||
setUserInfo({
|
||
...userInfo,
|
||
'imagePath': imagePath
|
||
})
|
||
}
|
||
|
||
try {
|
||
const pathName = res.body.imageAddr
|
||
const url = base_url + pathName
|
||
// 生成唯一文件名,避免冲突
|
||
const filename = pathName.split('/').pop()
|
||
const localFilePath = '_downloads/' + filename
|
||
|
||
// 先检查是否存在
|
||
// uni.getFileInfo({
|
||
// filePath: localFilePath,
|
||
// success: () => {
|
||
// console.log('头像已存在,无需下载');
|
||
// updateUserAvatar(localFilePath)
|
||
// },
|
||
// fail: () => {
|
||
// console.log('开始下载头像:', url);
|
||
// const dtask = plus.downloader.createDownload(
|
||
// url, {
|
||
// method: 'GET',
|
||
// filename: '_downloads/' + filename
|
||
// },
|
||
// (download, status) => {
|
||
// if (status === 200) {
|
||
// console.log('头像下载成功:', download.filename);
|
||
// updateUserAvatar(download.filename)
|
||
// }
|
||
// }
|
||
// )
|
||
// dtask.start();
|
||
// }
|
||
// })
|
||
|
||
|
||
} catch (error) {
|
||
console.error('头像预加载过程发生错误:', error);
|
||
}
|
||
// #endif
|
||
return res.body
|
||
})
|
||
|
||
//获取隐私协议
|
||
export const getYsxy = (data) => request({
|
||
url: '/traapp/dfAgtInfo/queryValidDfAgt',
|
||
method: 'post',
|
||
data
|
||
})
|
||
|
||
//获取服务条款
|
||
export const getFutk = (data) => request({
|
||
url: '/traapp/dfAgtInfo/queryValidDfAgtTerm',
|
||
method: 'post',
|
||
data
|
||
})
|
||
|
||
// 获取验证码(作废)
|
||
export const getLoginAppCheckCode = (data) => request({
|
||
url: '/traapp/access/checkCode',
|
||
method: 'get',
|
||
data
|
||
})
|
||
|
||
// 退出登录
|
||
export const loginOut = (data) => request({
|
||
url: '/traapp/access/loginOut',
|
||
method: 'post',
|
||
data
|
||
}).then(() => {
|
||
setToken(null)
|
||
setUserInfo(null)
|
||
common.setValue('me_statistics_data', null) // 我的页统计数据缓存
|
||
common.setValue('index_statistics_data', null) // 首页统计数据缓存
|
||
}) |