sqlite的api,便于内部使用
liuxiaolong
2019-08-16 97765a7c55a40c4492ac66e5da2cf811c5ab4166
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
102
103
104
105
106
107
108
109
110
package dbapi
 
import (
    "basic.com/pubsub/protomsg.git"
    "encoding/json"
    "errors"
)
 
type DbTableApi struct {
 
}
 
func (dbt DbTableApi) AddDbTableInfo(paramBody map[string]interface{}) (bool,interface{}) {
    url := BASIC_URL + DATA_URL_PREFIX + "/dbtable/addDbTableInfo"
    client := NewClient()
    body,err := client.DoPutRequest(url,CONTENT_TYPE_JSON, paramBody,nil)
    if err != nil {
        return false,nil
    }
 
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return false,nil
    }
 
    return res.Success,res.Data
}
 
func (dbt DbTableApi) QueryDbTables(isSync string) (bool,interface{}) {
    url := BASIC_URL + DATA_URL_PREFIX + "/dbtable/queryDbTables/"+isSync
    client := NewClient()
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, nil,nil,nil)
    if err != nil {
        return false,nil
    }
 
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return false,nil
    }
 
    return res.Success,res.Data
}
 
func (dbt DbTableApi) UpdateDbTables(paramBody map[string]interface{}) (bool,interface{}) {
    url := BASIC_URL + DATA_URL_PREFIX + "/dbtable/updateDbTables"
    client := NewClient()
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil)
    if err != nil {
        return false,nil
    }
 
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return false,nil
    }
 
    return res.Success,res.Data
}
 
func (dbt DbTableApi) DeleteById(id string) (bool,interface{}) {
    url := BASIC_URL + DATA_URL_PREFIX + "/dbtable/deleteDBtablesById/"+id
    client := NewClient()
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, nil,nil,nil)
    if err != nil {
        return false,nil
    }
 
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return false,nil
    }
 
    return res.Success,res.Data
}
 
//根据多个底库id查询底库信息
func (dbt DbTableApi) DbtablesById(ids []string) (dts []protomsg.Dbtable,err error) {
    url := BASIC_URL + DATA_URL_PREFIX + "/dbtable/dbtablesByIds"
    client := NewClient()
    paramBody := map[string]interface{}{
        "ids": ids,
    }
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil)
    if err != nil {
        return nil,err
    }
 
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return nil,err
    }
    dataBytes, _ := json.Marshal(res.Data)
    if err = json.Unmarshal(dataBytes, &dts);err !=nil {
        return nil,err
    }
    return dts,nil
}
 
// 根据tableid 查询tablename
func (dbt DbTableApi) Dbtablename(tableId string) (tableName string,err error) {
    dts, e := dbt.DbtablesById([]string{tableId})
    if e !=nil {
        return "",e
    }
    if dts !=nil && len(dts) ==1 {
        return dts[0].TableName,nil
    }
    return "",errors.New("table not found")
}