From 7b937d8c9891e0520aa2d1cce81bfdd01fa7d2b3 Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期一, 02 十二月 2019 17:10:33 +0800
Subject: [PATCH] add fileAnalysis api

---
 fileAnalysis.go |  189 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 189 insertions(+), 0 deletions(-)

diff --git a/fileAnalysis.go b/fileAnalysis.go
new file mode 100644
index 0000000..731efa1
--- /dev/null
+++ b/fileAnalysis.go
@@ -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
+}
\ No newline at end of file

--
Gitblit v1.8.0