通过特定的scope和target_id查找sur_config再查找sur_config_base
This commit is contained in:
@@ -13,7 +13,7 @@ from config import settings
|
||||
from database.connection import db_manager
|
||||
from models.face_feature import FeatureStatus
|
||||
from models.video_check_task import SurVideoCheckTask
|
||||
from models.sur_config import SurConfigBase
|
||||
from models.sur_config import SurConfigBase, SurConfig
|
||||
from models.sur_person import SurPersonBlacklist, SurFaceFeature
|
||||
from repositories.face_feature_repository import FaceFeatureRepository
|
||||
from algorithm.face_recognition_algorithm import FaceRecognitionAlgorithm
|
||||
@@ -838,11 +838,31 @@ def sync_videofaceprisonbiz_params():
|
||||
"""
|
||||
try:
|
||||
with db_manager.get_session() as session:
|
||||
# 查询人脸识别配置(根据实际表结构)
|
||||
# 查询sur_config表,条件为scope=1且target_id=3
|
||||
prison_config = session.query(SurConfig).filter(
|
||||
SurConfig.scope == 1, # 房间作用域
|
||||
SurConfig.target_id == 3, # 目标ID为3
|
||||
SurConfig.config_type == settings.SUR_CONFIG_TYPE_FACE # 人脸识别配置类型
|
||||
).first()
|
||||
|
||||
if not prison_config:
|
||||
logger.warning("未找到监狱场景的配置记录(scope=1, target_id=3)")
|
||||
return 0
|
||||
|
||||
if not prison_config.config_group_id:
|
||||
logger.warning("监狱配置记录缺少config_group_id")
|
||||
return 0
|
||||
|
||||
# 使用联表查询
|
||||
config_records = session.query(SurConfigBase).filter(
|
||||
SurConfigBase.group_id == prison_config.config_group_id,
|
||||
SurConfigBase.config_type == settings.SUR_CONFIG_TYPE_FACE
|
||||
).all()
|
||||
|
||||
if not config_records:
|
||||
logger.warning(f"未找到对应的配置基础记录(group_id={prison_config.config_group_id})")
|
||||
return 0
|
||||
|
||||
# 构建配置参数字典
|
||||
config_params = {}
|
||||
for record in config_records:
|
||||
@@ -906,7 +926,7 @@ def sync_videofaceprisonbiz_params():
|
||||
except ValueError:
|
||||
logger.error(f"无效的相似度阈值: {config_value}")
|
||||
|
||||
logger.info(f"✅ 同步VideoFacePrisonBiz参数完成,更新了 {updated_count} 个参数")
|
||||
logger.info(f"✅ 同步VideoFacePrisonBiz参数完成,更新了 {updated_count} 个参数(配置组ID: {prison_config.config_group_id})")
|
||||
return updated_count
|
||||
|
||||
except Exception as e:
|
||||
|
||||
Reference in New Issue
Block a user