config.js 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. /* eslint-disable spaced-comment */
  2. /********************* 1.项目常量定义 **********************/
  3. class Hotax {}
  4. // 资源类型 <视频|音频|直播|图片>
  5. Hotax.RESOURCE_VIDEO = 0;
  6. Hotax.RESOURCE_AUDIO = 1;
  7. Hotax.RESOURCE_LIVE = 2;
  8. Hotax.RESOURCE_IMAGE = 3;
  9. Hotax.RESOURCE_AUDIOBOOK = 4;
  10. // 清晰度类型 <流畅|标清|高清|超清>
  11. Hotax.QUALITY_FLUENT = 'fluent';
  12. Hotax.QUALITY_STANDARD = 'standard';
  13. Hotax.QUALITY_HIGH = 'high';
  14. Hotax.QUALITY_SUPERCLEAR = 'superclear';
  15. // 产品类型 <课|课程|配套|师训|课程包>
  16. Hotax.PRODUCT_LESSON = 'LESSON';
  17. Hotax.PRODUCT_COURSE = 'COURSE';
  18. Hotax.PRODUCT_SUPPORT = 'SUPPORT';
  19. Hotax.PRODUCT_TRAINING = 'TRAINING';
  20. Hotax.PRODUCT_PACKAGE = 'PACKAGE';
  21. // 删除状态 <正常|删除>
  22. Hotax.STATUS_NORMAL = 'NORMAL';
  23. Hotax.STATUS_DELETE = 'DEL';
  24. // 订单状态 <待支付|已作废|已支付|待发货|已发货|待收货|已收货|待退款|已完成>
  25. Hotax.ORDER_UNPAID = 'UNPAID';
  26. Hotax.ORDER_CANCEL = 'CANCEL';
  27. Hotax.ORDER_PAYOK = 'PAYOK';
  28. Hotax.ORDER_FORSEND = 'FORSEND';
  29. Hotax.ORDER_SENT = 'SENT';
  30. Hotax.ORDER_RECEIVED = 'RECEIVED';
  31. Hotax.ORDER_REFUND = 'REFUND';
  32. Hotax.ORDER_COMPLETE = 'COMPLETE';
  33. // 拆单状态 <已拆单|不需拆单|未拆单>
  34. Hotax.ORDER_SPLITED = 'YES';
  35. Hotax.ORDER_UNSPLIT = 'UN';
  36. Hotax.ORDER_NOSPLIT = 'NO';
  37. // 商品类型 <虚拟|实体>
  38. Hotax.GOODS_VIRTUAL = 'VIRTUAL';
  39. Hotax.GOODS_ENTITY = 'ENTITY';
  40. // 平台代号 <供应商|平台方|渠道方>
  41. Hotax.DOMAIN_CP = 1010;
  42. Hotax.DOMAIN_LJ = 2010;
  43. Hotax.DOMAIN_PJ = 3010;
  44. // 计价单位及时长
  45. Hotax.CHARGE_UNIT_SEASON = '季';
  46. Hotax.CHARGE_UNIT_HALF_YEAR = '半年';
  47. Hotax.CHARGE_UNIT_YEAR = '年';
  48. Hotax.CHARGE_UNIT_ITEM = '件';
  49. Hotax.CHARGE_UNIT_DAY = '天';
  50. Hotax.DURATION_SEASON = 90;
  51. Hotax.DURATION_HALF_YEAR = 180;
  52. Hotax.DURATION_YEAR = 365;
  53. Hotax.DURATION_DAY = 1;
  54. Hotax.DURATION_ITEM = 0;
  55. // 账号的绑定状态
  56. Hotax.ACCOUNT_BINDING = 1;
  57. Hotax.ACCOUNT_UNBOUND = 0;
  58. // 分页大小
  59. Hotax.PAGE_SIZE = 20;
  60. // 上传文件最大尺寸
  61. Hotax.FILE_MAX_SIZE = 5; // Index max size should below 5M
  62. // 项目名称
  63. Hotax.PROJECT_NAME = 'Taurus';
  64. // 版权声明
  65. Hotax.CopyRight = '2017-2020 领教信息科技有限公司';
  66. // 接口地址(测试)
  67. Hotax.API_HOST_DEV = 'http://tt-cms.api.ai160.com';
  68. // 接口地址(线上)
  69. Hotax.API_HOST_PRO = '/api';
  70. // oss存储地址
  71. Hotax.OSS_HOST = 'http://efunimgs.oss-cn-beijing.aliyuncs.com';
  72. /********************* 常量定义结束 **********************/
  73. /********************* 2.接口路径定义 **********************/
  74. const apiObj = {
  75. userLogin: '/login',
  76. userLogout: '/logout',
  77. resource: '/resource/list',
  78. resourceItem: '/resource',
  79. audiobookItem: '/resource/audioImg',
  80. signature: '/oss/signature',
  81. merchant: '/merchant/list',
  82. merchantItem: '/merchant',
  83. recommend: '/merchant/recommend',
  84. poster: '/merchant/poster',
  85. posterItem: '/poster',
  86. deposit: '/money/charge',
  87. campus: '/campus/list',
  88. campusItem: '/campus',
  89. terminal: '/user/list',
  90. terminalItem: '/user',
  91. terminalUnbound: '/device/unbind',
  92. terminalAuth: '/user/auth/list',
  93. terminalAuthEdit: '/user/auth',
  94. specialTerminal: '/white/user/list',
  95. specialTerminalItem: '/white/user',
  96. cmsUser: '/cms/user/list',
  97. cmsUserItem: '/cms/user',
  98. courseware: '/ware/list',
  99. coursewareItem: '/ware',
  100. lesson: '/lesson/list',
  101. lessonItem: '/lesson',
  102. tagGroup: '/group/list',
  103. tagGroupItem: '/group',
  104. tagType: '/tagType/list',
  105. tagTypeItem: '/tagType',
  106. tag: '/tag/list',
  107. tagItem: '/tag',
  108. product: '/product',
  109. items: '/merchant/product',
  110. itemDetail: '/merchant/product/detail',
  111. itemCreate: '/merchant/product/status',
  112. itemBindTags: '/merchant/product/tags',
  113. itemBindPrices: '/goods',
  114. shopCart: '/buymsg/list',
  115. order: '/order',
  116. subOrder: '/order/detail',
  117. orderPay: '/order/pay',
  118. orderSend: '/order/send',
  119. orderReceive: '/order/receive',
  120. snapshot: '/order/snapshot',
  121. userTags: '/user/userTag/uid',
  122. userTag: '/userTag',
  123. userTagCopy: '/userTag/copy',
  124. userRecommend: '/user/userRecommend/uid',
  125. };
  126. /**
  127. * 将api路径转化为绝对地址
  128. * @return {Object} 绝对地址
  129. */
  130. function apiFormatter() {
  131. // 根据环境变量选取接口地址
  132. let prefix = '';
  133. if (process.env.NODE_ENV === 'development') {
  134. prefix = Hotax.API_HOST_DEV;
  135. } else if (process.env.NODE_ENV === 'production') {
  136. prefix = Hotax.API_HOST_PRO;
  137. } else {
  138. prefix = Hotax.API_HOST_DEV;
  139. }
  140. // 生成接口绝对地址
  141. const newApiObj = {};
  142. Object.keys(apiObj).forEach((apiKey) => {
  143. newApiObj[apiKey] = prefix + apiObj[apiKey];
  144. });
  145. return newApiObj;
  146. }
  147. const api = apiFormatter();
  148. /********************* 接口定义结束 **********************/
  149. export { Hotax, api };