order.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. import request2 from '@/sheep/request2';
  2. import request from '@/sheep/request';
  3. const OrderApi = {
  4. // 计算订单信息
  5. settlementOrder: (data) => {
  6. const data2 = {
  7. ...data,
  8. };
  9. // 移除多余字段
  10. if (!(data.couponId > 0)) {
  11. delete data2.couponId;
  12. }
  13. if (!(data.addressId > 0)) {
  14. delete data2.addressId;
  15. }
  16. // 解决 SpringMVC 接受 List<Item> 参数的问题
  17. delete data2.items;
  18. for (let i = 0; i < data.items.length; i++) {
  19. data2[encodeURIComponent('items[' + i + '' + '].skuId')] = data.items[i].skuId + '';
  20. data2[encodeURIComponent('items[' + i + '' + '].count')] = data.items[i].count + '';
  21. if (data.items[i].cartId) {
  22. data2[encodeURIComponent('items[' + i + '' + '].cartId')] = data.items[i].cartId + '';
  23. }
  24. }
  25. const queryString = Object.keys(data2)
  26. .map((key) => key + '=' + data2[key])
  27. .join('&');
  28. return request2({
  29. url: `trade/order/settlement?${queryString}`,
  30. method: 'GET',
  31. });
  32. },
  33. // 创建订单
  34. createOrder: (data) => {
  35. return request2({
  36. url: `trade/order/create`,
  37. method: 'POST',
  38. data,
  39. });
  40. },
  41. // 获得订单
  42. getOrder: (id) => {
  43. return request2({
  44. url: `trade/order/get-detail`,
  45. method: 'GET',
  46. params: {
  47. id,
  48. },
  49. });
  50. },
  51. // 订单列表
  52. getOrderPage: (params) => {
  53. return request({
  54. url: '/app-api/trade/order/page',
  55. method: 'GET',
  56. params,
  57. custom: {
  58. showLoading: false,
  59. },
  60. });
  61. },
  62. // 确认收货
  63. receiveOrder: (id) => {
  64. return request2({
  65. url: `/app-api/trade/order/receive`,
  66. method: 'PUT',
  67. params: {
  68. id,
  69. },
  70. });
  71. },
  72. // 取消订单
  73. cancelOrder: (id) => {
  74. return request2({
  75. url: `/app-api/trade/order/cancel`,
  76. method: 'DELETE',
  77. params: {
  78. id,
  79. },
  80. });
  81. },
  82. // 删除订单
  83. deleteOrder: (id) => {
  84. return request2({
  85. url: `/app-api/trade/order/delete`,
  86. method: 'DELETE',
  87. params: {
  88. id,
  89. },
  90. });
  91. },
  92. // 创建单个评论
  93. createOrderItemComment: (data) => {
  94. return request2({
  95. url: `/app-api/trade/order/item/create-comment`,
  96. method: 'POST',
  97. data,
  98. });
  99. },
  100. };
  101. export default OrderApi;