Beispiel #1
0
 public virtual void AlterarEmpresa(Empresa Empresa)
 {
     try
     {
         _EmpresaRepositorio.Atualizar(Empresa);
         _EmpresaRepositorio.Commit();
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Beispiel #2
0
 public ActionResult Post([FromBody] Empresa empresa)
 {
     try
     {
         if (empresa.Id > 0)
         {
             _empresaRepositorio.Atualizar(empresa);
         }
         _empresaRepositorio.Adicionar(empresa);
         return(Created("api/area", empresa));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.ToString()));
     }
 }
Beispiel #3
0
        public async Task <IActionResult> Edit(int id, EmpresaViewModel empresaViewModel, int?CEPBD, IFormFile Logo)
        {
            if (id != empresaViewModel.EmpresaId)
            {
                _logger.LogError("Empresa recebida diferenta da gravada no BD");
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                _logger.LogInformation("Atualizando a empresa");
                var empresa = await _empresaRepositorio.PegarPeloId(empresaViewModel.EmpresaId);

                empresa.NomeFantasia       = empresaViewModel.NomeFantasia;
                empresa.RazaoSocial        = empresaViewModel.RazaoSocial;
                empresa.CNPJ               = empresaViewModel.CNPJ;
                empresa.Unidade            = empresaViewModel.Unidade;
                empresa.Status             = empresaViewModel.Status;
                empresa.InscricaoEstadual  = empresaViewModel.InscricaoEstadual;
                empresa.InscricaoMunicipal = empresaViewModel.InscricaoMunicipal;
                empresa.CNES               = empresaViewModel.CNES;
                empresa.Numero             = empresaViewModel.Numero;
                _logger.LogInformation("Validando a logo da empresa");
                if (Logo != null)
                {
                    if (empresa.Logo != null)
                    {
                        string LogoEmpresa = empresa.Logo;
                        LogoEmpresa = LogoEmpresa.Replace("~", "wwwroot");
                        System.IO.File.Delete(LogoEmpresa);
                        _logger.LogInformation("Logo antigo da empresa removido");
                    }
                    _logger.LogInformation("Criando link da pasta");

                    var fileName = ContentDispositionHeaderValue.Parse(Logo.ContentDisposition).FileName.Trim('"');
                    //Assigning Unique Filename (Guid)
                    var myUniqueFileName = Convert.ToString(Guid.NewGuid());

                    //Getting file Extension
                    var FileExtension = Path.GetExtension(fileName);

                    // concating  FileName + FileExtension
                    var newFileName = myUniqueFileName + FileExtension;
                    // Combines two strings into a path.
                    fileName = Path.Combine(_hostingEnvironment.WebRootPath, "Imagens") + $@"\{newFileName}";
                    // if you want to store path of folder in database


                    using (FileStream fs = System.IO.File.Create(fileName))
                    {
                        Logo.CopyTo(fs);
                        fs.Flush();
                        empresa.Logo = "~/Imagens/" + newFileName;
                    }
                }
                _logger.LogInformation("Validando endereço da empresa");
                if (CEPBD == 0)
                {
                    _logger.LogInformation("Adicionando novo endereço ao banco");
                    Cep ceps = new Cep();
                    ceps.Logradouro  = empresaViewModel.Logradouro;
                    ceps.CEP         = empresaViewModel.CEP;
                    ceps.Bairro      = empresaViewModel.Bairro;
                    ceps.Cidade      = empresaViewModel.Cidade;
                    ceps.UF          = empresaViewModel.UF;
                    ceps.Complemento = empresaViewModel.Complemento;
                    _context.Add(ceps);
                    await _context.SaveChangesAsync();

                    _logger.LogInformation("associando a empresa");
                    empresa.CepId = ceps.CepId;
                }
                else
                {
                    empresa.CepId = CEPBD;
                }

                await _empresaRepositorio.Atualizar(empresa);

                _logger.LogInformation("Empresa Atualizada");
                TempData["Mensagem"] = "Atualizado com sucesso";
                return(RedirectToAction(nameof(Index)));
            }

            _logger.LogError("Erro ao atualizar a empresa");
            var listStatus = new SelectList(new[]
            {
                new { ID = "true", Name = "Ativo" },
                new { ID = "false", Name = "Inativo" },
            }, "ID", "Name");

            ViewData["StatusId"] = listStatus;
            var listUnidade = new SelectList(new[]
            {
                new { ID = "true", Name = "Sim" },
                new { ID = "false", Name = "Não" },
            }, "ID", "Name");

            ViewData["UnidadeId"] = listUnidade;
            return(View(empresaViewModel));
        }