api.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. // API 基础配置(山峡化工 miniprogram)
  2. // 环境切换:改 config/env.js 中的 APP_ENV(local | test | production)
  3. // 发版:APP_ENV = 'production' 后执行 npm run release:check-api
  4. //
  5. // 注意:必须直接 re-export env 中的 URL,不要用 const 再拷一份。
  6. // 热更新只重载 env.js 时,拷贝版 API_BASE 会仍指向旧环境(本地签发 ticket、生产打开 H5 → 401)。
  7. import {
  8. APP_ENV,
  9. API_BASE_URL,
  10. CURRENT_ENV,
  11. IS_PRODUCTION,
  12. WECHAT_MP_APPID,
  13. resolveApiBase,
  14. resolveWebOrigin
  15. } from '@/config/env'
  16. export {
  17. APP_ENV,
  18. CURRENT_ENV,
  19. IS_PRODUCTION,
  20. WECHAT_MP_APPID,
  21. resolveApiBase,
  22. resolveWebOrigin
  23. }
  24. /** @deprecated 热更新可能仍是旧值;请求请用 resolveApiBase() */
  25. export const BASE_URL = API_BASE_URL
  26. /** @deprecated 热更新可能仍是旧值;请求请用 resolveApiBase() */
  27. export const API_BASE = API_BASE_URL
  28. console.log('[ENV]', APP_ENV, CURRENT_ENV.label, resolveApiBase(), resolveWebOrigin())
  29. /** 认证相关路径(当前复用 web-admin 公共登录接口) */
  30. export const AUTH_API = {
  31. LOGIN_RSA_PUBLIC_KEY: '/web/auth/login-rsa-public-key',
  32. LOGIN: '/web/auth/login',
  33. WECHAT_LOGIN: '/mini/auth/wechat-login',
  34. LOGOUT: '/web/auth/logout',
  35. CURRENT_USER: '/web/auth/current-user',
  36. REFRESH_TOKEN: '/web/auth/refresh-token',
  37. MENU_CODES: '/web/auth/menu-codes',
  38. MP_WEBVIEW_TICKET: '/web/auth/mp-webview-ticket'
  39. }
  40. /**
  41. * 上传接口(multipart,须在 API_ENCRYPT_EXCLUDE_PATHS 中)
  42. * 响应字段兼容 data.url / data.fileUrl;P0 复用管理端附件上传。
  43. * 后续可切换为专用 /mini/.../upload/image。
  44. */
  45. export const UPLOAD_API = {
  46. IMAGE: '/web/admin/attachment/upload'
  47. }
  48. /** Tab / 业务页路径 */
  49. export const PAGE_PATHS = {
  50. login: '/pages/login/login',
  51. home: '/pages/home/home',
  52. todo: '/pages/todo/todo',
  53. workbench: '/pages/workbench/workbench',
  54. mine: '/pages/mine/mine',
  55. bizPlaceholder: '/pages/common/biz-placeholder',
  56. dbDashboard: '/pages/db/dashboard/index',
  57. dbPlansList: '/pages/db/plans/list',
  58. dbPlansDetail: '/pages/db/plans/detail',
  59. dbInventoryList: '/pages/db/inventory/list',
  60. dbInventoryDetail: '/pages/db/inventory/detail',
  61. dbWeighingList: '/pages/db/weighing/list',
  62. dbWeighingDetail: '/pages/db/weighing/detail',
  63. bxAdvanceApply: '/pages/bx/advance/list',
  64. bxAdvanceApplyForm: '/pages/bx/advance/apply',
  65. bxAdvanceDetail: '/pages/bx/advance/detail',
  66. bxReimburseApply: '/pages/bx/reimburse/list',
  67. bxReimburseApplyForm: '/pages/bx/reimburse/apply',
  68. bxReimburseDetail: '/pages/bx/reimburse/detail',
  69. bxMine: '/pages/bx/mine/list',
  70. bxAll: '/pages/bx/all/list',
  71. bxInvoiceMine: '/pages/bx/invoice/mine',
  72. bxInvoiceAdmin: '/pages/bx/invoice/admin',
  73. bxExpenseItem: '/pages/bx/admin/expense-item',
  74. bxWfAdvance: '/pages/bx/admin/wf-advance',
  75. bxWfReimburse: '/pages/bx/admin/wf-reimburse',
  76. plFuelRegister: '/pages/pl/fuel-register/list',
  77. plFuelRegisterForm: '/pages/pl/fuel-register/form',
  78. plTransportPlan: '/pages/pl/transport-plan/list',
  79. plTransportPlanDetail: '/pages/pl/transport-plan/detail',
  80. plDriverPlan: '/pages/pl/driver-plan/list',
  81. plDriverPlanDetail: '/pages/pl/driver-plan/detail',
  82. mpWebview: '/pages/common/mp-webview'
  83. }
  84. /** 工作台菜单 code → 页面路径 */
  85. export const WORKBENCH_ROUTE_MAP = {
  86. 'db-dashboard': PAGE_PATHS.dbDashboard,
  87. 'db-plans': PAGE_PATHS.dbPlansList,
  88. 'db-inventory': PAGE_PATHS.dbInventoryList,
  89. 'db-weighing': PAGE_PATHS.dbWeighingList,
  90. 'bx-advance-apply': PAGE_PATHS.bxAdvanceApply,
  91. 'bx-reimburse-apply': PAGE_PATHS.bxReimburseApply,
  92. 'bx-mine': PAGE_PATHS.bxMine,
  93. 'bx-all': PAGE_PATHS.bxAll,
  94. 'bx-invoice-mine': PAGE_PATHS.bxInvoiceMine,
  95. 'bx-invoice-admin': PAGE_PATHS.bxInvoiceAdmin,
  96. 'bx-expense-item': PAGE_PATHS.bxExpenseItem,
  97. 'bx-wf-advance': PAGE_PATHS.bxWfAdvance,
  98. 'bx-wf-reimburse': PAGE_PATHS.bxWfReimburse,
  99. 'pl-fuel-register': PAGE_PATHS.plFuelRegister,
  100. 'pl-transport-plan': PAGE_PATHS.plTransportPlan,
  101. 'pl-driver-plan': PAGE_PATHS.plDriverPlan,
  102. 'pl-plan-webview': PAGE_PATHS.mpWebview + '?path=' + encodeURIComponent('/m/pl/plan')
  103. }
  104. export const TOKEN_KEY = 'sx_token'
  105. export const REFRESH_TOKEN_KEY = 'sx_refresh_token'
  106. export const USER_INFO_KEY = 'sx_user_info'