优化
This commit is contained in:
+21
@@ -0,0 +1,21 @@
|
||||
package com.baiyue.lastleg.inventory.command.dto;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public record ReturnedInventoryRestoreRequest(
|
||||
String exceptionNo,
|
||||
String outboundNo,
|
||||
String overseasWarehouseId,
|
||||
Long inboundOrderId,
|
||||
List<SourceItem> sources,
|
||||
List<Receipt> receipts,
|
||||
String idempotencyKey,
|
||||
List<String> evidenceFileIds
|
||||
) {
|
||||
public record SourceItem(Long outboundPalletItemId, Long inventoryPositionId,
|
||||
String skuCode, long maxReturnPackages) { }
|
||||
|
||||
public record Receipt(Long outboundPalletItemId, Long inventoryPositionId, long receivedPackages,
|
||||
Long targetPalletId, String targetPalletNo,
|
||||
Long targetLocationId, String targetLocationCode) { }
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package com.baiyue.lastleg.inventory.command.dto;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
public record ReturnedInventoryRestoreResponse(
|
||||
long adjustmentId,
|
||||
List<Long> ledgerIds,
|
||||
long beforePackages,
|
||||
long restoredPackages,
|
||||
long afterPackages,
|
||||
boolean replayed,
|
||||
LocalDateTime completedAt
|
||||
) {
|
||||
public ReturnedInventoryRestoreResponse asReplay() {
|
||||
return new ReturnedInventoryRestoreResponse(adjustmentId, ledgerIds, beforePackages,
|
||||
restoredPackages, afterPackages, true, completedAt);
|
||||
}
|
||||
}
|
||||
+13
@@ -47,6 +47,19 @@ public interface InventoryCommandMapper {
|
||||
"AND NOT EXISTS (SELECT 1 FROM ll_inventory_position p WHERE p.balance_id=ll_inventory_balance.id)")
|
||||
int deleteEmptyBalance(@Param("customerId") String customerId, @Param("balanceId") Long balanceId);
|
||||
|
||||
@Select("SELECT COALESCE(-SUM(delta_packages),0) FROM ll_inventory_ledger " +
|
||||
"WHERE customer_id=#{customerId} AND position_id=#{positionId} AND outbound_order_no=#{outboundNo} " +
|
||||
"AND sku_code=#{skuCode} AND business_type='SHIP' AND delta_packages<0")
|
||||
long shippedPackages(@Param("customerId") String customerId, @Param("positionId") Long positionId,
|
||||
@Param("outboundNo") String outboundNo, @Param("skuCode") String skuCode);
|
||||
|
||||
@Select("SELECT COALESCE(SUM(delta_packages),0) FROM ll_inventory_ledger " +
|
||||
"WHERE customer_id=#{customerId} AND source_event_id=#{sourceIdentity} " +
|
||||
"AND sku_code=#{skuCode} AND business_type='RETURN_STOCK_IN' AND delta_packages>0")
|
||||
long restoredPackages(@Param("customerId") String customerId,
|
||||
@Param("sourceIdentity") String sourceIdentity,
|
||||
@Param("skuCode") String skuCode);
|
||||
|
||||
@Select("SELECT p.* FROM ll_inventory_position p JOIN ll_inventory_balance b ON b.id=p.balance_id " +
|
||||
"WHERE p.customer_id=#{customerId} AND b.inbound_order_id=#{inboundOrderId} " +
|
||||
"AND p.hold_packages>0 ORDER BY p.id FOR UPDATE")
|
||||
|
||||
Reference in New Issue
Block a user