repository.go
2.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package repository
//import (
// "bytes"
// "encoding/gob"
// "fmt"
// "github.com/go-pg/pg/v10/orm"
// "github.com/linmadan/egglib-go/utils/snowflake"
// "strconv"
// "time"
//)
//
//var (
// ERR_EMPTY_TC = fmt.Errorf("transactionContext参数不能为nil")
//)
//
//type Query struct {
// *orm.Query
// queryOptions map[string]interface{}
// AffectRow int
//}
//
//func NewQuery(query *orm.Query, queryOptions map[string]interface{}) *Query {
// return &Query{
// query,
// queryOptions,
// 0,
// }
//}
//
//func (query *Query) SetWhere(condition, key string) *Query {
// if v, ok := query.queryOptions[key]; ok {
// if t, e := time.Parse(time.RFC3339, fmt.Sprintf("%v", v)); e == nil {
// if t.IsZero() {
// return query
// }
// }
// query.Where(condition, v)
// }
// return query
//}
//
//func (query *Query) SetLimit() *Query {
// if offset, ok := query.queryOptions["offset"]; ok {
// offset, _ := strconv.ParseInt(fmt.Sprintf("%v", offset), 10, 64)
// if offset > -1 {
// query.Offset(int(offset))
// }
// } else {
// query.Offset(0)
// }
// if limit, ok := query.queryOptions["limit"]; ok {
// limit, _ := strconv.ParseInt(fmt.Sprintf("%v", limit), 10, 64)
// if limit > -1 {
// query.Limit(int(limit))
// } else {
// query.Limit(20)
// }
// }
// return query
//}
//
//func (query *Query) SetOrder(orderColumn string, key string) *Query {
// //query.Order(condition...)
// //return query
// if v, ok := query.queryOptions[key]; ok {
// query.Order(fmt.Sprintf("%v %v", orderColumn, v))
// }
// return query
//}
//
//func (query *Query) HandleError(err error, errMsg string) error {
// if err.Error() == "pg: no rows in result set" {
// return fmt.Errorf(errMsg)
// } else {
// return err
// }
//}
//
//func NewSnowflakeId() (int64, error) {
// IdWorker, err := snowflake.NewIdWorker(2)
// if err != nil {
// return 0, err
// }
// id, err := IdWorker.NextId()
// return id, err
//}
//
////GobModelTransform 模型转换
//func GobModelTransform(dst interface{}, src interface{}) error {
// var data bytes.Buffer
// enc := gob.NewEncoder(&data)
// if err := enc.Encode(src); err != nil {
// return err
// }
// dec := gob.NewDecoder(&data)
// if err := dec.Decode(dst); err != nil {
// return err
// }
// return nil
//}