diff --git a/pkg/delivery/transport/grpc/protobuf_type_converters.microgen.go b/pkg/delivery/transport/grpc/protobuf_type_converters.microgen.go index 187f256c9617d39dd2f157a18c2fd43498dadf36..aedb4ff8a7612702413760f2a1276153c1571c9e 100644 --- a/pkg/delivery/transport/grpc/protobuf_type_converters.microgen.go +++ b/pkg/delivery/transport/grpc/protobuf_type_converters.microgen.go @@ -309,6 +309,8 @@ func PtrServicesFindOptionsToProto(options *services.FindOptions) (*common.FindO Sort: options.Sort, PageNum: int32(options.PageNum), PageSize: int32(options.PageSize), + Offset: int32(options.Offset), + Limit: int32(options.Limit), Fields: options.Fields, ExcludeFields: options.ExcludeFields, }, nil @@ -325,6 +327,8 @@ func ProtoToPtrServicesFindOptions(protoOptions *common.FindOptions) (*services. PaginationOptions: services.PaginationOptions{ PageNum: int(protoOptions.PageNum), PageSize: int(protoOptions.PageSize), + Offset: int(protoOptions.Offset), + Limit: int(protoOptions.Limit), }, FieldOptions: services.FieldOptions{ Fields: protoOptions.Fields, diff --git a/pkg/items/transport/grpc/protobuf_type_converters.microgen.go b/pkg/items/transport/grpc/protobuf_type_converters.microgen.go index 212b1ecd2bfb27db8b49d0f965b484226265f189..0b214cc93c44392ad1490ced7665dd1b595b76b3 100644 --- a/pkg/items/transport/grpc/protobuf_type_converters.microgen.go +++ b/pkg/items/transport/grpc/protobuf_type_converters.microgen.go @@ -151,6 +151,8 @@ func PtrServicesFindOptionsToProto(opts *options.FindOptions) (*pbcommon.FindOpt Sort: opts.Sort, PageNum: int32(opts.PageNum), PageSize: int32(opts.PageSize), + Offset: int32(opts.Offset), + Limit: int32(opts.Limit), Fields: opts.Fields, ExcludeFields: opts.ExcludeFields, }, nil @@ -167,6 +169,8 @@ func ProtoToPtrServicesFindOptions(protoOpts *pbcommon.FindOptions) (*options.Fi PaginationOptions: options.PaginationOptions{ PageNum: int(protoOpts.PageNum), PageSize: int(protoOpts.PageSize), + Offset: int(protoOpts.Offset), + Limit: int(protoOpts.Limit), }, FieldOptions: options.FieldOptions{ Fields: protoOpts.Fields, diff --git a/pkg/log/client.go b/pkg/log/client.go index c7c4466b6e367962fcc3e8ea13e05205140580e4..1c12c583065fe2f875792b56bfebe32eba6d8b28 100644 --- a/pkg/log/client.go +++ b/pkg/log/client.go @@ -36,6 +36,13 @@ func (c *Client) Log(ctx context.Context, entries <-chan *Entry) error { } } + response, err := stream.CloseAndRecv() + if err != nil { + return err + } + if response.GetError() != nil { + return errorsgrpc.ErrorFromProto(nil, response.GetError()) + } return nil } @@ -57,9 +64,9 @@ func (c *Client) Find(ctx context.Context, filter *Filter, options *options.Find } if options != nil { request.Options = &common.FindOptions{ - Sort: options.Sort, - PageNum: int32(options.PageNum), - PageSize: int32(options.PageSize), + Sort: options.Sort, + Offset: int32(options.Offset), + Limit: int32(options.Limit), } } response, err := c.client.Find(ctx, request) diff --git a/pkg/log/service.go b/pkg/log/service.go index 31d4a60b506b5eab6bd7838cf775fc6f54306bef..e555071da4815a7b5bfadee90d1c3be0d189c710 100644 --- a/pkg/log/service.go +++ b/pkg/log/service.go @@ -27,11 +27,6 @@ type Filter struct { Q []string } -//type FindRequest struct { -// Filter *Filter -// Options *options.FindOptions -//} - type FindResult struct { Entries []*Entry Filter *Filter diff --git a/pkg/options/options.go b/pkg/options/options.go index 7f8b0cd624db7e6c4c35fe62333a67ba633fbe7e..b55c0ff3fef92768648b2419d04f22e76e7c2989 100644 --- a/pkg/options/options.go +++ b/pkg/options/options.go @@ -11,6 +11,8 @@ type SortOptions struct { type PaginationOptions struct { PageNum int PageSize int + Limit int + Offset int } // FieldOptions настройки включения/исключения полей из результатов запроса @@ -32,11 +34,13 @@ type FindOptions struct { } // NewFindOptions создает новые результаты поиска -func NewFindOptions(pageNum, pageSize int, sort ...string) *FindOptions { +func NewFindOptions(pageNum, pageSize, offset, limit int, sort ...string) *FindOptions { return &FindOptions{ PaginationOptions: PaginationOptions{ PageNum: pageNum, PageSize: pageSize, + Offset: offset, + Limit: limit, }, SortOptions: SortOptions{ Sort: sort, @@ -98,11 +102,13 @@ func MergeSortOptions(options ...SortOptions) SortOptions { func MergePaginationOptions(options ...PaginationOptions) PaginationOptions { fo := PaginationOptions{} for _, opt := range options { - if opt.PageSize == 0 && opt.PageNum == 0 { + if opt.PageSize == 0 && opt.PageNum == 0 || opt.Offset == 0 && opt.Limit == 0 { continue } fo.PageNum = opt.PageNum fo.PageSize = opt.PageSize + fo.Offset = opt.Offset + fo.Limit = opt.Limit } return fo } diff --git a/pkg/organizations/transport/grpc/protobuf_type_converters.microgen.go b/pkg/organizations/transport/grpc/protobuf_type_converters.microgen.go index 15fce8f5a7966f8fa2958fef30f62805923f512b..2c024a9e6973181ccb5ff683b14be4aaad98792c 100644 --- a/pkg/organizations/transport/grpc/protobuf_type_converters.microgen.go +++ b/pkg/organizations/transport/grpc/protobuf_type_converters.microgen.go @@ -68,6 +68,8 @@ func PtrServicesFindOptionsToProto(opts *options.FindOptions) (*common.FindOptio Sort: opts.Sort, PageNum: int32(opts.PageNum), PageSize: int32(opts.PageSize), + Offset: int32(opts.Offset), + Limit: int32(opts.Limit), }, nil } @@ -82,6 +84,8 @@ func ProtoToPtrServicesFindOptions(protoOpts *common.FindOptions) (*options.Find PaginationOptions: options.PaginationOptions{ PageNum: int(protoOpts.PageNum), PageSize: int(protoOpts.PageSize), + Offset: int(protoOpts.Offset), + Limit: int(protoOpts.Limit), }, }, nil }