This commit is contained in:
2026-07-19 10:45:22 +09:00
parent 4061c77cbe
commit 52778784de
10 changed files with 204 additions and 29 deletions
@@ -63,6 +63,37 @@ async def get_surface_confirmation_params(
return resolved
async def update_contour_interval_param(
connection: aiomysql.Connection,
project_id: str,
contour_interval_m: float,
) -> None:
"""stage 1 params의 등고선 간격만 갱신한다 (B05 재적용 영속화)."""
async with connection.cursor(aiomysql.DictCursor) as cursor:
await cursor.execute(
"""
SELECT params
FROM project_workflow_stages
WHERE project_id = %s AND stage_no = 1
FOR UPDATE
""",
(project_id,),
)
row = await cursor.fetchone()
if row is None:
raise LookupError("WF1 단계 상태를 찾을 수 없습니다.")
params = _decode_params(row.get("params") if row else None)
params["contour_interval_m"] = float(contour_interval_m)
await cursor.execute(
"""
UPDATE project_workflow_stages
SET params = %s
WHERE project_id = %s AND stage_no = 1
""",
(json.dumps(params, ensure_ascii=False), project_id),
)
async def merge_surface_confirmation_params(
connection: aiomysql.Connection,
project_id: str,