feat: update delete module api

This commit is contained in:
Steven
2022-09-27 00:21:05 +08:00
parent a642465f86
commit d2e08de9bd
9 changed files with 46 additions and 13 deletions

View File

@ -60,8 +60,6 @@ func aclMiddleware(s *Server, next echo.HandlerFunc) echo.HandlerFunc {
return next(c)
}
println("path", path)
if common.HasPrefixes(path, "/api/ping", "/api/status", "/api/user/:id") && c.Request().Method == http.MethodGet {
return next(c)
}

View File

@ -156,7 +156,7 @@ func (s *Server) registerShortcutRoutes(g *echo.Group) {
}
shortcutDelete := &api.ShortcutDelete{
ID: shortcutID,
ID: &shortcutID,
}
if err := s.Store.DeleteShortcut(ctx, shortcutDelete); err != nil {
if common.ErrorCode(err) == common.NotFound {

View File

@ -134,8 +134,8 @@ func (s *Server) registerWorkspaceUserRoutes(g *echo.Group) {
if err != nil {
return echo.NewHTTPError(http.StatusInternalServerError, "Failed to find workspace user").SetInternal(err)
}
if currentWorkspaceUser.Role != api.RoleAdmin {
return echo.NewHTTPError(http.StatusForbidden, "Access forbidden to add workspace user").SetInternal(err)
if currentWorkspaceUser.UserID != userID && currentWorkspaceUser.Role != api.RoleAdmin {
return echo.NewHTTPError(http.StatusForbidden, "Access forbidden to delete workspace user").SetInternal(err)
}
userID, err = strconv.Atoi(c.Param("userId"))
@ -154,6 +154,17 @@ func (s *Server) registerWorkspaceUserRoutes(g *echo.Group) {
return echo.NewHTTPError(http.StatusInternalServerError, "Failed to delete workspace user").SetInternal(err)
}
shortcutDelete := &api.ShortcutDelete{
CreatorID: &userID,
WorkspaceID: &workspaceID,
}
if err := s.Store.DeleteShortcut(ctx, shortcutDelete); err != nil {
if common.ErrorCode(err) == common.NotFound {
return echo.NewHTTPError(http.StatusNotFound, fmt.Sprintf("Shortcut not found with workspace id %d and user id %d", workspaceID, userID))
}
return echo.NewHTTPError(http.StatusInternalServerError, "Failed to delete shortcut").SetInternal(err)
}
return c.JSON(http.StatusOK, true)
})
}