sqlite的api,便于内部使用
liuxiaolong
2019-12-02 7b937d8c9891e0520aa2d1cce81bfdd01fa7d2b3
add fileAnalysis api
1个文件已添加
189 ■■■■■ 已修改文件
fileAnalysis.go 189 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fileAnalysis.go
New file
@@ -0,0 +1,189 @@
package dbapi
import (
    "basic.com/pubsub/protomsg.git"
    "encoding/json"
    "fmt"
    "strconv"
)
type FileAnalysisApi struct{
    Ip string
    Port int
}
func (api FileAnalysisApi) getBasicUrl() string {
    if api.Ip == "" {
        return BASIC_URL
    }
    if api.Ip == "" {
        api.Ip = DEFAULT_IP
    }
    if api.Port == 0 {
        api.Port = DEFAULT_PORT
    }
    return "http://"+api.Ip+":"+strconv.Itoa(api.Port)
}
func (api FileAnalysisApi) FindAllFile() (files []protomsg.FileAnalysis,err error){
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileAnalysis/findAllFile"
    client := NewClient()
    body, err := client.DoGetRequest(url, nil, nil)
    if err != nil {
        return files, err
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return files,err
    }
    bytes, _ := json.Marshal(res.Data)
    err = json.Unmarshal(bytes, &files)
    return files, err
}
func (api FileAnalysisApi) GetAnalysisFiles() (files []protomsg.FileAnalysis,err error){
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileAnalysis/getAnalysisFiles"
    client := NewClient()
    body, err := client.DoGetRequest(url, nil, nil)
    if err != nil {
        return files, err
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return files,err
    }
    bytes, _ := json.Marshal(res.Data)
    err = json.Unmarshal(bytes, &files)
    return files, err
}
func (api FileAnalysisApi) GetFileAnalysisSet() (set protomsg.FileAnalysisSetting,err error) {
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileSetting/show"
    client := NewClient()
    body, err := client.DoGetRequest(url, nil, nil)
    if err != nil {
        return set, err
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        return set,err
    }
    bytes, _ := json.Marshal(res.Data)
    err = json.Unmarshal(bytes, &set)
    return set, err
}
func (api FileAnalysisApi) UpdateProgress(id string, progress int) bool {
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileAnalysis/updateProgress"
    client := NewClient()
    paramBody := map[string]interface{} {
        "id":id,
        "progress": progress,
    }
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil)
    if err != nil {
        return false
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        fmt.Println(err)
        return false
    }
    return res.Success
}
func (api FileAnalysisApi) ChangeEnable(enable bool) bool {
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileSetting/changeEnable"
    client := NewClient()
    paramBody := map[string]interface{} {
        "enable":enable,
    }
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil)
    if err != nil {
        return false
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        fmt.Println(err)
        return false
    }
    return res.Success
}
func (api FileAnalysisApi) UpdateStatus(idArr []string, status int) bool {
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileAnalysis/updateStatus"
    client := NewClient()
    paramBody := map[string]interface{} {
        "ids":idArr,
        "status": status,
    }
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil)
    if err != nil {
        return false
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        fmt.Println(err)
        return false
    }
    return res.Success
}
func (api FileAnalysisApi) Delete(idArr []string) bool {
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileAnalysis/delete"
    client := NewClient()
    paramBody := map[string]interface{} {
        "ids":idArr,
    }
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil)
    if err != nil {
        return false
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        fmt.Println(err)
        return false
    }
    return res.Success
}
func (api FileAnalysisApi) SortFile(id string,direct int) bool {
    url := api.getBasicUrl() + DATA_URL_PREFIX + "/fileAnalysis/sortFile"
    client := NewClient()
    paramBody := map[string]interface{} {
        "id": id,
        "direct": direct,
    }
    body,err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody,nil,nil)
    if err != nil {
        return false
    }
    var res Result
    if err = json.Unmarshal(body, &res); err != nil {
        fmt.Println(err)
        return false
    }
    return res.Success
}