From be43c562727ad6c4c1f68de65174067b34f135c1 Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期四, 24 十月 2019 15:27:48 +0800
Subject: [PATCH] fix url

---
 sdkApi.go |  118 ++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 97 insertions(+), 21 deletions(-)

diff --git a/sdkApi.go b/sdkApi.go
index 46dfe80..0c95d22 100644
--- a/sdkApi.go
+++ b/sdkApi.go
@@ -1,37 +1,51 @@
 package dbapi
 
 import (
-	"dbapi/protomsg"
+	"basic.com/pubsub/protomsg.git"
 	"encoding/json"
 	"fmt"
+	"strconv"
 )
 
 type SdkApi struct{
+	Ip string
+	Port int
+}
+
+func (api SdkApi) 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)
 }
 
 //淇濆瓨绠楁硶锛屾柊澧�(绠楁硶id涓虹┖)锛屾洿鏂帮紙绠楁硶id涓嶄负绌猴級
-func (api SdkApi)Save(sdk protomsg.Sdk)bool {
+func (api SdkApi)Save(paramBody map[string]interface{}) (bool,interface{}) {
 	flag := false
-	url := BASIC_URL + DATA_URL_PREFIX + "/sdk/save"
+	url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/saveSdk"
 	client := NewClient()
-	paramBody := Struct2Map(sdk)
-	respBody, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramBody, nil, nil)
+	respBody, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
 	if err != nil {
-		return flag
+		return flag,nil
 	}
 	var res Result
 	if err = json.Unmarshal(respBody, &res); err != nil {
 		fmt.Println(err)
-		return flag
+		return flag,nil
 	}
-	flag = res.Success
-	return flag
+	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"
+	url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/findAllSdk"
 	client := NewClient()
 	paramMap := make(map[string]string, 0)
 	paramMap["sdkName"] = sdkName
@@ -49,35 +63,97 @@
 	return sdkArr
 }
 
-//鏌ユ壘绠楁硶id鐨剆lice
-func (api SdkApi) GetAllSdkIds() (sdkIds []string){
+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{
-		sdkIds = append(sdkIds, sdk.Id)
+		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 sdkIds
+	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) protomsg.Sdk{
-	var sdk protomsg.Sdk
-	url := BASIC_URL + DATA_URL_PREFIX + "/sdk/getById"
+func (api SdkApi) GetById(id string) (bool,interface{}){
+	url := api.getBasicUrl() + 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 sdk
+		return false,nil
 	}
 	var res Result
 	if err = json.Unmarshal(respBody, &res); err != nil {
 		fmt.Println(err)
-		return sdk
+		return false,nil
+	}
+	return res.Success,res.Data
+}
+
+func (api SdkApi) FindByTaskId(taskId string) (flag bool,sdks []protomsg.Sdk) {
+	url := api.getBasicUrl() + 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, &sdk)
-	return sdk
+	err = json.Unmarshal(bytes, &sdks)
+	return true,sdks
+}
+
+func (api SdkApi) GetSdkArgs(sdkId string, scope string) (b bool,args []protomsg.SdkArg) {
+	url := api.getBasicUrl() + 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