fix(review): palle/bulk pr. kilde, pallefabrikker uden læssestation, hold-omdirigering, last ved Start, tomme kilder udelukkes, færre rutetjek, advarsler huskes, paller kun Fra/Salg
This commit is contained in:
@@ -357,6 +357,18 @@ local function getOutboundFillTypes(adEnv, run, vehicle)
|
||||
return result, chosen, palletCount, canLoadPallets
|
||||
end
|
||||
|
||||
-- Last på vognen ved Start: nil = tom vogn, waypoint-id = mål for lasten, false = intet mål.
|
||||
local function getCargoTarget(adEnv, run, vehicle)
|
||||
if ADUnloadWait == nil or ADUnloadWait.getRestLoad == nil or ADOutbound == nil or ADOutbound.planCargoTarget == nil then
|
||||
return nil
|
||||
end
|
||||
local fillType, liters = ADUnloadWait.getRestLoad(adEnv, vehicle)
|
||||
if fillType == nil or liters < 100 then
|
||||
return nil
|
||||
end
|
||||
return ADOutbound.planCargoTarget(adEnv, run, vehicle, fillType, liters) or false
|
||||
end
|
||||
|
||||
local function validateOutboundVehicle(adEnv, run, vehicle, result)
|
||||
if #getRunSources(adEnv, run, ADSmartPickup.getFarmId(vehicle)) == 0 then
|
||||
result.reason = "noSource"
|
||||
@@ -375,6 +387,15 @@ local function validateOutboundVehicle(adEnv, run, vehicle, result)
|
||||
result.reason = (palletCount == chosen and not canLoadPallets) and "needsAutoload" or "cannotCarry"
|
||||
return result
|
||||
end
|
||||
-- Uden Wait-punkt ville traktoren holde ved kilden og læsse selv om planlæggeren sagde "vent".
|
||||
if ADWaitPool ~= nil and #ADWaitPool.getCandidates(adEnv, run.waitPoolGroup) == 0 then
|
||||
result.reason = "noWaitPoint"
|
||||
return result
|
||||
end
|
||||
if getCargoTarget(adEnv, run, vehicle) == false then
|
||||
result.reason = "cargoNoTarget"
|
||||
return result
|
||||
end
|
||||
if isFarFromNetwork(adEnv, vehicle) then
|
||||
result.reason = "farFromNetwork"
|
||||
return result
|
||||
@@ -523,7 +544,9 @@ local function applyOutboundRunToVehicle(adEnv, run, vehicle)
|
||||
stateModule:setMode(adEnv.AutoDrive.MODE_PICKUPANDDELIVER)
|
||||
local firstId = run.sourceWayPointIds[1]
|
||||
stateModule:setFirstMarkerByWayPointId(firstId)
|
||||
stateModule:setSecondMarkerByWayPointId(firstId)
|
||||
-- Læsset vogn: AD kører først til aflæsning (2. markør) — dér skal lastens mål stå.
|
||||
local cargoTarget = getCargoTarget(adEnv, run, vehicle)
|
||||
stateModule:setSecondMarkerByWayPointId(cargoTarget or firstId)
|
||||
local fillTypes = getOutboundFillTypes(adEnv, run, vehicle)
|
||||
stateModule.selectedFillTypes = copyList(fillTypes)
|
||||
if fillTypes[1] ~= nil then
|
||||
|
||||
Reference in New Issue
Block a user