mirror of
https://github.com/GSA/notifications-api.git
synced 2026-01-31 23:26:23 -05:00
Get all versions for a template endpoint added.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import uuid
|
||||
from app import db
|
||||
from app.models import (Template, Service)
|
||||
from sqlalchemy import asc
|
||||
from sqlalchemy import (asc, desc)
|
||||
|
||||
from app.dao.dao_utils import (
|
||||
transactional,
|
||||
@@ -45,3 +45,8 @@ def dao_get_all_templates_for_service(service_id):
|
||||
).order_by(
|
||||
asc(Template.updated_at), asc(Template.created_at)
|
||||
).all()
|
||||
|
||||
|
||||
def dao_get_template_versions(service_id, template_id):
|
||||
history_model = Template.get_history_model()
|
||||
return history_model.query.filter_by(service_id=service_id, id=template_id).order_by(desc(history_model.version))
|
||||
|
||||
@@ -11,7 +11,8 @@ from app.dao.templates_dao import (
|
||||
dao_update_template,
|
||||
dao_create_template,
|
||||
dao_get_template_by_id_and_service_id,
|
||||
dao_get_all_templates_for_service
|
||||
dao_get_all_templates_for_service,
|
||||
dao_get_template_versions
|
||||
)
|
||||
from notifications_utils.template import Template
|
||||
from app.dao.services_dao import dao_fetch_service_by_id
|
||||
@@ -105,7 +106,16 @@ def get_template_version(service_id, template_id, version):
|
||||
)
|
||||
data, errors = template_history_schema.dump(fetched_template)
|
||||
if errors:
|
||||
return json_resp(result=error, message=errors), 400
|
||||
return json_resp(result='error', message=errors), 400
|
||||
return jsonify(data=data)
|
||||
|
||||
|
||||
@template.route('/<uuid:template_id>/version')
|
||||
def get_template_versions(service_id, template_id):
|
||||
fetched_templates = dao_get_template_versions(service_id, template_id)
|
||||
data, errors = template_history_schema.dump(fetched_templates, many=True)
|
||||
if errors:
|
||||
return json_resp(result='error', message=errors), 400
|
||||
return jsonify(data=data)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user