diff --git a/src/api/clue/afterSale.js b/src/api/clue/afterSale.js
new file mode 100644
index 0000000..b9b8056
--- /dev/null
+++ b/src/api/clue/afterSale.js
@@ -0,0 +1,26 @@
+import request from '@/config/axios'
+
+// 查询(精简)列表
+export const getAfterSaleList = async (params) => {
+ return await request.get({ url: '/admin-api/crm/sign-after-sale/list', params })
+}
+
+// 查询(精简)列表
+export const getAfterSalePage = async (params) => {
+ return await request.get({ url: '/admin-api/crm/sign-after-sale/page', params })
+}
+
+// 新增
+export const createAfterSale = async (data) => {
+ return await request.post({ url: '/admin-api/crm/sign-after-sale/create', data })
+}
+
+// 审核
+export const auditAfterSale = async (data) => {
+ return await request.post({ url: '/admin-api/crm/sign-after-sale/check', data })
+}
+
+// 撤销
+export const cancelApplyAfterSale = async (data) => {
+ return await request.post({ url: '/admin-api/crm/sign-after-sale/revoke', data })
+}
diff --git a/src/api/clue/payment.js b/src/api/clue/payment.js
index afbb76a..5e8f613 100644
--- a/src/api/clue/payment.js
+++ b/src/api/clue/payment.js
@@ -5,6 +5,11 @@ export const getPaymentList = async (params) => {
return await request.get({ url: '/admin-api/crm/sign-pay-record/list', params })
}
+// 查询(精简)列表
+export const getPaymentPage = async (params) => {
+ return await request.get({ url: '/admin-api/crm/sign-pay-record/page', params })
+}
+
// 新增
export const createPayment = async (data) => {
return await request.post({ url: '/admin-api/crm/sign-pay-record/create', data })
@@ -14,3 +19,8 @@ export const createPayment = async (data) => {
export const auditPayment = async (data) => {
return await request.post({ url: '/admin-api/crm/sign-pay-record/check', data })
}
+
+// 撤销
+export const cancelApplyPayment = async (data) => {
+ return await request.post({ url: '/admin-api/crm/sign-pay-record/revoke', data })
+}
diff --git a/src/views/Clue/Order/Comp/AfterSales.vue b/src/views/Clue/Order/Comp/AfterSales.vue
index 11c2d3e..1c11aaa 100644
--- a/src/views/Clue/Order/Comp/AfterSales.vue
+++ b/src/views/Clue/Order/Comp/AfterSales.vue
@@ -2,13 +2,21 @@
-
+
-
+
-
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
详情
-
+
撤销
-
+
审核
@@ -90,10 +111,20 @@
diff --git a/src/views/Clue/Order/Comp/DialogAfterSale.vue b/src/views/Clue/Order/Comp/DialogAfterSale.vue
new file mode 100644
index 0000000..c8f1081
--- /dev/null
+++ b/src/views/Clue/Order/Comp/DialogAfterSale.vue
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
diff --git a/src/views/Clue/Order/Comp/DialogFeeback.vue b/src/views/Clue/Order/Comp/DialogFeeback.vue
new file mode 100644
index 0000000..2907467
--- /dev/null
+++ b/src/views/Clue/Order/Comp/DialogFeeback.vue
@@ -0,0 +1,101 @@
+
+
+
+
+
+
+
diff --git a/src/views/Clue/Order/Comp/DialogOrder.vue b/src/views/Clue/Order/Comp/DialogOrder.vue
index 506672f..6497ff6 100644
--- a/src/views/Clue/Order/Comp/DialogOrder.vue
+++ b/src/views/Clue/Order/Comp/DialogOrder.vue
@@ -15,13 +15,22 @@
-
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -34,7 +43,8 @@ import * as ClueApi from '@/api/clue'
import * as OrderApi from '@/api/clue/sign'
import { getSimpleFieldList as getClueFieldList } from '@/api/clue/clueField'
import { getSimpleFieldList as getOrderFieldList } from '@/api/clue/orderField'
-import { getPaymentList } from '@/api/clue/payment'
+import { getPaymentPage } from '@/api/clue/payment'
+import { getAfterSalePage } from '@/api/clue/afterSale'
import { formatDate } from '@/utils/formatTime'
@@ -42,7 +52,8 @@ const tabName = ref('clueInfo')
const show = ref(false)
const clueInfo = ref({})
const orderInfo = ref({})
-const returnRecord = ref([])
+const returnRecordList = ref([])
+const aftersaleList = ref([])
function open(clueId, orderId) {
try {
@@ -56,8 +67,11 @@ function open(clueId, orderId) {
orderInfo.value = { ...data, ...data.diyParams }
orderInfo.value.dealDate = formatDate(orderInfo.value.dealDate, 'YYYY-MM-DD HH:mm')
})
- getPaymentList({ signId: orderId }).then((data) => {
- returnRecord.value = data
+ getPaymentPage({ signId: orderId, pageNo: 1, pageSize: 100 }).then((data) => {
+ returnRecordList.value = data.list
+ })
+ getAfterSalePage({ signId: orderId, pageNo: 1, pageSize: 100 }).then((data) => {
+ aftersaleList.value = data.list
})
} catch (error) {
console.log(error)
diff --git a/src/views/Clue/Order/Comp/OrderList.vue b/src/views/Clue/Order/Comp/OrderList.vue
index 37c2639..36c2771 100644
--- a/src/views/Clue/Order/Comp/OrderList.vue
+++ b/src/views/Clue/Order/Comp/OrderList.vue
@@ -131,15 +131,6 @@
>
售后
-
- 售后审核
-
回款
-
- 回款确认
-
+
+
@@ -187,6 +172,8 @@ import { getClassTypePage } from '@/api/school/class'
import { getSimpleProductList } from '@/api/mall/product'
import DialogOrder from './DialogOrder.vue'
+import DialogFeeback from './DialogFeeback.vue'
+import DialogAfterSale from './DialogAfterSale.vue'
import { removeNullField } from '@/utils'
import { useAppStore } from '@/store/modules/app'
@@ -286,9 +273,16 @@ function handleDetail(row) {
orderDetailDialog.value.open(row.clueId, row.signId)
}
+const feedbackDialog = ref()
+const afterSaleDialog = ref()
// 售后
-function sellAfter() {
- // 方法体
+function sellAfter(row) {
+ afterSaleDialog.value.open(row.signId)
+}
+
+// 回款
+function feeBack(row) {
+ feedbackDialog.value.open(row.signId)
}
function changeSchool() {
diff --git a/src/views/Clue/Order/Comp/Reback.vue b/src/views/Clue/Order/Comp/Reback.vue
index 401c37d..427c973 100644
--- a/src/views/Clue/Order/Comp/Reback.vue
+++ b/src/views/Clue/Order/Comp/Reback.vue
@@ -2,13 +2,21 @@
-
+
-
+
-
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
- 详情
+ 详情
+
+
- 撤销
- 审核
+
+ 审核
+
@@ -88,13 +109,23 @@