index.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. import { config } from '../../config/index';
  2. /** 获取优惠券列表 */
  3. function mockFetchCoupon(status) {
  4. const { delay } = require('../_utils/delay');
  5. const { getCouponList } = require('../../model/coupon');
  6. return delay().then(() => getCouponList(status));
  7. }
  8. /** 获取优惠券列表 */
  9. export function fetchCouponList(status = 'default') {
  10. if (config.useMock) {
  11. return mockFetchCoupon(status);
  12. }
  13. return new Promise((resolve) => {
  14. resolve('real api');
  15. });
  16. }
  17. /** 获取优惠券 详情 */
  18. function mockFetchCouponDetail(id, status) {
  19. const { delay } = require('../_utils/delay');
  20. const { getCoupon } = require('../../model/coupon');
  21. const { genAddressList } = require('../../model/address');
  22. return delay().then(() => {
  23. const result = {
  24. detail: getCoupon(id, status),
  25. storeInfoList: genAddressList(),
  26. };
  27. result.detail.useNotes = `1个订单限用1张,除运费券外,不能与其它类型的优惠券叠加使用(运费券除外)\n2.仅适用于各区域正常售卖商品,不支持团购、抢购、预售类商品`;
  28. result.detail.storeAdapt = `商城通用`;
  29. if (result.detail.type === 'price') {
  30. result.detail.desc = `减免 ${result.detail.value / 100} 元`;
  31. if (result.detail.base) {
  32. result.detail.desc += `,满${result.detail.base / 100}元可用`;
  33. }
  34. result.detail.desc += '。';
  35. } else if (result.detail.type === 'discount') {
  36. result.detail.desc = `${result.detail.value}折`;
  37. if (result.detail.base) {
  38. result.detail.desc += `,满${result.detail.base / 100}元可用`;
  39. }
  40. result.detail.desc += '。';
  41. }
  42. return result;
  43. });
  44. }
  45. /** 获取优惠券 详情 */
  46. export function fetchCouponDetail(id, status = 'default') {
  47. if (config.useMock) {
  48. return mockFetchCouponDetail(id, status);
  49. }
  50. return new Promise((resolve) => {
  51. resolve('real api');
  52. });
  53. }