コード例 #1
0
        public async Task <IActionResult> GetUserAdmin(string cpf)
        {
            try
            {
                if (string.IsNullOrEmpty(cpf) || cpf.Length != 11)
                {
                    _logger.Warn($"Tentativa recuperar usuario no admin atravez do usuario com id :{UserId} - Não foi informado o cpf corretamente cpf: {cpf}");
                    return(NotFound("Não foi informado o cpf corretamente."));
                }

                var user = await _userService.GetUserAccessByCpf(cpf);

                var userLog = await _userStatusService.GetUserLog(user.Id);

                if (user.Id == 0)
                {
                    _logger.Warn($"Tentativa recuperar usuario no admin atravez do usuario com id :{UserId} - usuario não encontrado cpf: {cpf}");
                    return(NotFound());
                }


                var network = await _networkService.GetById(user.Network);

                var shop = await _shopService.GetById(user.Shop);

                var hierarchy = await _hierarchyFileService.GetFileDataByCnpj(shop.Cnpj);

                _logger.Info($"Tentativa recuperar usuario no admin atravez do usuario com id :{UserId} - usuario encontrado com sucesso cpf: {cpf}");

                return(Ok(new
                {
                    user,
                    userLog,
                    hierarchy,
                    network,
                    shop
                }));
            }
            catch (Exception ex)
            {
#if (!DEBUG)
                _logger.Fatal($"Tentativa recuperar usuario no admin atravez do usuario com id :{UserId} - {ex.ToLogString(Environment.StackTrace)}");
#endif
                return(BadRequest($"Tentativa recuperar usuario no admin atravez do usuario com id :{UserId} - {ex.ToLogString(Environment.StackTrace)}"));
            }
        }