支持代练中更新订单资料

This commit is contained in:
yml2213
2026-08-15 15:03:08 +08:00
parent edccf03eb0
commit 87d8360e64
2 changed files with 20 additions and 8 deletions
@@ -738,11 +738,15 @@ export async function submitAdminWorkOrderMaterial(
) {
const workOrder = await getRequiredWorkOrder(workOrderId)
if (
![WORK_ORDER_STATUS.PENDING_MATERIAL, WORK_ORDER_STATUS.UNASSIGNED].includes(
![
WORK_ORDER_STATUS.PENDING_MATERIAL,
WORK_ORDER_STATUS.UNASSIGNED,
WORK_ORDER_STATUS.IN_PROGRESS,
].includes(
workOrder.status as never,
)
) {
throw createHttpError('当前状态不能补充资料', {
throw createHttpError('当前状态不能更新订单资料', {
statusCode: 409,
errorCode: 'work_order_material_status_invalid',
})
@@ -765,7 +769,12 @@ export async function submitAdminWorkOrderMaterial(
source: 'admin',
},
}
const nextStatus = complete ? WORK_ORDER_STATUS.UNASSIGNED : WORK_ORDER_STATUS.PENDING_MATERIAL
const nextStatus =
workOrder.status === WORK_ORDER_STATUS.IN_PROGRESS
? WORK_ORDER_STATUS.IN_PROGRESS
: complete
? WORK_ORDER_STATUS.UNASSIGNED
: WORK_ORDER_STATUS.PENDING_MATERIAL
const updated = await updateWorkOrder(workOrder.id, {
status: nextStatus,
material_json: material,
@@ -775,7 +784,10 @@ export async function submitAdminWorkOrderMaterial(
workOrderId: workOrder.id,
actorType: 'admin',
actorId: '',
eventType: 'material_completed',
eventType:
workOrder.status === WORK_ORDER_STATUS.IN_PROGRESS
? 'material_updated'
: 'material_completed',
fromStatus: workOrder.status,
toStatus: nextStatus,
payloadJson: JSON.stringify({ fields: submittedFields, complete }),