Versions in this module Expand all Collapse all v1 v1.3.0 Dec 17, 2025 Changes in this version + type Data interface + GetCustomerIDBySporttiID func(ctx context.Context, sporttiID string) (int32, error) + GetDataByCustomerIDNoCustomer func(ctx context.Context, idcustomer int32) (*KlabDataNoCustomerResponse, error) + InsertKlabDataBulk func(ctx context.Context, payloads []KlabDataPayload) error + type DataStore struct + func (s *DataStore) GetCustomerByID(ctx context.Context, idcustomer int32) (klabsqlc.Customer, error) + func (s *DataStore) GetCustomerIDBySporttiID(ctx context.Context, sporttiID string) (int32, error) + func (s *DataStore) GetDataByCustomerIDNoCustomer(ctx context.Context, idcustomer int32) (*KlabDataNoCustomerResponse, error) + func (s *DataStore) InsertKlabDataBulk(ctx context.Context, payloads []KlabDataPayload) error + type KLABStorage struct + func NewKLABStorage(db *sql.DB) *KLABStorage + func (s *KLABStorage) Data() Data + func (s *KLABStorage) Ping(ctx context.Context) error + func (s *KLABStorage) Users() Users + type KlabDataNoCustomer struct + CustomerID int32 + DirRawData []klabsqlc.Dirrawdatum + DirReports []klabsqlc.Dirreport + DirResults []klabsqlc.Dirresult + DirTestSteps []klabsqlc.Dirteststep + DirTests []klabsqlc.Dirtest + Measurements []klabsqlc.MeasurementList + type KlabDataNoCustomerResponse struct + CustomerID int32 + DirRawData []KlabDirRawDataResponse + DirReports []KlabDirReportResponse + DirResults []KlabDirResultsResponse + DirTestSteps []KlabDirTestStepResponse + DirTests []KlabDirTestResponse + Measurements []KlabMeasurementResponse + type KlabDataPayload struct + Customers []klabsqlc.UpsertCustomerParams + DirRawData []klabsqlc.InsertDirRawDataParams + DirReports []klabsqlc.InsertDirReportParams + DirResults []klabsqlc.InsertDirResultsParams + DirTestSteps []klabsqlc.InsertDirTestStepParams + DirTests []klabsqlc.InsertDirTestParams + Measurements []klabsqlc.InsertMeasurementParams + type KlabDirRawDataResponse struct + ColumnData *string + CreatedBy *int64 + CreatedDate *time.Time + Deleted *int16 + IdDirRawData int32 + IdMeasurement int32 + Info *string + ModBy *int64 + ModDate *time.Time + Modded *int16 + RawData *string + UnitsData *string + type KlabDirReportResponse struct + CreatedBy *int64 + CreatedDate *time.Time + Deleted *int16 + IdDirReport int32 + IdMeasurement int32 + LibrecName *string + ModBy *int64 + ModDate *time.Time + Modded *int16 + PageInstructions *string + TemplateRec *int32 + type KlabDirResultsResponse struct + CreatedBy *int64 + CreatedDate *time.Time + Deleted *int16 + IdDirResults int32 + IdMeasurement int32 + LacAerkAdd1 *float64 + LacAerkAdd2 *float64 + LacAerkAdd3 *float64 + LacAerkAngle *float64 + LacAerkHr *float64 + LacAerkLac *float64 + LacAerkP *float64 + LacAerkPace *float64 + LacAerkPkg *float64 + LacAerkSpeed *float64 + LacAerkVo2 *float64 + LacAerkVo2MlKgMin *float64 + LacAerkVo2MlMin *float64 + LacAerkVo2Pr *float64 + LacAnkAdd1 *float64 + LacAnkAdd2 *float64 + LacAnkAdd3 *float64 + LacAnkAngle *float64 + LacAnkHr *float64 + LacAnkLac *float64 + LacAnkP *float64 + LacAnkPace *float64 + LacAnkPkg *float64 + LacAnkSpeed *float64 + LacAnkVo2 *float64 + LacAnkVo2MlKgMin *float64 + LacAnkVo2MlMin *float64 + LacAnkVo2Pr *float64 + MaxAdd1 *float64 + MaxAdd2 *float64 + MaxAdd3 *float64 + MaxAngle *float64 + MaxHr *float64 + MaxLac *float64 + MaxP *float64 + MaxPace *float64 + MaxPkg *float64 + MaxSpeed *float64 + MaxVo2 *float64 + MaxVo2MlKgMin *float64 + MaxVo2MlMin *float64 + ModBy *int64 + ModDate *time.Time + Modded *int16 + VentAerkAdd1 *float64 + VentAerkAdd2 *float64 + VentAerkAdd3 *float64 + VentAerkAngle *float64 + VentAerkHr *float64 + VentAerkLac *float64 + VentAerkP *float64 + VentAerkPace *float64 + VentAerkPkg *float64 + VentAerkSpeed *float64 + VentAerkVo2 *float64 + VentAerkVo2MlKgMin *float64 + VentAerkVo2MlMin *float64 + VentAerkVo2Pr *float64 + VentAnkAdd1 *float64 + VentAnkAdd2 *float64 + VentAnkAdd3 *float64 + VentAnkAngle *float64 + VentAnkHr *float64 + VentAnkLac *float64 + VentAnkP *float64 + VentAnkPace *float64 + VentAnkPkg *float64 + VentAnkSpeed *float64 + VentAnkVo2 *float64 + VentAnkVo2MlKgMin *float64 + VentAnkVo2MlMin *float64 + VentAnkVo2Pr *float64 + type KlabDirTestResponse struct + AirHumid *float64 + AirPress *float64 + AirPressUnit *int32 + AirTemp *float64 + Bmi *float64 + CreatedBy *int64 + CreatedDate *time.Time + Deleted *int16 + FatEquip *string + FatP1 *float64 + FatP2 *float64 + FatP3 *float64 + FatP4 *float64 + FatPr *float64 + FatStyle *int32 + Fev1 *float64 + Fvc *float64 + HeightCm *float64 + IdDirTest int32 + IdMeasurement int32 + Lt1CalcX *float64 + Lt1CalcY *float64 + Lt1X *float64 + Lt1Y *float64 + Lt2CalcX *float64 + Lt2CalcY *float64 + Lt2X *float64 + Lt2Y *float64 + MeasCols *string + ModBy *int64 + ModDate *time.Time + Modded *int16 + NoRawData *int16 + ProtocolModel *int16 + ProtocolXVal *int16 + SettingsList *string + StepTime *int32 + TestProtocol *string + TestType *int16 + Vt1X *float64 + Vt1Y *float64 + Vt2X *float64 + Vt2Y *float64 + WRest *int16 + WeightKg *float64 + type KlabDirTestStepResponse struct + AnaTime *int32 + Angle *float64 + Bf *float64 + BpDia *float64 + BpSys *float64 + CalcEnd *int32 + CalcStart *int32 + Comments *string + CreatedBy *int64 + CreatedDate *time.Time + Deleted *int16 + Duration *float64 + Eco *float64 + EeAe *float64 + Elev *float64 + Feco2 *float64 + Feo2 *float64 + Fico2 *float64 + Fio2 *float64 + Hr *float64 + IdDirTestSteps int32 + IdMeasurement int32 + La *float64 + LaVo2 *float64 + ModBy *int64 + ModDate *time.Time + Modded *int16 + O2Pulse *float64 + O2Sa *float64 + Own1 *float64 + Own10 *float64 + Own2 *float64 + Own3 *float64 + Own4 *float64 + Own5 *float64 + Own6 *float64 + Own7 *float64 + Own8 *float64 + Own9 *float64 + P *float64 + Pace *float64 + Petco2 *float64 + Peto2 *float64 + Re *float64 + Rer *float64 + Rpe *float64 + Speed *float64 + StepIs30Max *int32 + StepIs60Max *int32 + StepIsLast *int32 + StepIsRec *int32 + StepIsRest *int32 + StepNo *int32 + TEx *float64 + TTot *float64 + Tco2 *float64 + TimeStart *float64 + TimeStop *float64 + To2 *float64 + Tv *float64 + Va *float64 + Vco2 *float64 + Vde *float64 + VdeTv *float64 + Ve *float64 + VeStpd *float64 + Veco2 *float64 + Veo2 *float64 + Vo2 *float64 + Vo230s *float64 + Vo2Calc *float64 + Vo2Kg *float64 + Vo2Pr *float64 + Wkg *float64 + type KlabMeasurementResponse struct + CbCharts *string + CbComments *string + CreatedBy *int64 + CreatedDate *time.Time + Deleted *int16 + DoDay *int16 + DoHour *int16 + DoMin *int16 + DoMonth *int16 + DoYear *int16 + GroupNotes *string + IdCustomer int32 + IdMeasurement int32 + IdPatternDef *string + Info *string + Keywords *string + MeasName *string + MeasType *int32 + Measurements *string + ModBy *int64 + ModDate *time.Time + Modded *int16 + ModderName *string + SentToSprintAI *time.Time + SessionNo *int32 + TableName *string + TestLocation *string + TesterName *string + type Users interface + DeleteUserBySporttiID func(ctx context.Context, sporttiID string) (string, error) + GetCustomerByID func(ctx context.Context, idcustomer int32) (klabsqlc.Customer, error) + GetCustomerIDBySporttiID func(ctx context.Context, sporttiID string) (int32, error) + type UsersStore struct + func (s *UsersStore) DeleteUserBySporttiID(ctx context.Context, sporttiID string) (string, error) + func (s *UsersStore) GetCustomerByID(ctx context.Context, idcustomer int32) (klabsqlc.Customer, error) + func (s *UsersStore) GetCustomerIDBySporttiID(ctx context.Context, sporttiID string) (int32, error)