public void DoWork(IEnumerable <JObject> data) { DateTime date = GetRandomDate(); string capability = GetRandomCapability(); int count = 0; foreach (JObject obj in data) { string objCapabilities = (string)obj.Property("capabilities").Value; string objDateString = (string)obj.Property("time").Value; objDateString = objDateString.Substring(0, objDateString.Length - 22); DateTime objDateTime = DateTime.Parse(objDateString); if (objCapabilities.Contains(capability) && objDateTime.CompareTo(date) > 0) { ++count; } } WifiCapability wifiCapability = new WifiCapability { Capability = capability, Count = count, Time = date.ToString("dd-MM-yyyy HH:mm") }; this.wifiCapabilityRepository.InsertWifiCapability(wifiCapability); mqttService.PublishMessage("wifi", JsonConvert.SerializeObject(wifiCapability)); }
public IActionResult Post([FromBody] WifiCapability wifiCapability) { using (var scope = new TransactionScope()) { wifiCapabilityRepository.InsertWifiCapability(wifiCapability); scope.Complete(); return(CreatedAtAction(nameof(Get), wifiCapability)); } }
public async Task InsertWifiCapability(WifiCapability wifiCapability) { try { await _context.WifiCapabilities.InsertOneAsync(wifiCapability); } catch (Exception ex) { // log or manage the exception throw ex; } }
public async Task <bool> UpdateWifiCapability(WifiCapability wifiCapability) { var filter = Builders <WifiCapability> .Filter.Eq("_id", wifiCapability.Id); ReplaceOneResult result = await _context.WifiCapabilities .ReplaceOneAsync(item => item.Id == wifiCapability.Id, wifiCapability, new UpdateOptions { IsUpsert = true }); return(result.IsAcknowledged); }
public async Task <IActionResult> Put([FromBody] WifiCapability wifiCapability) { if (wifiCapability != null) { bool success = await wifiCapabilityRepository.UpdateWifiCapability(wifiCapability); if (success) { return(new OkResult()); } return(BadRequest()); } return(new NoContentResult()); }