def build(self) -> Function: function = Function(Id=self._id, Name=self._name) function.save() for property in self._properties: property.save() function.Properties.add(property) return function
def _createGroupDeviceFunctions(self, properties): categories = set(p.Category for p in properties.all()) functions = [] for category in categories: categoryProperties = properties.filter(Category=category) categoryGroupProperties = self._createGroupDeviceProperties( categoryProperties) function = Function() function.Name = category.Name function = self.__functionRepository.Save(function) for categoryGroupProperty in categoryGroupProperties: categoryGroupProperty = self.__propertyRepository.Save( categoryGroupProperty) function.Properties.add(categoryGroupProperty) self.__functionRepository.Save(function) functions.append(function) return functions
def functions_log(): form = FunctionForm() if form.validate_on_submit(): try: motors = form.motor.data motor = Motors.query.filter_by(serial_number=motors).first() function = Function(number=form.number.data, name=form.name.data, rating=form.rating.data, motor=motor, location=form.location.data, starter=form.starter.data) db.session.add(function) db.session.commit() flash(f'Motor usage has been created in the database', 'Success') return redirect(url_for('functions_log')) except : flash(f'There was an Error, Please try again', 'Warning') return redirect(url_for('functions_log')) return render_template('functions.html', title='Function', form=form)
def Save(self, data): if type(data) is Function: model = data else: model = Function() model.Id = data.get("Id", "") model.Name = data.get("Name", "") function = self.Get(model.Id) status = self.Status(model, function) if status is ModelStatus.New: model.Id = None model.save() elif status is ModelStatus.Modified: model.save() if type(data) is not Function: Properties = data['Properties'] for propertyDict in Properties: property = self.__propertyRepo.Save(propertyDict) model.Properties.add(property.Id) return model
"""Initialize db. """ from datetime import datetime import sys sys.path.insert(0, '../') from app.models import Function from app.models import db # read json data into db import json from datetime import datetime import os infile = os.path.join(os.path.dirname(__file__), 'app.json') data = json.load(open(infile, 'r')) for rec in data: kws = {} for k, v in rec.items(): if k == 'timestamp': kws[k] = datetime.strptime(v, '%Y-%m-%d %H:%M:%S.%f') elif k != 'id': kws[k] = v f = Function(**kws) db.session.add(f) db.session.commit()