This commit is contained in:
2026-09-02 10:27:47 +08:00
parent 371aa3dbcb
commit e0a1f15777
6 changed files with 32 additions and 5 deletions
@@ -202,7 +202,7 @@ public class FbaPricingRepository {
LambdaUpdateWrapper<InboundPricingEntity> update = new LambdaUpdateWrapper<InboundPricingEntity>()
.eq(InboundPricingEntity::getTenantId, inbound.getTenantId())
.eq(InboundPricingEntity::getId, inbound.getId())
.in(InboundPricingEntity::getFeeStatus, List.of("UNPRICED", "CALCULATED"))
.in(InboundPricingEntity::getFeeStatus, List.of("UNPRICED", "CALCULATED", "VOIDED"))
.set(InboundPricingEntity::getChannelCode, channelCode)
.set(InboundPricingEntity::getChannelName, channelName)
.set(InboundPricingEntity::getFeeStatus, "UNPRICED")
@@ -129,7 +129,8 @@ public class OrderChannelChangePricingService {
|| feeItems.findPublishedFreight(inbound.getTenantId(), inbound.getId()) != null) {
throw conflict("费用已确认或已发布,渠道不可变更;请先按费用作废流程处理");
}
if (!"UNPRICED".equals(inbound.getFeeStatus()) && !"CALCULATED".equals(inbound.getFeeStatus())) {
if (!"UNPRICED".equals(inbound.getFeeStatus()) && !"CALCULATED".equals(inbound.getFeeStatus())
&& !"VOIDED".equals(inbound.getFeeStatus())) {
throw conflict("当前费用状态不可逆,渠道不可变更");
}
}
@@ -93,7 +93,7 @@ paths:
仅供 Order 在渠道变更成功后调用。tenantId + orderId + orderVersion 构成幂等边界;
旧版本重放不会覆盖新版本。只将 CALCULATED 费用及草稿运费标记为 SUPERSEDED,
入库单恢复 UNPRICED 并可重新计价;实际净重、实际体积和测量审核事实保持不变。
已确认、已发送或已发布费用一律拒绝,不能由本命令覆盖。
已确认、已发送或已发布费用一律拒绝,不能由本命令覆盖;费用正式作废为 VOIDED 后可重新计价。
security:
- internalServiceToken: []
requestBody:
@@ -1066,7 +1066,7 @@ components:
orderVersion: {type: integer, format: int64}
channelCode: {type: string}
priceBookVersionId: {type: integer, format: int64, nullable: true}
feeStatus: {type: string, enum: [UNPRICED, CALCULATED]}
feeStatus: {type: string, enum: [UNPRICED, CALCULATED, VOIDED]}
calculatedFeeWillBeInvalidated: {type: boolean}
invalidatedFeeId: {type: integer, format: int64, nullable: true}
UnifiedMainStatus: