| | |
| | | package dbapi |
| | | |
| | | import ( |
| | | "analyweb/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(paramBody map[string]interface{}) (bool,interface{}) { |
| | | func (api SdkApi)Register(paramBody map[string]interface{}) (bool,interface{}) { |
| | | flag := false |
| | | url := BASIC_URL + DATA_URL_PREFIX + "/sdk/saveSdk" |
| | | url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/register" |
| | | client := NewClient() |
| | | respBody, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil) |
| | | if err != nil { |
| | |
| | | } |
| | | var res Result |
| | | if err = json.Unmarshal(respBody, &res); err != nil { |
| | | fmt.Println(err) |
| | | logPrint(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" |
| | | url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/findAllSdk" |
| | | client := NewClient() |
| | | paramMap := make(map[string]string, 0) |
| | | paramMap["sdkName"] = sdkName |
| | |
| | | } |
| | | var res Result |
| | | if err = json.Unmarshal(respBody, &res); err != nil { |
| | | fmt.Println(err) |
| | | logPrint(err) |
| | | return sdkArr |
| | | } |
| | | bytes, _ := json.Marshal(res.Data) |
| | |
| | | return sdkArr |
| | | } |
| | | |
| | | //查找算法id的slice |
| | | 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的slice |
| | | 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" |
| | | url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/getById" |
| | | client := NewClient() |
| | | paramMap := make(map[string]string) |
| | | paramMap["id"] = id |
| | |
| | | } |
| | | var res Result |
| | | if err = json.Unmarshal(respBody, &res); err != nil { |
| | | fmt.Println(err) |
| | | logPrint(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" |
| | | url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/findByTaskId" |
| | | client := NewClient() |
| | | paramMap := make(map[string]string) |
| | | paramMap["taskId"] = taskId |
| | |
| | | } |
| | | var res Result |
| | | if err = json.Unmarshal(respBody, &res); err != nil { |
| | | fmt.Println(err) |
| | | logPrint(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 := 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 { |
| | | logPrint(err) |
| | | return false,nil |
| | | } |
| | | bytes, _ := json.Marshal(res.Data) |
| | | err = json.Unmarshal(bytes, &args) |
| | | return true,args |
| | | } |
| | | |
| | | func (api SdkApi) GetAllSdkChanSet() (b bool, list []protomsg.SdkChanSet) { |
| | | url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/getAllSdkChanSet" |
| | | client := NewClient() |
| | | respBody,err := client.DoGetRequest(url, nil, nil) |
| | | if err !=nil { |
| | | return false,nil |
| | | } |
| | | var res Result |
| | | if err = json.Unmarshal(respBody, &res);err !=nil { |
| | | return false,nil |
| | | } |
| | | bytes,_ := json.Marshal(res.Data) |
| | | err = json.Unmarshal(bytes, &list) |
| | | if err !=nil { |
| | | return false, nil |
| | | } |
| | | return true, list |
| | | } |
| | | |
| | | func (api SdkApi) UpdateSdkChanSet(paramBody map[string]interface{}) bool { |
| | | url := api.getBasicUrl() + DATA_URL_PREFIX + "/sdk/updateSdkChanSet" |
| | | client := NewClient() |
| | | respBody,err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil) |
| | | if err !=nil { |
| | | return false |
| | | } |
| | | var res Result |
| | | if err = json.Unmarshal(respBody, &res);err !=nil { |
| | | return false |
| | | } |
| | | return res.Success |
| | | } |