Exemplo n.º 1
0
        public async Task <IActionResult> BaseTrackingHierarchy(FilterBaseTrackingDto filterDto)
        {
            try
            {
                var result = await _reportService.GetHierarchyFile(filterDto);

                if (result.hasReport)
                {
                    _logger.Info($"Tentativa gerar relatório acompanhamento de bases com usuario id :{UserId} - relatorio gerado com sucesso!");
                    return(Ok(result.report));
                }
                else
                {
                    _logger.Warn($"Tentativa gerar relatório acompanhamento de bases com usuario id:{UserId} - Não foi encontrado registro no mes {filterDto.CurrentMonth} ano {filterDto.CurrentYear} e rede {filterDto.Network} e status {filterDto.FileStatusId}");
                    return(NotFound($"Tentativa gerar relatório acompanhamento de bases com usuario id:{UserId} - Não foi encontrado registro no mes {filterDto.CurrentMonth} ano {filterDto.CurrentYear} e rede {filterDto.Network} e status {filterDto.FileStatusId}"));
                }
            }
            catch (Exception ex)
            {
#if (!DEBUG)
                _logger.Fatal($"Tentativa gerar relatório acompanhamento de bases com usuario id:{UserId} - {ex.ToLogString(Environment.StackTrace)} - no mes {filterDto.CurrentMonth} ano {filterDto.CurrentYear} e rede {filterDto.Network} e status {filterDto.FileStatusId}");
#endif
                return(BadRequest($"Tentativa gerar relatório acompanhamento de bases com usuario id:{UserId} - {ex.ToLogString(Environment.StackTrace)} - no mes {filterDto.CurrentMonth} ano {filterDto.CurrentYear} e rede {filterDto.Network} e status {filterDto.FileStatusId}"));
            }
        }
Exemplo n.º 2
0
        public async Task <(bool hasReport, object report, string message)> GetSaleFile(FilterBaseTrackingDto filterDto)
        {
            var result = await _saleFileRepository.GetSaleFile(filterDto.Start, filterDto.Length, filterDto.CurrentMonth, filterDto.CurrentYear, filterDto.Network, filterDto.FileStatusId);

            if (!result.Rows.Any())
            {
                return(false, null, "Nenhum registro encontrado");
            }

            var report = new
            {
                data = result.Rows.Select(x =>
                                          new[] {
                    x.User.Name,
                    x.Network.Name,
                    x.FileStatus.Description,
                    $"https://programamaistop.com.br/api/wwwroot/Content/Spreadsheet/Sale/{x.FileName}",
                    $"{x.CurrentMonth.ToString()}/{x.CurrentYear.ToString()}",
                    x.CreatedAt.ToString("dd/MM/yyyy")
                }).ToArray(),
                recordsTotal    = result.Count,
                recordsFiltered = result.Count
            };

            return(true, report, "Registros encontrado com sucesso!");
        }