private void Editar(DTOChamado chamado)
        {
            var e = Transform(chamado);

            var sql = string.Format(@"UPDATE chm_chamado
                            SET
                            sistema = {0},
                            data_criacao = '{1}',
                            assunto = '{2}',
                            descricao = '{3}',
                            status = {4},
                            pendente_com = {5},
                            horas = {6},
                            pg = {7},
                            obs = '{8}',
                            prioridade = {9},
                            tipo = {10}
                            WHERE id = {11};",
                                    e.Sistema,
                                    e.Data.ToString("yyyy-MM-dd HH:mm:ss"),
                                    e.Assunto,
                                    e.Descricao,
                                    e.Status,
                                    e.PendenteCom,
                                    e.Horas,
                                    e.Pago,
                                    e.Obs,
                                    e.Prioridade,
                                    e.TipoChamado,
                                    e.Id);

            _repositorioGenerico.ExecutaComandoSemRetorno(sql);
        }
 public void Salvar(DTOChamado chamado)
 {
     if (chamado.Id > 0)
     {
         Editar(chamado);
     }
     else
     {
         Incluir(chamado);
     }
 }
        public HttpResponseMessage PutChamado(DTOChamado chamado)
        {
            if (chamado == null)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            try
            {
                _chamadoServico.Salvar(chamado);
                return(Request.CreateResponse(HttpStatusCode.OK, chamado));
            }
            catch (Exception exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, exception));
            }
        }
        public void Salvar(DTOChamado chamado)
        {
            _chamadoRepositorio.Salvar(chamado);

            if (!string.IsNullOrEmpty(chamado.Comentario))
            {
                var historico = new DTOHistorico
                {
                    Chamado = new DTOChamado {
                        Id = chamado.Id
                    },
                    Data      = DateTime.Now,
                    Descricao = chamado.Comentario
                };

                _historicoServico.Salvar(historico);
            }
        }
        public static DTOChamado Transform(Chamado c)
        {
            var chamado = new DTOChamado
            {
                Id          = c.Id,
                Data        = c.Data,
                Assunto     = c.Assunto,
                Descricao   = c.Descricao,
                Obs         = c.Obs,
                Prioridade  = (PrioridadeChamado)c.Prioridade,
                Pago        = (SimNao)c.Pago,
                Horas       = c.Horas,
                PendenteCom = (PendenteComChamado)c.PendenteCom,
                TipoChamado = (TipoChamado)c.TipoChamado,
                Status      = (StatusChamado)c.Status
            };

            return(chamado);
        }
        private void Incluir(DTOChamado chamado)
        {
            var c = Transform(chamado);

            var sql = string.Format(@"
                INSERT INTO chm_chamado (
                    sistema, data_criacao, assunto, descricao, status, pendente_com, horas, pg, obs, prioridade, tipo)
                VALUES (
                     {0}, '{1}', '{2}', '{3}', {4}, {5}, {6}, {7}, '{8}', {9}, {10});",
                                    c.Sistema,
                                    c.Data.ToString("yyyy-MM-dd HH:mm:ss"),
                                    c.Assunto,
                                    c.Descricao,
                                    c.Status,
                                    c.PendenteCom,
                                    c.Horas,
                                    c.Pago,
                                    c.Obs,
                                    c.Prioridade,
                                    c.TipoChamado);

            _repositorioGenerico.ExecutaComandoSemRetorno(sql);
        }