示例#1
0
 private static void ExcluirImagens(IEnumerable <string> imagensExcluidas)
 {
     foreach (var path in imagensExcluidas)
     {
         ArquivoHelper.RemoveArquivo(path);
     }
 }
示例#2
0
        public JsonResult ExcluirContato(ContatoModel alterarContato)
        {
            string conteudoRetorno = string.Empty;
            string codigoRetorno   = string.Empty;

            var listaContatos = lerContatos();

            var contato = listaContatos.Find(x => x.IdContato == alterarContato.IdContato);

            listaContatos.Remove(contato);

            var arquivoLista = JsonConvert.SerializeObject(listaContatos);

            ArquivoHelper.GravarContato(arquivoLista);

            codigoRetorno   = "0";
            conteudoRetorno = "Contato excluido com Sucesso!";

            return(Json(new
            {
                codigo = codigoRetorno,
                conteudo = conteudoRetorno
            },
                        "application/json",
                        Encoding.UTF8,
                        JsonRequestBehavior.AllowGet));
        }
示例#3
0
        private List <ContatoModel> lerContatos()
        {
            var arquivo       = ArquivoHelper.LerContato();
            var listaContatos = JsonConvert.DeserializeObject <List <ContatoModel> >(arquivo);

            return(listaContatos);
        }
