mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-02 09:26:08 -05:00
Merge branch 'master' into celery-jobs
Conflicts: tests/app/conftest.py
This commit is contained in:
@@ -1,6 +1,16 @@
|
||||
from app import db
|
||||
|
||||
from app.models import InvitedUser
|
||||
|
||||
|
||||
def save_invited_user(invited_user):
|
||||
db.session.add(invited_user)
|
||||
db.session.commit()
|
||||
|
||||
|
||||
def get_invited_user(service_id, invited_user_id):
|
||||
return InvitedUser.query.filter_by(service_id=service_id, id=invited_user_id).first()
|
||||
|
||||
|
||||
def get_invited_users_for_service(service_id):
|
||||
return InvitedUser.query.filter_by(service_id=service_id).all()
|
||||
|
||||
@@ -4,8 +4,16 @@ from flask import (
|
||||
jsonify
|
||||
)
|
||||
|
||||
from app.dao.invited_user_dao import save_invited_user
|
||||
from app.schemas import invited_user_schema
|
||||
from app.dao.invited_user_dao import (
|
||||
save_invited_user,
|
||||
get_invited_user,
|
||||
get_invited_users_for_service
|
||||
)
|
||||
|
||||
from app.schemas import (
|
||||
invited_user_schema,
|
||||
invited_users_schema
|
||||
)
|
||||
|
||||
invite = Blueprint('invite', __name__, url_prefix='/service/<service_id>/invite')
|
||||
|
||||
@@ -14,11 +22,25 @@ register_errors(invite)
|
||||
|
||||
|
||||
@invite.route('', methods=['POST'])
|
||||
def create_invite_user(service_id):
|
||||
def create_invited_user(service_id):
|
||||
invited_user, errors = invited_user_schema.load(request.get_json())
|
||||
if errors:
|
||||
return jsonify(result="error", message=errors), 400
|
||||
|
||||
save_invited_user(invited_user)
|
||||
|
||||
return jsonify(data=invited_user_schema.dump(invited_user).data), 201
|
||||
|
||||
|
||||
@invite.route('', methods=['GET'])
|
||||
def get_invited_users_by_service(service_id):
|
||||
invited_users = get_invited_users_for_service(service_id)
|
||||
return jsonify(data=invited_users_schema.dump(invited_users).data), 200
|
||||
|
||||
|
||||
@invite.route('/<invited_user_id>', methods=['GET'])
|
||||
def get_invited_user_by_service_and_id(service_id, invited_user_id):
|
||||
invited_user = get_invited_user(service_id, invited_user_id)
|
||||
if not invited_user:
|
||||
message = 'Invited user not found for service id: {} and invited user id: {}'.format(service_id,
|
||||
invited_user_id)
|
||||
return jsonify(result='error', message=message), 404
|
||||
return jsonify(data=invited_user_schema.dump(invited_user).data), 200
|
||||
|
||||
Reference in New Issue
Block a user