mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-20 07:21:13 -05:00
Update add_user_to_service endoint to only handle new data format
Updated the add_user_to_service endpoint to only handle data in the
'new' format (`{"permissions": [...]}` instead of `[permission_1, permission_2]`)
since Admin has been updated to send data the new way.
This change means that we no longer need the Marshmallow Permission
schema, so it can be deleted.
This commit is contained in:
@@ -83,7 +83,7 @@ from app.errors import (
|
||||
register_errors
|
||||
)
|
||||
from app.letters.utils import letter_print_day
|
||||
from app.models import LETTER_TYPE, NOTIFICATION_CANCELLED, Service, EmailBranding, LetterBranding
|
||||
from app.models import LETTER_TYPE, NOTIFICATION_CANCELLED, Permission, Service, EmailBranding, LetterBranding
|
||||
from app.schema_validation import validate
|
||||
from app.service import statistics
|
||||
from app.service.service_data_retention_schema import (
|
||||
@@ -101,11 +101,11 @@ from app.service.send_notification import send_one_off_notification
|
||||
from app.schemas import (
|
||||
service_schema,
|
||||
api_key_schema,
|
||||
permission_schema,
|
||||
notification_with_template_schema,
|
||||
notifications_filter_schema,
|
||||
detailed_service_schema
|
||||
)
|
||||
from app.user.users_schema import post_set_permissions_schema
|
||||
from app.utils import pagination_links
|
||||
|
||||
service_blueprint = Blueprint('service', __name__)
|
||||
@@ -286,12 +286,13 @@ def add_user_to_service(service_id, user_id):
|
||||
raise InvalidRequest(error, status_code=400)
|
||||
|
||||
data = request.get_json()
|
||||
if 'permissions' in data:
|
||||
user_permissions = data['permissions']
|
||||
else:
|
||||
user_permissions = data
|
||||
validate(data, post_set_permissions_schema)
|
||||
|
||||
permissions = [
|
||||
Permission(service_id=service_id, user_id=user_id, permission=p['permission'])
|
||||
for p in data['permissions']
|
||||
]
|
||||
|
||||
permissions = permission_schema.load(user_permissions, many=True).data
|
||||
dao_add_user_to_service(service, user, permissions)
|
||||
data = service_schema.dump(service).data
|
||||
return jsonify(data=data), 201
|
||||
|
||||
Reference in New Issue
Block a user