user.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. import request from "@/utils/request";
  2. export const userApi = {
  3. // 账号密码登录 - 显示自定义 loading 文字
  4. accountLogin(data, onComplete) {
  5. // 在第一次登录的时候拿到旧的设备信息,deviceId改为用户名+设备型号
  6. const deviceInfo = uni.getStorageSync("deviceInfo");
  7. const newDeviceInfo = {
  8. ...deviceInfo,
  9. deviceId: `(${data.yhm})${deviceInfo.model}`,
  10. }
  11. uni.setStorageSync("deviceInfo", newDeviceInfo)
  12. const promise = request.post(
  13. `/service?ssServ=ssLogin&yhm=${data.yhm}&mm=${data.mm}&wdConfirmationCaptchaService=0&wechatCode=${data.wechatCode}`,
  14. data,
  15. {
  16. loading: false, // 禁用全局 loading,由登录页面自己控制
  17. request: {
  18. timeout: 15000 // 登录请求 15 秒超时
  19. }
  20. }
  21. );
  22. // 无论成功还是失败,都调用完成回调
  23. if (onComplete) {
  24. promise.finally(() => {
  25. onComplete()
  26. })
  27. }
  28. return promise;
  29. },
  30. // 扫码登录门系统
  31. sacnGateLoginQrcode(data){
  32. return request.post( `/service?ssServ=sacnGateLoginQrcode`,
  33. data,
  34. {
  35. loading: true,
  36. formData: true,
  37. }
  38. );
  39. },
  40. // 扫码登录pc端
  41. sacnLoginQrcode(data){
  42. return request.post( `/service?ssServ=sacnLoginQrcode`,
  43. data,
  44. {
  45. loading: true,
  46. formData: true,
  47. }
  48. );
  49. },
  50. // 自动登录 - 静默登录,不显示 loading
  51. autoLogin(data) {
  52. return request.post(
  53. `/service?ssServ=ssLogin&wdConfirmationCaptchaService=0&mdToken=${data.mdToken}`,
  54. data,
  55. {
  56. loading: false // 自动登录不显示 loading,避免打扰用户
  57. }
  58. );
  59. },
  60. // 微信登录 - 自定义 loading
  61. wechatLogin(data, onComplete) {
  62. const promise = request.post(
  63. `/service?ssServ=ssLogin&wdConfirmationCaptchaService=0`,
  64. data,
  65. {
  66. loading: false, // 禁用全局 loading,由登录页面自己控制
  67. request: {
  68. timeout: 15000 // 微信登录请求 15 秒超时
  69. }
  70. }
  71. );
  72. // 无论成功还是失败,都调用完成回调
  73. if (onComplete) {
  74. promise.finally(() => {
  75. onComplete()
  76. })
  77. }
  78. return promise;
  79. },
  80. // 获取小程序用户信息
  81. mp_infoHomep_load(data){
  82. return request.post( `/service?ssServ=mp_infoHomep_load`,
  83. data,
  84. {
  85. loading: true,
  86. formData: true,
  87. }
  88. );
  89. },
  90. // 通用服务调用(用于首页动态按钮状态查询)
  91. callService(ssServ, data = {}, options = {}) {
  92. return request.post(
  93. `/service?ssServ=${ssServ}`,
  94. data,
  95. {
  96. loading: false,
  97. formData: true,
  98. ...options
  99. }
  100. );
  101. },
  102. // 更新用户密码和信息
  103. updPwd(data){
  104. return request.post( `/service?ssServ=updPwd`,
  105. data,
  106. {
  107. loading: true,
  108. formData: true,
  109. }
  110. );
  111. },
  112. };