user.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import request from '@/utils/request'
  2. import {getDataByKey} from '@/api/system';
  3. // 登录
  4. export function login(data) {
  5. return request({
  6. url: '/login',
  7. method: 'post',
  8. data
  9. })
  10. };
  11. // 生成验证码
  12. export function getCode() {
  13. return request({
  14. url: "/captchaImage",
  15. method: 'get'
  16. })
  17. };
  18. // 获取 用户信息
  19. export function getUserInfo() {
  20. return request({
  21. url: '/getInfo',
  22. method: 'get'
  23. })
  24. };
  25. // 获取验证码 图片
  26. export function getCodeimg() {
  27. return request({
  28. url: '/captchaImage',
  29. method: 'get'
  30. })
  31. };
  32. export async function loginAndUserinfo(data) {
  33. const transition = (fn, res) => {
  34. if (res == null) [res, fn] = [fn];
  35. if (res.ResultCode !== 0) throw res.ResultInfo;
  36. return typeof fn === 'function' ? fn(res.Data, res.ResultInfo) : res.Data;
  37. };
  38. const token = await login(data).then(transition.bind(null, (data) => data.token));
  39. localStorage.setItem('token', token);
  40. const userInfo = await getUserInfo().then(transition);
  41. const defaultHomePage = await getDataByKey({key: 'defaultHomePage', organizationid: userInfo.organizationid});
  42. return {token, userInfo, defaultHomePage };
  43. }