public async Task <IActionResult> GetByName(string name, bool isCheckName) { var requestId = Guid.NewGuid().ToString(); _logger.LogInformation($"RequestID:{requestId} - GetOpportunityByName called."); try { if (String.IsNullOrEmpty(name)) { _logger.LogError($"RequestID:{requestId} - GetOpportunityByName name == null."); return(NotFound($"RequestID:{requestId} - GetOpportunityByName Invalid parameter passed")); } var thisOpportunity = await _opportunityService.GetItemByNameAsync(name, isCheckName, requestId); if (thisOpportunity == null) { _logger.LogError($"RequestID:{requestId} - GetOpportunityByName no opporunities found."); return(NotFound($"RequestID:{requestId} - GetOpportunityByName no opportunities found")); } return(Ok(JObject.FromObject(thisOpportunity))); } catch (Exception ex) { _logger.LogError($"RequestID:{requestId} - GetOpportunityByName error: {ex.Message}"); var errorResponse = JsonErrorResponse.BadRequest($"GetOpportunityByName error: {ex.Message} ", requestId); return(BadRequest(errorResponse)); } }
public async Task <HttpResponseMessage> Post([FromBody] Activity activity) { var requestId = $"bot_{Guid.NewGuid().ToString()}"; _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post called."); try { _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.ServiceUrl: {activity.ServiceUrl}"); _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.ChannelId: {activity.ChannelId}"); var channelDataJson = JObject.FromObject(activity.ChannelData); var activityJson = JObject.FromObject(activity); _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.channelData: {activityJson}"); //var teamsChannelData = (TeamsChannelData)activity.ChannelData; _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.channelData: {channelDataJson["team"]["name"].ToString()} - {channelDataJson["team"]["id"].ToString()}"); await _cardNotificationService.HandleIncomingRequestAsync(activity, _connectorClient); // Update the opportunity with the channelId var opportunity = await _opportunityService.GetItemByNameAsync(channelDataJson["team"]["name"].ToString(), false, requestId); if (opportunity != null) { //TODO : WAVE-4 GENERIC ACCELERATOR Change : start var obj = opportunity.MetaDataFields.FirstOrDefault(x => x.DisplayName == "OpportunityChannelId") ?? null; if (obj != null) { obj.Values = channelDataJson["team"]["id"].ToString(); } else { opportunity.MetaDataFields.Add(new OpportunityMetaDataFields { DisplayName = "DisbursementSchedule", Values = channelDataJson["team"]["id"].ToString(), FieldType = FieldType.String }); } //opportunity.OpportunityChannelId = channelDataJson["team"]["id"].ToString(); //TODO : WAVE-4 GENERIC ACCELERATOR Change : end await _opportunityService.UpdateItemAsync(opportunity, requestId); } var resp = new HttpResponseMessage(HttpStatusCode.OK); resp.Content = new StringContent($"<html><body>Message received.</body></html>", System.Text.Encoding.UTF8, @"text/html"); return(resp); } catch (Exception ex) { _logger.LogError($"RequestID:{requestId} MessagesController_Post error: {ex.Message}"); var errorResponse = JsonErrorResponse.BadRequest($"MessagesController_Post error: {ex} ", requestId); var resp = new HttpResponseMessage(HttpStatusCode.BadRequest); resp.Content = new StringContent($"<html><body>Error: {errorResponse} </body></html>", System.Text.Encoding.UTF8, @"text/html"); return(resp); } }
public async Task <HttpResponseMessage> Post([FromBody] Activity activity) { var requestId = $"bot_{Guid.NewGuid().ToString()}"; _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post called."); try { _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.ServiceUrl: {activity.ServiceUrl}"); _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.ChannelId: {activity.ChannelId}"); var channelDataJson = JObject.FromObject(activity.ChannelData); var activityJson = JObject.FromObject(activity); _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.channelData: {activityJson}"); //var teamsChannelData = (TeamsChannelData)activity.ChannelData; _logger.LogInformation($"RequestID:{requestId} - MessagesController_Post activity.channelData: {channelDataJson["team"]["name"].ToString()} - {channelDataJson["team"]["id"].ToString()}"); var connector = new ConnectorClient(new Uri(activity.ServiceUrl), _microsoftAppCredentials); var response = await _cardNotificationService.HandleIncomingRequestAsync(activity, _connectorClient); // Update the opportunity with the channelId var opportunity = await _opportunityService.GetItemByNameAsync(channelDataJson["team"]["name"].ToString(), false, requestId); if (opportunity != null) { opportunity.OpportunityChannelId = channelDataJson["team"]["id"].ToString(); var updateOpp = await _opportunityService.UpdateItemAsync(opportunity, requestId); } var resp = new HttpResponseMessage(HttpStatusCode.OK); resp.Content = new StringContent($"<html><body>Message received.</body></html>", System.Text.Encoding.UTF8, @"text/html"); return(resp); } catch (Exception ex) { _logger.LogError($"RequestID:{requestId} MessagesController_Post error: {ex.Message}"); var errorResponse = JsonErrorResponse.BadRequest($"MessagesController_Post error: {ex} ", requestId); var resp = new HttpResponseMessage(HttpStatusCode.BadRequest); resp.Content = new StringContent($"<html><body>Error: {errorResponse} </body></html>", System.Text.Encoding.UTF8, @"text/html"); return(resp); } }