refactor(schedule): 优化日程生成日志输出
将月度计划的日志记录逻辑从 `plan_manager` 迁移到 `schedule_manager` 中,使其仅在生成日程并实际使用到月度计划时才打印相关信息,避免了不必要的日志输出。 - 从 `plan_manager` 中移除了获取月度计划后的日志打印。 - 在 `schedule_manager` 的日志函数中增加了对参考月度计划的展示,使日志内容更具上下文。
This commit is contained in:
@@ -43,9 +43,6 @@ class PlanManager:
|
||||
await delete_plans_by_ids(delete_ids) # type: ignore
|
||||
plans = await get_active_plans_for_month(target_month)
|
||||
|
||||
if plans:
|
||||
plan_texts = "\n".join([f" {i + 1}. {plan.plan_text}" for i, plan in enumerate(plans)])
|
||||
logger.info(f"当前月度计划内容:\n{plan_texts}")
|
||||
return True
|
||||
|
||||
async def _generate_monthly_plans_logic(self, target_month: str | None = None) -> bool:
|
||||
|
||||
@@ -5,7 +5,7 @@ from typing import Any
|
||||
import orjson
|
||||
from sqlalchemy import select
|
||||
|
||||
from src.common.database.sqlalchemy_models import Schedule, get_db_session
|
||||
from src.common.database.sqlalchemy_models import MonthlyPlan, Schedule, get_db_session
|
||||
from src.common.logger import get_logger
|
||||
from src.config.config import global_config
|
||||
from src.manager.async_task_manager import AsyncTask, async_task_manager
|
||||
@@ -108,7 +108,7 @@ class ScheduleManager:
|
||||
if schedule_data:
|
||||
await self._save_schedule_to_db(today_str, schedule_data)
|
||||
self.today_schedule = schedule_data
|
||||
self._log_generated_schedule(today_str, schedule_data)
|
||||
self._log_generated_schedule(today_str, schedule_data, sampled_plans)
|
||||
|
||||
if sampled_plans:
|
||||
used_plan_ids = [plan.id for plan in sampled_plans]
|
||||
@@ -133,8 +133,16 @@ class ScheduleManager:
|
||||
await session.commit()
|
||||
|
||||
@staticmethod
|
||||
def _log_generated_schedule(date_str: str, schedule_data: list[dict[str, Any]]):
|
||||
schedule_str = f"✅ 成功生成并保存今天的日程 ({date_str}):\n"
|
||||
def _log_generated_schedule(
|
||||
date_str: str, schedule_data: list[dict[str, Any]], sampled_plans: list[MonthlyPlan]
|
||||
):
|
||||
schedule_str = f"成功生成并保存今天的日程 ({date_str}):\n"
|
||||
|
||||
if sampled_plans:
|
||||
plan_texts = "\n".join([f" - {plan.plan_text}" for plan in sampled_plans])
|
||||
schedule_str += f"本次日程参考的月度计划:\n{plan_texts}\n"
|
||||
|
||||
schedule_str += "今日日程详情:\n"
|
||||
for item in schedule_data:
|
||||
schedule_str += f" - {item.get('time_range', '未知时间')}: {item.get('activity', '未知活动')}\n"
|
||||
logger.info(schedule_str)
|
||||
|
||||
Reference in New Issue
Block a user