UNPKG

@citrineos/data

Version:

The OCPP data module which includes all persistence layer implementation.

37 lines (36 loc) 3.49 kB
import type { BootstrapConfig } from '@citrineos/base'; import { CrudRepository, OCPP2_0_1 } from '@citrineos/base'; import { SequelizeRepository } from './Base.js'; import { type IDeviceModelRepository, type VariableAttributeQuerystring } from '../../../interfaces/index.js'; import { Component, EvseType, Variable, VariableAttribute, VariableCharacteristics, VariableStatus } from '../model/index.js'; import { ComponentVariable } from '../model/DeviceModel/ComponentVariable.js'; import { Sequelize } from 'sequelize-typescript'; import type { ILogObj } from 'tslog'; import { Logger } from 'tslog'; export declare class SequelizeDeviceModelRepository extends SequelizeRepository<VariableAttribute> implements IDeviceModelRepository { variable: CrudRepository<Variable>; component: CrudRepository<Component>; evse: CrudRepository<EvseType>; variableCharacteristics: CrudRepository<VariableCharacteristics>; componentVariable: CrudRepository<ComponentVariable>; variableStatus: CrudRepository<VariableStatus>; constructor(config: BootstrapConfig, logger?: Logger<ILogObj>, sequelizeInstance?: Sequelize, variable?: CrudRepository<Variable>, component?: CrudRepository<Component>, evse?: CrudRepository<EvseType>, componentVariable?: CrudRepository<ComponentVariable>, variableCharacteristics?: CrudRepository<VariableCharacteristics>, variableStatus?: CrudRepository<VariableStatus>); createOrUpdateDeviceModelByStationId(tenantId: number, value: OCPP2_0_1.ReportDataType, stationId: string, isoTimestamp: string): Promise<VariableAttribute[]>; findOrCreateEvseAndComponentAndVariable(tenantId: number, componentType: OCPP2_0_1.ComponentType, variableType: OCPP2_0_1.VariableType, stationId?: string): Promise<[Component, Variable]>; findOrCreateEvseAndComponent(tenantId: number, componentType: OCPP2_0_1.ComponentType, stationId?: string): Promise<Component>; createOrUpdateByGetVariablesResultAndStationId(tenantId: number, getVariablesResult: OCPP2_0_1.GetVariableResultType[], stationId: string, isoTimestamp: string): Promise<VariableAttribute[]>; createOrUpdateBySetVariablesDataAndStationId(tenantId: number, setVariablesData: OCPP2_0_1.SetVariableDataType[], stationId: string, isoTimestamp: string): Promise<VariableAttribute[]>; updateResultByStationId(tenantId: number, result: OCPP2_0_1.SetVariableResultType, stationId: string, isoTimestamp: string): Promise<VariableAttribute | undefined>; readAllSetVariableByStationId(tenantId: number, stationId: string): Promise<OCPP2_0_1.SetVariableDataType[]>; readAllByQuerystring(tenantId: number, query: VariableAttributeQuerystring): Promise<VariableAttribute[]>; existByQuerystring(tenantId: number, query: VariableAttributeQuerystring): Promise<number>; deleteAllByQuerystring(tenantId: number, query: VariableAttributeQuerystring): Promise<VariableAttribute[]>; findComponentAndVariable(tenantId: number, componentType: OCPP2_0_1.ComponentType, variableType: OCPP2_0_1.VariableType): Promise<[Component | undefined, Variable | undefined]>; findEvseByIdAndConnectorId(tenantId: number, id: number, connectorId: number | null): Promise<EvseType | undefined>; findVariableCharacteristicsByVariableNameAndVariableInstance(tenantId: number, variableName: string, variableInstance: string | null): Promise<VariableCharacteristics | undefined>; /** * Private Methods */ private createSetVariableDataType; private constructQuery; }