From e263d963768769a0e633a2f200bc0e4eb59ed23a Mon Sep 17 00:00:00 2001 From: zijiren233 Date: Wed, 8 May 2024 17:04:53 +0800 Subject: [PATCH] Feat: push movie resp movie info #133 --- internal/op/user.go | 20 ++++++++++---------- server/handlers/movie.go | 8 ++++---- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/internal/op/user.go b/internal/op/user.go index ca4558b..d79d55a 100644 --- a/internal/op/user.go +++ b/internal/op/user.go @@ -127,19 +127,19 @@ func (u *User) NewMovie(movie *model.BaseMovie) (*model.Movie, error) { }, nil } -func (u *User) AddRoomMovie(room *Room, movie *model.BaseMovie) error { +func (u *User) AddRoomMovie(room *Room, movie *model.BaseMovie) (*model.Movie, error) { if !u.HasRoomPermission(room, model.PermissionAddMovie) { - return model.ErrNoPermission + return nil, model.ErrNoPermission } m, err := u.NewMovie(movie) if err != nil { - return err + return nil, err } err = room.AddMovie(m) if err != nil { - return err + return nil, err } - return room.Broadcast(&pb.ElementMessage{ + return m, room.Broadcast(&pb.ElementMessage{ Type: pb.ElementMessageType_MOVIES_CHANGED, MoviesChanged: &pb.Sender{ Username: u.Username, @@ -160,19 +160,19 @@ func (u *User) NewMovies(movies []*model.BaseMovie) ([]*model.Movie, error) { return ms, nil } -func (u *User) AddRoomMovies(room *Room, movies []*model.BaseMovie) error { +func (u *User) AddRoomMovies(room *Room, movies []*model.BaseMovie) ([]*model.Movie, error) { if !u.HasRoomPermission(room, model.PermissionAddMovie) { - return model.ErrNoPermission + return nil, model.ErrNoPermission } m, err := u.NewMovies(movies) if err != nil { - return err + return nil, err } err = room.AddMovies(m) if err != nil { - return err + return nil, err } - return room.Broadcast(&pb.ElementMessage{ + return m, room.Broadcast(&pb.ElementMessage{ Type: pb.ElementMessageType_MOVIES_CHANGED, MoviesChanged: &pb.Sender{ Username: u.Username, diff --git a/server/handlers/movie.go b/server/handlers/movie.go index 68c8c33..cdd88df 100644 --- a/server/handlers/movie.go +++ b/server/handlers/movie.go @@ -203,7 +203,7 @@ func PushMovie(ctx *gin.Context) { return } - err := user.AddRoomMovie(room, (*dbModel.BaseMovie)(&req)) + m, err := user.AddRoomMovie(room, (*dbModel.BaseMovie)(&req)) if err != nil { log.Errorf("push movie error: %v", err) if errors.Is(err, dbModel.ErrNoPermission) { @@ -219,7 +219,7 @@ func PushMovie(ctx *gin.Context) { return } - ctx.Status(http.StatusNoContent) + ctx.JSON(http.StatusOK, model.NewApiDataResp(m)) } func PushMovies(ctx *gin.Context) { @@ -240,7 +240,7 @@ func PushMovies(ctx *gin.Context) { ms[i] = m } - err := user.AddRoomMovies(room, ms) + m, err := user.AddRoomMovies(room, ms) if err != nil { log.Errorf("push movies error: %v", err) if errors.Is(err, dbModel.ErrNoPermission) { @@ -256,7 +256,7 @@ func PushMovies(ctx *gin.Context) { return } - ctx.Status(http.StatusNoContent) + ctx.JSON(http.StatusOK, model.NewApiDataResp(m)) } func NewPublishKey(ctx *gin.Context) {