enhance(types):增加若干常用方法。
This commit is contained in:
parent
2c303cfba7
commit
b244fd5823
|
@ -14,6 +14,18 @@ type DateRange struct {
|
||||||
pgtype.Range[Date]
|
pgtype.Range[Date]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func NewEmptyDateRange() DateRange {
|
||||||
|
return DateRange{
|
||||||
|
Range: pgtype.Range[Date]{
|
||||||
|
Lower: MinDate(),
|
||||||
|
LowerType: pgtype.Unbounded,
|
||||||
|
Upper: MaxDate(),
|
||||||
|
UpperType: pgtype.Unbounded,
|
||||||
|
Valid: true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func NewDateRange(lower *Date, upper *Date) DateRange {
|
func NewDateRange(lower *Date, upper *Date) DateRange {
|
||||||
return DateRange{
|
return DateRange{
|
||||||
Range: pgtype.Range[Date]{
|
Range: pgtype.Range[Date]{
|
||||||
|
@ -78,3 +90,23 @@ func (dr *DateRange) UnmarshalJSON(data []byte) error {
|
||||||
dr.Range = r
|
dr.Range = r
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (dr *DateRange) SetLower(lower Date, bound pgtype.BoundType) {
|
||||||
|
dr.Range.Lower = lower
|
||||||
|
dr.Range.LowerType = bound
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dr *DateRange) SetLowerUnbounded() {
|
||||||
|
dr.Range.Lower = MinDate()
|
||||||
|
dr.Range.LowerType = pgtype.Unbounded
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dr *DateRange) SetUpper(upper Date, bound pgtype.BoundType) {
|
||||||
|
dr.Range.Upper = upper
|
||||||
|
dr.Range.UpperType = bound
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dr *DateRange) SetUpperUnbounded() {
|
||||||
|
dr.Range.Upper = MaxDate()
|
||||||
|
dr.Range.UpperType = pgtype.Unbounded
|
||||||
|
}
|
||||||
|
|
|
@ -14,6 +14,18 @@ type DateTimeRange struct {
|
||||||
pgtype.Range[DateTime]
|
pgtype.Range[DateTime]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func NewEmptyDateTimeRange() DateTimeRange {
|
||||||
|
return DateTimeRange{
|
||||||
|
Range: pgtype.Range[DateTime]{
|
||||||
|
Lower: MinDateTime(),
|
||||||
|
LowerType: pgtype.Unbounded,
|
||||||
|
Upper: MaxDateTime(),
|
||||||
|
UpperType: pgtype.Unbounded,
|
||||||
|
Valid: true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func NewDateTimeRange(lower *DateTime, upper *DateTime) DateTimeRange {
|
func NewDateTimeRange(lower *DateTime, upper *DateTime) DateTimeRange {
|
||||||
return DateTimeRange{
|
return DateTimeRange{
|
||||||
Range: pgtype.Range[DateTime]{
|
Range: pgtype.Range[DateTime]{
|
||||||
|
@ -78,3 +90,23 @@ func (dr *DateTimeRange) UnmarshalJSON(data []byte) error {
|
||||||
dr.Range = r
|
dr.Range = r
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (dr *DateTimeRange) SetLower(lower DateTime, bound pgtype.BoundType) {
|
||||||
|
dr.Range.Lower = lower
|
||||||
|
dr.Range.LowerType = bound
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dr *DateTimeRange) SetLowerUnbounded() {
|
||||||
|
dr.Range.Lower = MinDateTime()
|
||||||
|
dr.Range.LowerType = pgtype.Unbounded
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dr *DateTimeRange) SetUpper(upper DateTime, bound pgtype.BoundType) {
|
||||||
|
dr.Range.Upper = upper
|
||||||
|
dr.Range.UpperType = bound
|
||||||
|
}
|
||||||
|
|
||||||
|
func (dr *DateTimeRange) SetUpperUnbounded() {
|
||||||
|
dr.Range.Upper = MaxDateTime()
|
||||||
|
dr.Range.UpperType = pgtype.Unbounded
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user