4 Commits

Author SHA1 Message Date
Adrian Zürcher
8b8d99e162 new set id to 0 to create new uniq id by gorm 2025-11-06 15:22:23 +01:00
Adrian Zürcher
103a07b7ac extend add responsible from single to array 2025-11-06 15:10:28 +01:00
Adrian Zürcher
a20a21d251 change start events to return event as data 2025-11-06 09:03:56 +01:00
Adrian Zürcher
ee7ce526f3 change new event from get to post 2025-11-06 08:56:00 +01:00
5 changed files with 21 additions and 22 deletions

View File

@@ -15,22 +15,23 @@ func (a *APIHandler) StartNewEvent(c *gin.Context) {
return
}
name := c.Query("name")
if name == "" {
a.logger.Error("StartNewEvent", "missing query 'name'")
var event models.Event
err := c.BindJSON(&event)
if err != nil {
a.logger.Error("StartNewEvent", err)
c.JSON(http.StatusInternalServerError, nil)
return
}
if err := a.DbHandler.StartNewEvent(name); err != nil {
if err := a.DbHandler.StartNewEvent(&event); err != nil {
a.logger.Error("StartNewEvent", err)
c.JSON(http.StatusBadRequest, gin.H{"message": err.Error()})
return
}
c.JSON(http.StatusOK, gin.H{
"message": "New Event added " + name,
"message": "New Event added " + event.Name,
"data": event,
})
}

View File

@@ -16,24 +16,25 @@ func (a *APIHandler) AddNewResponsible(c *gin.Context) {
return
}
var responsible models.Person
err := c.BindJSON(&responsible)
var responsibles []models.Person
err := c.BindJSON(&responsibles)
if err != nil {
a.logger.Error("AddNewResponsible", err)
c.JSON(http.StatusInternalServerError, nil)
return
}
err = a.DbHandler.AddNewResponsible(responsible)
err = a.DbHandler.AddNewResponsible(responsibles...)
if err != nil {
c.JSON(http.StatusBadRequest, gin.H{
"message": err.Error(),
})
return
}
c.JSON(http.StatusOK, gin.H{
"message": "responsible added",
"message": "responsible(s) added",
})
}

View File

@@ -8,19 +8,17 @@ import (
"gitea.tecamino.com/paadi/memberDB/models"
)
func (dh *DatabaseHandler) StartNewEvent(name string) error {
func (dh *DatabaseHandler) StartNewEvent(event *models.Event) error {
if !dh.DatabaseOpened() {
return errors.New("database not opened")
}
if nil == dh.database.Exists(&models.Event{}, "name", name, false) {
return errors.New("event with name: " + name + " exists already")
if nil == dh.database.Exists(&models.Event{}, "name", event.Name, false) {
return errors.New("event with name: " + event.Name + " exists already")
}
return dh.database.AddNewColum(&models.Event{
Name: name,
Date: time.Now().Format("2006-01-02 15:04:05"),
})
event.Date = time.Now().Format("2006-01-02 15:04:05")
return dh.database.AddNewColum(&event)
}
func (dh *DatabaseHandler) GetEvent(id uint) (event []models.Event, err error) {

View File

@@ -10,11 +10,10 @@ func (dh *DatabaseHandler) AddNewResponsible(responsibles ...models.Person) erro
if !dh.DatabaseOpened() {
return errors.New("database not opened")
}
if !dh.DatabaseOpened() {
return errors.New("database not opened")
}
for _, responsible := range responsibles {
for _, responsible := range responsibles {
// set id to 0 so new uniq id is created
responsible.Id = 0
exists, err := dh.responsibleExists(responsible)
if err != nil {
return err

View File

@@ -129,7 +129,6 @@ func TestMemberDB(t *testing.T) {
v1 := r.Group("v1")
v1.GET("/events", apiHandler.GetEvent)
v1.GET("/events/new", apiHandler.StartNewEvent)
v1.GET("/members", apiHandler.GetMember)
v1.GET("/responsible", apiHandler.GetResponsible)
@@ -139,6 +138,7 @@ func TestMemberDB(t *testing.T) {
v1.POST("/members/delete", apiHandler.DeleteMember)
v1.POST("/members/import/csv", apiHandler.ImportCSV)
v1.POST("/events/new", apiHandler.StartNewEvent)
v1.POST("/events/attendees/add", apiHandler.AddNewAttendees)
v1.POST("/events/attendees/delete", apiHandler.DeleteAttendee)
v1.POST("/events/edit", apiHandler.UpdateEvent)