From 440a0bd647694e4b6cd988199d9c430e31f931c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=96=B9=20=E6=9F=8F?= Date: Sun, 24 Nov 2024 21:01:21 +0900 Subject: [PATCH] add active ,onwer in domain --- backend/app/api/api_v1/routers/platform.py | 6 +++--- backend/app/db/crud.py | 9 +++++---- backend/app/db/models.py | 3 +++ backend/app/db/schemas.py | 6 +++++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/backend/app/api/api_v1/routers/platform.py b/backend/app/api/api_v1/routers/platform.py index 06348b5..58a7d20 100644 --- a/backend/app/api/api_v1/routers/platform.py +++ b/backend/app/api/api_v1/routers/platform.py @@ -272,7 +272,7 @@ async def domain_details( @r.post("/domain", response_model=Domain, response_model_exclude_none=True) async def domain_create( request: Request, - domain: DomainBase, + domain: DomainIn, user=Depends(get_current_active_user), db=Depends(get_db), ): @@ -287,7 +287,7 @@ async def domain_create( ) async def domain_edit( request: Request, - domain: DomainBase, + domain: DomainIn, user=Depends(get_current_active_user), db=Depends(get_db), ): @@ -312,7 +312,7 @@ async def domain_delete( @r.get( "/domain", - # response_model=List[Domain], + response_model=List[Domain], response_model_exclude_none=True, ) async def userdomain_details( diff --git a/backend/app/db/crud.py b/backend/app/db/crud.py index 9c15d91..57bb32e 100644 --- a/backend/app/db/crud.py +++ b/backend/app/db/crud.py @@ -277,7 +277,7 @@ def get_flows_by_app(db: Session,domainurl: str, appid: str): raise Exception("Data not found") return flows -def create_domain(db: Session, domain: schemas.DomainBase,userid:int): +def create_domain(db: Session, domain: schemas.DomainIn,userid:int): domain.encrypt_kintonepwd() db_domain = models.Domain( tenantid = domain.tenantid, @@ -286,7 +286,8 @@ def create_domain(db: Session, domain: schemas.DomainBase,userid:int): kintoneuser=domain.kintoneuser, kintonepwd=domain.kintonepwd, createuserid = userid, - updateuserid = userid + updateuserid = userid, + ownerid = domain.ownerid ) db.add(db_domain) db.flush() @@ -305,7 +306,7 @@ def delete_domain(db: Session,id: int): def edit_domain( - db: Session, domain: schemas.DomainBase,userid:int + db: Session, domain: schemas.DomainIn,userid:int ) -> schemas.Domain: domain.encrypt_kintonepwd() db_domain = db.query(models.Domain).get(domain.id) @@ -317,7 +318,7 @@ def edit_domain( db_domain.kintoneuser=domain.kintoneuser db_domain.kintonepwd = domain.kintonepwd db_domain.updateuserid = userid - db_domain.update_time = datetime.now + db_domain.ownerid = domain.ownerid db.add(db_domain) db.commit() db.refresh(db_domain) diff --git a/backend/app/db/models.py b/backend/app/db/models.py index 731129b..8433d46 100644 --- a/backend/app/db/models.py +++ b/backend/app/db/models.py @@ -158,8 +158,11 @@ class Domain(Base): return decrypted_pwd createuserid = Column(Integer,ForeignKey("user.id")) updateuserid = Column(Integer,ForeignKey("user.id")) + ownerid = Column(Integer,ForeignKey("user.id")) createuser = relationship('User',foreign_keys=[createuserid]) updateuser = relationship('User',foreign_keys=[updateuserid]) + owner = relationship('User',foreign_keys=[ownerid]) + is_active = Column(Boolean, default=True) class UserDomain(Base): __tablename__ = "userdomain" diff --git a/backend/app/db/schemas.py b/backend/app/db/schemas.py index 583c210..ab07302 100644 --- a/backend/app/db/schemas.py +++ b/backend/app/db/schemas.py @@ -143,13 +143,15 @@ class Flow(Base): class ConfigDict: orm_mode = True -class DomainBase(BaseModel): +class DomainIn(BaseModel): id: int tenantid: str name: str url: str kintoneuser: str kintonepwd: str + is_active: bool + ownerid:int def encrypt_kintonepwd(self): encrypted_pwd = chacha20Encrypt(self.kintonepwd) @@ -162,6 +164,8 @@ class Domain(Base): url: str kintoneuser: str kintonepwd: str + is_active: bool + owner:UserOut class ConfigDict: orm_mode = True