github.com/artisanhe/tools@v1.0.1-0.20210607022958-19a8fef2eb04/httplib/request_presets.go (about) 1 package httplib 2 3 import ( 4 "github.com/artisanhe/tools/timelib" 5 ) 6 7 type Pager struct { 8 // 分页大小 9 // 默认为 10,-1 为查询所有 10 Size int32 `name:"size" in:"query" default:"10" validate:"@int32[-1,50]"` 11 // 分页偏移 12 // 默认为 0 13 Offset int32 `name:"offset,omitempty" in:"query" validate:"@int32[0,]"` 14 } 15 16 type CreateTimeRange struct { 17 // 创建起始时间 18 CreateStartTime timelib.MySQLTimestamp `name:"createStartTime,omitempty" in:"query"` 19 // 创建终止时间 20 CreateEndTime timelib.MySQLTimestamp `name:"createEndTime,omitempty" in:"query"` 21 } 22 23 func (createTimeRange CreateTimeRange) ValidateCreateEndTime() string { 24 if !createTimeRange.CreateEndTime.IsZero() { 25 if createTimeRange.CreateEndTime.Unix() < createTimeRange.CreateStartTime.Unix() { 26 return "终止时间不得小于开始时间" 27 } 28 } 29 return "" 30 } 31 32 type UpdateTimeRange struct { 33 // 更新起始时间 34 UpdateStartTime timelib.MySQLTimestamp `name:"updateStartTime" in:"query" default:"" ` 35 // 更新终止时间 36 UpdateEndTime timelib.MySQLTimestamp `name:"updateEndTime" in:"query" default:""` 37 } 38 39 func (updateTimeRange UpdateTimeRange) ValidateUpdateEndTime() string { 40 if !updateTimeRange.UpdateEndTime.IsZero() { 41 if updateTimeRange.UpdateEndTime.Unix() < updateTimeRange.UpdateStartTime.Unix() { 42 return "终止时间不得小于开始时间" 43 } 44 } 45 return "" 46 }