From 98d2876e61f1bc26163c8456af18f70faaef4195 Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期一, 23 九月 2019 19:54:59 +0800
Subject: [PATCH] camera add task

---
 taskApi.go |  123 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 121 insertions(+), 2 deletions(-)

diff --git a/taskApi.go b/taskApi.go
index 6615c52..46d2020 100644
--- a/taskApi.go
+++ b/taskApi.go
@@ -1,7 +1,7 @@
 package dbapi
 
 import (
-	"dbapi/protomsg"
+	"basic.com/pubsub/protomsg.git"
 	"encoding/json"
 	"fmt"
 )
@@ -23,7 +23,126 @@
 		return taskInfos
 	}
 	bytes, _ := json.Marshal(res.Data)
-	fmt.Printf("TaskApi.FindAll:%s\n",string(bytes))
 	err = json.Unmarshal(bytes, &taskInfos)
 	return taskInfos
+}
+
+func (api TaskApi) FindAllTaskSdkRun() (taskSdks []protomsg.TaskSdkRun) {
+	taskInfos := api.FindAll()
+	if taskInfos !=nil {
+		for _,ti :=range taskInfos{
+			if !ti.Task.Enable {
+				continue
+			}
+			tsr := protomsg.TaskSdkRun{
+				Task:ti.Task,
+			}
+			m := make(map[string]string,0)
+			for _,s := range ti.Sdks{
+				if _,ok :=m[s.IpcId];!ok{
+					m[s.IpcId] = s.IpcId
+					tsr.Sdks = append(tsr.Sdks,&protomsg.SdkRun{
+						IpcId:s.IpcId,
+						SdkType:s.SdkType,
+					})
+				}
+			}
+
+			taskSdks = append(taskSdks,tsr)
+		}
+	}
+	return taskSdks
+}
+
+func (api TaskApi) Add(paramBody map[string]interface{}) (bool,interface{}) {
+	url := BASIC_URL + DATA_URL_PREFIX + "/task/addTask"
+	client := NewClient()
+	respBody, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
+	if err != nil {
+		return false,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		fmt.Println(err)
+		return false,nil
+	}
+	return res.Success,res.Data
+}
+
+func (api TaskApi) Delete(taskId string) (bool,interface{}){
+	url := BASIC_URL + DATA_URL_PREFIX + "/task/delete"
+	client := NewClient()
+	paramQuery :=make(map[string]string,0)
+	paramQuery["taskId"] = taskId
+	respBody, err := client.DoGetRequest(url, paramQuery, nil)
+	if err != nil {
+		return false,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		return false,nil
+	}
+	return res.Success,res.Data
+}
+
+func (api TaskApi) AddTaskSdk(paramBody map[string]interface{}) (bool,interface{}) {
+	url := BASIC_URL + DATA_URL_PREFIX + "/task/addTaskSdk"
+	client := NewClient()
+	respBody, err := client.DoPostRequest(url,CONTENT_TYPE_JSON, paramBody, nil,nil)
+	if err != nil {
+		return false,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		return false,nil
+	}
+	return res.Success,res.Data
+}
+
+func (api TaskApi) UpdateTaskName(taskId string, taskName string) bool {
+	url := BASIC_URL + DATA_URL_PREFIX + "/task/updateTaskName"
+	client := NewClient()
+	paramBody := make(map[string]interface{},0)
+	paramBody["taskId"] = taskId
+	paramBody["taskName"] = taskName
+	respBody, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramBody, nil, nil)
+	if err != nil {
+		return false
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		return false
+	}
+	return res.Success
+}
+
+func (api TaskApi) UpdateTaskStatus(paramBody map[string]interface{}) (bool,interface{}) {
+	url := BASIC_URL + DATA_URL_PREFIX + "/task/updateTaskStatus"
+	client := NewClient()
+	respBody, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
+	if err != nil {
+		return false,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		return false,nil
+	}
+	return res.Success,res.Data
+}
+
+func (api TaskApi) DeleteTaskSdk(taskId string,sdkId string) (bool,interface{}) {
+	url := BASIC_URL + DATA_URL_PREFIX + "/task/delTaskSdk"
+	client := NewClient()
+	paramQuery :=make(map[string]string,0)
+	paramQuery["taskId"] = taskId
+	paramQuery["sdkId"] = sdkId
+	respBody, err := client.DoGetRequest(url, paramQuery, nil)
+	if err != nil {
+		return false,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		return false,nil
+	}
+	return res.Success,res.Data
 }
\ No newline at end of file

--
Gitblit v1.8.0