fix: 按数量计价模式无需填写接单金额
选择按数量×单价时,接单金额可留空(建单时按 单价×SKU文字数量 计算总价); 仅当接单金额和单价都为空时才拦截
This commit is contained in:
@@ -217,6 +217,10 @@ export async function saveAdminWorkProductRule(payload: JsonObject = {}) {
|
||||
}
|
||||
|
||||
const rewardAmount = normalizeAmountFen(payload.rewardAmount ?? payload.rewardAmountYuan, 0)
|
||||
const unitPriceFen =
|
||||
payload.unitPrice === undefined && payload.unitPriceYuan === undefined
|
||||
? 0
|
||||
: normalizeAmountFen(payload.unitPrice ?? payload.unitPriceYuan, 0)
|
||||
const sharingEnabled = normalizeBoolean(
|
||||
payload.sharingEnabled ?? payload.sharing_enabled,
|
||||
false,
|
||||
@@ -243,7 +247,7 @@ export async function saveAdminWorkProductRule(payload: JsonObject = {}) {
|
||||
errorCode: 'work_product_rule_sharing_amount_invalid',
|
||||
})
|
||||
}
|
||||
} else if (rewardAmount <= 0) {
|
||||
} else if (rewardAmount <= 0 && unitPriceFen <= 0) {
|
||||
throw createHttpError('接单金额必须大于 0', {
|
||||
statusCode: 400,
|
||||
errorCode: 'work_product_rule_reward_invalid',
|
||||
@@ -288,10 +292,7 @@ export async function saveAdminWorkProductRule(payload: JsonObject = {}) {
|
||||
enabled: normalizeBoolean(payload.enabled, true),
|
||||
autoCreate: normalizeBoolean(payload.autoCreate ?? payload.auto_create, false),
|
||||
rewardAmount: finalRewardAmount,
|
||||
unitPriceFen:
|
||||
payload.unitPrice === undefined && payload.unitPriceYuan === undefined
|
||||
? 0
|
||||
: normalizeAmountFen(payload.unitPrice ?? payload.unitPriceYuan, 0),
|
||||
unitPriceFen,
|
||||
requiredDepositAmount,
|
||||
depositThresholdAmount,
|
||||
sharingEnabled,
|
||||
|
||||
Reference in New Issue
Block a user