Files
notifications-api/app/dao/templates_dao.py

35 lines
1.0 KiB
Python
Raw Normal View History

2016-01-13 11:04:13 +00:00
import json
from datetime import datetime
from sqlalchemy.orm import load_only
from . import DAOException
from app import db
from app.models import (Template, Service)
def save_model_template(template, update_dict=None):
if update_dict:
2016-01-13 12:14:21 +00:00
update_dict.pop('id', None)
service = update_dict.pop('service')
2016-01-13 11:04:13 +00:00
Template.query.filter_by(id=template.id).update(update_dict)
template.service = service
2016-01-13 11:04:13 +00:00
else:
db.session.add(template)
db.session.commit()
def delete_model_template(template):
db.session.delete(template)
db.session.commit()
def get_model_templates(template_id=None, service_id=None):
# TODO need better mapping from function params to sql query.
if template_id and service_id:
return Template.query.filter_by(
2016-01-13 17:23:59 +00:00
id=template_id, service_id=service_id).one()
2016-01-13 11:04:13 +00:00
elif template_id:
return Template.query.filter_by(id=template_id).one()
elif service_id:
2016-01-22 10:44:34 +00:00
return Template.query.filter_by(service=Service.query.get(service_id)).all()
2016-01-13 11:04:13 +00:00
return Template.query.all()