public async Task <IActionResult> VerifiedDisaster(VerifiedDisasterRequest request) { ActionResponse response; try { bool result = await _businessLogic.UpdateDocumentAsync(request); response = new ActionResponse((result) ? StatusCodes.Status200OK : StatusCodes.Status422UnprocessableEntity); } catch (Exception ex) { response = new ActionResponse(StatusCodes.Status500InternalServerError); response.StatusDescription += ex.Message.ToString(); } return(StatusCode(response.StatusCode, response)); }
public async Task <bool> UpdateDocumentAsync(object request = null) { VerifiedDisasterRequest request_ = (VerifiedDisasterRequest)request; ReportedDisaster oldDisaster = await _disasterCollection.GetAsync(request_.ReferenceCode); var copier = new ClassValueCopier(); ReportedDisaster newDisaster = copier.ConvertAndCopy(request_, oldDisaster); newDisaster.LastUpdatedBy = request_.VerifiedBy; newDisaster.IsClosed = false; bool result = await _disasterCollection.UpdateAsync(newDisaster); if (result && newDisaster.IsInfoTrue) { VerifiedDisasterMessage verifiedDisaster = copier.ConvertAndCopy <VerifiedDisasterMessage, ReportedDisaster>(newDisaster); string data = JsonConvert.SerializeObject(verifiedDisaster); await Mqtt.MqttPublish("RSCD/Message/Disaster/Verified", data); } return(result); }