package app_user import ( "github.com/veypi/OneAuth/cfg" "github.com/veypi/OneAuth/models" "github.com/vyes-ai/vigo" ) type deleteOpts struct { AppID string `parse:"path"` UserID string `parse:"path"` } var _ = Router.Delete("/:user_id", deleteAppUser) func deleteAppUser(x *vigo.X) (any, error) { opts := &deleteOpts{} if err := x.Parse(opts); err != nil { return nil, err } appUser := &models.AppUser{} if err := cfg.DB().Where("app_id = ? AND user_id = ?", opts.AppID, opts.UserID).First(appUser).Error; err != nil { return nil, vigo.NewError("app_user not found").WithCode(404) } if err := cfg.DB().Delete(appUser).Error; err != nil { return nil, err } return map[string]interface{}{ "message": "app_user deleted successfully", "app_id": opts.AppID, "user_id": opts.UserID, }, nil }