UNPKG

@golemio/energetics

Version:
56 lines 1.98 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MeasurementModel = void 0; const sequelize_1 = require("@golemio/core/dist/shared/sequelize"); const MeasurementConstants_1 = require("./constants/MeasurementConstants"); class MeasurementModel extends sequelize_1.Model { } exports.MeasurementModel = MeasurementModel; MeasurementModel.tableName = "consumption_energy_measurements"; MeasurementModel.attributeModel = { timestamp: { primaryKey: true, type: sequelize_1.DataTypes.DATE, }, value: sequelize_1.DataTypes.NUMBER({ precision: 30, scale: 15, }), addr: { primaryKey: true, type: sequelize_1.DataTypes.STRING(255), }, variable: { primaryKey: true, type: sequelize_1.DataTypes.STRING(255), field: "var", }, type: sequelize_1.DataTypes.STRING(255), meter: { type: sequelize_1.DataTypes.STRING(255), }, source: sequelize_1.DataTypes.STRING(20), measurement_category: sequelize_1.DataTypes.STRING(50), }; MeasurementModel.attributesToUpdate = Object.keys(MeasurementModel.attributeModel).concat("updated_at"); MeasurementModel.arrayJsonSchema = { type: "array", items: { type: "object", properties: { timestamp: { type: "object", required: ["toISOString"], }, value: { type: "number" }, addr: { type: "string" }, variable: { type: "string", enum: MeasurementConstants_1.MEASUREMENT_VARIABLES }, type: { type: "string", enum: MeasurementConstants_1.MEASUREMENT_TYPES }, meter: { type: "string" }, source: { type: "string" }, measurement_category: { type: "string" }, }, required: ["timestamp", "value", "addr", "variable", "type", "meter", "source", "measurement_category"], }, }; //# sourceMappingURL=MeasurementsModel.js.map