Commit 3cf7fbbf authored by Allvey's avatar Allvey

注释优化

parent 1f0fe212
......@@ -166,7 +166,7 @@ class ExpectedTime(AlgorithmBase):
# self.logger.error("车辆调度信息读取异常")
# self.logger.error(es)
self.logger.info("-----------------------------------Alg. Module-----------------------------------")
self.logger.info(f'======================================= 期望行程计算 =======================================')
if task == -2:
################################################ 矿卡启动 ###############################################
......
......@@ -412,6 +412,9 @@ class GroupDispatcher:
assert issubclass(Solver, AlgorithmBase)
solver = Solver(self.group, self.group.truck, self.group.pre_sch) # solver algorithm init
self.logger.info(
f'================================== 分组调度开始 {self.group.group_name} ==================================')
self.logger.info(f'分组 {self.group.group_name} 调度计算-调度模式 {self.group.group_mode}')
for truck_id in list(self.group.group_trucks):
......@@ -419,7 +422,8 @@ class GroupDispatcher:
# construct CurrentTruck obj.
current_truck = self.truck_construct(truck_id)
self.logger.info(f'======================= 开始处理调度车辆 {current_truck.get_name()} =======================')
self.logger.info(
f'============================= 车辆调度开始 {current_truck.get_name()} =============================')
try:
# 全智能模式
......@@ -449,7 +453,11 @@ class GroupDispatcher:
self.logger.error("调度调用异常")
self.logger.error(es)
self.logger.info(f'======================= 派车计划计算结束 {current_truck.get_name()} =======================')
self.logger.info(
f'============================= 车辆调度结束 {current_truck.get_name()} =============================')
self.logger.info(
f'================================== 分组调度结束 {self.group.group_name} ==================================')
return truck_dispatch
......@@ -713,8 +721,6 @@ class GroupDispatcher:
and store them in a dictionary.
"""
self.logger.info(f'调度车辆 {truck_id}')
# try:
# get truck index from mapping
if truck_id not in self.group.truck.truck_uuid_to_index_dict:
......
......@@ -131,6 +131,8 @@ class PreSchedule:
loading_task_time = self.excavator.get_loading_task_time()
excavator_uuid_to_name_dict = get_value("excavator_uuid_to_name_dict")
try:
now = float(
......@@ -189,9 +191,10 @@ class PreSchedule:
# self.excavator_avl_time[excavator_index] = now
count = 0
self.logger.info("update_excavator_avl_time-excavator_avl_ls")
self.logger.info("excavator_avl_ls")
for excavator_id in self.excavator.excavator_uuid_to_index_dict.keys():
self.logger.info(f'{excavator_id} {excavator_avl_ls[count]}')
excavator_name = excavator_uuid_to_name_dict[excavator_id]
self.logger.info(f'{excavator_name} {excavator_avl_ls[count]}')
count += 1
# self.logger.info(get_value("dynamic_excavator_set"))
# self.logger.info(excavator_avl_ls)
......@@ -227,6 +230,8 @@ class PreSchedule:
unloading_task_time = self.dump.get_unloading_task_time()
dump_uuid_to_name_dict = get_value("dump_uuid_to_name_dict")
# try:
now = float(
......@@ -260,9 +265,10 @@ class PreSchedule:
# self.truck_avl_time[int(tmp[truck_id][1])] = now
count = 0
self.logger.info("update_dump_avl_time-dump_avl_ls")
self.logger.info("dump_avl_ls")
for dump_id in get_value("dynamic_dump_set"):
self.logger.info(f'{dump_id} {dump_avl_ls[count]}')
dump_name = dump_uuid_to_name_dict[dump_id]
self.logger.info(f'{dump_name} {dump_avl_ls[count]}')
count += 1
# self.logger.info(get_value("dynamic_dump_set"))
# self.logger.info(dump_avl_ls)
......
......@@ -62,12 +62,6 @@ class DispatchSubmission:
record = {"truckId": truck_id}
# if group_id is None or DispatchInfo.get_group_mode(group_id) is None:
# group_mode = 3
# self.logger.error("调度模式读取异常-设置为固定派车模式")
# else:
# group_mode = DispatchInfo.get_group_mode(group_id)
self.logger.info(f'调度模式 {group_mode}')
if group_mode == 3:
......@@ -97,10 +91,10 @@ class DispatchSubmission:
"""
if (task in [1, 2]) or (task == 3 and state == 2): # 车辆位于装载区,或车辆重载等待
if task in [1, 2]:
self.logger.info(f'车辆 {truck_id} 装载区调度')
else:
self.logger.info(f'车辆 {truck_id} 重载二次调度')
# if task in [1, 2]:
# self.logger.info(f'车辆 {truck_id} 装载区调度')
# else:
# self.logger.info(f'车辆 {truck_id} 重载二次调度')
# 查询车辆相关派车计划 dispatch_seq[next_excavator_id, next_unload_area_id]
if dispatch_seq[1] is None or (dispatch_seq[1] not in DispatchInfo.unload_area_dump_dict):
......@@ -126,12 +120,6 @@ class DispatchSubmission:
# TODO: 判断了两次是否拥堵,需要改善
# # 车辆重载等待,且前方道路阻塞
# if self.topo is not None \
# and task == 3 \
# and truck_id in self.truck.get_truck_lane_locate_dict() \
# and self.truck.get_truck_lane_locate_dict()[truck_id] in self.topo.cross_bf_lanes:
# 车辆重载等待,且前方道路阻塞
if self.topo is not None and redispatch:
# try:
......@@ -143,14 +131,7 @@ class DispatchSubmission:
redis5.set(truck_id, str(json.dumps(record)))
POST(truck_id)
# else:
# self.logger.info("车辆已完成二次调度-无需更改派车计划")
# except Exception as es:
# self.logger.error(es)
# self.logger.error("二次调度失败")
# record["isTemp"] = False
# redis5.set(truck_id, str(json.dumps(record)))
else:
self.logger.info("正常调度前往卸载区")
record["isTemp"] = False
......@@ -161,12 +142,12 @@ class DispatchSubmission:
elif (task in [-2, 4, 5]) or (task == 0 and state == 2): # 车辆位于备停区或位于卸载区,或车辆空载等待
if task == -2:
self.logger.info(f'车辆 {truck_id} 备停区调度')
elif task in [4, 5]:
self.logger.info(f'车辆 {truck_id} 卸载区调度')
else:
self.logger.info(f'车辆 {truck_id} 空载二次调度')
# if task == -2:
# self.logger.info(f'车辆 {truck_id} 备停区调度')
# elif task in [4, 5]:
# self.logger.info(f'车辆 {truck_id} 卸载区调度')
# else:
# self.logger.info(f'车辆 {truck_id} 空载二次调度')
# 查询车辆相关派车计划 dispatch_seq[next_excavator_id, next_unload_area_id]
if dispatch_seq[0] is None:
......@@ -192,12 +173,6 @@ class DispatchSubmission:
if self.topo is not None:
# # 车辆重载等待,且前方道路阻塞
# if self.topo is not None \
# and task == 0 \
# and truck_id in self.truck.get_truck_lane_locate_dict() \
# and self.truck.get_truck_lane_locate_dict()[truck_id] in self.topo.cross_bf_lanes:
# 车辆重载等待,且前方道路阻塞
if self.topo is not None and redispatch:
# 车辆停车等待
......@@ -210,13 +185,6 @@ class DispatchSubmission:
redis5.set(truck_id, str(json.dumps(record)))
POST(truck_id)
# else:
# self.logger.info("车辆已完成二次调度-无需更改派车计划")
# except Exception as es:
# self.logger.error(es)
# self.logger.error("二次调度失败")
# record["isTemp"] = False
# redis5.set(truck_id, str(json.dumps(record)))
else:
self.logger.info("正常调度前往装载区")
......@@ -224,7 +192,12 @@ class DispatchSubmission:
self.logger.info(f'redis 注入 {record}')
redis5.set(truck_id, str(json.dumps(record)))
# self.logger.error("调度结果写入异常-矿卡重载")
else:
self.logger.info("正常调度前往装载区")
record["isTemp"] = False
self.logger.info(f'redis 注入 {record}')
redis5.set(truck_id, str(json.dumps(record)))
else:
pass
......
......@@ -149,9 +149,9 @@ class ExcavatorInfo(WalkManage):
for excavator_id in get_value("dynamic_excavator_set"):
try:
item = session_mysql.query(Equipment).filter_by(id=excavator_id).first()
self.logger.info("excavator_priority_coefficient")
self.logger.info(self.excavator_priority_coefficient)
self.excavator_priority_coefficient[self.excavator_uuid_to_index_dict[excavator_id]] = item.priority + 1
# self.logger.info("excavator_priority_coefficient")
# self.logger.info(self.excavator_priority_coefficient)
# self.excavator_priority_coefficient[self.excavator_uuid_to_index_dict[excavator_id]] = item.priority + 1
# 物料优先级控制
rule = 2
......@@ -236,8 +236,6 @@ class ExcavatorInfo(WalkManage):
self.logger.info("物料优先级规则")
self.logger.info(rule7)
print("truck.excavator_uuid_index_dict")
print(self.excavator_uuid_to_index_dict)
# # 用于动态调度的挖机设备
# self.dynamic_excavator_set = set(update_autodisp_excavator())
#
......
......@@ -135,8 +135,6 @@ class TruckInfo(WalkManage):
def get_truck_lane_locate_dict(self):
return self.truck_lane_locate_dict
################################################ short term update ################################################
# TODO: 应该一次读取形成一个对象,然后分配各属性
# 更新矿卡当前任务
def update_truck_current_task(self):
......@@ -172,31 +170,9 @@ class TruckInfo(WalkManage):
self.logger.warning("读取矿卡任务异常-reids读取异常")
self.logger.warning(es)
self.logger.info("矿卡当前任务:")
self.logger.info("矿卡任务信息")
self.logger.info(self.truck_current_task)
# logger.info("device_name_set,大小")
# logger.info(len(device_name_set))
# logger.info("device_name_set")
# logger.info(device_name_set)
# self.truck_current_task = {}
#
# dynamic_truck_set = get_value("dynamic_truck_set")
#
# for item in dynamic_truck_set:
# # try:
# # item = item.decode(encoding="utf-8")
# key_value_dict = redis2.hgetall(item) # reids str可以自动转为bytes
# currentTask = int(key_value_dict[str_to_byte("currentTask")])
# self.truck_current_task[item] = currentTask
# # except Exception as es:
# # logger.error("读取矿卡任务异常-reids读取异常")
# # logger.error(es)
#
# logger.info("矿卡当前任务:")
# logger.info(self.truck_current_task)
def update_truck_is_temp(self):
"""
......@@ -220,7 +196,7 @@ class TruckInfo(WalkManage):
if key_value_dict is None:
# raise CoreException(108, f'车辆{item}不存在于redis5')
self.logger.warning(f'车辆{item}不存在于redis5')
self.logger.warning(f'车辆{item}不存在于redis5, 无法读取 temp 信息')
isTemp = True
else:
key_value_dict = json.loads(byte_to_str(key_value_dict))
......@@ -234,12 +210,11 @@ class TruckInfo(WalkManage):
else:
continue
# print(f'here3 {item} {bool(isTemp)}')
except Exception as es:
self.logger.warning("读取矿卡任务异常-reids读取异常")
self.logger.warning(es)
self.logger.info("isTemp")
self.logger.info("矿卡临时状态信息")
self.logger.info(self.truck_is_temp)
# 更新矿卡最后装载/卸载时间
......@@ -253,6 +228,7 @@ class TruckInfo(WalkManage):
try:
truck_uuid_to_name_dict = get_value("truck_uuid_to_name_dict")
for item in self.dynamic_truck_set:
truck_name = truck_uuid_to_name_dict[item]
key_value_dict = redis2.hgetall(truck_uuid_to_name_dict[item])
device_type = int(key_value_dict[str_to_byte("type")])
# 判断是否为矿卡
......@@ -262,65 +238,56 @@ class TruckInfo(WalkManage):
if str_to_byte("lastLoadTime") in key_value_dict.keys(): # 若最后装载时间存在
last_load_time_tmp = eval(byte_to_str(key_value_dict[str_to_byte("lastLoadTime")]))
tmp_time = datetime.strptime(last_load_time_tmp, "%Y-%m-%d %H:%M:%S")
if tmp_time > datetime.strptime("2000-01-01 01:01:01", "%Y-%m-%d %H:%M:%S"): # 若最后装载时间异常
if tmp_time > datetime.strptime("2020-01-01 01:01:01", "%Y-%m-%d %H:%M:%S"): # 若最后装载时间异常
self.last_load_time[item] = tmp_time
else:
self.last_load_time[item] = datetime.now()
# redis2.hsetnx(truck_uuid_to_name_dict[item], str_to_byte("lastLoadTime"),
# "\"" + datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\"")
self.logger.info("lastLoadTime is Error")
self.logger.warning("lastLoadTime is Error")
else:
self.last_load_time[item] = datetime.now()
# redis2.hsetnx(truck_uuid_to_name_dict[item], str_to_byte("lastLoadTime"),
# "\"" + datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\"")
self.logger.info("lastLoadTime is None")
self.relative_last_load_time[item] = float(
self.logger.warning("lastLoadTime is None")
self.relative_last_load_time[item] = max(float(
(self.last_load_time[item] - self.start_time)
/ timedelta(hours=0, minutes=1, seconds=0)
)
# print("相对last_load_time", self.relative_last_load_time[item])
self.logger.info("相对last_load_time")
self.logger.info(self.relative_last_load_time[item])
), 0.0)
# self.logger.info(f'{truck_name} 相对last_load_time')
# self.logger.info(self.relative_last_load_time[item])
if task in [0, 1, 2]: # 矿卡空载行驶或仍未出场
if str_to_byte("lastUnloadTime") in key_value_dict.keys():
last_unload_time_tmp = eval(key_value_dict[str_to_byte("lastUnloadTime")])
tmp_time = datetime.strptime(last_unload_time_tmp, "%Y-%m-%d %H:%M:%S")
if tmp_time > datetime.strptime("2000-01-01 01:01:01", "%Y-%m-%d %H:%M:%S"):
if tmp_time > datetime.strptime("2020-01-01 01:01:01", "%Y-%m-%d %H:%M:%S"):
self.last_unload_time[item] = tmp_time
else:
self.last_unload_time[item] = datetime.now()
# redis2.hsetnx(truck_uuid_to_name_dict[item], str_to_byte("lastUnloadTime"),
# "\"" + datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\"")
self.logger.info("lastUnloadTime is Error")
self.logger.warning("lastUnloadTime is Error")
else:
self.last_unload_time[item] = datetime.now()
# key_value_dict[str_to_byte("lastUnloadTime")] = datetime.now().strftime(
# "%b %d, %Y %I:%M:%S %p"
# )
# redis2.hsetnx(truck_uuid_to_name_dict[item], str_to_byte("lastUnloadTime"),
# "\"" + datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\"")
self.logger.info("lastUnloadTime is None")
self.relative_last_unload_time[item] = float(
self.logger.warning("lastUnloadTime is None")
self.relative_last_unload_time[item] = max(float(
(self.last_unload_time[item] - self.start_time)
/ timedelta(hours=0, minutes=1, seconds=0)
)
# print("相对last_unload_time", self.relative_last_unload_time[item])
self.logger.info("相对last_unload_time")
self.logger.info(self.relative_last_unload_time[item])
), 0.0)
# self.logger.info(f'{truck_name} 相对last_unload_time')
# self.logger.info(self.relative_last_unload_time[item])
elif task == -2:
# print(datetime.now())
self.last_unload_time[item] = datetime.now()
# key_value_dict["lastUnloadTime"] = datetime.now().strftime(
# "%b %d, %Y %I:%M:%S %p")
# if str_to_byte("lastUnloadTime") in key_value_dict.keys():
# # redis2.hset(truck_uuid_to_name_dict[item], str_to_byte("lastUnloadTime"),
# # datetime.now().strftime("%b %d, %Y %I:%M:%S %p"))
# redis2.hset(truck_uuid_to_name_dict[item], str_to_byte("lastUnloadTime"),
# "\"" + datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\"")
# else:
# redis2.hsetnx(truck_uuid_to_name_dict[item], str_to_byte("lastUnloadTime"),
# "\"" + datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\"")
# # redis2.hsetnx(truck_uuid_to_name_dict[item], str(json.dumps(key_value_dict)))
# self.logger.info(f'{truck_name} 相对last_unload_time')
# self.logger.info(self.relative_last_unload_time[item])
self.logger.info(f'上次装载时间信息')
self.logger.info(self.relative_last_unload_time)
self.logger.info(f'上次卸载时间信息')
self.logger.info(self.relative_last_load_time)
except Exception as es:
self.logger.error("读取矿卡可用时间异常-redis读取异常")
self.logger.error(es)
......@@ -330,15 +297,18 @@ class TruckInfo(WalkManage):
walk_time_to_load_area = WalkManage.walk_time_to_load_area
walk_time_to_unload_area = WalkManage.walk_time_to_unload_area
truck_uuid_to_name_dict = get_value("truck_uuid_to_name_dict")
# 初始化矿卡行程, -1代表备停区
self.truck_current_trip = np.full((self.dynamic_truck_num, 2), -1)
ab = self.dynamic_truck_num
for i in range(self.dynamic_truck_num):
try:
session_mysql.commit()
truck_id = self.truck_index_to_uuid_dict[i]
truck_name = truck_uuid_to_name_dict[truck_id]
task = self.truck_current_task[self.truck_index_to_uuid_dict[i]]
# print("truck_task:", truck_id, task)
item = (
session_mysql.query(EquipmentPair)
.filter_by(truck_id=truck_id, isdeleted=0)
......@@ -384,10 +354,12 @@ class TruckInfo(WalkManage):
+ walk_time_to_load_area[start_area_index][end_area_index]
)
self.logger.info(f'update_truck_trip-{truck_id}-last_unload_time')
self.logger.info(last_unload_time)
self.logger.info(f'update_truck_trip-walk_time_to_load_area')
self.logger.info(walk_time_to_load_area[start_area_index][end_area_index])
# self.logger.info(f'{truck_name}-last_unload_time')
# self.logger.info(last_unload_time)
# self.logger.info(f'{truck_name}-walk_time_to_load_area')
# self.logger.info(walk_time_to_load_area[start_area_index][end_area_index])
# self.logger.info(f'{truck_name}-truck_reach_excavator')
# self.logger.info(self.cur_truck_reach_excavator[i])
# # 目的地矿卡数加一
# self.excavator_hold_truck_num[end_eqp_index] = self.excavator_hold_truck_num[end_eqp_index] + 1
......@@ -420,22 +392,17 @@ class TruckInfo(WalkManage):
self.truck_current_trip[i] = [start_eq_index, end_eq_index]
self.logger.info("walk_time_to_unload_area")
self.logger.info(walk_time_to_unload_area)
self.logger.info("end_area_index")
self.logger.info(end_area_index)
self.logger.info("start_area_index")
self.logger.info(start_area_index)
self.cur_truck_reach_dump[i] = (
last_load_time
+ walk_time_to_unload_area[end_area_index][start_area_index]
)
self.logger.info(f'update_truck_trip-{truck_id}-last_load_time')
self.logger.info(last_load_time)
self.logger.info(f'update_truck_trip-walk_time_to_unload_area')
self.logger.info(walk_time_to_unload_area[end_area_index][start_area_index])
# self.logger.info(f'{truck_name}-last_load_time')
# self.logger.info(last_load_time)
# self.logger.info(f'{truck_name}-walk_time_to_unload_area')
# self.logger.info(walk_time_to_unload_area[end_area_index][start_area_index])
# self.logger.info(f'{truck_name}-truck_reach_dump')
# self.logger.info(self.cur_truck_reach_dump[i])
# 目的地矿卡数加一
# self.dump_hold_truck_num[end_eqp_index] = self.dump_hold_truck_num[end_eqp_index] + 1
......@@ -448,14 +415,12 @@ class TruckInfo(WalkManage):
self.logger.error("矿卡行程读取异常")
self.logger.error(es)
# print("self.dump_hold_truck_num")
# print(self.dump_hold_truck_num)
#
# print("self.excavator_hold_truck_num")
# print(self.excavator_hold_truck_num)
self.logger.info(f'车辆预期抵达挖机时间信息')
self.logger.info(self.cur_truck_reach_excavator)
self.logger.info(f'车辆预期抵达电铲时间信息')
self.logger.info(self.cur_truck_reach_dump)
self.truck_current_trip.flatten()
self.logger.info("当前矿卡行程:")
self.logger.info("矿卡行程信息")
self.logger.info(self.truck_current_trip)
def update_eqp_hold_truck(self):
......@@ -464,14 +429,9 @@ class TruckInfo(WalkManage):
try:
session_mysql.commit()
truck_id = self.truck_index_to_uuid_dict[i]
aa = self.truck_index_to_uuid_dict
bb = self.truck_current_task
task = self.truck_current_task[self.truck_index_to_uuid_dict[i]]
# item = (
# session_mysql.query(EquipmentPair)
# .filter_by(truck_id=truck_id, isdeleted=0)
# .first()
# )
item = (
session_mysql.query(DispatchSetting)
.filter_by(truck_id=truck_id, isdeleted=0)
......@@ -521,12 +481,6 @@ class TruckInfo(WalkManage):
self.logger.error("驶往设备矿卡数量统计异常")
self.logger.error(es)
print("self.dump_hold_truck_num")
print(self.dump_hold_truck_num)
print("self.excavator_hold_truck_num")
print(self.excavator_hold_truck_num)
def update_trucks_lane_locate(self):
"""
get trucks locates.
......@@ -555,6 +509,9 @@ class TruckInfo(WalkManage):
self.logger.error(es)
self.logger.error(f'车辆 {truck_id} 位置信息丢失')
self.logger.info(f'矿卡位置信息')
self.logger.info(self.truck_lane_locate_dict)
################################################ long term update ################################################
# 更新矿卡实际容量
......@@ -597,6 +554,7 @@ class TruckInfo(WalkManage):
except Exception as es:
session_postgre.rollback()
session_mysql.rollback()
self.logger.error(es)
truck_index = self.truck_uuid_to_index_dict[truck_id]
if item.priority == 0:
self.truck_priority[truck_index] = 0
......@@ -641,7 +599,7 @@ class TruckInfo(WalkManage):
if item.bind_list is not None:
for truck_name in json.loads(item.bind_list):
if truck_name not in truck_name_to_uuid_dict:
self.logger.error(f'truck_name_to_uuid_dict 不存在 {truck_name}')
self.logger.error(f'truck_name_to_uuid_dict (db2) 不存在 {truck_name}')
continue
self.truck_excavator_bind[
truck_name_to_uuid_dict[truck_name]
......@@ -894,7 +852,7 @@ class TruckInfo(WalkManage):
session_postgre.rollback()
session_mysql.rollback()
self.logger.info("Para truck update!")
self.logger.info(f'======================================= 矿卡信息读取 =======================================')
# 更新有效载重
self.update_truck_payload()
......
......@@ -64,6 +64,8 @@ def process(dispatcher):
# 更新周期参数
logger.info("#####################################周期更新开始#####################################")
logger.info(
f'================================== 全局信息读取 ==================================')
# 清空数据库缓存
session_mysql.commit()
session_mysql.flush()
......@@ -75,6 +77,9 @@ def process(dispatcher):
# 更新全局参数信息
global_period_para_update()
logger.info(
f'================================== 调度信息读取 ==================================')
# 更新调度信息
DispatchInfo.reset()
......@@ -86,22 +91,22 @@ def process(dispatcher):
DispatchInfo.update_group_name()
# 打印日志信息
logger.info("Dispatchinfo,更新后信息")
logger.info("group_set")
logger.info(DispatchInfo.group_set)
logger.info("group_excavator_dict")
logger.info(DispatchInfo.group_excavator_dict)
logger.info("group_unload_area_dict")
logger.info(DispatchInfo.group_unload_area_dict)
logger.info("group_truck_dict")
logger.info(DispatchInfo.group_truck_dict)
logger.info("group_mode")
logger.info(DispatchInfo.group_mode)
logger.info("load_distance")
logger.info(DispatchInfo.load_distance)
logger.info("unload_distance")
logger.info(DispatchInfo.unload_distance)
# # 打印日志信息
# logger.info("Dispatchinfo,更新后信息")
# logger.info("group_set")
# logger.info(DispatchInfo.group_set)
# logger.info("group_excavator_dict")
# logger.info(DispatchInfo.group_excavator_dict)
# logger.info("group_unload_area_dict")
# logger.info(DispatchInfo.group_unload_area_dict)
# logger.info("group_truck_dict")
# logger.info(DispatchInfo.group_truck_dict)
# logger.info("group_mode")
# logger.info(DispatchInfo.group_mode)
# logger.info("load_distance")
# logger.info(DispatchInfo.load_distance)
# logger.info("unload_distance")
# logger.info(DispatchInfo.unload_distance)
# logger.info("load_excavator_dict")
# logger.info(DispatchInfo.load_excavator_dict)
......
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