diff --git a/app/api/account.py b/app/api/account.py index 68d53bb..e118fbd 100644 --- a/app/api/account.py +++ b/app/api/account.py @@ -6,7 +6,7 @@ from ..core.response_code import ResponseCode, ResponseMessage from ..schemas.account import ( AccountCreate, AccountUpdate, AccountResponse, AccountListRequest, AccountGetRequest, AccountUpdateRequest, AccountDeleteRequest, - AccountApiResponse, AccountListResponse + AccountApiResponse, AccountListResponse,AccountGetRequestYH ) from ..services.account import AccountService @@ -69,6 +69,31 @@ def get_account(request: AccountGetRequest, db: Session = Depends(get_db)): data=accounts ) +# 宇恒一号特定查询接口 +@router.post("/get/yh", response_model=AccountListResponse) +def get_account(request: AccountGetRequestYH, db: Session = Depends(get_db)): + """根据多种条件查询账号""" + accounts = AccountService.search_accounts( + db, + project_name=request.project_name, + yh_id=request.yh_id + ) + if not accounts: + return AccountListResponse( + code=ResponseCode.ACCOUNT_NOT_FOUND, + message=ResponseMessage.ACCOUNT_NOT_FOUND, + total=0, + data=[] + ) + return AccountListResponse( + code=ResponseCode.SUCCESS, + message="查询成功", + total=len(accounts), + data=accounts + ) + + + @router.post("/update", response_model=AccountApiResponse) def update_account(request: AccountUpdateRequest, db: Session = Depends(get_db)): """更新账号""" diff --git a/app/schemas/account.py b/app/schemas/account.py index da1da1e..8cd8089 100644 --- a/app/schemas/account.py +++ b/app/schemas/account.py @@ -66,6 +66,11 @@ class AccountGetRequest(BaseModel): yh_id: Optional[str] = None cl_name: Optional[str] = None +# 宇恒一号特定查询模型 +class AccountGetRequestYH(BaseModel): + project_name: Optional[str] = None + yh_id: str + class AccountUpdateRequest(BaseModel): account_id: int account_data: AccountUpdate diff --git a/app/utils/scheduler.py b/app/utils/scheduler.py index cdf607d..dc550fa 100644 --- a/app/utils/scheduler.py +++ b/app/utils/scheduler.py @@ -78,36 +78,37 @@ class TaskScheduler: def _setup_system_tasks(self): """设置系统定时任务""" try: + logger.info("无定时任务") # 检查是否已存在每日重置任务 - existing_job = self.scheduler.get_job("daily_reset_today_updated") - # existing_job = self.scheduler.get_job("get_max_nyid") - if not existing_job: - # 添加每天午夜12点重置today_updated字段的任务 - self.scheduler.add_job( - reset_today_updated_task, - 'cron', - id='daily_reset_today_updated', - hour=0, - minute=0, - second=0, - name='每日重置账号更新状态' - ) - logger.info("系统定时任务:每日重置账号更新状态已添加") - existing_job = None - existing_job = self.scheduler.get_job("scheduled_get_max_nyid_by_point_id") - if not existing_job: - # 添加每天凌晨1点执行获取max NYID关联数据任务 - self.scheduler.add_job( - scheduled_get_max_nyid_by_point_id, - 'cron', - id='scheduled_get_max_nyid_by_point_id', - hour=1, - minute=0, - second=0, - name='每日获取max NYID关联数据并创建DailyData记录' - ) - logger.info("系统定时任务:每日获取max NYID关联数据任务已添加") + # existing_job = self.scheduler.get_job("daily_reset_today_updated") + # # existing_job = self.scheduler.get_job("get_max_nyid") + # if not existing_job: + # # 添加每天午夜12点重置today_updated字段的任务 + # self.scheduler.add_job( + # reset_today_updated_task, + # 'cron', + # id='daily_reset_today_updated', + # hour=0, + # minute=0, + # second=0, + # name='每日重置账号更新状态' + # ) + # logger.info("系统定时任务:每日重置账号更新状态已添加") + # existing_job = None + # existing_job = self.scheduler.get_job("scheduled_get_max_nyid_by_point_id") + # if not existing_job: + # # 添加每天凌晨1点执行获取max NYID关联数据任务 + # self.scheduler.add_job( + # scheduled_get_max_nyid_by_point_id, + # 'cron', + # id='scheduled_get_max_nyid_by_point_id', + # hour=1, + # minute=0, + # second=0, + # name='每日获取max NYID关联数据并创建DailyData记录' + # ) + # logger.info("系统定时任务:每日获取max NYID关联数据任务已添加") except Exception as e: logger.error(f"设置系统定时任务失败: {e}") @@ -185,24 +186,24 @@ task_scheduler = TaskScheduler() # 系统定时任务函数 def reset_today_updated_task(): """每日重置账号today_updated字段为0的任务""" - db = SessionLocal() - try: - logger.info("开始执行每日重置账号更新状态任务") + # db = SessionLocal() + # try: + # logger.info("开始执行每日重置账号更新状态任务") - # 更新所有账号的today_updated字段为0 - updated_need_count = db.query(Account).filter(Account.today_updated == 1).count() - updated_count = db.query(Account).update({Account.today_updated: 0}) - db.commit() + # # 更新所有账号的today_updated字段为0 + # updated_need_count = db.query(Account).filter(Account.today_updated == 1).count() + # updated_count = db.query(Account).update({Account.today_updated: 0}) + # db.commit() - logger.info(f"每日重置任务完成,已重置 {updated_count} 个账号的today_updated字段") - return f"成功重置 {updated_count} 个账号的更新状态" + # logger.info(f"每日重置任务完成,已重置 {updated_count} 个账号的today_updated字段") + # return f"成功重置 {updated_count} 个账号的更新状态" - except Exception as e: - db.rollback() - logger.error(f"每日重置任务执行失败: {e}") - raise e - finally: - db.close() + # except Exception as e: + # db.rollback() + # logger.error(f"每日重置任务执行失败: {e}") + # raise e + # finally: + # db.close() # 示例定时任务函数