增加售后相关的
This commit is contained in:
@@ -10,6 +10,7 @@ import {
|
||||
unassignAdminWorkOrder,
|
||||
creditAdminWorkerWallet,
|
||||
createAdminMockWorkOrder,
|
||||
createAdminAfterSalesCase,
|
||||
deductAdminWorkOrderPendingDeposit,
|
||||
deleteAdminWorkCategory,
|
||||
deleteAdminWorkProductRule,
|
||||
@@ -22,6 +23,7 @@ import {
|
||||
getAdminWorkerPlatformNotificationConfig,
|
||||
getAdminWorkerPlatformSummary,
|
||||
getAdminWorkOrderEvents,
|
||||
getAdminAfterSalesCaseEvents,
|
||||
getAdminWorkOrderSharing,
|
||||
listAdminWorkerFinanceRequests,
|
||||
listAdminWorkerWithdrawalAccounts,
|
||||
@@ -33,6 +35,7 @@ import {
|
||||
listAdminWorkerLevels,
|
||||
listAdminWorkerUsers,
|
||||
listAdminWorkOrders,
|
||||
listAdminAfterSalesCases,
|
||||
listAdminWorkerCancelRequests,
|
||||
listAdminWorkerOrderFeedbacks,
|
||||
markAdminWorkOrderProblem,
|
||||
@@ -44,6 +47,7 @@ import {
|
||||
reviewAdminWorkerCancelRequest,
|
||||
resolveAdminWorkerOrderFeedback,
|
||||
resolveAdminProblemWorkOrder,
|
||||
resolveAdminAfterSalesCase,
|
||||
reviewAdminWorkerUser,
|
||||
resetAdminWorkerPassword,
|
||||
saveAdminWorkerFinanceConfig,
|
||||
@@ -908,6 +912,74 @@ router.get(
|
||||
}),
|
||||
)
|
||||
|
||||
router.get(
|
||||
'/worker-platform/after-sales-cases',
|
||||
requireAdminRoles(['admin', 'operator', 'support']),
|
||||
createJsonHandler((req) => listAdminAfterSalesCases(req.query), {
|
||||
successMessage: 'ok',
|
||||
errorMessage: '读取售后问题单失败',
|
||||
scope: '[admin/worker-platform/after-sales-cases]',
|
||||
}),
|
||||
)
|
||||
|
||||
router.get(
|
||||
'/worker-platform/after-sales-cases/:caseId/events',
|
||||
requireAdminRoles(['admin', 'operator', 'support']),
|
||||
createJsonHandler((req) => getAdminAfterSalesCaseEvents(String(req.params.caseId || '')), {
|
||||
successMessage: 'ok',
|
||||
errorMessage: '读取售后问题单记录失败',
|
||||
scope: '[admin/worker-platform/after-sales-cases/:caseId/events]',
|
||||
}),
|
||||
)
|
||||
|
||||
router.post(
|
||||
'/worker-platform/orders/:workOrderId/after-sales-cases',
|
||||
requireAdminRoles(['admin', 'operator', 'support']),
|
||||
createJsonHandler(
|
||||
(req) =>
|
||||
createAdminAfterSalesCase(
|
||||
String(req.params.workOrderId || ''),
|
||||
req.body || {},
|
||||
req.adminSession?.username || '',
|
||||
),
|
||||
{
|
||||
successMessage: '售后问题单已创建',
|
||||
errorMessage: '创建售后问题单失败',
|
||||
scope: '[admin/worker-platform/orders/:workOrderId/after-sales-cases]',
|
||||
audit: (req, data) => ({
|
||||
action: 'after_sales_case_created',
|
||||
targetType: 'work_order',
|
||||
targetId: String(req.params.workOrderId || ''),
|
||||
data: data && typeof data === 'object' ? (data as Record<string, unknown>) : {},
|
||||
}),
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
router.post(
|
||||
'/worker-platform/after-sales-cases/:caseId/resolve',
|
||||
requireAdminRoles(['admin', 'operator', 'support']),
|
||||
createJsonHandler(
|
||||
(req) =>
|
||||
resolveAdminAfterSalesCase(
|
||||
String(req.params.caseId || ''),
|
||||
req.body || {},
|
||||
req.adminSession?.username || '',
|
||||
),
|
||||
{
|
||||
successMessage: '售后问题单已处置',
|
||||
errorMessage: '处置售后问题单失败',
|
||||
scope: '[admin/worker-platform/after-sales-cases/:caseId/resolve]',
|
||||
audit: (req, data) => ({
|
||||
action: 'after_sales_case_resolved',
|
||||
targetType: 'after_sales_case',
|
||||
targetId: String(req.params.caseId || ''),
|
||||
data: data && typeof data === 'object' ? (data as Record<string, unknown>) : {},
|
||||
}),
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
router.post(
|
||||
'/worker-platform/orders/:workOrderId/sharing',
|
||||
requireAdminRoles(['admin', 'operator']),
|
||||
|
||||
@@ -39,9 +39,11 @@ import {
|
||||
supplementWorkerAcceptedOrderEvidence,
|
||||
submitWorkerOrderAcceptance,
|
||||
getWorkerCancelRequestSummary,
|
||||
getWorkerAfterSalesCaseSummary,
|
||||
getWorkerAnnouncement,
|
||||
getWorkerOrderFeedbackSummary,
|
||||
submitWorkerCancelRequest,
|
||||
submitWorkerAfterSalesCaseResponse,
|
||||
submitWorkerOrderFeedback,
|
||||
} from '../services/worker-platform/index.js'
|
||||
import { buildNotFoundPayload, createRouteHandler } from '../utils/http.js'
|
||||
@@ -489,6 +491,34 @@ router.get(
|
||||
}),
|
||||
)
|
||||
|
||||
router.get(
|
||||
'/orders/after-sales-cases',
|
||||
requireActiveWorker,
|
||||
createRouteHandler((req) => getWorkerAfterSalesCaseSummary(getRequiredWorkerSession(req)), {
|
||||
successMessage: 'ok',
|
||||
errorMessage: '读取售后问题单失败',
|
||||
scope: '[worker/orders/after-sales-cases]',
|
||||
}),
|
||||
)
|
||||
|
||||
router.post(
|
||||
'/orders/after-sales-cases/:caseId/response',
|
||||
requireActiveWorker,
|
||||
createRouteHandler(
|
||||
(req) =>
|
||||
submitWorkerAfterSalesCaseResponse(
|
||||
String(req.params.caseId || ''),
|
||||
req.body || {},
|
||||
getRequiredWorkerSession(req),
|
||||
),
|
||||
{
|
||||
successMessage: '售后说明已提交,等待客服处理',
|
||||
errorMessage: '提交售后说明失败',
|
||||
scope: '[worker/orders/after-sales-cases/:caseId/response]',
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
router.post(
|
||||
'/orders/:workOrderId/feedbacks',
|
||||
requireActiveWorker,
|
||||
|
||||
Reference in New Issue
Block a user