diff --git a/src/api/order/order.ts b/src/api/order/order.ts index e6c21ea3a9de2433d807a2883b1d1a69ec59a99c..761d0fc3651d596b045cefebb3c36671f4a8031b 100644 --- a/src/api/order/order.ts +++ b/src/api/order/order.ts @@ -1,9 +1,44 @@ import request from '@/utils/request' +import { ParamsData, orderTableRes } from '@/model/order/AllOrder' +import { AfterSaleParams } from '@/model/order/AfterSale' + +// 枚举接口地址 enum Api { ORDER_TABLE = '/api/order/page', + AFTER_SALE_TABLE = '/api/order/afterSale/page', + AFTER_SALE_EXPORT = '/api/order/afterSale/export', + AFTER_SALE_REIMBURSE = '/api/order/afterSale/reimburse', } -// 获取订单表格数据 +/** + * @description: 获取订单表格数据 + * @param {ParamsData} data + * @return {orderTableRes} + */ +export const getOrderTableData = (data: ParamsData) => + request.get(Api.ORDER_TABLE, data) + +/** + * @description: 获取售后订单表格数据 + * @param {AfterSaleParams} data + * @return {*} + */ +export const getAfterSaleTableData = (data: AfterSaleParams) => + request.get(Api.AFTER_SALE_TABLE, data) + +/** + * @description: 导出订单 + * @param {AfterSaleParams} data + * @return {*} + */ +export const exportAfterSaleOrder = (data: AfterSaleParams) => + request.get(Api.AFTER_SALE_EXPORT, data) -export const getOrderTableData = (data: any) => request.get(Api.ORDER_TABLE, data) +/** + * @description: 退款操作 + * @param {object} data + * @return {*} + */ +export const judgeReimburse = (data: object | undefined) => + request.patch(Api.AFTER_SALE_REIMBURSE, data) diff --git a/src/views/order/all-order/Table.vue b/src/components/OrderTable/index.vue similarity index 95% rename from src/views/order/all-order/Table.vue rename to src/components/OrderTable/index.vue index b8fbf665c75b65d5b4f5064b20a4d67057138ea0..256f60f944bb0a1783a57419a4b2b933738f14f1 100644 --- a/src/views/order/all-order/Table.vue +++ b/src/components/OrderTable/index.vue @@ -32,8 +32,8 @@ -
- +
+ 暂无数据
diff --git a/src/model/order/AfterSale.ts b/src/model/order/AfterSale.ts new file mode 100644 index 0000000000000000000000000000000000000000..5bff7d0b0202eadfd16400f8be4abb31f78d0516 --- /dev/null +++ b/src/model/order/AfterSale.ts @@ -0,0 +1,32 @@ +// 售后表格请求参数,导出售后表格参数 +export interface AfterSaleParams { + current: number // 当前页码 + size: number // 每页条数 + orderNo?: string // 订单编号 + createStart?: string // 申请开始时间 + createEnd?: string // 申请结束时间 + afterSaleNo?: string // 售后编号 + refundType?: number // 退款类型 (1:售中退款 2:售后退款) + interveneStatus?: number // 有赞客服介入状态 (1:未介入 2:介入中 3:介入结束) + manner?: number // 售后方式 (1:仅退款 2:退货退款 3:换货) + deliveryStatus?: number // 发货状态 (1:未发货 2:已发货) + status?: number // 售后状态 (1:售后处理中 2:售后申请待商家同意 3:商家不同意售后申请,待买家处理 4:商家同意售后申请,待买家处理 5:买家已退货 6:待商家确认收货 7:商家拒绝收货,待买家处理 8:商家已发货,待买家确认收货,9:售后成功 10:售后关闭) + tackingNo?: string // 物流编号 + tackingStatus?: number // 物流状态 (1:未签收 2:已签收 3:无物流信息) + productName?: string // 商品名称 + sort?: number // 排序 (1:按最近申请排序,按临近超时排序) + [props: string]: any // 额外类型 +} +// 售后表格请求响应数据 + +// 售后表格数据 + +// 退款请求参数 +export interface ReimburseParams { + id: number // 售后id + isAgree: boolean // 是否同意 + receiverProvince?: string // 收货人省 + receiverCity?: string // 收货人市 + receiverArea?: string // 收货人区 + receiverAddress?: string // 收货人详细地址 +} diff --git a/src/views/order/all-order/allOrder.ts b/src/model/order/AllOrder.ts similarity index 100% rename from src/views/order/all-order/allOrder.ts rename to src/model/order/AllOrder.ts diff --git a/src/router/asyncRoutes.ts b/src/router/asyncRoutes.ts index 8b73f3fa3a5853271c82208b702b6832f71e26b4..6b0784d6a0bc4e36825d5afd3c30b8c7a74327e3 100644 --- a/src/router/asyncRoutes.ts +++ b/src/router/asyncRoutes.ts @@ -3,6 +3,8 @@ export default { overview: () => import('@/views/dashboard/index.vue'), authUser: () => import('@/views/user/index.vue'), orderAll: () => import('@/views/order/all-order/index.vue'), + orderStar: () => import('@/views/order/all-order/index.vue'), + orderAftersales: () => import('@/views/order/after-sale/index.vue'), code4: () => import('@/views/dashboard/index.vue'), code5: () => import('@/views/dashboard/index.vue'), code6: () => import('@/views/dashboard/index.vue'), diff --git a/src/views/order/after-sale/components/AfterSaleTable.vue b/src/views/order/after-sale/components/AfterSaleTable.vue new file mode 100644 index 0000000000000000000000000000000000000000..b3902d53d640149d249a4329393eade7f25bb966 --- /dev/null +++ b/src/views/order/after-sale/components/AfterSaleTable.vue @@ -0,0 +1,224 @@ + + + + + diff --git a/src/views/order/after-sale/components/FilterForm.vue b/src/views/order/after-sale/components/FilterForm.vue new file mode 100644 index 0000000000000000000000000000000000000000..33c9b882f0180bf3db278b4f121244f5162074b3 --- /dev/null +++ b/src/views/order/after-sale/components/FilterForm.vue @@ -0,0 +1,228 @@ + + + + + diff --git a/src/views/order/after-sale/index.vue b/src/views/order/after-sale/index.vue new file mode 100644 index 0000000000000000000000000000000000000000..1000270a492ee0f6a08193047425938de477fef6 --- /dev/null +++ b/src/views/order/after-sale/index.vue @@ -0,0 +1,54 @@ + + + + + diff --git a/src/views/order/all-order/OrderTable.vue b/src/views/order/all-order/components/AllOrderTable.vue similarity index 68% rename from src/views/order/all-order/OrderTable.vue rename to src/views/order/all-order/components/AllOrderTable.vue index 516c2352556d5def7a71985015ff42d562f211d5..ff3e1e8a54ecd4d93dc4c8014e9d6cf28fcf3381 100644 --- a/src/views/order/all-order/OrderTable.vue +++ b/src/views/order/all-order/components/AllOrderTable.vue @@ -1,6 +1,6 @@