1.工况回退
This commit is contained in:
@@ -3,31 +3,15 @@ from typing import List, Dict
|
|||||||
import warnings
|
import warnings
|
||||||
import copy
|
import copy
|
||||||
# 注意:根据实际项目路径调整导入,若本地测试可注释掉
|
# 注意:根据实际项目路径调整导入,若本地测试可注释掉
|
||||||
# from ..core.logging_config import get_logger
|
from ..core.logging_config import get_logger
|
||||||
import json
|
import json
|
||||||
|
|
||||||
# 本地测试时的logger替代(可根据实际情况删除)
|
|
||||||
class MockLogger:
|
|
||||||
def warning(self, msg):
|
|
||||||
print(f"[WARNING] {msg}")
|
|
||||||
def info(self, msg):
|
|
||||||
print(f"[INFO] {msg}")
|
|
||||||
|
|
||||||
def get_logger(name):
|
|
||||||
return MockLogger()
|
|
||||||
|
|
||||||
logger = get_logger(__name__)
|
logger = get_logger(__name__)
|
||||||
|
|
||||||
class ConstructionMonitorUtils:
|
class ConstructionMonitorUtils:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
# 原始工况周期映射表(保持不变,重复key会自动保留后面的)
|
# 原始工况周期映射表(保持不变)
|
||||||
self.base_periods = {
|
self.base_periods = {
|
||||||
"路基或预压土填筑,连续填筑":1,
|
|
||||||
"路基或预压土填筑,两次填筑间隔时间较长":7,
|
|
||||||
"预压土或路基填筑完成,第1~3个月":7,
|
|
||||||
"预压土或路基填筑完成,第4~6个月":14,
|
|
||||||
"仰拱(底板)施工完成后,第1个月": 7,
|
"仰拱(底板)施工完成后,第1个月": 7,
|
||||||
"预压土或路基填筑完成,6个月以后":30,
|
|
||||||
"仰拱(底板)施工完成后,第2至3个月": 14,
|
"仰拱(底板)施工完成后,第2至3个月": 14,
|
||||||
"仰拱(底板)施工完成后,3个月以后": 30,
|
"仰拱(底板)施工完成后,3个月以后": 30,
|
||||||
"仰拱(底板)施工完成后,第1个月": 7, # 原:仰拱(底板)施工完成后,第1个月
|
"仰拱(底板)施工完成后,第1个月": 7, # 原:仰拱(底板)施工完成后,第1个月
|
||||||
@@ -66,43 +50,56 @@ class ConstructionMonitorUtils:
|
|||||||
"架桥机(运梁车) 首次通过后": 7, # 原:架桥机(运梁车)首次通过后(仅加空格)
|
"架桥机(运梁车) 首次通过后": 7, # 原:架桥机(运梁车)首次通过后(仅加空格)
|
||||||
"轨道板(道床)铺设后,第1个月": 14, # 原:轨道板(道床)铺设后,第1个月
|
"轨道板(道床)铺设后,第1个月": 14, # 原:轨道板(道床)铺设后,第1个月
|
||||||
"轨道板(道床)铺设后,第2至3个月": 30, # 原:轨道板(道床)铺设后,第2至3个月
|
"轨道板(道床)铺设后,第2至3个月": 30, # 原:轨道板(道床)铺设后,第2至3个月
|
||||||
"轨道板(道床)铺设后,3个月以后": 90,
|
"轨道板(道床)铺设后,3个月以后": 90 # 未出现在待处理集,保留原始格式
|
||||||
"架桥机(运梁车)首次通过前": 1,
|
|
||||||
"架桥机(运梁车)首次通过后,前3天": 1,
|
|
||||||
"架桥机(运梁车)首次通过后": 7,
|
|
||||||
"轨道板铺设前": 14,
|
|
||||||
"轨道板(道床)铺设后,第1至3个月": 14,
|
|
||||||
"轨道板(道床)铺设后,第4至6个月": 30,
|
|
||||||
"轨道板(道床)铺设后,6个月以后": 90,
|
|
||||||
"站场填方路基段填筑完成至静态验收": 14,
|
|
||||||
"桥墩(台)地面处拆模后": 30,
|
|
||||||
"敦身混凝土施工": 30,
|
|
||||||
"预制梁桥,架梁前": 30,
|
|
||||||
"预制梁桥,预制梁架设前": 1,
|
|
||||||
"预制梁桥预制梁架设后": 7,
|
|
||||||
"现浇梁,浇筑前": 30,
|
|
||||||
"现浇梁上部结构施工中": 1,
|
|
||||||
"架桥机(运梁车)通过": 2,
|
|
||||||
"桥梁主体工程完工后,第1至3个月": 7,
|
|
||||||
"桥梁主体工程完工后,第4至6个月": 14,
|
|
||||||
"侨梁主体工程完工后,6个月以后": 30,
|
|
||||||
"轨道铺设,前": 30,
|
|
||||||
"轨道铺设,后": 14,
|
|
||||||
"轨道铺设完成后,第1个月": 14,
|
|
||||||
"轨道铺设完成后,2至3个月": 30,
|
|
||||||
"轨道铺设完成后,4至12个月": 90,
|
|
||||||
"轨道铺设完成后,12个月以后": 180,
|
|
||||||
"仰拱(底板)施工完成后,第1个月": 7,
|
|
||||||
"仰拱(底板)施工完成后第,2至3个月": 14,
|
|
||||||
"仰拱(底板)施工完成后,3个月以后": 30,
|
|
||||||
"轨道板铺设前": 14,
|
|
||||||
"无砟轨道铺设后,第1至3个月": 30,
|
|
||||||
"无砟轨道铺设后,4至12个月": 90,
|
|
||||||
"无砟轨道铺设后,12个月以后": 180,
|
|
||||||
"特殊地段隧道施工完成后至静态验收": 14
|
|
||||||
}
|
}
|
||||||
# 移除兼容映射表,直接使用原始base_periods(字典特性:重复key自动保留后面的)
|
# 构建中英文括号+逗号兼容映射表
|
||||||
self.compatible_periods = self.base_periods
|
self.compatible_periods = self._build_compatible_brackets_map()
|
||||||
|
|
||||||
|
|
||||||
|
def _build_compatible_brackets_map(self) -> Dict[str, int]:
|
||||||
|
"""构建支持中英文括号、中英文逗号,且忽略所有空格的兼容映射表"""
|
||||||
|
compatible_map = {}
|
||||||
|
for original_key, period in self.base_periods.items():
|
||||||
|
# ========== 第一步:处理原始key的空格和符号,生成基础变体 ==========
|
||||||
|
# 1. 清洗空格:去除首尾+全角空格+合并连续空格+最终删除所有空格
|
||||||
|
key_no_space = original_key.strip().replace(" ", " ").replace(" ", " ").replace(" ", "")
|
||||||
|
# 2. 原始key(未清洗空格)
|
||||||
|
compatible_map[original_key] = period
|
||||||
|
# 3. 无空格的原始符号key
|
||||||
|
if key_no_space not in compatible_map:
|
||||||
|
compatible_map[key_no_space] = period
|
||||||
|
|
||||||
|
# ========== 第二步:生成中文括号变体(含空格/无空格) ==========
|
||||||
|
# 带空格的中文括号key
|
||||||
|
chinese_bracket_key = original_key.replace("(", "(").replace(")", ")")
|
||||||
|
if chinese_bracket_key != original_key and chinese_bracket_key not in compatible_map:
|
||||||
|
compatible_map[chinese_bracket_key] = period
|
||||||
|
# 无空格的中文括号key
|
||||||
|
chinese_bracket_no_space = key_no_space.replace("(", "(").replace(")", ")")
|
||||||
|
if chinese_bracket_no_space not in compatible_map:
|
||||||
|
compatible_map[chinese_bracket_no_space] = period
|
||||||
|
|
||||||
|
# ========== 第三步:生成中文逗号变体(含空格/无空格) ==========
|
||||||
|
# 带空格的中文逗号key
|
||||||
|
chinese_comma_key = original_key.replace(",", ",")
|
||||||
|
if chinese_comma_key != original_key and chinese_comma_key not in compatible_map:
|
||||||
|
compatible_map[chinese_comma_key] = period
|
||||||
|
# 无空格的中文逗号key
|
||||||
|
chinese_comma_no_space = key_no_space.replace(",", ",")
|
||||||
|
if chinese_comma_no_space not in compatible_map:
|
||||||
|
compatible_map[chinese_comma_no_space] = period
|
||||||
|
|
||||||
|
# ========== 第四步:生成中文括号+逗号混合变体(含空格/无空格) ==========
|
||||||
|
# 带空格的混合变体key
|
||||||
|
mixed_key = chinese_bracket_key.replace(",", ",")
|
||||||
|
if mixed_key != original_key and mixed_key not in compatible_map:
|
||||||
|
compatible_map[mixed_key] = period
|
||||||
|
# 无空格的混合变体key
|
||||||
|
mixed_no_space = chinese_bracket_no_space.replace(",", ",")
|
||||||
|
if mixed_no_space not in compatible_map:
|
||||||
|
compatible_map[mixed_no_space] = period
|
||||||
|
|
||||||
|
return compatible_map
|
||||||
|
|
||||||
def get_due_data(self, input_data: List[List[Dict]], start: int = 0, end: int = 0, current_date: datetime = None) -> Dict[str, List[Dict]]:
|
def get_due_data(self, input_data: List[List[Dict]], start: int = 0, end: int = 0, current_date: datetime = None) -> Dict[str, List[Dict]]:
|
||||||
result = {"winter": [], "data": [], "error_data": []}
|
result = {"winter": [], "data": [], "error_data": []}
|
||||||
|
|||||||
@@ -14,9 +14,9 @@ class OperatingModePredictor:
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
"""初始化类,加载内置的工况配置、分组规则和切换触发规则"""
|
"""初始化类,加载内置的工况配置、分组规则和切换触发规则"""
|
||||||
# 基础工况配置(更新为最新的工况列表,重复key保留后面的值)
|
# 基础工况配置(键:工况名称,值:基础监测周期参考)
|
||||||
self.base_periods = self._load_base_periods()
|
self.base_periods = self._load_base_periods()
|
||||||
# 工况分组(同步更新分组规则,匹配最新工况名称)
|
# 工况分组(将同义不同格式的工况归类,共用切换规则)
|
||||||
self.condition_group = self._load_condition_group()
|
self.condition_group = self._load_condition_group()
|
||||||
# 工况切换触发规则(键:分组ID,值:触发天数+目标工况候选)
|
# 工况切换触发规则(键:分组ID,值:触发天数+目标工况候选)
|
||||||
self.group_transition_rules = self._load_group_transition_rules()
|
self.group_transition_rules = self._load_group_transition_rules()
|
||||||
@@ -24,39 +24,34 @@ class OperatingModePredictor:
|
|||||||
self.winter_break_labels = self._load_winter_break_labels()
|
self.winter_break_labels = self._load_winter_break_labels()
|
||||||
|
|
||||||
def _load_base_periods(self):
|
def _load_base_periods(self):
|
||||||
"""加载基础工况配置(更新为最新工况列表,重复key自动保留后面的值)"""
|
"""加载基础工况配置(私有方法,内部使用)"""
|
||||||
return {
|
return {
|
||||||
"路基或预压土填筑,连续填筑":1,
|
|
||||||
"路基或预压土填筑,两次填筑间隔时间较长":7,
|
|
||||||
"预压土或路基填筑完成,第1~3个月":7,
|
|
||||||
"预压土或路基填筑完成,第4~6个月":14,
|
|
||||||
"仰拱(底板)施工完成后,第1个月": 7,
|
"仰拱(底板)施工完成后,第1个月": 7,
|
||||||
"预压土或路基填筑完成,6个月以后":30,
|
|
||||||
"仰拱(底板)施工完成后,第2至3个月": 14,
|
"仰拱(底板)施工完成后,第2至3个月": 14,
|
||||||
"仰拱(底板)施工完成后,3个月以后": 30,
|
"仰拱(底板)施工完成后,3个月以后": 30,
|
||||||
"仰拱(底板)施工完成后,第1个月": 7, # 重复key,保留此值
|
"仰拱(底板)施工完成后,第1个月": 7,
|
||||||
"仰拱(底板)施工完成后,第2至3个月": 14, # 重复key,保留此值
|
"仰拱(底板)施工完成后,第2至3个月": 14,
|
||||||
"仰拱(底板)施工完成后,3个月以后": 30, # 重复key,保留此值
|
"仰拱(底板)施工完成后,3个月以后": 30,
|
||||||
"无砟轨道铺设后,第1至3个月": 30, # 重复key,保留此值
|
"无砟轨道铺设后,第1至3个月": 30,
|
||||||
"无砟轨道铺设后,4至12个月": 90, # 重复key,保留此值
|
"无砟轨道铺设后,4至12个月": 90,
|
||||||
"无砟轨道铺设后,12个月以后": 180, # 重复key,保留此值
|
"无砟轨道铺设后,12个月以后": 180,
|
||||||
"墩台施工到一定高度": 30,
|
"墩台施工到一定高度": 30,
|
||||||
"墩台混凝土施工": 30,
|
"墩台混凝土施工": 30,
|
||||||
"预制梁桥,架梁前": 30, # 重复key,保留此值
|
"预制梁桥,架梁前": 30,
|
||||||
"预制梁桥,预制梁架设前": 1, # 重复key,保留此值
|
"预制梁桥,预制梁架设前": 1,
|
||||||
"预制梁桥,预制梁架设后": 7,
|
"预制梁桥,预制梁架设后": 7,
|
||||||
"桥位施工桥梁,制梁前": 30,
|
"桥位施工桥梁,制梁前": 30,
|
||||||
"桥位施工桥梁,上部结构施工中": 1,
|
"桥位施工桥梁,上部结构施工中": 1,
|
||||||
"架桥机(运梁车)通过": 2, # 重复key,保留此值(原7→2)
|
"架桥机(运梁车)通过": 7,
|
||||||
"桥梁主体工程完工后,第1至3个月": 7,
|
"桥梁主体工程完工后,第1至3个月": 7,
|
||||||
"桥梁主体工程完工后,第4至6个月": 14, # 重复key,保留此值
|
"桥梁主体工程完工后,第4至6个月": 14,
|
||||||
"桥梁主体工程完工后,6个月以后": 30, # 重复key,保留此值
|
"桥梁主体工程完工后,6个月以后": 30,
|
||||||
"轨道铺设期间,前": 30,
|
"轨道铺设期间,前": 30,
|
||||||
"轨道铺设期间,后": 14,
|
"轨道铺设期间,后": 14,
|
||||||
"轨道铺设完成后,第1个月": 14, # 重复key,保留此值
|
"轨道铺设完成后,第1个月": 14,
|
||||||
"轨道铺设完成后,2至3个月": 30, # 重复key,保留此值
|
"轨道铺设完成后,2至3个月": 30,
|
||||||
"轨道铺设完成后,4至12个月": 90, # 重复key,保留此值
|
"轨道铺设完成后,4至12个月": 90,
|
||||||
"轨道铺设完成后,12个月以后": 180, # 重复key,保留此值
|
"轨道铺设完成后,12个月以后": 180,
|
||||||
"铺路或堆载,一般情况": 1,
|
"铺路或堆载,一般情况": 1,
|
||||||
"填筑或堆载,一般情况": 1,
|
"填筑或堆载,一般情况": 1,
|
||||||
"铺路或堆载,沉降量突变情况": 1,
|
"铺路或堆载,沉降量突变情况": 1,
|
||||||
@@ -71,116 +66,62 @@ class OperatingModePredictor:
|
|||||||
"轨道板(道床)铺设后,第1个月": 14,
|
"轨道板(道床)铺设后,第1个月": 14,
|
||||||
"轨道板(道床)铺设后,第2至3个月": 30,
|
"轨道板(道床)铺设后,第2至3个月": 30,
|
||||||
"轨道板(道床)铺设后,3个月以后": 90,
|
"轨道板(道床)铺设后,3个月以后": 90,
|
||||||
"架桥机(运梁车)首次通过前": 1,
|
"冬休": 0 # 仅保留冬休
|
||||||
"架桥机(运梁车)首次通过后,前3天": 1,
|
|
||||||
"架桥机(运梁车)首次通过后": 7,
|
|
||||||
"轨道板铺设前": 14, # 新增工况
|
|
||||||
"轨道板(道床)铺设后,第1至3个月": 14, # 新增工况
|
|
||||||
"轨道板(道床)铺设后,第4至6个月": 30, # 新增工况
|
|
||||||
"轨道板(道床)铺设后,6个月以后": 90, # 新增工况
|
|
||||||
"站场填方路基段填筑完成至静态验收": 14, # 新增工况
|
|
||||||
"桥墩(台)地面处拆模后": 30, # 新增工况
|
|
||||||
"敦身混凝土施工": 30, # 新增工况
|
|
||||||
"预制梁桥预制梁架设后": 7, # 新增工况
|
|
||||||
"现浇梁,浇筑前": 30, # 新增工况
|
|
||||||
"现浇梁上部结构施工中": 1, # 新增工况
|
|
||||||
"侨梁主体工程完工后,6个月以后": 30, # 新增工况(注意错别字)
|
|
||||||
"轨道铺设,前": 30, # 新增工况
|
|
||||||
"轨道铺设,后": 14, # 新增工况
|
|
||||||
"仰拱(底板)施工完成后第,2至3个月": 14, # 新增工况(标点位置异常)
|
|
||||||
"特殊地段隧道施工完成后至静态验收": 14, # 新增工况
|
|
||||||
"冬休": 0 # 保留冬休工况
|
|
||||||
}
|
}
|
||||||
|
|
||||||
def _load_condition_group(self):
|
def _load_condition_group(self):
|
||||||
"""加载工况分组规则(同步更新,匹配最新工况名称)"""
|
"""加载工况分组规则(私有方法,内部使用)"""
|
||||||
condition_group = {
|
condition_group = {
|
||||||
# 仰拱相关
|
|
||||||
"仰拱(底板)施工完成后,第1个月": "YG_DIBAN_1",
|
"仰拱(底板)施工完成后,第1个月": "YG_DIBAN_1",
|
||||||
"仰拱(底板)施工完成后,第1个月": "YG_DIBAN_1",
|
"仰拱(底板)施工完成后,第1个月": "YG_DIBAN_1",
|
||||||
"仰拱(底板)施工完成后,第2至3个月": "YG_DIBAN_2_3",
|
"仰拱(底板)施工完成后,第2至3个月": "YG_DIBAN_2_3",
|
||||||
"仰拱(底板)施工完成后,第2至3个月": "YG_DIBAN_2_3",
|
"仰拱(底板)施工完成后,第2至3个月": "YG_DIBAN_2_3",
|
||||||
"仰拱(底板)施工完成后,3个月以后": "YG_DIBAN_AFTER_3",
|
"仰拱(底板)施工完成后,3个月以后": "YG_DIBAN_AFTER_3",
|
||||||
"仰拱(底板)施工完成后,3个月以后": "YG_DIBAN_AFTER_3",
|
"仰拱(底板)施工完成后,3个月以后": "YG_DIBAN_AFTER_3",
|
||||||
"仰拱(底板)施工完成后第,2至3个月": "YG_DIBAN_2_3", # 新增异常格式工况分组
|
|
||||||
|
|
||||||
# 架桥机相关
|
|
||||||
"架桥机(运梁车) 首次通过前": "JQJ_FIRST_BEFORE",
|
"架桥机(运梁车) 首次通过前": "JQJ_FIRST_BEFORE",
|
||||||
"架桥机(运梁车)首次通过前": "JQJ_FIRST_BEFORE", # 新增无空格版本
|
|
||||||
"架桥机(运梁车) 首次通过后,前3天": "JQJ_FIRST_AFTER_3D",
|
"架桥机(运梁车) 首次通过后,前3天": "JQJ_FIRST_AFTER_3D",
|
||||||
"架桥机(运梁车)首次通过后,前3天": "JQJ_FIRST_AFTER_3D", # 新增无空格版本
|
|
||||||
"架桥机(运梁车) 首次通过后": "JQJ_FIRST_AFTER",
|
"架桥机(运梁车) 首次通过后": "JQJ_FIRST_AFTER",
|
||||||
"架桥机(运梁车)首次通过后": "JQJ_FIRST_AFTER", # 新增无空格版本
|
|
||||||
"架桥机(运梁车)通过": "STATIC",
|
|
||||||
|
|
||||||
# 堆载预压/路基填筑相关
|
|
||||||
"堆载预压或路基填筑完成,第1至3个月": "DZYY_1_3",
|
"堆载预压或路基填筑完成,第1至3个月": "DZYY_1_3",
|
||||||
"堆载预压或路基填筑完成,第4至6个月": "DZYY_4_6",
|
"堆载预压或路基填筑完成,第4至6个月": "DZYY_4_6",
|
||||||
"堆载预压或路基填筑完成,6个月以后": "DZYY_AFTER_6",
|
"堆载预压或路基填筑完成,6个月以后": "DZYY_AFTER_6",
|
||||||
"路基或预压土填筑,连续填筑": "STATIC",
|
|
||||||
"路基或预压土填筑,两次填筑间隔时间较长": "STATIC",
|
|
||||||
"预压土或路基填筑完成,第1~3个月": "DZYY_1_3",
|
|
||||||
"预压土或路基填筑完成,第4~6个月": "DZYY_4_6",
|
|
||||||
"预压土或路基填筑完成,6个月以后": "DZYY_AFTER_6",
|
|
||||||
|
|
||||||
# 轨道板相关
|
|
||||||
"轨道板(道床)铺设后,第1个月": "GDB_1",
|
"轨道板(道床)铺设后,第1个月": "GDB_1",
|
||||||
"轨道板(道床)铺设后,第2至3个月": "GDB_2_3",
|
"轨道板(道床)铺设后,第2至3个月": "GDB_2_3",
|
||||||
"轨道板(道床)铺设后,3个月以后": "GDB_AFTER_3",
|
"轨道板(道床)铺设后,3个月以后": "GDB_AFTER_3",
|
||||||
"轨道板铺设前": "STATIC",
|
|
||||||
"轨道板(道床)铺设后,第1至3个月": "GDB_1",
|
|
||||||
"轨道板(道床)铺设后,第4至6个月": "GDB_2_3",
|
|
||||||
"轨道板(道床)铺设后,6个月以后": "GDB_AFTER_3",
|
|
||||||
|
|
||||||
# 预制梁桥相关
|
|
||||||
"预制梁桥,架梁前": "STATIC",
|
|
||||||
"预制梁桥,预制梁架设前": "YZLQ_BEFORE_JS",
|
"预制梁桥,预制梁架设前": "YZLQ_BEFORE_JS",
|
||||||
"预制梁桥,预制梁架设后": "YZLQ_AFTER_JS",
|
"预制梁桥,预制梁架设后": "YZLQ_AFTER_JS",
|
||||||
"预制梁桥预制梁架设后": "YZLQ_AFTER_JS", # 新增工况分组
|
|
||||||
|
|
||||||
# 桥梁主体相关
|
|
||||||
"桥梁主体工程完工后,第1至3个月": "QL_ZHUTI_1_3",
|
"桥梁主体工程完工后,第1至3个月": "QL_ZHUTI_1_3",
|
||||||
"桥梁主体工程完工后,第4至6个月": "QL_ZHUTI_4_6",
|
"桥梁主体工程完工后,第4至6个月": "QL_ZHUTI_4_6",
|
||||||
"桥梁主体工程完工后,6个月以后": "QL_ZHUTI_AFTER_6",
|
"桥梁主体工程完工后,6个月以后": "QL_ZHUTI_AFTER_6",
|
||||||
"侨梁主体工程完工后,6个月以后": "QL_ZHUTI_AFTER_6", # 错别字工况分组
|
|
||||||
|
|
||||||
# 轨道铺设相关
|
|
||||||
"轨道铺设完成后,第1个月": "GD_1",
|
"轨道铺设完成后,第1个月": "GD_1",
|
||||||
"轨道铺设完成后,2至3个月": "GD_2_3",
|
"轨道铺设完成后,2至3个月": "GD_2_3",
|
||||||
"轨道铺设完成后,4至12个月": "GD_4_12",
|
"轨道铺设完成后,4至12个月": "GD_4_12",
|
||||||
"轨道铺设完成后,12个月以后": "GD_AFTER_12",
|
"轨道铺设完成后,12个月以后": "GD_AFTER_12",
|
||||||
"轨道铺设期间,前": "STATIC",
|
|
||||||
"轨道铺设期间,后": "STATIC",
|
|
||||||
"轨道铺设,前": "STATIC",
|
|
||||||
"轨道铺设,后": "STATIC",
|
|
||||||
|
|
||||||
# 无砟轨道相关
|
|
||||||
"无砟轨道铺设后,第1至3个月": "WZGD_1_3",
|
"无砟轨道铺设后,第1至3个月": "WZGD_1_3",
|
||||||
"无砟轨道铺设后,4至12个月": "WZGD_4_12",
|
"无砟轨道铺设后,4至12个月": "WZGD_4_12",
|
||||||
"无砟轨道铺设后,12个月以后": "WZGD_AFTER_12",
|
"无砟轨道铺设后,12个月以后": "WZGD_AFTER_12",
|
||||||
|
|
||||||
# 静态工况(无切换规则)
|
|
||||||
"墩台施工到一定高度": "STATIC",
|
"墩台施工到一定高度": "STATIC",
|
||||||
"墩台混凝土施工": "STATIC",
|
"墩台混凝土施工": "STATIC",
|
||||||
|
"预制梁桥,架梁前": "STATIC",
|
||||||
"桥位施工桥梁,制梁前": "STATIC",
|
"桥位施工桥梁,制梁前": "STATIC",
|
||||||
"桥位施工桥梁,上部结构施工中": "STATIC",
|
"桥位施工桥梁,上部结构施工中": "STATIC",
|
||||||
|
"架桥机(运梁车)通过": "STATIC",
|
||||||
|
"轨道铺设期间,前": "STATIC",
|
||||||
|
"轨道铺设期间,后": "STATIC",
|
||||||
"铺路或堆载,一般情况": "STATIC",
|
"铺路或堆载,一般情况": "STATIC",
|
||||||
"填筑或堆载,一般情况": "STATIC",
|
"填筑或堆载,一般情况": "STATIC",
|
||||||
"铺路或堆载,沉降量突变情况": "STATIC",
|
"铺路或堆载,沉降量突变情况": "STATIC",
|
||||||
"填筑或堆载,两次填筑间隔时间较长情况": "STATIC",
|
"填筑或堆载,两次填筑间隔时间较长情况": "STATIC",
|
||||||
"铺路或堆载,两次铺路间隔时间较长情况": "STATIC",
|
"铺路或堆载,两次铺路间隔时间较长情况": "STATIC"
|
||||||
"站场填方路基段填筑完成至静态验收": "STATIC",
|
}
|
||||||
"桥墩(台)地面处拆模后": "STATIC",
|
# 冬休分组(仅冬休)
|
||||||
"敦身混凝土施工": "STATIC",
|
winter_break_groups = {
|
||||||
"现浇梁,浇筑前": "STATIC",
|
|
||||||
"现浇梁上部结构施工中": "STATIC",
|
|
||||||
"特殊地段隧道施工完成后至静态验收": "STATIC",
|
|
||||||
"冬休": "STATIC"
|
"冬休": "STATIC"
|
||||||
}
|
}
|
||||||
|
condition_group.update(winter_break_groups)
|
||||||
return condition_group
|
return condition_group
|
||||||
|
|
||||||
def _load_group_transition_rules(self):
|
def _load_group_transition_rules(self):
|
||||||
"""加载工况切换触发规则(保持原有规则,适配新增工况)"""
|
"""加载工况切换触发规则(私有方法,内部使用)"""
|
||||||
return {
|
return {
|
||||||
"YG_DIBAN_1": {"trigger_days": 30, "next_candidates": ["仰拱(底板)施工完成后,第2至3个月", "仰拱(底板)施工完成后,第2至3个月"]},
|
"YG_DIBAN_1": {"trigger_days": 30, "next_candidates": ["仰拱(底板)施工完成后,第2至3个月", "仰拱(底板)施工完成后,第2至3个月"]},
|
||||||
"YG_DIBAN_2_3": {"trigger_days": 60, "next_candidates": ["仰拱(底板)施工完成后,3个月以后", "仰拱(底板)施工完成后,3个月以后"]},
|
"YG_DIBAN_2_3": {"trigger_days": 60, "next_candidates": ["仰拱(底板)施工完成后,3个月以后", "仰拱(底板)施工完成后,3个月以后"]},
|
||||||
|
|||||||
Reference in New Issue
Block a user