From aa26c2c62693dcf7e8484fbc831e67b040db2fa0 Mon Sep 17 00:00:00 2001 From: liuxiaolong <liuxiaolong@aiotlink.com> Date: 星期六, 06 六月 2020 14:45:28 +0800 Subject: [PATCH] update token --- service/SdkDownLoad.go | 112 ++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 92 insertions(+), 20 deletions(-) diff --git a/service/SdkDownLoad.go b/service/SdkDownLoad.go index ed364ca..7726bf1 100644 --- a/service/SdkDownLoad.go +++ b/service/SdkDownLoad.go @@ -12,6 +12,9 @@ "os" "path/filepath" "strings" + "webserver/extend/config" + + reqUtil "webserver/extend/util" "webserver/util" @@ -127,30 +130,60 @@ } } -func GetSdkList(sdkName string) []map[string]interface{} { - // 寰呰繑鍥炵殑鏁版嵁 - sdks, idsCache := queryDatabase(sdkName) - - // 鏌ヨ鏈湴宸茬粡瀛樺湪鐨勭畻娉曞拰杩滅鐨勫叏閮ㄧ畻娉�, 鐒跺悗鍜屽凡瀹夎鐨勬瘮瀵�, 杩斿洖鍏ㄩ儴鍙敤鐨勭畻娉曠粍. 鏈畨瑁呯殑绠楁硶鍦ㄥ墠绔蛋涓嬭浇娴佺▼ - localSdks := GetLocalSdks() - for _, sdk := range localSdks { - id := sdk["id"].(string) - if !idsCache[id] { - idsCache[id] = true - - sdk["enable"] = false - sdk["installed"] = false - - // 涓嶈繑鍥炲弬鏁颁俊鎭� - delete(sdk, "args") - sdks = append(sdks, sdk) +func GetSdkList(sdkName string) []SdkInsOrUpgrade { + var api dbapi.SdkApi + localSdks := api.FindAll(sdkName) //鏈湴宸插畨瑁呮墍鏈夌畻娉� + localSdkM := make(map[string]SdkInsOrUpgrade) + for _,ls :=range localSdks { + siou := SdkInsOrUpgrade{ + Installed: true, } - + siou.Sdk = Sdk{ + Id: ls.Id, + IpcId: ls.IpcId, + SdkType: ls.SdkType, + SdkName: ls.SdkName, + Icon: ls.Icon, + Url: ls.Url, + CreateTime: ls.CreateTime, + CreateBy: ls.CreateBy, + UpdateTime: ls.UpdateTime, + Enable: ls.Enable, + DelFlag: int(ls.DelFlag), + IconBlob: ls.IconBlob, + Version: ls.Version, + } + localSdkM[siou.Id] = siou } - // 鐩墠杩樻病鏈夎繙绔畻娉曞簱, - // remoteSdks := getRemoteSdks() + //杩滅鍙敤鐨勭畻娉� + remoteSdks := findAllMySdk() + logger.Debug("remoteSdks:", remoteSdks) + for sdkId,sdk := range remoteSdks { + if v,ok := localSdkM[sdkId];ok { //鏈湴宸插畨瑁� + ls := v + if shouldVersionBeUpgrade(ls.Version, sdk.Version) { //鍒ゆ柇鐗堟湰鍙锋槸鍚﹂渶瑕佸崌绾� + ls.Installed = true + ls.IsUpgrade = true //闇�瑕佸崌绾� + ls.RemoteVersion = sdk.Version //杩滅鐨勭増鏈彿 + } + localSdkM[sdkId] = ls + } else { //鏈湴鏈畨瑁咃紝闇�瑕佸畨瑁� + bIns := SdkInsOrUpgrade{ + RemoteVersion: sdk.Version, + IsUpgrade: false, + Installed: false, + } + bIns.Sdk = sdk + localSdkM[sdkId] = bIns + } + } + + sdks := make([]SdkInsOrUpgrade, 0) + for _,v := range localSdkM { + sdks = append(sdks, v) + } return sdks } @@ -177,6 +210,45 @@ return sdks, ids } + +type shopSdks struct { + Sdks []Sdk `json:"sdks"` +} + +func findAllMySdk() map[string]Sdk { + token := "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjQ3NDUwMjU5MjMsInVzZXIiOiJ7XCJpZFwiOlwiZTZjY2QzNmQtNGYxNi00NmZjLTg4ZDUtMDczNjU4NjZkMjA1XCIsXCJwZXJtaXNzaW9uc1wiOltcInByb2R1Y3RNYW5nZTpwdWJsaXNoXCIsXCJjb2RlTWFuZ2U6dmlld1wiLFwiZGV2aWNlTWFuYWdlOmFkZFwiLFwiYWRtaW5NYW5hZ2VcIixcIm9yZGVyTWFuZ2VcIixcImRldmljZU1hbmFnZTp2aWV3XCIsXCJwcm9kdWN0TWFuZ2U6YWRkXCIsXCJhZG1pbk1hbmFnZTp2aWV3XCIsXCJjb2RlTWFuZ2U6YWRkXCIsXCJwcm9kdWN0TWFuZ2U6b2ZmU2FsZVwiLFwib3JkZXJNYW5nZTpjYW5jZWxcIixcInByb2R1Y3RDZW50ZXI6ZG93bmxvYWRcIixcInByb2R1Y3RDZW50ZXI6YnV5XCIsXCJwcm9kdWN0TWFuZ2U6dmlld1wiLFwiYXBpXCIsXCJob21lXCIsXCJvcmRlck1hbmdlOnBheVwiLFwiYWRtaW5NYW5hZ2U6YWRkXCIsXCJvcmRlck1hbmdlOmRvd25sb2FkXCIsXCJwcm9kdWN0Q2VudGVyXCIsXCJkZXZpY2VNYW5hZ2U6dW5iaW5kXCIsXCJvcmRlck1hbmdlOnZpZXdcIixcImFkbWluTWFuYWdlOmVkaXRcIixcImRldmljZU1hbmFnZVwiLFwidmlwTWFuYWdlOmFkZFwiLFwidmlwTWFuYWdlOnZpZXdcIixcInByb2R1Y3RDZW50ZXI6dmlld1wiLFwidmlwTWFuYWdlOmVkaXRcIixcInZpcE1hbmFnZVwiLFwicHJvZHVjdE1hbmdlOmVkaXRcIixcImNvZGVNYW5nZVwiLFwicHJvZHVjdE1hbmdlXCJdLFwidXNlcm5hbWVcIjpcImJhc2ljXCJ9In0.vwjAFkWuEyadRLvIOGK8LFE3MjpY3SQ7j6AlTXnQDG8" + url := "http://192.168.20.10:7004/data/api-s/sdk/findAllMySdk" + fmt.Println("token:", token, "url:", url) + paramBody := map[string]interface{} { + "serverId": config.Server.AnalyServerId, + "machineCode": "", + } + header := map[string]string { + "Authorization": token, + } + respBody, err := reqUtil.DoPostRequest(url, reqUtil.CONTENT_TYPE_JSON, paramBody, nil, header) + if err != nil { + logger.Debug("DoPostRequest err:", err) + return nil + } + var res dbapi.Result + if err = json.Unmarshal(respBody, &res); err != nil { + logger.Debug("unmarshal err:", err) + return nil + } + bytes, _ := json.Marshal(res.Data) + var ss shopSdks + if err := json.Unmarshal(bytes, &ss);err != nil { + logger.Debug("unmarshal err:", err) + return nil + } + m := make(map[string]Sdk) + for _,s := range ss.Sdks { + m[s.Id] = s + } + return m +} + func GetLocalSdks() []map[string]interface{} { var algos = []map[string]interface{}{} -- Gitblit v1.8.0