From f83fbe1ce5afee1dbc8f75af9d9d6b07afa866c3 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期四, 22 八月 2019 09:52:32 +0800
Subject: [PATCH] add soApi

---
 sdkApi.go |  142 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 142 insertions(+), 0 deletions(-)

diff --git a/sdkApi.go b/sdkApi.go
index ddff79b..8b4709d 100644
--- a/sdkApi.go
+++ b/sdkApi.go
@@ -1 +1,143 @@
 package dbapi
+
+import (
+	"basic.com/pubsub/protomsg.git"
+	"encoding/json"
+	"fmt"
+)
+
+type SdkApi struct{
+}
+
+//淇濆瓨绠楁硶锛屾柊澧�(绠楁硶id涓虹┖)锛屾洿鏂帮紙绠楁硶id涓嶄负绌猴級
+func (api SdkApi)Save(paramBody map[string]interface{}) (bool,interface{}) {
+	flag := false
+	url := BASIC_URL + DATA_URL_PREFIX + "/sdk/saveSdk"
+	client := NewClient()
+	respBody, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
+	if err != nil {
+		return flag,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		fmt.Println(err)
+		return flag,nil
+	}
+	return res.Success,res.Data
+}
+
+//鏌ユ壘鎵�鏈夌畻娉�
+func (api SdkApi) FindAll(sdkName string)[]protomsg.Sdk{
+	var sdkArr []protomsg.Sdk
+	url := BASIC_URL + DATA_URL_PREFIX + "/sdk/findAllSdk"
+	client := NewClient()
+	paramMap := make(map[string]string, 0)
+	paramMap["sdkName"] = sdkName
+	respBody, err := client.DoGetRequest(url, paramMap, nil)
+	if err !=nil {
+		return sdkArr
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		fmt.Println(err)
+		return sdkArr
+	}
+	bytes, _ := json.Marshal(res.Data)
+	err = json.Unmarshal(bytes, &sdkArr)
+	return sdkArr
+}
+
+func (api SdkApi) FindAllSdkRun()(sdkRuns []protomsg.SdkRun){
+	sdkArr := api.FindAll("")
+	if len(sdkArr) == 0 {
+		return nil
+	}
+	idMap :=make(map[string]string,0)
+	for _,sdk := range sdkArr{
+		if sdk.IpcId !=""{
+			if _,ok :=idMap[sdk.IpcId];!ok{
+				idMap[sdk.IpcId] = sdk.IpcId
+				sdkRuns = append(sdkRuns,protomsg.SdkRun{
+					IpcId:sdk.IpcId,
+					SdkType:sdk.SdkType,
+				})
+			}
+		}
+	}
+	return sdkRuns
+}
+
+//鏌ユ壘绠楁硶id鐨剆lice
+func (api SdkApi) GetAllSdkIds() (ipcIds []string){
+	sdkArr := api.FindAll("")
+	if len(sdkArr) == 0 {
+		return nil
+	}
+	idMap :=make(map[string]string,0)
+	for _,sdk := range sdkArr{
+		if sdk.IpcId !=""{
+			if _,ok :=idMap[sdk.IpcId];!ok{
+				idMap[sdk.IpcId] = sdk.IpcId
+				ipcIds = append(ipcIds,sdk.IpcId)
+			}
+		}
+	}
+	return ipcIds
+}
+
+//閫氳繃id鑾峰彇绠楁硶淇℃伅
+func (api SdkApi) GetById(id string) (bool,interface{}){
+	url := BASIC_URL + DATA_URL_PREFIX + "/sdk/getById"
+	client := NewClient()
+	paramMap := make(map[string]string)
+	paramMap["id"] = id
+	respBody, err := client.DoGetRequest(url, paramMap, 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 SdkApi) FindByTaskId(taskId string) (flag bool,sdks []protomsg.Sdk) {
+	url := BASIC_URL + DATA_URL_PREFIX + "/sdk/findByTaskId"
+	client := NewClient()
+	paramMap := make(map[string]string)
+	paramMap["taskId"] = taskId
+	respBody, err := client.DoGetRequest(url, paramMap, nil)
+	if err !=nil {
+		return false,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		fmt.Println(err)
+		return false,nil
+	}
+	bytes, _ := json.Marshal(res.Data)
+	err = json.Unmarshal(bytes, &sdks)
+	return true,sdks
+}
+
+func (api SdkApi) GetSdkArgs(sdkId string, scope string) (b bool,args []protomsg.SdkArg) {
+	url := BASIC_URL + DATA_URL_PREFIX + "/sdkArg/getSdkArgs"
+	client := NewClient()
+	paramMap := make(map[string]string)
+	paramMap["sdkId"] = sdkId
+	paramMap["scope"] = scope
+	respBody, err := client.DoGetRequest(url, paramMap, nil)
+	if err !=nil {
+		return false,nil
+	}
+	var res Result
+	if err = json.Unmarshal(respBody, &res); err != nil {
+		fmt.Println(err)
+		return false,nil
+	}
+	bytes, _ := json.Marshal(res.Data)
+	err = json.Unmarshal(bytes, &args)
+	return true,args
+}
\ No newline at end of file

--
Gitblit v1.8.0