public IndustriaDTO Put([FromBody] IndustriaDTO contrato, int id)
        {
            var entidade = _service.ObterPorId(id);

            if (entidade != null)
            {
                var contratoEditado = IndustriaParser.Parser(contrato, entidade);
                var entidadeEditada = _service.Alterar(contratoEditado);
                return(IndustriaParser.Parser(entidadeEditada));
            }

            return(null);
        }
        public static Industria.Domain.Entities.Industria Parser(IndustriaDTO contrato, Industria.Domain.Entities.Industria entidade)
        {
            if (entidade == null)
            {
                return(null);
            }

            entidade.Codigo    = contrato.Codigo ?? entidade.Codigo;
            entidade.Descricao = contrato.Descricao ?? entidade.Descricao;
            entidade.Tipo      = (ETipo)(contrato.Tipo != 0 ? contrato.Tipo : (int)entidade.Tipo);

            return(entidade);
        }
        public static Industria.Domain.Entities.Industria Parser(IndustriaDTO contrato)
        {
            if (contrato == null)
            {
                return(null);
            }

            var entidade = new Industria.Domain.Entities.Industria();

            entidade.Codigo    = contrato.Codigo;
            entidade.Descricao = contrato.Descricao;
            entidade.Tipo      = (Domain.Entities.Enum.ETipo)contrato.Tipo;

            return(entidade);
        }
        public static IndustriaDTO Parser(Industria.Domain.Entities.Industria entidade)
        {
            if (entidade == null)
            {
                return(null);
            }

            var contrato = new IndustriaDTO();

            contrato.Id        = entidade.Id;
            contrato.Codigo    = entidade.Codigo;
            contrato.Descricao = entidade.Descricao;
            contrato.Tipo      = (int)entidade.Tipo;

            return(contrato);
        }
 public IActionResult Post([FromBody] IndustriaDTO contrato)
 {
     try
     {
         var entidade = IndustriaParser.Parser(contrato);
         _service.Adicionar(entidade);
         return(Ok(entidade));
     }
     catch (SqlException)
     {
         return(BadRequest(new { message = "O campo 'Codigo' já está cadastrado na base, por favor altere para prosseguir com a operação." }));
     }
     catch (Exception ex)
     {
         return(BadRequest(new { message = "Um error inesperado aconteceu. Por favor verifique se o seu contrato está correto!" }));
     }
 }