user.js 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. import request from '@/utils/request'
  2. import { encryptedData } from '@/utils/encrypt'
  3. import { loginRSA, tokenName } from '@/config'
  4. const qs = require('qs')
  5. const commonSign = window.context.commonSign
  6. export async function login(data) {
  7. const params = { ...data }
  8. if (loginRSA) {
  9. const { password } = params
  10. params['password'] = await encryptedData(password)
  11. }
  12. return request({
  13. url: `${context.auth}/auth?tenantId=${data.tenantId || '-1'}`,
  14. method: 'post',
  15. data: params,
  16. })
  17. }
  18. export async function ssoLogin(data) {
  19. let url = ''
  20. if (window.ssoConfig.mode == 'cas') {
  21. url = `${context.auth}/sso/auth?ssoMode=cas&ticket=${data.ticket}&service=${data.service}`
  22. } else if (window.ssoConfig.mode == 'oauth') {
  23. let params = {
  24. code: data.code,
  25. }
  26. return request({
  27. url: `${commonSign}auth/sso/exchangeCode`,
  28. method: 'post',
  29. data: qs.stringify(params),
  30. headers: { 'Content-type': 'application/x-www-form-urlencoded' },
  31. })
  32. // url = `${context.auth}/sso/auth?ssoMode=oauth&code=${data.code}&service=${data.service}`
  33. } else {
  34. console.error('当前非单点登录模式,不能请求后台单点登录接口。')
  35. }
  36. return request({
  37. url,
  38. })
  39. }
  40. export function getUserInfo(accessToken) {
  41. const params = {
  42. url: `${context.uc}/api/user/v1/user/getByAccount`,
  43. method: 'post',
  44. }
  45. if (accessToken) {
  46. params.headers = {
  47. Authorization: `Bearer ${accessToken}`,
  48. }
  49. }
  50. return request(params)
  51. }
  52. export function logout() {
  53. return request({
  54. url: `${context.auth}/signout`,
  55. method: 'get',
  56. })
  57. }
  58. // 通过 account 获取用户详细信息
  59. export function getDetailByAccountOrId(account) {
  60. const url = `${context.uc}/api/user/v1/user/getDetailByAccountOrId`
  61. return request.post(url, {
  62. accountOrId: account,
  63. })
  64. }
  65. // 修改密码
  66. export function updatePassword(data) {
  67. const url = `${context.uc}/api/user/v1/user/changUserPsd`
  68. return request.post(url, data)
  69. }
  70. export function ssoLoginByCode(data) {
  71. let url = window.context.form + '/api/data-middle-platform/sso/dmp'
  72. return request({
  73. url,
  74. method: 'get',
  75. params: data,
  76. })
  77. }