public async Task <ActionResultResponse <EventShowClientViewModel> > GetEventDetailShowClientAsync(string tenantId, string languageId, string seoLink) { try { using (SqlConnection con = new SqlConnection(_connectionString)) { if (con.State == ConnectionState.Closed) { await con.OpenAsync(); } DynamicParameters param = new DynamicParameters(); param.Add("@tenantId", tenantId); param.Add("@languageId", languageId); param.Add("@seoLink", seoLink); using (var multi = await con.QueryMultipleAsync("[dbo].[spEvent_GetDetailClient]", param, commandType: CommandType.StoredProcedure)) { var eventInfo = (await multi.ReadFirstOrDefaultAsync <EventDetailClientViewModel>()); var listEventDay = (await multi.ReadAsync <EventDayViewModel>()).ToList(); var listInvitations = (await multi.ReadAsync <RegisterSearchViewModel>()).ToList(); var albums = (await multi.ReadAsync <AlbumWithItemViewModel>()).ToList(); var eventShowClient = new EventShowClientViewModel { EventInfo = eventInfo, EventDays = listEventDay, Invitations = listInvitations, Albums = albums }; return(new ActionResultResponse <EventShowClientViewModel> { Data = eventShowClient }); } } } catch (Exception ex) { _logger.LogError(ex, "spEvent_GetDetailClient EventService Error."); return(new ActionResultResponse <EventShowClientViewModel>()); } }
public async Task <ActionResultResponse <EventShowClientViewModel> > GetEventDetailShowClient(string tenantId, string languageId, string seoLink) { var eventInfo = await _eventRepository.GetDetailClient(tenantId, languageId, seoLink); if (eventInfo == null) { return new ActionResultResponse <EventShowClientViewModel> { Code = -1, } } ; var listEventDay = await _eventDayRepository.Search(languageId, eventInfo.Id, true, 1, int.MaxValue, out int totalRows); var listInvitations = await _registerRepository.SearchClient(eventInfo.Id, languageId, null); var albumIds = await _eventAlbumRepository.Search(tenantId, eventInfo.Id, true, 1, short.MaxValue, out var totalAlbumRows); var apiUrls = _configuration.GetApiUrl(); var albums = await new HttpClientService() .PostAsync <SearchResult <AlbumWithItemViewModel> >($"{apiUrls.WebsiteApiUrl}/albums/{tenantId}/album-width-item/{languageId}", albumIds); var eventShowClient = new EventShowClientViewModel { EventInfo = eventInfo, EventDays = listEventDay, Invitations = listInvitations, Albums = albums?.Items, }; return(new ActionResultResponse <EventShowClientViewModel> { Data = eventShowClient }); }