diff --git a/option.go b/option.go index a8fe2a6..170954b 100644 --- a/option.go +++ b/option.go @@ -88,6 +88,23 @@ func WithLimit[T op_type.Int](limit T, offset T) SetOption { } } +// WithLimitByPageAndSize 通过page和size构建条件 +// +// Author : go_developer@163.com<白茶清欢> +// +// Date : 21:42 2023/10/14 +func WithLimitByPageAndSize[T op_type.Int](page T, size T) SetOption { + return func(o *Option) { + if size > 0 { + o.Limit = int(size) + } + if page <= 0 { + page = 1 + } + o.Offset = int((page - 1) * size) + } +} + // WithIn 设置in条件 // // Author : go_developer@163.com<白茶清欢>