from apiserver.apierrors import errors from apiserver.apimodels.users import CreateRequest from apiserver.database.errors import translate_errors_context from apiserver.database.model.user import User class UserBLL: @staticmethod def create(request: CreateRequest): user_id = request.id with translate_errors_context("creating user"): if user_id and User.objects(id=user_id).only("id"): raise errors.bad_request.UserIdExists(id=user_id) user = User(**request.to_struct()) user.save(force_insert=True) @staticmethod def delete(user_id: str): with translate_errors_context("deleting user"): res = User.objects(id=user_id).delete() if not res: raise errors.bad_request.InvalidUserId(id=user_id)