示例#4
0
        public bool SalvarFoto(ArquivoDTO arquivoModel, int posicao)
        {
            try
            {
                Arquivo arquivo = new Arquivo()
                {
                    ContentType           = arquivoModel.ContentType,
                    Posicao               = posicao,
                    Nome                  = "album_foto_" + posicao,
                    CategoriaArquivoId    = (int)CategoriaArquivoEnum.FOTO,
                    SubCategoriaArquivoId = (int)SubCategoriaArquivoEnum.FOTO_ALBUM,
                    NomeSalvar            = arquivoModel.NomeSalvar,
                    Tamanho               = "500x500",
                    ArquivoArray          = arquivoModel.ArquivoArray
                };

                ArquivoHelper.SalvarArquivo(arquivo, _imagePath);

                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
        public void IniciarProcessamento(ContatoModel contato_)
        {
            var negociarCOntato = new ContatoBusiness();

            negociarCOntato.ValidarCamposObrigatorios(contato_);
            EmailHelper.Enviar("*****@*****.**", "*****@*****.**", "test", "MENSAGEM ERICK");

            ArquivoHelper.GravarLog("Gravado com sucesso");
        }
        public void InicializarPedido(PedidoModel pedido_)
        {
            // Mandamos validar o pedidos em um componente de negócio
            var negocio = new PedidoBusiness(pedido_);

            negocio.ValidarCamposObrigatorios();

            // Enviamos um e-mail e geramos um arquivo de LOG
            EmailHelper.Enviar(pedido_.Cliente.Email, "Seu Pedido foi Cadastrado", "Parabéns você comprou conosco...TEST ROX no curso de Padrão de Projetos.");

            // Geramos o LOG MIGUÉ
            ArquivoHelper.Gerar("Mais 1 pedido foi para conta");
        }
 private void OnIncluirImagem()
 {
     _dialogService.BuscaCamimhoImagem(async(path, bytes) =>
     {
         var imagem = new ProdutoImageUWPWrapper(new ProdutoImagem
         {
             Ordem   = GeraPróximaOrdem(),
             Dados   = _arquivoService.GetImagemBase64(bytes),
             Prefixo = ArquivoHelper.GetExtensaoArquivo(path)
         });
         await imagem.InitImage();
         ImagemSelecionada = imagem;
         Imagens.Add(imagem);
     });
 }
示例#8
0
        public IActionResult UploadImagem(IList <IFormFile> arquivos)
        {
            lstArquivos = new List <Arquivo>();
            if (arquivos.Count() > 0)
            {
                int          i = 0;
                MemoryStream ms;


                arquivos.ToList().ForEach(x =>
                {
                    //cria um memory stream para gravar os arquivos.
                    ms = new MemoryStream();
                    //lê os bytes do arquivo e o copia dentro da memoryStream.
                    x.OpenReadStream().CopyTo(ms);

                    lstArquivos.Add(

                        new Arquivo()
                    {
                        ContentType           = x.ContentType,
                        Posicao               = i++,
                        Nome                  = "panel_" + i.ToString(),
                        CategoriaArquivoId    = (int)CategoriaArquivoEnum.FOTO,
                        SubCategoriaArquivoId = (int)SubCategoriaArquivoEnum.FOTO_CARROUSSEL,
                        NomeSalvar            = x.FileName,
                        Tamanho               = "1500x500",
                        ArquivoArray          = ms.ToArray()
                    });
                });


                ArquivoHelper.SalvarLstArquivos(lstArquivos, _imagePath);

                //Seta o path do arquivo de acordo com o caminho salvo.
                SetFilesPath(lstArquivos, AssemblyConstants.GetPathImageByBuild(FileConstants.PROD, AssemblyConstants.PATH_IMAGE_INDEX_CARROUSSEL));

                //Formata os arquivos para uma entidade de transporte
                FormatAndSendImages(lstArquivos);

                //retorna uma lista com as imagens.
                var listReturn = _servicoImagem.GetArquivosBySubCategoria((int)SubCategoriaArquivoEnum.FOTO_CARROUSSEL);

                return(View("Index", lstArquivos));
            }

            return(View("Index"));
        }
        public void IniciarProcessamento(ContatoModel contato)
        {
            //action
            var negocioContato = new ContatoBusiness();

            negocioContato.ValidarCamposObrigatorios(contato);

            EmailHelper.Enviar("*****@*****.**",
                               "*****@*****.**",
                               "Contato cadastrado com sucesso",
                               "O contato foi aducionado");

            ArquivoHelper.GravarLog("Contato cadastrado");

            //assertion
        }
示例#10
0
        public async Task <Produto> GetProduto(Guid id)
        {
            var resultado = await _repo.LocalizaPorChavePrimariaAsync(id);

            Produto produto = null;

            if (resultado.Valido)
            {
                produto = resultado.Valor;
                foreach (var imagem in produto.Imagens)
                {
                    var path = ArquivoHelper.GetDiretorioDeImagensDeProdutos();
                    imagem.Preview = GeraCaminhoNoClient(imagem, Tamanho.Pequeno, produto.Id);
                    imagem.Dados   = GeraCaminhoNoClient(imagem, Tamanho.Original, produto.Id);
                }
            }
            return(produto);
        }
        public void Testar_Camadas_Sem_Padrao_Facade()
        {
            //PASSO 1 - Armazenar os dados
            var novoContato = new ContatoModel();

            novoContato.Nome  = "Zeh";
            novoContato.Email = "Email01";

            //PASSO 2 - Validação dos dados
            var negocioContato = new ContatoBusiness();

            negocioContato.ValidarCamposObrigatorios(novoContato);

            //PASSO 3 - Enviar o email
            EmailHelper.Enviar("*****@*****.**", "*****@*****.**", "Sem facade", "Sem facade");

            //PASSO 4 - Gravar o log
            ArquivoHelper.GravarLog("Gravado com sucesso");
        }
        private void OnAlterarImagem(short?ordem)
        {
            if (!ordem.HasValue)
            {
                return;
            }

            _dialogService.BuscaCamimhoImagem(async(path, bytes) =>
            {
                var imagem = Imagens.First(i => i.Ordem == ordem);

                imagem.Dados  = _arquivoService.GetImagemBase64(bytes);
                imagem.Sufixo = ArquivoHelper.GetExtensaoArquivo(path);

                await imagem.InitImage();

                ImagemSelecionada = imagem;
            });
        }
示例#13
0
        public void Testar_Camadas_Sem_Padrao_Facade()
        {
            //arrange
            var novoContato = new ContatoModel();

            novoContato.Nome  = "Adriano Mota";
            novoContato.Email = "*****@*****.**";

            //action
            var negocioContato = new ContatoBusiness();

            negocioContato.ValidarCamposObrigatorios(novoContato);

            EmailHelper.Enviar("*****@*****.**",
                               "*****@*****.**",
                               "Contato cadastrado com sucesso",
                               "O contato foi aducionado");

            ArquivoHelper.GravarLog("Contato cadastrado");
            //assertion
        }
示例#14
0
        private void SetFile(IFormFile file, int posicao)
        {
            MemoryStream ms = new MemoryStream();

            file.OpenReadStream().CopyTo(ms);


            var animal = new AnimalDTO()
            {
                FotoArquivo = new ArquivoDTO()
                {
                    ContentType  = file.ContentType,
                    NomeSalvar   = file.FileName,
                    ArquivoArray = ms.ToArray(),
                    Path         = ArquivoHelper.GetPathExetension(AssemblyConstants.
                                                                   GetPathImageByBuild(FileConstants.PROD, AssemblyConstants.PATH_IMAGE_ALBUM)
                                                                   , file.FileName, "album_foto_" + posicao)
                }
            };

            HttpContext.Session.SetObject("TransientAnimalFoto", animal);

            SalvarFoto(animal.FotoArquivo, posicao);
        }
示例#15
0
        private void SetFile(IFormFile file, int posicao)
        {
            MemoryStream ms = new MemoryStream();

            file.OpenReadStream().CopyTo(ms);


            var post = new PostDTO()
            {
                FotoPost = new ArquivoDTO()
                {
                    ContentType  = file.ContentType,
                    NomeSalvar   = file.FileName,
                    ArquivoArray = ms.ToArray(),
                    Path         = ArquivoHelper.GetPathExetension(AssemblyConstants.
                                                                   GetPathImageByBuild(FileConstants.PROD, AssemblyConstants.PATH_IMAGE_BLOG)
                                                                   , file.FileName, "blog" + "_" + posicao)
                }
            };

            HttpContext.Session.SetObject("TransientBlogFoto", post);

            SalvarFoto(post.FotoPost, posicao);
        }
 private void SetImagemPorPath(string path, ProdutoImagemWrapper imagem)
 {
     imagem.Sufixo = ArquivoHelper.GetExtensaoArquivo(path);
     imagem.Dados  = _arquivoService.GetImagemBase64(path);
 }
示例#17
0
 private void SetFilesPath(List <Arquivo> lstArquivos, string path)
 {
     lstArquivos
     .ForEach(x =>
              x.Path = ArquivoHelper.GetPathExetension(path, x.NomeSalvar, x.Nome));
 }
示例#18
0
        public JsonResult CadastrarNovoContato(ContatoModel novoContato)
        {
            string conteudoRetorno = string.Empty;
            string codigoRetorno   = string.Empty;

            var contato = Mapper.Map <ContatoModel, Agenda.Model.ContatoModel>(novoContato);

            if (ContatoBusiness.ValidarCamposObrigatorios(contato))
            {
                var arquivo = ArquivoHelper.LerContato();

                List <ContatoModel> listaContatos = null;

                if (arquivo == string.Empty)
                {
                    listaContatos = new List <ContatoModel>();
                }
                else
                {
                    listaContatos = JsonConvert.DeserializeObject <List <ContatoModel> >(arquivo);
                    if (listaContatos == null)
                    {
                        listaContatos = new List <ContatoModel>();
                    }
                }


                long id = 0;
                if (listaContatos.Count() == 0)
                {
                    id = 1;
                }
                else
                {
                    id = listaContatos.Max(x => x.IdContato) + 1;
                }

                novoContato.IdContato = id;

                listaContatos.Add(novoContato);

                var arquivoLista = JsonConvert.SerializeObject(listaContatos);
                ArquivoHelper.GravarContato(arquivoLista);

                codigoRetorno   = "0";
                conteudoRetorno = "Contato adicionado com Sucesso!";
            }
            else
            {
                codigoRetorno   = "-1";
                conteudoRetorno = "Favor verificar se Nome e/ou Telefone foram preenchidos!";
            }

            return(Json(new
            {
                codigo = codigoRetorno,
                conteudo = conteudoRetorno
            },
                        "application/json",
                        Encoding.UTF8,
                        JsonRequestBehavior.AllowGet));
        }
示例#19
0
        public async Task <IActionResult> Post(Arquivo arquivo)
        {
            try
            {
                string fileName    = "";
                string fileContent = "";
                if (arquivo.fileBytes != null && arquivo.fileBytes.Length > 0)
                {
                    fileName    = ArquivoHelper.ConvertBytesToFile(BASE_DIRECTORY_FILES, arquivo.fileBytes);
                    fileContent = ArquivoHelper.ReadFileContent(BASE_DIRECTORY_FILES, fileName);
                }
                else
                {
                    fileContent = arquivo.Nome;
                }


                var      arquivoPrevisto = new Arquivo();
                var      adquirente = new Adquirente();
                long     nroSequencial = 0;
                string   adquirenteNome = "";
                long     estabelecimento = 0;
                DateTime dataProcessamento, periodoIni, periodoFim;
                if (!string.IsNullOrEmpty(fileContent))
                {
                    int tipo = int.Parse(fileContent.Substring(0, 1));
                    switch (tipo)
                    {
                    // tipo '0'
                    case 0:
                        estabelecimento   = long.Parse(fileContent.Substring(1, 10));
                        dataProcessamento = new DateTime(int.Parse(fileContent.Substring(11, 4)),
                                                         int.Parse(fileContent.Substring(15, 2)),
                                                         int.Parse(fileContent.Substring(17, 2)));
                        periodoIni = new DateTime(int.Parse(fileContent.Substring(19, 4)),
                                                  int.Parse(fileContent.Substring(23, 2)),
                                                  int.Parse(fileContent.Substring(25, 2)));
                        periodoFim = new DateTime(int.Parse(fileContent.Substring(27, 4)),
                                                  int.Parse(fileContent.Substring(31, 2)),
                                                  int.Parse(fileContent.Substring(33, 2)));
                        nroSequencial  = long.Parse(fileContent.Substring(35, 7));
                        adquirenteNome = fileContent.Substring(42, 8);
                        adquirente     = await _repo.GetAdquirenteByName(adquirenteNome);

                        arquivoPrevisto = await _repo.GetArquivoByDataPrevisaoEAdquirenteId(dataProcessamento, adquirente.AdquirenteId);

                        if (adquirente != null && arquivoPrevisto != null && !string.IsNullOrEmpty(fileContent))
                        {
                            arquivoPrevisto.TipoRegistro      = 0;
                            arquivoPrevisto.Estabelecimento   = estabelecimento;
                            arquivoPrevisto.PeriodoInicial    = periodoIni;
                            arquivoPrevisto.PeriodoFinal      = periodoFim;
                            arquivoPrevisto.DataProcessamento = dataProcessamento;
                            arquivoPrevisto.Baixado           = true;
                            arquivoPrevisto.ArquivoLocalPath  = $"{BASE_DIRECTORY_FILES}/files/{fileName}";
                            arquivoPrevisto.ArquivoBackupPath = $"{BASE_DIRECTORY_FILES}/filesBackup/{fileName}";
                            arquivoPrevisto.NroSequencial     = nroSequencial;
                        }
                        break;

                    // tipo '1'
                    case 1:
                        dataProcessamento = new DateTime(int.Parse(fileContent.Substring(1, 4)),
                                                         int.Parse(fileContent.Substring(5, 2)),
                                                         int.Parse(fileContent.Substring(7, 2)));
                        estabelecimento = long.Parse(fileContent.Substring(9, 8));
                        adquirenteNome  = fileContent.Substring(17, 12);
                        nroSequencial   = long.Parse(fileContent.Substring(29, 7));

                        adquirente = await _repo.GetAdquirenteByName(adquirenteNome);

                        arquivoPrevisto = await _repo.GetArquivoByDataPrevisaoEAdquirenteId(dataProcessamento, adquirente.AdquirenteId);

                        if (adquirente != null && arquivoPrevisto != null && !string.IsNullOrEmpty(fileContent))
                        {
                            arquivoPrevisto.TipoRegistro      = 1;
                            arquivoPrevisto.Estabelecimento   = estabelecimento;
                            arquivoPrevisto.DataProcessamento = dataProcessamento;
                            arquivoPrevisto.Baixado           = true;
                            arquivoPrevisto.ArquivoLocalPath  = $"{AppDomain.CurrentDomain.BaseDirectory}/files/{fileName}";
                            arquivoPrevisto.ArquivoBackupPath = $"{AppDomain.CurrentDomain.BaseDirectory}/filesBackup/{fileName}";
                            arquivoPrevisto.NroSequencial     = nroSequencial;
                        }
                        break;
                    }



                    if (await _repo.SaveChangesAsync())
                    {
                        return(Created($"/api/Arquivo/{arquivoPrevisto.ArquivoId}", arquivoPrevisto));
                    }
                }
            }
            catch (System.Exception ex)
            {
                string message = ex.Message;
                return(this.StatusCode(StatusCodes.Status500InternalServerError, "Requisição falhou!"));
            }
            return(BadRequest());
        }
 public void GerarArquivo(String texto_)
 {
     // Geramos um arquivo de LOG
     // Geramos o LOG MIGUÉ
     ArquivoHelper.Gerar(texto_);
 }