fix setuserdomain& activedomian

This commit is contained in:
2024-11-27 16:22:49 +09:00
parent 3b15dabedc
commit 2b4f4292a8
2 changed files with 10 additions and 9 deletions

View File

@@ -345,7 +345,7 @@ async def create_userdomain(
db=Depends(get_db),
):
try:
domain = add_userdomain(db, userid,domainid)
domain = add_userdomain(db,user.id,userid,domainid)
return ApiReturnModel(data = domain)
except Exception as e:
raise APIException('platform:domain',request.url._url,f"Error occurred while add user({userid}) domain:",e)
@@ -389,18 +389,17 @@ async def get_activeuserdomain(
@r.put(
"/activedomain/{domainid}",
response_model=ApiReturnModel[Domain],
response_model=ApiReturnModel[DomainOut|None],
response_model_exclude_none=True,
)
async def update_activeuserdomain(
request: Request,
domainid:int,
userId: Optional[int] = Query(None, alias="userId"),
user=Depends(get_current_active_user),
db=Depends(get_db),
):
try:
domain = active_userdomain(db, userId if userId is not None else user.id,domainid)
domain = active_userdomain(db,user.id,domainid)
return ApiReturnModel(data= domain)
except Exception as e:
raise APIException('platform:activedomain',request.url._url,f"Error occurred while update user({user.id}) activedomain:",e)

View File

@@ -336,8 +336,8 @@ def edit_domain(
return db_domain
def add_userdomain(db: Session, userid:int,domainid:int):
db_domain = db.query(models.Domain).get(domainid)
def add_userdomain(db: Session,ownerid:int, userid:int,domainid:int):
db_domain = db.query(models.Domain).filter(and_(models.Domain.id == domainid,models.Domain.ownerid == ownerid,models.Domain.is_active)).first()
if db_domain:
user_domain = models.UserDomain(userid = userid, domainid = domainid )
db.add(user_domain)
@@ -361,16 +361,18 @@ def delete_userdomain(db: Session, userid: int,domainid: int):
def active_userdomain(db: Session, userid: int,domainid: int):
db_userdomains = db.query(models.UserDomain).filter(models.UserDomain.userid == userid).all()
if not db_userdomains:
raise HTTPException(status.HTTP_404_NOT_FOUND, detail="Domain not found")
# if not db_userdomains:
# raise HTTPException(status.HTTP_404_NOT_FOUND, detail="Domain not found")
for domain in db_userdomains:
if domain.domainid == domainid:
domain.active = True
active_domain = domain
else:
domain.active = False
db.add(domain)
db.commit()
return db_userdomains
return active_domain
def get_activedomain(db: Session, userid: int):
# user_domains = (db.query(models.Domain,models.UserDomain.active)