From cdb5f8bf45f117831959291c89e0694606ebb479 Mon Sep 17 00:00:00 2001 From: zhaoqingang <zhaoqg0118@163.com> Date: 星期三, 04 十二月 2024 17:28:58 +0800 Subject: [PATCH] 增加公开api --- app/service/common/app_register.py | 53 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 47 insertions(+), 6 deletions(-) diff --git a/app/service/common/app_register.py b/app/service/common/app_register.py index 1ea947c..e30816b 100644 --- a/app/service/common/app_register.py +++ b/app/service/common/app_register.py @@ -1,12 +1,53 @@ -from app.models.app_model import AppRegisterModel +from app.models.public_api_model import AppRegisterModel +from Log import logger +from app.models import current_time +from sqlalchemy.orm import Session +from typing import Type -class AppRegister: - app = AppRegisterModel - def __init__(self, db): +class AppRegisterDao: + def __init__(self, db: Session): self.db = db + def get_app_by_id(self, api_id: str) -> Type[AppRegisterModel] | None: + session = self.db.query(AppRegisterModel).filter_by(id=api_id).first() - def get_app(self): + return session - return [i.app_type for i in self.db.query(self.app).filter_by(status=1).all()] \ No newline at end of file + def update_app(self, app_id: str, status: int): + + logger.error("鏇存柊鏁版嵁: app register---------------------------") + try: + self.db.query(AppRegisterModel).filter(AppRegisterModel.id==app_id).update({"status":status, "updated_at": current_time()}) + self.db.commit() + except Exception as e: + logger.error(e) + self.db.rollback() + raise Exception("鏇存柊澶辫触锛�") + + def insert_app(self, app_id: str, status: int): + logger.error("鏂板鏁版嵁: app register---------------------------") + new_session = AppRegisterModel( + id=app_id, + status=status + ) + self.db.add(new_session) + self.db.commit() + self.db.refresh(new_session) + return new_session + + + def update_and_insert_app(self, app_id: str, status: int): + + logger.error("鏇存柊鎴栬�呮坊鍔犳暟鎹�: app register---------------------------") + token_boj = self.get_app_by_id(app_id) + if token_boj: + self.update_app(app_id, status) + else: + self.insert_app(app_id, status) + + + def get_apps(self): + app_list = self.db.query(AppRegisterModel).filter_by(status=1).all() + + return [i.to_dict() for i in app_list] \ No newline at end of file -- Gitblit v1.8.0