add init db data, fix bugs, refactor

This commit is contained in:
lbenedar
2026-04-07 18:47:35 +03:00
parent 178404639d
commit e5deb5d76d
11 changed files with 190 additions and 56 deletions

View File

@@ -11,45 +11,16 @@ import (
"strconv"
"strings"
data "gitea.local.lab/Lbenedar/foundry_helper_service/internal/foundry/models/db"
"gitea.local.lab/Lbenedar/foundry_helper_service/internal/foundry/requests"
"gitea.local.lab/Lbenedar/foundry_helper_service/internal/foundry/types"
"github.com/gorilla/websocket"
)
const (
RespSessionData = "0"
RespPingCode = "2"
RespSessionId = "40"
RespCreateSessionCode = "42"
RespDataCode = "43"
ReqPongCode = "3"
ReqCreateSessionCode = "40"
ReqDataCode = "42"
)
var RequestCodes = []string{
RespSessionData,
RespPingCode,
RespSessionId,
RespCreateSessionCode,
RespDataCode,
}
var CodesRespToReq = map[string]string{
RespSessionData: ReqCreateSessionCode,
RespPingCode: ReqPongCode,
RespCreateSessionCode: ReqDataCode,
//ReqDataCode: RespCreateSessionCode,
}
type Foundry struct {
//TODO: make check of admin's authentication
isAuth bool
logger *slog.Logger
models data.Models
config requests.Config
ws *webSocketUtil
}
@@ -129,6 +100,7 @@ func (foundry *Foundry) StartListen() error {
foundry.CloseWebSocketConn()
return foundryErr
}
foundry.logger.Warn("Got error when listening or served websocket", "err", err.Error())
}
case <-wsChannels.Done():
foundry.CloseWebSocketConn()
@@ -195,7 +167,7 @@ func (foundry *Foundry) ListenAndServeWS() {
}
func (foundry *Foundry) HandleWSRequest(msgType string) ([]byte, error) {
msg := foundry.ws.CreateWSMessageByPage("/setup")
msg := foundry.ws.CreateWSMessageByPage(msgType)
return foundry.ws.HandleWebsocketRequest(msg)
}
@@ -218,7 +190,7 @@ func (foundry *Foundry) SetLogger(slogger *slog.Logger) {
}
func (foundry *Foundry) CreateNewDataModels(db *sql.DB) {
foundry.models = data.NewModels(db)
foundry.ws.CreateNewDataModels(db)
}
// /**