优化
This commit is contained in:
+28
@@ -0,0 +1,28 @@
|
||||
package com.baiyue.lastleg.delivery;
|
||||
|
||||
import com.baiyue.lastleg.dispatch.port.DispatchContracts.*;
|
||||
import com.baiyue.lastleg.dispatch.port.DispatchTypes.*;
|
||||
import java.time.Instant;
|
||||
import java.util.List;
|
||||
|
||||
/** 本任务测试独占fixture,所有业务号及客户均为离线合成值。 */
|
||||
public final class DeliveryDispatchFixtures {
|
||||
public static final Instant DEPARTED=Instant.parse("2026-10-19T01:00:00Z");
|
||||
/** 工具类不允许实例化。 */
|
||||
private DeliveryDispatchFixtures() { }
|
||||
/** 构造一条真实拣货归属,允许同实物托盘有多个来源。 */
|
||||
public static CargoLine cargo(long id,String customer,String destination,long pallet,long packages) {
|
||||
return new CargoLine(id,customer,"客户"+customer,id,"LM-"+id,"SOURCE-"+id,"RECEIVED","LOCAL",null,"IN-"+id,
|
||||
null,pallet,"PALLET-"+pallet,id,id,id,id,null,null,null,null,
|
||||
new Destination("FBA:"+destination,"FBA",null,destination,destination,null,null,null,null),
|
||||
packages,0,null,null,List.of());
|
||||
}
|
||||
/** 构造同仓完整拣货的整车上下文,发车后只改变业务计数。 */
|
||||
public static Context context(List<CargoLine> cargo,boolean departed) {
|
||||
long count=cargo.stream().mapToLong(CargoLine::packages).sum();
|
||||
return new Context(10L,"DP-10",20L,"TRIP-20","1001","WH-1","测试仓",Status.ACTIVE,
|
||||
departed?Stage.DELIVERING:Stage.AFTER_LOADING,3,1,"cargo-hash","loading-hash",DEPARTED.minusSeconds(60),
|
||||
departed?DEPARTED:null,null,new Counts(cargo.size(),cargo.stream().map(CargoLine::warehousePalletId).distinct().count(),count,
|
||||
departed?0:count,departed?count:0),null,true,cargo);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user