Commit 4c3f4ccc authored by 虢奥's avatar 虢奥

bug修复

parent 4f28691d
...@@ -10,6 +10,7 @@ from data.para_config import * ...@@ -10,6 +10,7 @@ from data.para_config import *
from data.dispatchInfo import DispatchInfo from data.dispatchInfo import DispatchInfo
import uuid import uuid
import json import json
import random
def area_choose(excavators_id, closer_area_id, further_area_id, further_lane_set, closer_lane_set, def area_choose(excavators_id, closer_area_id, further_area_id, further_lane_set, closer_lane_set,
...@@ -112,28 +113,36 @@ def area_choose(excavators_id, closer_area_id, further_area_id, further_lane_set ...@@ -112,28 +113,36 @@ def area_choose(excavators_id, closer_area_id, further_area_id, further_lane_set
# logger.info("近端挖机排队时间短, 调度车辆前往") # logger.info("近端挖机排队时间短, 调度车辆前往")
# target_excavator = DispatchInfo.load_excavator_dict[closer_area_id] # target_excavator = DispatchInfo.load_excavator_dict[closer_area_id]
# # truck_dispatch_to_redis(request_truck_id, group_id, DispatchInfo.load_excavator_dict[closer_area_id]) # # truck_dispatch_to_redis(request_truck_id, group_id, DispatchInfo.load_excavator_dict[closer_area_id])
load_value = json.load(f) try:
gothrough_config_area = load_value["gothrough"] load_value = json.load(f)
dispatch_factor = gothrough_config_area["closer_area_name"] gothrough_config_area = load_value["gothrough"]
# 远端挖机空闲 dispatch_factor = float(gothrough_config_area["factor"])
if further_excavator_state == 0 and goto_further_area_num == 0: # 远端挖机空闲
logger.info("远端挖机空闲, 调度车辆前往远端装载区") if further_excavator_state == 0 and goto_further_area_num == 0:
target_excavator = DispatchInfo.load_excavator_dict[further_area_id] logger.info("远端挖机空闲, 调度车辆前往远端装载区")
# 近端挖机空闲 target_excavator = DispatchInfo.load_excavator_dict[further_area_id]
elif closer_excavator_state == 0: # 近端挖机空闲
logger.info("近端挖机空闲, 调度车辆前往近端装载区") elif closer_excavator_state == 0:
target_excavator = DispatchInfo.load_excavator_dict[closer_area_id] logger.info("近端挖机空闲, 调度车辆前往近端装载区")
# truck_dispatch_to_redis(request_truck_id, group_id, DispatchInfo.load_excavator_dict[closer_area_id]) target_excavator = DispatchInfo.load_excavator_dict[closer_area_id]
# 近端挖机不空闲但是远端挖机已满载 # truck_dispatch_to_redis(request_truck_id, group_id, DispatchInfo.load_excavator_dict[closer_area_id])
elif closer_excavator_state != 0 and goto_further_area_num >= int(dispatch_factor*arrival_truck_num): # 近端挖机不空闲但是远端挖机已满载
logger.info("远端挖机满载, 调度车辆前往近端装载区") elif closer_excavator_state != 0 and goto_further_area_num >= int(dispatch_factor*arrival_truck_num):
target_excavator = DispatchInfo.load_excavator_dict[closer_area_id] logger.info("远端挖机满载, 调度车辆前往近端装载区")
# 近端挖机满载,只能派往远端挖机 target_excavator = DispatchInfo.load_excavator_dict[closer_area_id]
else: # 近端挖机满载,只能派往远端挖机
logger.info("近端挖机满载, 调度车辆前往远端装载区") else:
target_excavator = DispatchInfo.load_excavator_dict[further_area_id] logger.info("近端挖机满载, 调度车辆前往远端装载区")
# truck_dispatch_to_redis(request_truck_id, group_id, DispatchInfo.load_excavator_dict[further_area_id]) target_excavator = DispatchInfo.load_excavator_dict[further_area_id]
# truck_dispatch_to_redis(request_truck_id, group_id, DispatchInfo.load_excavator_dict[further_area_id])
except Exception as es:
logger.error("找寻最空闲挖机异常")
logger.error(es)
logger.error("随机分配挖机")
if random.random() < 0.5:
target_excavator = DispatchInfo.load_excavator_dict[further_area_id]
else:
target_excavator = DispatchInfo.load_excavator_dict[closer_area_id]
return target_excavator return target_excavator
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment