package userkindboxservice import ( "context" param "git.gocasts.ir/ebhomengo/niki/param/benefactor/kind_box" errmsg "git.gocasts.ir/ebhomengo/niki/pkg/err_msg" richerror "git.gocasts.ir/ebhomengo/niki/pkg/rich_error" ) func (s Service) Get(ctx context.Context, req param.KindBoxGetRequest) (param.KindBoxGetResponse, error) { const op = "userkindboxservice.Get" kindBox, err := s.repo.GetKindBox(ctx, req.KindBoxID) if err != nil { return param.KindBoxGetResponse{}, richerror.New(op).WithErr(err).WithKind(richerror.KindUnexpected) } // TODO : ref to service.Update() if kindBox.BenefactorID != req.BenefactorID { return param.KindBoxGetResponse{}, richerror.New(op).WithMessage(errmsg.ErrorMsgUserNotAllowed).WithKind(richerror.KindForbidden) } return param.KindBoxGetResponse{KindBox: kindBox}, nil }