Files
full/module/base/cms/internal/logic/post/modify_comment.go

46 lines
1.1 KiB
Go
Raw Normal View History

package post
import (
"context"
"bsm/full/module/base/cms/internal/impl"
"bsm/full/module/base/cms/internal/models"
"git.apinb.com/bsm-sdk/core/errcode"
"git.apinb.com/bsm-sdk/core/service"
"git.apinb.com/bsm-sdk/core/types"
pb "bsm/full/module/base/cms/pb"
)
// 修改评论
func ModifyComment(ctx context.Context, in *pb.CommentItem) (*pb.StatusReply, error) {
2026-09-22 21:15:34 +08:00
auth, err := service.ParseMetaCtx(ctx, nil)
if err != nil {
return nil, err
}
if in.GetIdentity() == "" {
return nil, errcode.ErrInvalidArgument
}
2026-09-22 21:15:34 +08:00
// 校验归属:仅评论作者可修改
comment, err := models.GetCommentForAuth(in.Identity)
if err != nil {
return nil, err
}
if comment.OwnerIdentity != auth.Identity {
return nil, errcode.ErrPermissionDenied
}
var data = models.CmsComment{
Std_Identity: types.Std_Identity{Identity: in.Identity},
PostIdentity: in.PostIdentity,
ParentId: uint(in.ParentId),
ReplyIdentity: in.ReplyIdentity,
Cms: in.Cms,
}
// err = logic.ModifyComment(&data)
if err := impl.DBService.Where("identity = ?", data.Identity).Updates(data).Error; err != nil {
return nil, err
}
return &pb.StatusReply{}, nil
}