@golemio/parkings
Version:
Golemio Parkings Module
35 lines • 1.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ParkingsProhibitionsRepository = void 0;
const _sch_1 = require("../../schema-definitions");
const ParkingProhibitionsModel_1 = require("../../schema-definitions/models/ParkingProhibitionsModel");
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
class ParkingsProhibitionsRepository extends integration_engine_1.PostgresModel {
constructor() {
super("ParkingsProhibitionsRepository", {
outputSequelizeAttributes: ParkingProhibitionsModel_1.ParkingProhibitionsModel.attributeModel,
pgSchema: _sch_1.Parkings.pgSchema,
pgTableName: ParkingProhibitionsModel_1.ParkingProhibitionsModel.tableName,
savingType: "insertOrUpdate",
}, new golemio_validator_1.JSONSchemaValidator("ParkingsProhibitionsRepository", ParkingProhibitionsModel_1.ParkingProhibitionsModel.jsonSchema));
}
async mergeParkingProhibitions(prohibitions, source, processingDate) {
await this.bulkSave(prohibitions);
if (source) {
await this.sequelizeModel.destroy({
where: {
source: {
[sequelize_1.Op.eq]: source,
},
updated_at: {
[sequelize_1.Op.lt]: processingDate,
},
},
});
}
}
}
exports.ParkingsProhibitionsRepository = ParkingsProhibitionsRepository;
//# sourceMappingURL=ParkingsProhibitionsRepository.js.map