1
1
import logging
2
2
from datetime import datetime
3
- from typing import Any , Dict , List , Union
3
+ from typing import Dict , List , Union
4
4
5
5
from spaceone .core .error import ERROR_INVALID_PARAMETER , ERROR_NOT_FOUND
6
6
from spaceone .core .service import (
26
26
from spaceone .identity .manager .user_manager import UserManager
27
27
from spaceone .identity .manager .workspace_group_manager import WorkspaceGroupManager
28
28
from spaceone .identity .manager .workspace_manager import WorkspaceManager
29
+ from spaceone .identity .model import WorkspaceGroup
29
30
from spaceone .identity .model .workspace_group .request import (
30
31
WorkspaceGroupAddUsersRequest ,
31
32
WorkspaceGroupCreateRequest ,
@@ -208,7 +209,7 @@ def add_users(
208
209
)
209
210
210
211
workspace_group_info = self .add_user_name_and_state_to_users (
211
- workspace_group_user_ids , workspace_group_vo . to_dict () , domain_id
212
+ workspace_group_user_ids , workspace_group_vo , domain_id
212
213
)
213
214
214
215
return WorkspaceGroupResponse (** workspace_group_info )
@@ -351,7 +352,7 @@ def get(
351
352
workspace_group_user_ids : List [str ] = old_users + new_users
352
353
353
354
workspace_group_dict = self .add_user_name_and_state_to_users (
354
- workspace_group_user_ids , workspace_group_vo . to_dict () , domain_id
355
+ workspace_group_user_ids , workspace_group_vo , domain_id
355
356
)
356
357
return WorkspaceGroupResponse (** workspace_group_dict )
357
358
@@ -399,7 +400,7 @@ def list(
399
400
workspace_group_user_ids : List [str ] = old_users + new_users
400
401
401
402
workspace_group_dict = self .add_user_name_and_state_to_users (
402
- workspace_group_user_ids , workspace_group_vo . to_dict () , params .domain_id
403
+ workspace_group_user_ids , workspace_group_vo , params .domain_id
403
404
)
404
405
workspace_groups_info .append (workspace_group_dict )
405
406
@@ -534,15 +535,15 @@ def add_users_to_workspace_group(
534
535
def add_user_name_and_state_to_users (
535
536
self ,
536
537
workspace_group_user_ids : List [str ],
537
- workspace_group_info : Dict [ str , Any ] ,
538
+ workspace_group_info : WorkspaceGroup ,
538
539
domain_id : str ,
539
540
) -> Dict [str , str ]:
540
541
"""Add user's name and state to users in workspace group.
541
542
Since the user's name and state are not in user of workspace group in database,
542
543
we need to add user's name and state to users in the Application layer.
543
544
Args:
544
545
workspace_group_user_ids: 'List[str]'
545
- workspace_group_info: 'Dict[str, str] '
546
+ workspace_group_info: 'WorkspaceGroup '
546
547
domain_id: 'str'
547
548
Returns:
548
549
workspace_group_dict:
@@ -558,18 +559,18 @@ def add_user_name_and_state_to_users(
558
559
"state" : user_vo .state ,
559
560
}
560
561
561
- wg_users = workspace_group_info .get ( " users" , []) or []
562
+ wg_users = workspace_group_info .users or []
562
563
users = []
563
564
564
565
for user in wg_users :
565
- user_id = user .get ( " user_id" , "" )
566
- user [ " user_name" ] = user_info_map .get (user_id , {}).get ("name" , "" )
567
- user [ " state" ] = user_info_map .get (user_id , {}).get ("state" , "" )
566
+ user_id = user .user_id or ""
567
+ user . user_name = user_info_map .get (user_id , {}).get ("name" , "" )
568
+ user . state = user_info_map .get (user_id , {}).get ("state" , "" )
568
569
users .append (user )
569
570
570
571
workspace_group_info ["users" ] = users
571
572
572
- return workspace_group_info
573
+ return workspace_group_info . to_dict ()
573
574
574
575
def remove_users_from_workspace_group (
575
576
self ,
0 commit comments