public string updateHardwareAsset(string categoryid, string id, string name, string imageUrl, string sku, string description, Dictionary <string, string> dic) { Assest assest = new Assest(); assest.id = id; assest.name = name; assest.imageUrl = string.IsNullOrEmpty(imageUrl) ? "null" : imageUrl; assest.sku = sku; assest.description = description; assest.properties = dic; string data = JsonConvert.SerializeObject(assest); data = gp.HttpPut("http://" + httpurl + "/sitewhere/api/assets/categories/" + categoryid + "/hardware/" + id, data, tenanttoken); return(data); }
public void AssignmentSynchronize(object obj) { if (!AssignmentFlag) { return; } AssignmentFlag = false; try { DeviceResults dr = JsonConvert.DeserializeObject <DeviceResults>(sm.listDevices_excludeAssigned()); if (dr.numResults == "0") { AssignmentFlag = true; return; } List <Assest> list_assest = new List <Assest>(); AssetCategoryResults acr = JsonConvert.DeserializeObject <AssetCategoryResults>(sm.listAssetCategories()); foreach (AssetCategory atem in acr.results) { if (atem.id != "Specification") { AssestResults ar = JsonConvert.DeserializeObject <AssestResults>(sm.listCategoryAssets(atem.id)); list_assest.AddRange(ar.results); } } foreach (Device item in dr.results) { int index = item.hardwareId.IndexOf("_"); string assetId = item.hardwareId.Substring(0, index); Assest assest = list_assest.Find(f => f.id == assetId); sm.createDeviceAssignment(item.hardwareId, assest.assetCategoryId, assest.id); } } catch (Exception e) { logger.Error("AssignmentSynchronize异常:" + e.Message); } finally { AssignmentFlag = true; } }