@golemio/energetics
Version:
Golemio Energetics Module
28 lines • 1.51 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ConsumptionRepository = void 0;
const _sch_1 = require("../../../schema-definitions");
const ConsumptionModel_1 = require("../../../schema-definitions/models/ConsumptionModel");
const models_1 = require("@golemio/core/dist/integration-engine/models");
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
class ConsumptionRepository extends models_1.PostgresModel {
constructor() {
super("ConsumptionRepository", {
pgTableName: ConsumptionModel_1.ConsumptionModel.TABLE_NAME,
pgSchema: _sch_1.EnergeticsSchema.pgSchema,
outputSequelizeAttributes: ConsumptionModel_1.ConsumptionModel.attributeModel,
savingType: "insertOrUpdate",
}, new golemio_validator_1.JSONSchemaValidator("ConsumptionRepositoryValidator", ConsumptionModel_1.ConsumptionModel.arrayJsonSchema));
this.saveData = async (data) => {
try {
return await this.sequelizeModel.bulkCreate(data, { ignoreDuplicates: true });
}
catch (err) {
throw new golemio_errors_1.GeneralError(`[${this.constructor.name}] Could not save data: ${err.message}`, this.constructor.name, err);
}
};
}
}
exports.ConsumptionRepository = ConsumptionRepository;
//# sourceMappingURL=ConsumptionRepository.js.map
;