index.ts 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. import request from '@/utils/request';
  2. import { AxiosPromise } from 'axios';
  3. import { OrderMainVO, OrderMainForm, OrderMainQuery } from '@/api/order/orderMain/types';
  4. /**
  5. * 查询订单主信息列表
  6. * @param query
  7. * @returns {*}
  8. */
  9. export const listOrderMain = (query?: OrderMainQuery): AxiosPromise<OrderMainVO[]> => {
  10. return request({
  11. url: '/order/orderMain/list',
  12. method: 'get',
  13. params: query
  14. });
  15. };
  16. /**
  17. * 查询分配订单信息列表
  18. * @param query
  19. * @returns {*}
  20. */
  21. export const listOrderAssignment = (query?: OrderMainQuery): AxiosPromise<OrderMainVO[]> => {
  22. return request({
  23. url: '/order/orderMain/assignmentList',
  24. method: 'get',
  25. params: query
  26. });
  27. };
  28. /**
  29. * 查询订单主信息详细
  30. * @param id
  31. */
  32. export const getOrderMain = (id: string | number): AxiosPromise<OrderMainVO> => {
  33. return request({
  34. url: '/order/orderMain/' + id,
  35. method: 'get'
  36. });
  37. };
  38. /**
  39. * 新增订单主信息
  40. * @param data
  41. */
  42. export const addOrderMain = (data: OrderMainForm) => {
  43. return request({
  44. url: '/order/orderMain',
  45. method: 'post',
  46. data: data
  47. });
  48. };
  49. /**
  50. * 修改订单主信息
  51. * @param data
  52. */
  53. export const updateOrderMain = (data: OrderMainForm) => {
  54. return request({
  55. url: '/order/orderMain',
  56. method: 'put',
  57. data: data
  58. });
  59. };
  60. /**
  61. * 确认订单
  62. * @param data
  63. */
  64. export const orderAffirm = (data: OrderMainForm) => {
  65. return request({
  66. url: '/order/orderMain/orderAffirm',
  67. method: 'put',
  68. data: data
  69. });
  70. };
  71. /**
  72. * 删除订单主信息
  73. * @param id
  74. */
  75. export const delOrderMain = (id: string | number | Array<string | number>) => {
  76. return request({
  77. url: '/order/orderMain/' + id,
  78. method: 'delete'
  79. });
  80. };
  81. /**
  82. * 关闭订单
  83. * @param id
  84. */
  85. export const closeOrderMain = (id: string | number | Array<string | number>) => {
  86. const ids = Array.isArray(id) ? id : [id];
  87. return request({
  88. url: '/order/orderMain/closeOrder',
  89. method: 'post',
  90. params: { ids }
  91. });
  92. };
  93. /**
  94. * 查询数量
  95. * @param query
  96. * @returns {*}
  97. */
  98. export const queryOrderStatusStats = () => {
  99. return request({
  100. url: '/order/orderMain/queryOrderStatusStats',
  101. method: 'get'
  102. });
  103. };
  104. /**
  105. * 修改审核状态
  106. * @param id
  107. * @param checkStatus
  108. */
  109. export function changeCheckStatus(id: string | number, checkStatus: string) {
  110. const data = {
  111. id,
  112. checkStatus
  113. };
  114. return request({
  115. url: '/order/orderMain/checkStatus',
  116. method: 'put',
  117. data: data
  118. });
  119. }
  120. /**
  121. * 修改订单状态
  122. * @param id
  123. * @param orderStatus
  124. */
  125. export function changeStatus(id: string | number, orderStatus: string) {
  126. const data = {
  127. id,
  128. orderStatus
  129. };
  130. return request({
  131. url: '/order/orderMain/changeStatus',
  132. method: 'put',
  133. data: data
  134. });
  135. }
  136. /**
  137. * 根据多个订单ID查询对应的订单商品列表
  138. * @param orderIds
  139. */
  140. export function getCustomerOrderProductList(orderIds: (string | number)[]) {
  141. if (!Array.isArray(orderIds) || orderIds.length === 0) {
  142. return Promise.reject(new Error('订单ID不能为空'));
  143. }
  144. // 手动构造查询参数,确保格式为 orderId=1&orderId=2&orderId=3
  145. const params = new URLSearchParams();
  146. orderIds.forEach((id) => {
  147. params.append('orderId', String(id));
  148. });
  149. return request({
  150. url: '/order/orderMain/getCustomerOrderProductList?' + params.toString(),
  151. method: 'get'
  152. });
  153. }