Commit 50748bf6 authored by 张晓彤's avatar 张晓彤

修复日志回滚机制

parent a6f65ec8
...@@ -121,6 +121,8 @@ class DispatchInfo: ...@@ -121,6 +121,8 @@ class DispatchInfo:
except Exception as es: except Exception as es:
logger.error("挖机和装载区映射更新异常") logger.error("挖机和装载区映射更新异常")
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
# update dump_id <-> unload_area_id # update dump_id <-> unload_area_id
try: try:
...@@ -132,6 +134,8 @@ class DispatchInfo: ...@@ -132,6 +134,8 @@ class DispatchInfo:
except Exception as es: except Exception as es:
logger.error("卸载设备和卸载区映射更新异常") logger.error("卸载设备和卸载区映射更新异常")
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
# update excavator_id <-> group_id && unload_area_id <-> group_id && truck_id <-> group_id # update excavator_id <-> group_id && unload_area_id <-> group_id && truck_id <-> group_id
try: try:
...@@ -173,6 +177,8 @@ class DispatchInfo: ...@@ -173,6 +177,8 @@ class DispatchInfo:
except Exception as es: except Exception as es:
logger.error("挖机/卸载区/矿卡与group_id映射更新异常") logger.error("挖机/卸载区/矿卡与group_id映射更新异常")
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
# update group set # update group set
try: try:
...@@ -189,6 +195,8 @@ class DispatchInfo: ...@@ -189,6 +195,8 @@ class DispatchInfo:
cls.truck_match_dict[i] = [match_excavator, match_unload_area] cls.truck_match_dict[i] = [match_excavator, match_unload_area]
except Exception as es: except Exception as es:
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
@classmethod @classmethod
def update_group_mode(cls): def update_group_mode(cls):
...@@ -209,6 +217,8 @@ class DispatchInfo: ...@@ -209,6 +217,8 @@ class DispatchInfo:
except Exception as es: except Exception as es:
logger.error("group_id->mode_code更新异常") logger.error("group_id->mode_code更新异常")
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
@classmethod @classmethod
def update_group_name(cls): def update_group_name(cls):
...@@ -227,6 +237,8 @@ class DispatchInfo: ...@@ -227,6 +237,8 @@ class DispatchInfo:
except Exception as es: except Exception as es:
logger.error("group_id->name更新异常") logger.error("group_id->name更新异常")
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
logger.info("group_name") logger.info("group_name")
logger.info(cls.group_name) logger.info(cls.group_name)
...@@ -272,6 +284,8 @@ class DispatchInfo: ...@@ -272,6 +284,8 @@ class DispatchInfo:
logger.error(f'{item} 分组装载路网异常') logger.error(f'{item} 分组装载路网异常')
cls.load_distance[item] = np.full((len(unload_areas), len(load_areas)), 10000) cls.load_distance[item] = np.full((len(unload_areas), len(load_areas)), 10000)
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
try: try:
...@@ -286,8 +300,9 @@ class DispatchInfo: ...@@ -286,8 +300,9 @@ class DispatchInfo:
except Exception as es: except Exception as es:
logger.error(f'{item} 分组卸载路网异常') logger.error(f'{item} 分组卸载路网异常')
cls.unload_distance[item] = np.full((len(load_areas), len(unload_areas)), 10000) cls.unload_distance[item] = np.full((len(load_areas), len(unload_areas)), 10000)
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
except Exception as es: except Exception as es:
logger.error("路网距离更新异常-调度部分和路网部分不一致") logger.error("路网距离更新异常-调度部分和路网部分不一致")
...@@ -351,6 +366,8 @@ class DispatchInfo: ...@@ -351,6 +366,8 @@ class DispatchInfo:
except Exception as es: except Exception as es:
logger.error("park->load距离更新异常, 存在备停区不可达的装载区") logger.error("park->load距离更新异常, 存在备停区不可达的装载区")
logger.error(es) logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
return park_matrix return park_matrix
......
...@@ -32,24 +32,31 @@ def direct2redis(): ...@@ -32,24 +32,31 @@ def direct2redis():
session_postgre.commit() session_postgre.commit()
session_postgre.flush() session_postgre.flush()
truck_disp = {} try:
for item in session_mysql.query(DispatchSetting).all():
if item.truck_id not in truck_disp: truck_disp = {}
record = {"truckId": item.truck_id} for item in session_mysql.query(DispatchSetting).all():
record["id"] = item.id if item.truck_id not in truck_disp:
record["exactorId"] = item.exactor_id record = {"truckId": item.truck_id}
record["dumpId"] = item.dump_id record["id"] = item.id
record["loadAreaId"] = item.load_area_id record["exactorId"] = item.exactor_id
record["unloadAreaId"] = item.unload_area_id record["dumpId"] = item.dump_id
record["groupId"] = item.group_id record["loadAreaId"] = item.load_area_id
record["isdeleted"] = False record["unloadAreaId"] = item.unload_area_id
record["isTemp"] = False record["groupId"] = item.group_id
record["haulFlag"] = -1 record["isdeleted"] = False
record["groupName"] = item.group_id record["isTemp"] = False
record["haulFlag"] = -1
logger.info("调度结果") record["groupName"] = item.group_id
logger.info(record)
redis5.set(item.truck_id, str(json.dumps(record))) logger.info("调度结果")
logger.info(record)
redis5.set(item.truck_id, str(json.dumps(record)))
except Exception as es:
logger.error(es)
session_postgre.rollback()
session_mysql.rollback()
def process(dispatcher): def process(dispatcher):
......
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