Пример #1
0
def pressures_get_average():
    logging.debug("Received request /pressures/average")
    startTime = time.monotonic()
    try:
        returnValue = PressureModel.get_average()
        data = PressureModel.average_json(returnValue)
        elapsedTime = time.monotonic() - startTime
        logging.debug("pressure get average request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=data, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Пример #2
0
    def delete_by_range(start, end):
        # Init
        returnValue = True

        # Execution
        PressureModel.delte_by_range(start, end)
        HumidityModel.delte_by_range(start, end)
        CO2Model.delete_by_range(start, end)
        TemperatureModel.delete_by_range(start, end)

        # Clean and return
        return returnValue
Пример #3
0
    def delete_all():
        # Init
        returnValue = True

        # Execution
        PressureModel.delete_all()
        HumidityModel.delete_all()
        CO2Model.delete_all()
        TemperatureModel.delete_all()

        # Clean and return
        return returnValue
Пример #4
0
def pressure_get_average_in_range():
    logging.debug("Received request /pressures/average/range")
    startTime = time.monotonic()
    try:
        start = req.args.get('start')
        if start is None:
            start = '2020-01-01T00:00:00'

        end = req.args.get('end')
        if end is None:
            end = datetime.utcnow()

        returnValue = PressureModel.get_average_by_range(start, end)
        data = PressureModel.average_json(returnValue)
        elapsedTime = time.monotonic() - startTime
        logging.debug("pressure get average by range all request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=data, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Пример #5
0
 def to_average_json(self):
     logging.debug("Formatting SensorModel to average json")
     json = {
         'type': 'All sensor average',
         'attributes': {
             'pressure': PressureModel.average_json(self.pressures),
             'humidity': HumidityModel.average_json(self.humidities),
             'co2': CO2Model.average_json(self.co2),
             'temperature': TemperatureModel.average_json(self.temperatures)
         }
     }
     return json
Пример #6
0
def pressure_get_newest():
    logging.debug("Received request /pressures/newest")
    startTime = time.monotonic()
    try:
        returnValue = PressureModel.get_newest()
        if returnValue is None:
            abort(404)
        data = returnValue.to_json()
        elapsedTime = time.monotonic() - startTime
        logging.debug("pressure get newest all request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=data, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Пример #7
0
def pressure_get_all():
    logging.debug("Received request /pressures")
    startTime = time.monotonic()
    try:
        dataArray = []
        pressArray = PressureModel.get_all()
        for tempModel in pressArray:
            dataArray.append(tempModel.to_json())
        elapsedTime = time.monotonic() - startTime
        logging.debug("pressure get all request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=dataArray, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))
Пример #8
0
    def get_all():
        # init
        foundPressure = []
        foundHumidities = []
        foundCo2 = []
        foundTemperatures = []

        # Execution (4 connection, could be more effecient but query time is hardly an issue)
        foundPressure = PressureModel.get_all()
        foundHumidities = HumidityModel.get_all()
        foundCo2 = CO2Model.get_all()
        foundTemperatures = TemperatureModel.get_all()

        # Build object
        returnObj = SensorModel(foundPressure, foundHumidities, foundCo2,
                                foundTemperatures)

        # Clean and return
        return returnObj
Пример #9
0
    def get_average_by_range(start, end):
        # init
        foundPressure = None
        foundHumidities = None
        foundCo2 = None
        foundTemperatures = None

        # Execution (4 connection, could be more effecient but query time is hardly an issue)
        foundPressure = PressureModel.get_average_by_range(start, end)
        foundHumidities = HumidityModel.get_average_by_range(start, end)
        foundCo2 = CO2Model.get_average_by_range(start, end)
        foundTemperatures = TemperatureModel.get_average_by_range(start, end)

        # Build object
        returnObj = SensorModel(foundPressure, foundHumidities, foundCo2,
                                foundTemperatures)

        # Clean and return
        return returnObj
Пример #10
0
def pressure_get_by_search():
    logging.debug("Received request /pressures/search")
    startTime = time.monotonic()
    try:
        start = req.args.get('start')
        if start is None:
            start = '2020-01-01T00:00:00'

        end = req.args.get('end')
        if end is None:
            end = datetime.utcnow()

        dataArray = []
        pressArray = PressureModel.get_by_search(start, end)
        for tempModel in pressArray:
            dataArray.append(tempModel.to_json())
        elapsedTime = time.monotonic() - startTime
        logging.debug("temperature get all request time: " +
                      str(round(elapsedTime, 5)) + " seconds")
        return res(200, data=dataArray, timeUTC=datetime.utcnow())
    except mariadb.Error as e:
        abort(500, str(e))