Merged in feature/update (pull request #27)
Query Update * baselineupdate * baseupdateplusmodelupdates * passtests * somemoresubmittesting * testinnerfunctions * readmeandinstall * cleanerstartup * readmeplusdeps * tidyatrighttime * validatetests * normalizedontvalidate * abitofzenormalizationcleanup * addunitstestforhelperfuns * normalizeactiveversiontestas
This commit is contained in:
+18
-12
@@ -53,17 +53,9 @@ func (s *Controllers) CreateQuery(ctx echo.Context) error {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, err)
|
||||
}
|
||||
|
||||
requiredQueryIDs := []uuid.UUID{}
|
||||
if req.RequiredQueries != nil {
|
||||
requiredQueryIDs := make([]uuid.UUID, len(*req.RequiredQueries))
|
||||
for index, id := range *req.RequiredQueries {
|
||||
parsedID, err := uuid.Parse(id)
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, "Invalid Required ID")
|
||||
}
|
||||
|
||||
requiredQueryIDs[index] = parsedID
|
||||
}
|
||||
requiredQueryIDs, err := parseStringToUUIDArray(req.RequiredQueries)
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, "Invalid Required IDs")
|
||||
}
|
||||
|
||||
qt, err := parseSpecQueryType(req.Type)
|
||||
@@ -74,6 +66,7 @@ func (s *Controllers) CreateQuery(ctx echo.Context) error {
|
||||
id, err := s.svc.Query.Create(ctx.Request().Context(), &queryprocessor.Create{
|
||||
Type: qt,
|
||||
RequiredQueryIDs: requiredQueryIDs,
|
||||
Config: req.Config,
|
||||
})
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Unable to create query: %s", err))
|
||||
@@ -85,13 +78,26 @@ func (s *Controllers) CreateQuery(ctx echo.Context) error {
|
||||
}
|
||||
|
||||
func (s *Controllers) UpdateQuery(ctx echo.Context, id string) error {
|
||||
req := QueryUpdate{}
|
||||
if err := ctx.Bind(&req); err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, err)
|
||||
}
|
||||
|
||||
uid, err := uuid.Parse(id)
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, "Invalid ID")
|
||||
}
|
||||
|
||||
requiredQueryIDs, err := parseStringToUUIDArray(req.RequiredQueries)
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, "Invalid Required IDs")
|
||||
}
|
||||
|
||||
err = s.svc.Query.Update(ctx.Request().Context(), &queryprocessor.Update{
|
||||
ID: uid,
|
||||
ActiveVersion: req.ActiveVersion,
|
||||
Config: req.Config,
|
||||
RequiredQueryIDs: requiredQueryIDs,
|
||||
ID: uid,
|
||||
})
|
||||
if err != nil {
|
||||
return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Unable to update query: %s", err))
|
||||
|
||||
Reference in New Issue
Block a user