From 951d0574b1d5cd711be091969de9e11094e618d1 Mon Sep 17 00:00:00 2001 From: yml2213 Date: Fri, 14 Aug 2026 15:40:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=8E=A5=E5=8D=95=E5=B7=A5?= =?UTF-8?q?=E5=8D=95=E7=AD=9B=E9=80=89=E5=B8=83=E5=B1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/routes/admin/worker-platform.ts | 17 ---- .../services/worker-platform/admin-service.ts | 43 --------- .../pages/admin/AdminWorkerPlatformPage.tsx | 2 - .../pages/admin/panels/CategoriesPanel.tsx | 2 - .../src/pages/admin/panels/FinancePanel.tsx | 1 - .../src/pages/admin/panels/LevelsPanel.tsx | 2 - .../pages/admin/panels/ProductRulesPanel.tsx | 1 - .../pages/admin/panels/WorkOrdersPanel.tsx | 94 +++++++++---------- .../src/pages/admin/panels/WorkersPanel.tsx | 2 - .../src/services/admin/worker-platform.ts | 12 --- apps/frontend/src/styles/main.css | 65 +++++++++++++ 11 files changed, 112 insertions(+), 129 deletions(-) diff --git a/apps/backend/src/routes/admin/worker-platform.ts b/apps/backend/src/routes/admin/worker-platform.ts index daa5bf52..6a41c250 100644 --- a/apps/backend/src/routes/admin/worker-platform.ts +++ b/apps/backend/src/routes/admin/worker-platform.ts @@ -28,7 +28,6 @@ import { saveAdminWorkProductRule, saveAdminWorkerLevel, submitAdminWorkOrderMaterial, - syncAdminWorkerOrdersFromSource, unpublishAdminWorkOrder, updateAdminWorkOrder, updateAdminWorkOrderSharing, @@ -304,22 +303,6 @@ router.post( }), ) -router.post( - '/worker-platform/source-orders/sync', - requireAdminRoles(['admin', 'operator']), - createJsonHandler((req) => syncAdminWorkerOrdersFromSource(req.body || {}), { - successMessage: '源订单同步完成', - errorMessage: '同步源订单失败', - scope: '[admin/worker-platform/source-orders/sync]', - audit: (_req, data) => ({ - action: 'work_order_source_synced', - targetType: 'source_order', - targetId: '', - data: data && typeof data === 'object' ? (data as Record) : {}, - }), - }), -) - router.post( '/worker-platform/orders/:workOrderId/material', requireAdminRoles(['admin', 'operator', 'support']), diff --git a/apps/backend/src/services/worker-platform/admin-service.ts b/apps/backend/src/services/worker-platform/admin-service.ts index d8c17f2f..ef56a514 100644 --- a/apps/backend/src/services/worker-platform/admin-service.ts +++ b/apps/backend/src/services/worker-platform/admin-service.ts @@ -2,8 +2,6 @@ import crypto from 'node:crypto' import { runtimeConfig } from '../../config/runtime.js' import { WORK_ORDER_STATUS } from '../../domain/work-order-status.js' -import { listOrderItemsByOrderId } from '../../repositories/order-item-repo.js' -import { findLatestOrderByAnyPlatformOrderId, getOrderById } from '../../repositories/order-repo.js' import { acceptWorkOrderAndSettle, addWorkerWalletCredit, @@ -688,16 +686,6 @@ export async function submitAdminWorkOrderMaterial( return { order: mapWorkOrderAdmin(updated || workOrder), complete } } -export async function syncAdminWorkerOrdersFromSource(payload: JsonObject = {}) { - const order = await resolveSourceOrder(payload) - const orderItems = await listOrderItemsByOrderId(order.id) - const result = await syncWorkerOrdersForSourceOrder(order, orderItems, { - source: 'admin_manual_sync', - autoOnly: false, - }) - return result -} - export async function createAdminMockWorkOrder(payload: JsonObject = {}) { const defaults = await ensureWorkerPlatformDefaults() const now = nowIso() @@ -1149,34 +1137,3 @@ export async function syncWorkerOrdersForSourceOrder( skippedCount: skipped.length, } } - -async function resolveSourceOrder(payload: JsonObject): Promise { - const orderId = normalizeOptionalId(payload.orderId || payload.sourceOrderId) - if (orderId) { - const order = await getOrderById(orderId) - if (order) { - return order - } - throw createHttpError('源订单不存在', { - statusCode: 404, - errorCode: 'source_order_not_found', - }) - } - - const platformOrderId = String(payload.platformOrderId || payload.orderNo || '').trim() - if (!platformOrderId) { - throw createHttpError('请填写源订单号', { - statusCode: 400, - errorCode: 'source_order_no_required', - }) - } - - const order = await findLatestOrderByAnyPlatformOrderId(platformOrderId) - if (!order) { - throw createHttpError('未找到源订单,请确认订单号是否正确', { - statusCode: 404, - errorCode: 'source_order_not_found', - }) - } - return order -} diff --git a/apps/frontend/src/pages/admin/AdminWorkerPlatformPage.tsx b/apps/frontend/src/pages/admin/AdminWorkerPlatformPage.tsx index f47f97c7..c9eb8ce4 100644 --- a/apps/frontend/src/pages/admin/AdminWorkerPlatformPage.tsx +++ b/apps/frontend/src/pages/admin/AdminWorkerPlatformPage.tsx @@ -61,7 +61,6 @@ import { saveAdminWorkProductRule, saveAdminWorkerLevel, submitAdminWorkOrderMaterial, - syncAdminWorkerOrdersFromSource, unpublishAdminWorkOrder, updateAdminWorkOrderSharing, } from '@/services/admin' @@ -165,4 +164,3 @@ function SummaryCards() { ) } - diff --git a/apps/frontend/src/pages/admin/panels/CategoriesPanel.tsx b/apps/frontend/src/pages/admin/panels/CategoriesPanel.tsx index b5a6f1a0..82ddd489 100644 --- a/apps/frontend/src/pages/admin/panels/CategoriesPanel.tsx +++ b/apps/frontend/src/pages/admin/panels/CategoriesPanel.tsx @@ -61,7 +61,6 @@ import { saveAdminWorkProductRule, saveAdminWorkerLevel, submitAdminWorkOrderMaterial, - syncAdminWorkerOrdersFromSource, unpublishAdminWorkOrder, updateAdminWorkOrderSharing, } from '@/services/admin' @@ -259,4 +258,3 @@ export default function CategoriesPanel() { ) } - diff --git a/apps/frontend/src/pages/admin/panels/FinancePanel.tsx b/apps/frontend/src/pages/admin/panels/FinancePanel.tsx index 5e14cb5e..8938c294 100644 --- a/apps/frontend/src/pages/admin/panels/FinancePanel.tsx +++ b/apps/frontend/src/pages/admin/panels/FinancePanel.tsx @@ -61,7 +61,6 @@ import { saveAdminWorkProductRule, saveAdminWorkerLevel, submitAdminWorkOrderMaterial, - syncAdminWorkerOrdersFromSource, unpublishAdminWorkOrder, updateAdminWorkOrderSharing, } from '@/services/admin' diff --git a/apps/frontend/src/pages/admin/panels/LevelsPanel.tsx b/apps/frontend/src/pages/admin/panels/LevelsPanel.tsx index 2ae119e2..4bf03b30 100644 --- a/apps/frontend/src/pages/admin/panels/LevelsPanel.tsx +++ b/apps/frontend/src/pages/admin/panels/LevelsPanel.tsx @@ -61,7 +61,6 @@ import { saveAdminWorkProductRule, saveAdminWorkerLevel, submitAdminWorkOrderMaterial, - syncAdminWorkerOrdersFromSource, unpublishAdminWorkOrder, updateAdminWorkOrderSharing, } from '@/services/admin' @@ -299,4 +298,3 @@ export default function LevelsPanel() { ) } - diff --git a/apps/frontend/src/pages/admin/panels/ProductRulesPanel.tsx b/apps/frontend/src/pages/admin/panels/ProductRulesPanel.tsx index d16910ac..1598d9d2 100644 --- a/apps/frontend/src/pages/admin/panels/ProductRulesPanel.tsx +++ b/apps/frontend/src/pages/admin/panels/ProductRulesPanel.tsx @@ -65,7 +65,6 @@ import { saveAdminWorkProductRule, saveAdminWorkerLevel, submitAdminWorkOrderMaterial, - syncAdminWorkerOrdersFromSource, unpublishAdminWorkOrder, updateAdminWorkOrderSharing, } from '@/services/admin' diff --git a/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx b/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx index 5b42aa8d..c0511262 100644 --- a/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx +++ b/apps/frontend/src/pages/admin/panels/WorkOrdersPanel.tsx @@ -5,8 +5,8 @@ import { FormOutlined, PlusOutlined, ReloadOutlined, + SearchOutlined, SendOutlined, - SyncOutlined, TeamOutlined, WarningOutlined, } from '@ant-design/icons' @@ -66,7 +66,6 @@ import { saveAdminWorkProductRule, saveAdminWorkerLevel, submitAdminWorkOrderMaterial, - syncAdminWorkerOrdersFromSource, unpublishAdminWorkOrder, updateAdminWorkOrder, updateAdminWorkOrderSharing, @@ -115,6 +114,8 @@ export default function WorkOrdersPanel() { const navigate = useNavigate() const queryClient = useQueryClient() const [status, setStatus] = useState('') + const [keyword, setKeyword] = useState('') + const [keywordInput, setKeywordInput] = useState('') const [page, setPage] = useState(1) const [pageSize, setPageSize] = useState(ADMIN_DEFAULT_PAGE_SIZE) const [detailOrder, setDetailOrder] = useState(null) @@ -147,8 +148,8 @@ export default function WorkOrdersPanel() { }>() const ordersQuery = useQuery({ - queryKey: ['admin-worker-platform-orders', status, page, pageSize], - queryFn: () => fetchAdminWorkOrders({ status, page, pageSize }), + queryKey: ['admin-worker-platform-orders', status, keyword, page, pageSize], + queryFn: () => fetchAdminWorkOrders({ status, keyword, page, pageSize }), }) const ordersPagination = ordersQuery.data?.data.pagination const categoriesQuery = useQuery({ @@ -295,18 +296,16 @@ export default function WorkOrdersPanel() { setMaterialScreenshots([]) } - async function submitSourceSync(values: { platformOrderId?: string }) { - try { - const result = await syncAdminWorkerOrdersFromSource({ - platformOrderId: String(values.platformOrderId || '').trim(), - }) - message.success( - `同步完成,新增 ${result.data.createdCount} 个,跳过 ${result.data.skippedCount} 个`, - ) - await refreshAll() - } catch (error) { - message.error(error instanceof Error ? error.message : '同步失败') - } + function searchOrders() { + setKeyword(keywordInput.trim()) + setPage(1) + } + + function clearOrderFilters() { + setKeywordInput('') + setKeyword('') + setStatus('') + setPage(1) } function openMaterialModal(row: WorkOrder) { @@ -636,32 +635,17 @@ export default function WorkOrdersPanel() { return (
- -
- + +
+ setKeywordInput(event.target.value)} + onPressEnter={searchOrders} /> - - - - - - - - - - + + - - + + - + - +