Skip to content

Commit

Permalink
fix: add_employee_from_acl (#225)
Browse files Browse the repository at this point in the history
  • Loading branch information
simontigers authored Oct 24, 2023
1 parent c9ea975 commit ef6e79e
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 1 deletion.
13 changes: 13 additions & 0 deletions cmdb-api/api/lib/common_setting/employee.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,19 @@ def check_acl_user_and_create(user_info):
employee = CreateEmployee().create_single(**data)
return employee.to_dict()

@staticmethod
def add_employee_from_acl_created(**kwargs):
try:
kwargs['acl_uid'] = kwargs.pop('uid')
kwargs['acl_rid'] = kwargs.pop('rid')
kwargs['department_id'] = 0

Employee.create(
**kwargs
)
except Exception as e:
abort(400, str(e))

@staticmethod
def add(**kwargs):
try:
Expand Down
6 changes: 5 additions & 1 deletion cmdb-api/api/lib/perm/acl/user.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,10 +58,14 @@ def add(cls, **kwargs):
kwargs['employee_id'] = '{0:04d}'.format(biggest_employee_id + 1)
user = User.create(**kwargs)

RoleCRUD.add_role(user.username, uid=user.uid)
role = RoleCRUD.add_role(user.username, uid=user.uid)
AuditCRUD.add_role_log(None, AuditOperateType.create,
AuditScope.user, user.uid, {}, user.to_dict(), {}, {}
)
from api.lib.common_setting.employee import EmployeeCRUD
payload = {column: getattr(user, column) for column in ['uid', 'username', 'nickname', 'email', 'block']}
payload['rid'] = role.id
EmployeeCRUD.add_employee_from_acl_created(**payload)

return user

Expand Down

0 comments on commit ef6e79e

Please sign in to comment.