支持更新代练中订单价格
This commit is contained in:
@@ -754,6 +754,16 @@ export async function submitAdminWorkOrderMaterial(
|
||||
errorCode: 'work_order_material_status_invalid',
|
||||
})
|
||||
}
|
||||
if (
|
||||
workOrder.status === WORK_ORDER_STATUS.IN_PROGRESS &&
|
||||
workOrder.sharing_enabled === true &&
|
||||
payload.rewardAmount !== undefined
|
||||
) {
|
||||
throw createHttpError('拼单订单的份额奖励已锁定,不能在更新资料时修改价格', {
|
||||
statusCode: 409,
|
||||
errorCode: 'work_order_material_reward_sharing_invalid',
|
||||
})
|
||||
}
|
||||
|
||||
const fields = resolveRequirementFields(workOrder)
|
||||
const submittedFields = normalizeSubmittedFields(payload.fields || payload.material || payload)
|
||||
@@ -762,6 +772,10 @@ export async function submitAdminWorkOrderMaterial(
|
||||
)
|
||||
const now = nowIso()
|
||||
const screenshots = normalizeUploadedFiles(payload.screenshots || payload.files)
|
||||
const rewardAmount =
|
||||
workOrder.status === WORK_ORDER_STATUS.IN_PROGRESS && payload.rewardAmount !== undefined
|
||||
? normalizeAmountFen(payload.rewardAmount, workOrder.reward_amount)
|
||||
: workOrder.reward_amount
|
||||
const material = {
|
||||
...safeParseJson(workOrder.material_json),
|
||||
collect: {
|
||||
@@ -781,6 +795,7 @@ export async function submitAdminWorkOrderMaterial(
|
||||
const updated = await updateWorkOrder(workOrder.id, {
|
||||
status: nextStatus,
|
||||
material_json: material,
|
||||
reward_amount: rewardAmount,
|
||||
updated_at: now,
|
||||
})
|
||||
await createWorkOrderEvent({
|
||||
@@ -793,7 +808,7 @@ export async function submitAdminWorkOrderMaterial(
|
||||
: 'material_completed',
|
||||
fromStatus: workOrder.status,
|
||||
toStatus: nextStatus,
|
||||
payloadJson: JSON.stringify({ fields: submittedFields, complete }),
|
||||
payloadJson: JSON.stringify({ fields: submittedFields, complete, rewardAmount }),
|
||||
now,
|
||||
})
|
||||
return { order: mapWorkOrderAdmin(updated || workOrder), complete }
|
||||
|
||||
Reference in New Issue
Block a user