public async Task ExecuteEvent(SlackEvent slackEvent) { GetNotesQueryResult results = await _mediator.Send(new GetNotesQuery(slackEvent.Event.User, null, null, GetNotesQueryType.GetUserNotes)); if (results.Result == QueryResult.NotFound) { await _disappearingSlackMessageProvider.SendDisappearingSlackMessage( text : Constants.Constants.MessageNoUserNotesFound, channel : slackEvent.Event.Channel, attachment : ""); return; } string cacheId = Guid.NewGuid().ToString(); await _mediator.Send(new SetCacheItem(cacheId, results.Documents)); dynamic notesAttachment = _attachmentGenerator.GenerateAttachment(results.Documents, cacheId, 1); await _disappearingSlackMessageProvider.SendDisappearingSlackMessage( text : Constants.Constants.MessageUserNotesFound, channel : slackEvent.Event.Channel, attachment : (string)notesAttachment); }
public async Task ExecuteEvent(SlackEvent slackEvent) { string textToSearch = GetEventKeywords(slackEvent.Event.Text); GetAuthorQueryResult authorResult = await _mediator.Send(new GetAuthorQuery(slackEvent.Event.User)); if (authorResult.Result == QueryResult.NotFound) { await _disappearingSlackMessageProvider.SendDisappearingSlackMessage( text : Constants.Constants.GetCannotSaveMessage("search"), channel : slackEvent.Event.Channel, attachment : ""); return; } GetNotesQueryResult userNotes = await _mediator.Send( new GetNotesQuery( slackEvent.Event.User, authorResult.Document.Team, textToSearch, GetNotesQueryType.SearchUserNotes)); GetNotesQueryResult teamNotes = await _mediator.Send( new GetNotesQuery( slackEvent.Event.User, authorResult.Document.Team, textToSearch, GetNotesQueryType.SearchTeamNotes)); if (userNotes.Result == QueryResult.NotFound && teamNotes.Result == QueryResult.NotFound) { await _disappearingSlackMessageProvider.SendDisappearingSlackMessage( text : Constants.Constants.MessageSearchNoNotes, channel : slackEvent.Event.Channel, attachment : ""); return; } StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(_attachmentGenerator.GenerateAttachment(userNotes.Documents)); stringBuilder.Append(_attachmentGenerator.GenerateAttachment(teamNotes.Documents)); string notesAttachment = stringBuilder.ToString(); await _disappearingSlackMessageProvider.SendDisappearingSlackMessage( text : Constants.Constants.MessageSearchFoundNotes, channel : slackEvent.Event.Channel, attachment : notesAttachment); }