friend route modify
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
parent
055dbe1c62
commit
66cad20696
@ -1,8 +0,0 @@
|
||||
from pydantic import BaseModel
|
||||
|
||||
from app.models.friend import Friend
|
||||
|
||||
|
||||
class FriendListDTO(BaseModel):
|
||||
friends: list[Friend]
|
||||
external_friends: list[Friend]
|
@ -1,5 +1,4 @@
|
||||
from .UserRegisterDTO import UserRegisterDTO
|
||||
from .FriendAddDTO import FriendAddDTO
|
||||
from .FriendListDTO import FriendListDTO
|
||||
from .UserDTO import UserDTO
|
||||
from .PinDTO import PinDTO
|
@ -1,25 +1,21 @@
|
||||
from app.models.friend import Friend
|
||||
|
||||
def friend_serialize(friend: list) -> Friend:
|
||||
def friend_serialize(friend: list, is_external: bool) -> Friend:
|
||||
status = friend['status'] if 'status' in friend else 'pending'
|
||||
|
||||
return Friend(**{
|
||||
"id": str(friend["_id"]),
|
||||
"user_id": friend["user_id"],
|
||||
"friend_user_id": friend["friend_user_id"],
|
||||
"friend_user_id": friend["user_id"] if is_external else friend["friend_user_id"],
|
||||
"status": status
|
||||
})
|
||||
|
||||
def friends_serialize(friends: list, external_friends: list) -> dict:
|
||||
serialized_friends: dict = {
|
||||
'friends': [],
|
||||
'external_friends': []
|
||||
}
|
||||
serialized_friends: list = []
|
||||
|
||||
for friend in friends:
|
||||
serialized_friends["friends"].append(friend_serialize(friend))
|
||||
serialized_friends.append(friend_serialize(friend,False))
|
||||
|
||||
for external_friend in external_friends:
|
||||
serialized_friends["external_friends"].append(friend_serialize(external_friend))
|
||||
serialized_friends.append(friend_serialize(external_friend,True))
|
||||
|
||||
return serialized_friends
|
Loading…
Reference in new issue