fix create_userdomain

This commit is contained in:
2024-11-27 16:12:41 +09:00
parent aa7daf4447
commit 3b15dabedc
3 changed files with 18 additions and 7 deletions

View File

@@ -334,7 +334,7 @@ async def userdomain_details(
@r.post( @r.post(
"/domain/{userid}", "/domain/{userid}",
response_model=ApiReturnModel[Domain], response_model=ApiReturnModel[DomainOut|None],
response_model_exclude_none=True, response_model_exclude_none=True,
) )
async def create_userdomain( async def create_userdomain(
@@ -345,7 +345,8 @@ async def create_userdomain(
db=Depends(get_db), db=Depends(get_db),
): ):
try: try:
return ApiReturnModel(data=add_userdomain(db, userid,domainid)) domain = add_userdomain(db, userid,domainid)
return ApiReturnModel(data = domain)
except Exception as e: except Exception as e:
raise APIException('platform:domain',request.url._url,f"Error occurred while add user({userid}) domain:",e) raise APIException('platform:domain',request.url._url,f"Error occurred while add user({userid}) domain:",e)

View File

@@ -337,11 +337,12 @@ def edit_domain(
def add_userdomain(db: Session, userid:int,domainid:int): def add_userdomain(db: Session, userid:int,domainid:int):
user_domain = models.UserDomain(userid = userid, domainid = domainid ) db_domain = db.query(models.Domain).get(domainid)
db.add(user_domain) if db_domain:
db.commit() user_domain = models.UserDomain(userid = userid, domainid = domainid )
db.refresh(user_domain) db.add(user_domain)
return user_domain db.commit()
return db_domain
def add_userdomains(db: Session, userid:int,domainids:list[str]): def add_userdomains(db: Session, userid:int,domainids:list[str]):
dbCommits = list(map(lambda domainid: models.UserDomain(userid = userid, domainid = domainid ), domainids)) dbCommits = list(map(lambda domainid: models.UserDomain(userid = userid, domainid = domainid ), domainids))

View File

@@ -157,6 +157,15 @@ class DomainIn(BaseModel):
encrypted_pwd = chacha20Encrypt(self.kintonepwd) encrypted_pwd = chacha20Encrypt(self.kintonepwd)
self.kintonepwd = encrypted_pwd self.kintonepwd = encrypted_pwd
class DomainOut(BaseModel):
id: int
tenantid: str
name: str
url: str
is_active: bool
ownerid:int
class ActiveDomain(BaseModel): class ActiveDomain(BaseModel):
id: int id: int
tenantid: str tenantid: str