bugfix getIncident
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Nathan Coad
2025-03-25 13:42:43 +11:00
parent 4e670f8785
commit e161219aaa

View File

@@ -43,6 +43,32 @@ func (h *Handler) GetIncident(w http.ResponseWriter, r *http.Request) {
if number != "" {
h.Logger.Debug("GetIncident called for specific incident number", "number", number)
incResult, err := h.Database.Queries().GetIncident(ctx, nullStr(number))
if err != nil {
if errors.Is(err, sql.ErrNoRows) {
h.Logger.Debug("No incident record found", "number", number)
} else {
h.Logger.Error("Unable to query database for incident number", "error", err)
//return err
}
}
b, err := json.Marshal(incResult)
if err != nil {
h.Logger.Error("Unable to convert database record into json", "error", err)
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(http.StatusInternalServerError)
json.NewEncoder(w).Encode(map[string]string{
"status": "ERROR",
"message": fmt.Sprintf("Unable to convert database record into json: '%s'", err),
})
return
}
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(http.StatusOK)
fmt.Fprintf(w, string(b))
return
// Query record from database and return that
} else if active == "true" {
// Return list of all incidents
@@ -119,10 +145,10 @@ func (h *Handler) GetIncident(w http.ResponseWriter, r *http.Request) {
id := parts[5] // Extract {id}
h.Logger.Debug("GetIncident called for specific incident", "id", id)
incResult, err := h.Database.Queries().GetIncident(ctx, nullStr(number))
incResult, err := h.Database.Queries().GetIncident(ctx, nullStr(id))
if err != nil {
if errors.Is(err, sql.ErrNoRows) {
h.Logger.Debug("No incident record found", "number", number)
h.Logger.Debug("No incident record found", "id", id)
} else {
h.Logger.Error("Unable to query database for incident number", "error", err)
//return err