organize + graph

This commit is contained in:
mr
2024-07-18 11:51:12 +02:00
parent 2eb74da9d2
commit 29a75bced9
69 changed files with 952 additions and 1531 deletions

32
models/utils/abstracts.go Normal file
View File

@@ -0,0 +1,32 @@
package utils
import (
oclib "oc-lib"
"oc-lib/dbs/mongo"
"github.com/rs/zerolog"
)
type AbstractAccessor struct {
Logger zerolog.Logger
}
func (dma *AbstractAccessor) SetLogger() {
dma.Logger = oclib.CreateLogger("oclib", "")
}
func (dma *AbstractAccessor) GenericDeleteOne(id string, accessor Accessor) DBObject {
res := accessor.LoadOne(id)
_, err := mongo.DeleteOne(id, "data")
if err != nil {
dma.Logger.Error().Msg("Could not delete " + id + " to db. Error: " + err.Error())
}
return res
}
func (dma *AbstractAccessor) GenericUpdateOne(set map[string]interface{}, id string, accessor Accessor) DBObject {
id, err := mongo.UpdateOne(set, id, "data")
if err != nil {
dma.Logger.Error().Msg("Could not update " + id + " to db. Error: " + err.Error())
}
return accessor.LoadOne(id)
}

8
models/utils/enums.go Normal file
View File

@@ -0,0 +1,8 @@
package utils
type Driver int
const (
INVALID Driver = iota
MONGO
)

View File

@@ -0,0 +1,14 @@
package utils
type DBObject interface {
GetName() string
GetAccessor(driver Driver) Accessor
}
type Accessor interface {
SetLogger()
LoadOne(id string) DBObject
DeleteOne(id string) DBObject
StoreOne(data DBObject) DBObject
UpdateOne(set map[string]interface{}, id string) DBObject
}