Add 'Create' & 'Delete' database actions
This commit is contained in:
parent
5005030099
commit
06f59fcfea
@ -2,7 +2,6 @@ package dbAccess
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
|
||||||
|
|
||||||
"git.fjla.uk/owlboard/go-types/pkg/database"
|
"git.fjla.uk/owlboard/go-types/pkg/database"
|
||||||
"git.fjla.uk/owlboard/mq-client/helpers"
|
"git.fjla.uk/owlboard/mq-client/helpers"
|
||||||
@ -11,6 +10,9 @@ import (
|
|||||||
"go.mongodb.org/mongo-driver/mongo/options"
|
"go.mongodb.org/mongo-driver/mongo/options"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const timetableCollection string = "timetable_test"
|
||||||
|
const databaseName string = "owlboard"
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
version := database.Version{
|
version := database.Version{
|
||||||
Target: "mq-client",
|
Target: "mq-client",
|
||||||
@ -31,10 +33,27 @@ func init() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func PutManyServices(collection string, data []database.Service) bool {
|
func PutOneService(data database.Service) bool {
|
||||||
|
coll := MongoClient.Database(databaseName).Collection(timetableCollection)
|
||||||
|
_, err := coll.InsertOne(context.TODO(), data)
|
||||||
|
if err != nil {
|
||||||
|
log.Msg.Error("Unable to insert to database: " + err.Error())
|
||||||
return false
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
func PrintFromDbPackage() {
|
func DeleteOneService(data database.DeleteQuery) bool {
|
||||||
fmt.Println("hello from the dbAccess package")
|
coll := MongoClient.Database(databaseName).Collection(timetableCollection)
|
||||||
|
var filter = bson.D{
|
||||||
|
{Key: "trainUid", Value: data.TrainUid},
|
||||||
|
{Key: "stpIndicator", Value: data.StpIndicator},
|
||||||
|
{Key: "scheduleStartDate", Value: data.ScheduleStartDate},
|
||||||
|
}
|
||||||
|
_, err := coll.DeleteOne(context.TODO(), filter)
|
||||||
|
if err != nil {
|
||||||
|
log.Msg.Error("Unable to delete service: " + err.Error())
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@ module git.fjla.uk/owlboard/mq-client
|
|||||||
go 1.19
|
go 1.19
|
||||||
|
|
||||||
require (
|
require (
|
||||||
git.fjla.uk/owlboard/go-types v0.0.0-20230721082911-9a574276d572
|
git.fjla.uk/owlboard/go-types v0.0.0-20230727192011-171bd3eafd83
|
||||||
github.com/go-stomp/stomp/v3 v3.0.5
|
github.com/go-stomp/stomp/v3 v3.0.5
|
||||||
go.mongodb.org/mongo-driver v1.12.0
|
go.mongodb.org/mongo-driver v1.12.0
|
||||||
go.uber.org/zap v1.24.0
|
go.uber.org/zap v1.24.0
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
git.fjla.uk/owlboard/go-types v0.0.0-20230721082911-9a574276d572 h1:shnlNyIV1jG+xQsg5zCt2fEjiDzCQQeDTjTFuKZa97c=
|
git.fjla.uk/owlboard/go-types v0.0.0-20230721082911-9a574276d572 h1:shnlNyIV1jG+xQsg5zCt2fEjiDzCQQeDTjTFuKZa97c=
|
||||||
git.fjla.uk/owlboard/go-types v0.0.0-20230721082911-9a574276d572/go.mod h1:kG+BX9UF+yJaAVnln/QSKlTdrtKRRReezMeSk1ZLMzY=
|
git.fjla.uk/owlboard/go-types v0.0.0-20230721082911-9a574276d572/go.mod h1:kG+BX9UF+yJaAVnln/QSKlTdrtKRRReezMeSk1ZLMzY=
|
||||||
|
git.fjla.uk/owlboard/go-types v0.0.0-20230727191457-d15ddc556312 h1:IolAJJTttdcmykOI73Zjfh3V8Gd01l9TrM+OmliM4h0=
|
||||||
|
git.fjla.uk/owlboard/go-types v0.0.0-20230727191457-d15ddc556312/go.mod h1:kG+BX9UF+yJaAVnln/QSKlTdrtKRRReezMeSk1ZLMzY=
|
||||||
|
git.fjla.uk/owlboard/go-types v0.0.0-20230727192011-171bd3eafd83 h1:q+I66M4YVRnKwdyYqcwou7TTniM1uwUSh3Bpa8SDLuM=
|
||||||
|
git.fjla.uk/owlboard/go-types v0.0.0-20230727192011-171bd3eafd83/go.mod h1:kG+BX9UF+yJaAVnln/QSKlTdrtKRRReezMeSk1ZLMzY=
|
||||||
github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8=
|
github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8=
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||||
|
@ -4,6 +4,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"git.fjla.uk/owlboard/go-types/pkg/database"
|
"git.fjla.uk/owlboard/go-types/pkg/database"
|
||||||
|
"git.fjla.uk/owlboard/mq-client/dbAccess"
|
||||||
"git.fjla.uk/owlboard/mq-client/log"
|
"git.fjla.uk/owlboard/mq-client/log"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -25,6 +26,12 @@ func processEntryType(entry database.Service) {
|
|||||||
|
|
||||||
func createEntry(entry database.Service) {
|
func createEntry(entry database.Service) {
|
||||||
log.Msg.Info("Entry Creation requested for: " + entry.TrainUid + " - " + entry.Headcode + " - " + entry.Operator)
|
log.Msg.Info("Entry Creation requested for: " + entry.TrainUid + " - " + entry.Headcode + " - " + entry.Operator)
|
||||||
|
status := dbAccess.PutOneService(entry)
|
||||||
|
if status {
|
||||||
|
log.Msg.Info("Database entry created")
|
||||||
|
} else {
|
||||||
|
log.Msg.Error("Database entry failed, skipped service")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func updateEntry(entry database.Service) {
|
func updateEntry(entry database.Service) {
|
||||||
@ -33,5 +40,16 @@ func updateEntry(entry database.Service) {
|
|||||||
|
|
||||||
func deleteEntry(entry database.Service) {
|
func deleteEntry(entry database.Service) {
|
||||||
log.Msg.Info("Entry DELETE requested for: " + entry.TrainUid + " - " + entry.Headcode)
|
log.Msg.Info("Entry DELETE requested for: " + entry.TrainUid + " - " + entry.Headcode)
|
||||||
fmt.Printf("%+v\n", entry)
|
var deletionQuery = database.DeleteQuery{
|
||||||
|
TrainUid: entry.TrainUid,
|
||||||
|
ScheduleStartDate: entry.ScheduleStartDate,
|
||||||
|
StpIndicator: entry.StpIndicator,
|
||||||
|
}
|
||||||
|
status := dbAccess.DeleteOneService(deletionQuery)
|
||||||
|
if status {
|
||||||
|
log.Msg.Info("Database entry deleted")
|
||||||
|
} else {
|
||||||
|
log.Msg.Error("Database deletion failed, skipped deletion")
|
||||||
|
fmt.Printf("%+v\n", deletionQuery)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user