|
|
|
@@ -1,7 +1,8 @@
|
|
|
|
|
import asyncdispatch, base64, jester, json, jwt, logging, options, sequtils,
|
|
|
|
|
strutils, times, uuids
|
|
|
|
|
times, uuids
|
|
|
|
|
from unicode import capitalize
|
|
|
|
|
import timeutils except `<`
|
|
|
|
|
import strutils except capitalize
|
|
|
|
|
import timeutils
|
|
|
|
|
|
|
|
|
|
import ./db, ./configuration, ./models, ./service, ./version
|
|
|
|
|
|
|
|
|
@@ -476,7 +477,7 @@ proc start*(ctx: PMApiContext): void =
|
|
|
|
|
|
|
|
|
|
let newMeasurement = Measurement(
|
|
|
|
|
measureId: measure.id,
|
|
|
|
|
value: jsonBody.getOrFail("value").getInt,
|
|
|
|
|
value: jsonBody.getOrFail("value").getFloat,
|
|
|
|
|
timestamp:
|
|
|
|
|
if jsonBody.hasKey("timestamp"): jsonBody["timestamp"].getStr.parseIso8601.utc
|
|
|
|
|
else: getTime().utc,
|
|
|
|
@@ -515,7 +516,7 @@ proc start*(ctx: PMApiContext): void =
|
|
|
|
|
let measure = ctx.getMeasureForSlug(session.user.id, @"slug")
|
|
|
|
|
var measurement = ctx.getMeasurementForMeasure(measure.id, parseUUID(@"id"))
|
|
|
|
|
let jsonBody = parseJson(request.body)
|
|
|
|
|
if jsonBody.hasKey("value"): measurement.value = jsonBody["value"].getInt
|
|
|
|
|
if jsonBody.hasKey("value"): measurement.value = jsonBody["value"].getFloat
|
|
|
|
|
if jsonBody.hasKey("timestamp"): measurement.timestamp = jsonBody["timestamp"].getStr.parseIso8601
|
|
|
|
|
if jsonBody.hasKey("extData"): measurement.extData = jsonBody["extData"]
|
|
|
|
|
jsonResp($(%ctx.db.updateMeasurement(measurement)))
|
|
|
|
|