MCPcopy Create free account
hub / github.com/OpenCSGs/csghub-server / Delete

Method Delete

user/handler/member.go:166–190  ·  view source on GitHub ↗

Delete godoc @Security ApiKey @Summary Remove membership between org and user @Description user's role will be remove from org @Tags Member @Accept json @Produce json @Param namespace path string true "org name" @Param username path string true "user name

(ctx *gin.Context)

Source from the content-addressed store, hash-verified

164// @Failure 500 {object} types.APIInternalServerError "Internal server error"
165// @Router /organization/{namespace}/members/{username} [delete]
166func (h *MemberHandler) Delete(ctx *gin.Context) {
167 type removeMemberRequest struct {
168 Role string `json:"role" binding:"required"`
169 }
170 req := new(removeMemberRequest)
171 if err := ctx.ShouldBindJSON(req); err != nil {
172 httpbase.BadRequest(ctx, fmt.Errorf("failed to unmarshal request body,caused by:%w", err).Error())
173 return
174 }
175 currentUser := httpbase.GetCurrentUser(ctx)
176 org := ctx.Param("namespace")
177 userName := ctx.Param("username")
178 err := h.c.Delete(ctx, org, userName, currentUser, req.Role)
179 if err != nil {
180 slog.ErrorContext(ctx, "delete member fail", slog.Any("error", err),
181 slog.Group("request",
182 slog.String("org", org), slog.String("username", userName), slog.String("role", req.Role), slog.String("op_user", currentUser),
183 ),
184 )
185 httpbase.ServerError(ctx, err)
186 return
187 }
188
189 httpbase.OK(ctx, nil)
190}
191
192// GetMemberRole godoc
193// @Security ApiKey

Callers

nothing calls this directly

Calls 5

BadRequestFunction · 0.92
GetCurrentUserFunction · 0.92
ServerErrorFunction · 0.92
OKFunction · 0.92
ErrorMethod · 0.80

Tested by

no test coverage detected