db

package
v0.0.0-...-1b57bee Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 12, 2024 License: GPL-3.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConfTLS

func ConfTLS(clientCert string, clientKey string, serverCert string) *tls.Config

func ReadLatestEquipmentData

func ReadLatestEquipmentData(ctx context.Context, db *bun.DB)

Types

type Equipment

type Equipment struct {
	bun.BaseModel  `bun:"table:equipment,alias:e"`
	EquipmentID    int64  `bun:"equipment_id,pk,autoincrement"`
	EquipmentUUID  string `bun:"equipment_uuid,notnull,unique"`
	EquipmentName  string `bun:"equipment_name,notnull"`
	EquipmentType  string `bun:"equipment_type,notnull"`
	Manufacturer   string `bun:"manufacturer"`
	Model          string `bun:"model"`
	ProductionYear int    `bun:"production_year"`
	Location       string `bun:"location"`
}

Equipment represents the 'Equipment' table

type EquipmentWithLatestData

type EquipmentWithLatestData struct {
	Equipment                                            // Embedding Equipment struct to hold equipment data.
	LatestFuelLevel           FuelLevel                  `bun:"rel:has-one,join:equipment_id=equipment_id"` // Latest fuel level.
	LatestOilPressure         OilPressure                `bun:"rel:has-one,join:equipment_id=equipment_id"` // Latest oil pressure.
	LatestOilEngineTemp       OilEngineTemperature       `bun:"rel:has-one,join:equipment_id=equipment_id"` // Latest oil engine temperature.
	LatestTransmissionOilTemp TransmissionOilTemperature `bun:"rel:has-one,join:equipment_id=equipment_id"` // Latest transmission oil temp.
}

type FuelLevel

type FuelLevel struct {
	bun.BaseModel    `bun:"table:fuellevel,alias:f"`
	FuelLevelID      int64     `bun:"fuel_level_id,pk,autoincrement"`
	EquipmentUUID    string    `bun:"equipment_uuid,notnull"`
	EquipmentID      int64     `bun:"equipment_id,notnull"`
	Timestamp        time.Time `bun:"timestamp,default:current_timestamp"`
	FuelLevelDecimal float64   `bun:"fuel_level"`
}

FuelLevel represents the 'FuelLevel' table

type Model

type Model struct {
	Postgres
	// contains filtered or unexported fields
}

func NewPostgres

func NewPostgres(p Postgres, wg *sync.WaitGroup, loglevel bool) *Model

func (*Model) InsertEquipment

func (p *Model) InsertEquipment(ctx context.Context, ed *domain.Equipment)

func (*Model) InsertFuelLevel

func (p *Model) InsertFuelLevel(ctx context.Context, fld *domain.FuelLevel, equipmentUUID string)

func (*Model) InsertOilEngineTemperature

func (p *Model) InsertOilEngineTemperature(ctx context.Context, oetd *domain.OilEngineTemperature, equipmentUUID string)

func (*Model) InsertOilPressure

func (p *Model) InsertOilPressure(ctx context.Context, opd *domain.OilPressure, equipmentUUID string)

func (*Model) InsertTransmissionOilTemperature

func (p *Model) InsertTransmissionOilTemperature(ctx context.Context, totd *domain.TransmissionOilTemperature, equipmentUUID string)

func (*Model) LoadEquipment

func (p *Model) LoadEquipment(ctx context.Context, v int) ([]domain.Equipment, error)

func (*Model) ReadEquipment

func (p *Model) ReadEquipment(ctx context.Context) ([]domain.Equipment, error)

func (*Model) WriteEquipmentAndData

func (p *Model) WriteEquipmentAndData(ctx context.Context, e *domain.Equipment) error

type OilEngineTemperature

type OilEngineTemperature struct {
	bun.BaseModel               `bun:"table:oilenginetemperature,alias:t"`
	OilEngineTempID             int64     `bun:"oil_engine_temp_id,pk,autoincrement"`
	EquipmentUUID               string    `bun:"equipment_uuid,notnull"`
	EquipmentID                 int64     `bun:"equipment_id,notnull"`
	Timestamp                   time.Time `bun:"timestamp,default:current_timestamp"`
	OilEngineTemperatureDecimal float64   `bun:"oil_engine_temperature"`
}

OilEngineTemperature represents the 'OilEngineTemperature' table

type OilPressure

type OilPressure struct {
	bun.BaseModel      `bun:"table:oilpressure,alias:o"`
	OilPressureID      int64     `bun:"oil_pressure_id,pk,autoincrement"`
	EquipmentUUID      string    `bun:"equipment_uuid,notnull"`
	EquipmentID        int64     `bun:"equipment_id,notnull"`
	Timestamp          time.Time `bun:"timestamp,default:current_timestamp"`
	OilPressureDecimal float64   `bun:"oil_pressure"`
}

OilPressure represents the 'OilPressure' table

type Postgres

type Postgres struct {
	Host       string `yaml:"host"`
	Port       string `yaml:"port"`
	User       string `yaml:"user"`
	Password   string `yaml:"password"`
	Database   string `yaml:"database"`
	ClientCert string `yaml:"client_cert"`
	ClientKey  string `yaml:"client_key"`
	ServerCert string `yaml:"server_cert"`
}

type TransmissionOilTemperature

type TransmissionOilTemperature struct {
	bun.BaseModel                     `bun:"table:transmissionoiltemperature,alias:trans"`
	TransmissionOilTempID             int64     `bun:"transmission_oil_temp_id,pk,autoincrement"`
	EquipmentUUID                     string    `bun:"equipment_uuid,notnull"`
	EquipmentID                       int64     `bun:"equipment_id,notnull"`
	Timestamp                         time.Time `bun:"timestamp,default:current_timestamp"`
	TransmissionOilTemperatureDecimal float64   `bun:"transmission_oil_temperature"`
}

TransmissionOilTemperature represents the 'TransmissionOilTemperature' table

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL