orderConfirm.js 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. import { config,cloudbaseTemplateConfig } from '../../config/index';
  2. import { mockIp, mockReqId } from '../../utils/mock';
  3. import { DATA_MODEL_KEY } from '../../config/model';
  4. import { model, getAll } from '../_utils/model';
  5. const HOME_SWIPER_MODEL_KEY = DATA_MODEL_KEY.HOME_SWIPER;
  6. /** 获取结算mock数据 */
  7. function mockFetchSettleDetail(params) {
  8. const { delay } = require('../_utils/delay');
  9. const { genSettleDetail } = require('../../model/order/orderConfirm');
  10. return delay().then(() => genSettleDetail(params));
  11. }
  12. /** 提交mock订单 */
  13. function mockDispatchCommitPay() {
  14. const { delay } = require('../_utils/delay');
  15. return delay().then(() => ({
  16. data: {
  17. isSuccess: true,
  18. tradeNo: '350930961469409099',
  19. payInfo: '{}',
  20. code: null,
  21. transactionId: 'E-200915180100299000',
  22. msg: null,
  23. interactId: '15145',
  24. channel: 'wechat',
  25. limitGoodsList: null,
  26. },
  27. code: 'Success',
  28. msg: null,
  29. requestId: mockReqId(),
  30. clientIp: mockIp(),
  31. rt: 891,
  32. success: true,
  33. }));
  34. }
  35. /** 获取结算数据 */
  36. export function fetchSettleDetail(params) {
  37. if (config.useMock) {
  38. return mockFetchSettleDetail(params);
  39. }
  40. return new Promise((resolve) => {
  41. resolve('real api');
  42. });
  43. }
  44. /* 提交订单 */
  45. export function dispatchCommitPay(params) {
  46. if (config.useMock) {
  47. return mockDispatchCommitPay(params);
  48. }
  49. return new Promise((resolve) => {
  50. resolve('real api');
  51. });
  52. }
  53. /** 开发票 */
  54. export function dispatchSupplementInvoice() {
  55. if (config.useMock) {
  56. const { delay } = require('../_utils/delay');
  57. return delay();
  58. }
  59. return new Promise((resolve) => {
  60. resolve('real api');
  61. });
  62. }
  63. export async function getSwipe() {
  64. // console.log("cloudbaseTemplateConfig.useMock",cloudbaseTemplateConfig.useMock);
  65. if (cloudbaseTemplateConfig.useMock) {
  66. // 返回包含多张模拟图片的数据
  67. return {
  68. images: [
  69. 'https://qcloudimg.tencent-cloud.cn/raw/1e793c70bb4f521fe277b2c207ab81b4.png',
  70. 'https://qcloudimg.tencent-cloud.cn/raw/063123361b3a397f4ba6894591c3a006.png',
  71. 'https://qcloudimg.tencent-cloud.cn/raw/62eb1d8d8ea3b05302c199636f787438.png'
  72. ]
  73. };
  74. }
  75. // 实际环境中获取所有记录,然后提取所有图片
  76. const records = (await model()[HOME_SWIPER_MODEL_KEY].list({ select: { images: true } })).data.records;
  77. // console.log("records:",records);
  78. // console.log("records[1].images:",records[1].images);
  79. // 合并所有记录中的images数组
  80. const allImages = records[1].images; //records.flatMap(record => record.images || []);
  81. return { images: allImages.length > 0 ? allImages : [] };
  82. }