Skip to content

Commit 890a997

Browse files
committed
page和pageSize使用int64类型代替int
1 parent 6c363d3 commit 890a997

11 files changed

+575
-575
lines changed

builder.go

Lines changed: 53 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -9,83 +9,83 @@ package pagehelper
99
import "context"
1010

1111
type builder struct {
12-
page PageInfo
13-
order OrderByInfo
12+
page PageInfo
13+
order OrderByInfo
1414

15-
ctx context.Context
15+
ctx context.Context
1616
}
1717

18-
//创建builder
19-
//ctx 初始context
18+
// 创建builder
19+
// ctx 初始context
2020
func C(ctx context.Context) *builder {
21-
return &builder{ctx: ctx}
21+
return &builder{ctx: ctx}
2222
}
2323

24-
//分页
25-
//page 页码
26-
//pageSize 分页大小
27-
func (b *builder) Page(page, pageSize int) *builder {
28-
b.page.Page = page
29-
b.page.PageSize = pageSize
30-
b.page.total = 0
31-
return b
24+
// 分页
25+
// page 页码
26+
// pageSize 分页大小
27+
func (b *builder) Page(page, pageSize int64) *builder {
28+
b.page.Page = page
29+
b.page.PageSize = pageSize
30+
b.page.total = 0
31+
return b
3232
}
3333

34-
//分页
35-
//page 页码
36-
//pageSize 分页大小
37-
func (b *builder) PageWithCount(page, pageSize int, countColumn string) *builder {
38-
b.page.Page = page
39-
b.page.PageSize = pageSize
40-
b.page.countColumn = countColumn
41-
b.page.total = -1
42-
return b
34+
// 分页
35+
// page 页码
36+
// pageSize 分页大小
37+
func (b *builder) PageWithCount(page, pageSize int64, countColumn string) *builder {
38+
b.page.Page = page
39+
b.page.PageSize = pageSize
40+
b.page.countColumn = countColumn
41+
b.page.total = -1
42+
return b
4343
}
4444

4545
func (b *builder) Count(countColumn string) *builder {
46-
b.page.countColumn = countColumn
47-
b.page.total = -1
48-
return b
46+
b.page.countColumn = countColumn
47+
b.page.total = -1
48+
return b
4949
}
5050

51-
//手动指定字段和排序
52-
//field 字段
53-
//order 排序 [ASC | DESC]
51+
// 手动指定字段和排序
52+
// field 字段
53+
// order 排序 [ASC | DESC]
5454
func (b *builder) OrderBy(field, order string) *builder {
55-
b.order.Field = field
56-
b.order.Order = order
57-
return b
55+
b.order.Field = field
56+
b.order.Order = order
57+
return b
5858
}
5959

60-
//升序(默认)
61-
//field 字段
60+
// 升序(默认)
61+
// field 字段
6262
func (b *builder) ASC(field string) *builder {
63-
return b.OrderBy(field, ASC)
63+
return b.OrderBy(field, ASC)
6464
}
6565

66-
//降序
67-
//field 字段
66+
// 降序
67+
// field 字段
6868
func (b *builder) DESC(field string) *builder {
69-
return b.OrderBy(field, DESC)
69+
return b.OrderBy(field, DESC)
7070
}
7171

72-
//获得含分页/排序信息的context
72+
// 获得含分页/排序信息的context
7373
func (b *builder) Build() context.Context {
74-
if b.page.PageSize > 0 {
75-
if b.page.total != -1 {
76-
b.ctx = StartPage(b.ctx, b.page.Page, b.page.PageSize)
77-
} else {
78-
b.ctx = StartPageWithCount(b.ctx, b.page.Page, b.page.PageSize, b.page.countColumn)
79-
}
80-
}
74+
if b.page.PageSize > 0 {
75+
if b.page.total != -1 {
76+
b.ctx = StartPage(b.ctx, b.page.Page, b.page.PageSize)
77+
} else {
78+
b.ctx = StartPageWithCount(b.ctx, b.page.Page, b.page.PageSize, b.page.countColumn)
79+
}
80+
}
8181

82-
if b.order.Field != "" {
83-
if b.order.Order == "" {
84-
b.order.Order = ASC
85-
}
82+
if b.order.Field != "" {
83+
if b.order.Order == "" {
84+
b.order.Order = ASC
85+
}
8686

87-
b.ctx = OrderBy(b.ctx, b.order.Field, b.order.Order)
88-
}
87+
b.ctx = OrderBy(b.ctx, b.order.Field, b.order.Order)
88+
}
8989

90-
return b.ctx
90+
return b.ctx
9191
}

factory.go

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,37 +7,37 @@
77
package pagehelper
88

99
import (
10-
"github.com/xfali/gobatis/executor"
11-
"github.com/xfali/gobatis/logging"
12-
"github.com/xfali/gobatis/session"
13-
"github.com/xfali/gobatis/transaction"
10+
"github.com/xfali/gobatis/executor"
11+
"github.com/xfali/gobatis/logging"
12+
"github.com/xfali/gobatis/session"
13+
"github.com/xfali/gobatis/transaction"
1414
)
1515

1616
type IFactory struct {
17-
InitDBFunc func() error
18-
CreateTransactionFunc func() transaction.Transaction
19-
CreateExecutorFunc func(transaction.Transaction) executor.Executor
20-
CreateSessionFunc func() session.SqlSession
21-
LogFuncFunc func() logging.LogFunc
17+
InitDBFunc func() error
18+
CreateTransactionFunc func() transaction.Transaction
19+
CreateExecutorFunc func(transaction.Transaction) executor.Executor
20+
CreateSessionFunc func() session.SqlSession
21+
LogFuncFunc func() logging.LogFunc
2222
}
2323

2424
func (f *IFactory) InitDB() error {
25-
return f.InitDBFunc()
25+
return f.InitDBFunc()
2626
}
2727

2828
func (f *IFactory) CreateTransaction() transaction.Transaction {
29-
return f.CreateTransactionFunc()
29+
return f.CreateTransactionFunc()
3030
}
3131

3232
func (f *IFactory) CreateSession() session.SqlSession {
33-
tx := f.CreateTransactionFunc()
34-
return session.NewDefaultSqlSession(f.LogFuncFunc(), tx, f.CreateExecutorFunc(tx), false)
33+
tx := f.CreateTransactionFunc()
34+
return session.NewDefaultSqlSession(f.LogFuncFunc(), tx, f.CreateExecutorFunc(tx), false)
3535
}
3636

3737
func (f *IFactory) LogFunc() logging.LogFunc {
38-
return f.LogFuncFunc()
38+
return f.LogFuncFunc()
3939
}
4040

4141
func (f *IFactory) CreateExecutor(transaction transaction.Transaction) executor.Executor {
42-
return f.CreateExecutorFunc(transaction)
42+
return f.CreateExecutorFunc(transaction)
4343
}

modifier.go

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,33 +6,33 @@
66
package pagehelper
77

88
const (
9-
DriverDummy = "default"
10-
DriverMysql = "mysql"
11-
DriverPostgre = "postgre"
12-
DriverOracle = "oracle"
13-
DriverSqlServer = "sqlserver"
9+
DriverDummy = "default"
10+
DriverMysql = "mysql"
11+
DriverPostgre = "postgre"
12+
DriverOracle = "oracle"
13+
DriverSqlServer = "sqlserver"
1414
)
1515

1616
type Modifier struct {
17-
OrderBy func(sql string, p *OrderByInfo) string
18-
Page func(sql string, p *PageInfo) string
19-
Count func(sql, countColumn string) string
17+
OrderBy func(sql string, p *OrderByInfo) string
18+
Page func(sql string, p *PageInfo) string
19+
Count func(sql, countColumn string) string
2020
}
2121

2222
var DummyModifier = Modifier{
23-
OrderBy: DummyModifyOrderBy,
24-
Page: DummyModifyPage,
25-
Count: DummyModifyCount,
23+
OrderBy: DummyModifyOrderBy,
24+
Page: DummyModifyPage,
25+
Count: DummyModifyCount,
2626
}
2727

2828
func DummyModifyOrderBy(sql string, p *OrderByInfo) string {
29-
return sql
29+
return sql
3030
}
3131

3232
func DummyModifyPage(sql string, p *PageInfo) string {
33-
return sql
33+
return sql
3434
}
3535

3636
func DummyModifyCount(sql, countColumn string) string {
37-
return sql
37+
return sql
3838
}

modifier_mysql.go

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -6,44 +6,44 @@
66
package pagehelper
77

88
import (
9-
"fmt"
10-
"strings"
9+
"fmt"
10+
"strings"
1111
)
1212

1313
var MysqlModifier = Modifier{
14-
OrderBy: MysqlModifyOrderBy,
15-
Page: MysqlModifyPage,
16-
Count: MysqlModifyCount,
14+
OrderBy: MysqlModifyOrderBy,
15+
Page: MysqlModifyPage,
16+
Count: MysqlModifyCount,
1717
}
1818

1919
func MysqlModifyOrderBy(sql string, p *OrderByInfo) string {
20-
if p.Field == "" {
21-
return sql
22-
}
23-
b := strings.Builder{}
24-
b.WriteString(strings.TrimSpace(sql))
25-
b.WriteString(fmt.Sprintf(" ORDER BY `%s` %s ", p.Field, p.Order))
26-
return b.String()
20+
if p.Field == "" {
21+
return sql
22+
}
23+
b := strings.Builder{}
24+
b.WriteString(strings.TrimSpace(sql))
25+
b.WriteString(fmt.Sprintf(" ORDER BY `%s` %s ", p.Field, p.Order))
26+
return b.String()
2727
}
2828

2929
func MysqlModifyPage(sql string, p *PageInfo) string {
30-
b := strings.Builder{}
31-
b.WriteString(strings.TrimSpace(sql))
32-
b.WriteString(fmt.Sprintf(" LIMIT %d, %d ", p.Page*p.PageSize, p.PageSize))
33-
return b.String()
30+
b := strings.Builder{}
31+
b.WriteString(strings.TrimSpace(sql))
32+
b.WriteString(fmt.Sprintf(" LIMIT %d, %d ", p.Page*p.PageSize, p.PageSize))
33+
return b.String()
3434
}
3535

3636
func MysqlModifyCount(sql, countColumn string) string {
37-
if countColumn == "" {
38-
countColumn = "0"
39-
} else {
40-
countColumn = "`" + countColumn + "`"
41-
}
42-
b := strings.Builder{}
43-
b.WriteString("SELECT COUNT(")
44-
b.WriteString(countColumn)
45-
b.WriteString(") FROM (")
46-
b.WriteString(strings.TrimSpace(sql))
47-
b.WriteString(") AS __hp_tempCountTl")
48-
return b.String()
37+
if countColumn == "" {
38+
countColumn = "0"
39+
} else {
40+
countColumn = "`" + countColumn + "`"
41+
}
42+
b := strings.Builder{}
43+
b.WriteString("SELECT COUNT(")
44+
b.WriteString(countColumn)
45+
b.WriteString(") FROM (")
46+
b.WriteString(strings.TrimSpace(sql))
47+
b.WriteString(") AS __hp_tempCountTl")
48+
return b.String()
4949
}

modifier_oracle.go

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -6,47 +6,47 @@
66
package pagehelper
77

88
import (
9-
"fmt"
10-
"strings"
9+
"fmt"
10+
"strings"
1111
)
1212

1313
var OracleModifier = Modifier{
14-
OrderBy: OracleModifyOrderBy,
15-
Page: OracleModifyPage,
16-
Count: OracleModifyCount,
14+
OrderBy: OracleModifyOrderBy,
15+
Page: OracleModifyPage,
16+
Count: OracleModifyCount,
1717
}
1818

1919
func OracleModifyOrderBy(sql string, p *OrderByInfo) string {
20-
if p.Field == "" {
21-
return sql
22-
}
23-
b := strings.Builder{}
24-
b.WriteString(strings.TrimSpace(sql))
25-
b.WriteString(fmt.Sprintf(" ORDER BY `%s` %s ", p.Field, p.Order))
26-
return b.String()
20+
if p.Field == "" {
21+
return sql
22+
}
23+
b := strings.Builder{}
24+
b.WriteString(strings.TrimSpace(sql))
25+
b.WriteString(fmt.Sprintf(" ORDER BY `%s` %s ", p.Field, p.Order))
26+
return b.String()
2727
}
2828

2929
func OracleModifyPage(sql string, p *PageInfo) string {
30-
b := strings.Builder{}
31-
b.WriteString("SELECT * FROM ( ")
32-
b.WriteString(" SELECT __hp_tempPageTl.*, ROWNUM ROW_ID FROM ( ")
33-
b.WriteString(strings.TrimSpace(sql))
34-
b.WriteString(" ) __hp_tempPageTl)")
35-
b.WriteString(fmt.Sprintf(" WHERE ROW_ID <= %d AND ROW_ID > %d ", p.Page*p.PageSize, p.PageSize))
36-
return b.String()
30+
b := strings.Builder{}
31+
b.WriteString("SELECT * FROM ( ")
32+
b.WriteString(" SELECT __hp_tempPageTl.*, ROWNUM ROW_ID FROM ( ")
33+
b.WriteString(strings.TrimSpace(sql))
34+
b.WriteString(" ) __hp_tempPageTl)")
35+
b.WriteString(fmt.Sprintf(" WHERE ROW_ID <= %d AND ROW_ID > %d ", p.Page*p.PageSize, p.PageSize))
36+
return b.String()
3737
}
3838

3939
func OracleModifyCount(sql, countColumn string) string {
40-
if countColumn == "" {
41-
countColumn = "0"
42-
} else {
43-
countColumn = "`" + countColumn + "`"
44-
}
45-
b := strings.Builder{}
46-
b.WriteString("SELECT COUNT(")
47-
b.WriteString(countColumn)
48-
b.WriteString(") FROM (")
49-
b.WriteString(strings.TrimSpace(sql))
50-
b.WriteString(") AS __hp_tempCountTl")
51-
return b.String()
40+
if countColumn == "" {
41+
countColumn = "0"
42+
} else {
43+
countColumn = "`" + countColumn + "`"
44+
}
45+
b := strings.Builder{}
46+
b.WriteString("SELECT COUNT(")
47+
b.WriteString(countColumn)
48+
b.WriteString(") FROM (")
49+
b.WriteString(strings.TrimSpace(sql))
50+
b.WriteString(") AS __hp_tempCountTl")
51+
return b.String()
5252
}

0 commit comments

Comments
 (0)