Source code for odm2api.services.updateService

from __future__ import (absolute_import, division, print_function)

__author__ = 'jmeline'

from datetime import datetime

from odm2api import serviceBase
from odm2api.models import (Actions, Results)


# ################################################################################
# Annotations
# ################################################################################

[docs]class UpdateODM2(serviceBase):
[docs] def update(self, value): self._session.add(value) self._session.commit() return value
# ################################################################################ # Core # ################################################################################
[docs] def updateResultValidDateTime(self, resultId, dateTime): # check type of "validdatetime' # if not datetime do this: # dt = dateTime.to_datetime() # else dt = dateTime if (type(dateTime) != datetime): dt = dateTime.to_datetime() else: dt = dateTime q = self._session.query(Results).filter(Results.ResultID == int(resultId)) q.update({'ValidDateTime': dt}) self._session.commit()
[docs] def updateResult(self, resultID=None, valuecount=None, result=None): if resultID: q = self._session.query(Results).filter(Results.ResultID == int(resultID)) if valuecount: q.update({'ValueCount': valuecount}) if result: self._session.add(result) self._session.commit()
[docs] def updateAction(self, actionID=None, begin=None, end=None, action=None): if actionID: q = self._session.query(Actions).filter(Actions.ActionID == int(actionID)) # if (type(begin) != datetime): # begin = begin.to_datetime() # if (type(end) != datetime): # end = end.to_datetime() if begin: q.update({'BeginDateTime': begin}) if end: q.update({'EndDateTime': end}) elif action: self._session.add(action) self._session.commit()
# ################################################################################ # Data Quality # ################################################################################ # ################################################################################ # Equipment # ################################################################################ # ################################################################################ # Extension Properties # ################################################################################ # ################################################################################ # External Identifiers # ################################################################################ # ################################################################################ # Lab Analyses # ################################################################################ # ################################################################################ # Provenance # ################################################################################ # ################################################################################ # Results # ################################################################################ # ################################################################################ # Sampling Features # ################################################################################ # ################################################################################ # Sensors # ################################################################################ ################################################################################ # ODM2 # ################################################################################