/// <summary>
        /// Método para ingresar un nuevo Ticket en la base de datos.
        /// </summary>
        /// <param name="infoTicket"></param>
        /// <returns></returns>
        public MensajesTickets RegistroTicket(Tickets infoTicket)
        {
            MensajesTickets msjTickets = new MensajesTickets();

            try
            {
                NpgsqlTransaction tran = conn_BD.BeginTransaction();
                using (NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO public.dcicc_tickets(id_usuario, id_laboratorio, id_detalleact, id_accesorio,estado_ticket, fechaapertura_ticket, descripcion_ticket, prioridad_ticket)VALUES (@iu,@il, @ida,@iac, @et, @fa, @dt, @pt);", conn_BD))
                {
                    cmd.Parameters.Add("iu", NpgsqlTypes.NpgsqlDbType.Integer).Value  = infoTicket.IdUsuario;
                    cmd.Parameters.Add("il", NpgsqlTypes.NpgsqlDbType.Integer).Value  = infoTicket.IdLaboratorio == 0 ? DBNull.Value : (object)infoTicket.IdLaboratorio;
                    cmd.Parameters.Add("ida", NpgsqlTypes.NpgsqlDbType.Integer).Value = infoTicket.IdDetalleActivo == 0 ? DBNull.Value : (object)infoTicket.IdDetalleActivo;
                    cmd.Parameters.Add("iac", NpgsqlTypes.NpgsqlDbType.Integer).Value = infoTicket.IdAccesorio == 0 ? DBNull.Value : (object)infoTicket.IdAccesorio;
                    cmd.Parameters.Add("et", NpgsqlTypes.NpgsqlDbType.Varchar).Value  = "ABIERTO";
                    cmd.Parameters.AddWithValue("fa", infoTicket.FechaAperturaTicket);
                    cmd.Parameters.Add("dt", NpgsqlTypes.NpgsqlDbType.Varchar).Value = infoTicket.DescripcionTicket.Trim();
                    cmd.Parameters.Add("pt", NpgsqlTypes.NpgsqlDbType.Varchar).Value = infoTicket.PrioridadTicket.Trim();
                    cmd.ExecuteNonQuery();
                }
                tran.Commit();
                conn_BD.Close();
                msjTickets.OperacionExitosa = true;
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjTickets.OperacionExitosa = false;
                msjTickets.MensajeError     = e.Message;
            }
            return(msjTickets);
        }
        /// <summary>
        /// Método para actualizar un Ticket en la base de datos.
        /// </summary>
        /// <param name="infoTicket"></param>
        /// <returns></returns>
        public MensajesTickets ActualizacionTicket(Tickets infoTicket)
        {
            MensajesTickets msjTickets = new MensajesTickets();

            try
            {
                if (infoTicket.EstadoTicket == "EN PROCESO")
                {
                    NpgsqlTransaction tran = conn_BD.BeginTransaction();
                    using (NpgsqlCommand cmd = new NpgsqlCommand("update dcicc_tickets set idresponsable_usuario=@iru,estado_ticket=@et,fecha_encurso_ticket=@fec,comentario_encurso_ticket=@cec where id_ticket=@it", conn_BD))
                    {
                        cmd.Parameters.Add("iru", NpgsqlTypes.NpgsqlDbType.Integer).Value         = infoTicket.IdResponsableUsuario;
                        cmd.Parameters.Add("et", NpgsqlTypes.NpgsqlDbType.Varchar).Value          = infoTicket.EstadoTicket.Trim();
                        cmd.Parameters.AddWithValue("fec", infoTicket.FechaEnProcesoTicket).Value = !string.IsNullOrEmpty(infoTicket.FechaEnProcesoTicket.ToString()) ? (object)infoTicket.FechaEnProcesoTicket : DBNull.Value;
                        cmd.Parameters.Add("cec", NpgsqlTypes.NpgsqlDbType.Varchar).Value         = !string.IsNullOrEmpty(infoTicket.ComentarioEnProcesoTicket) ? (object)infoTicket.ComentarioEnProcesoTicket.Trim() : DBNull.Value;
                        cmd.Parameters.Add("it", NpgsqlTypes.NpgsqlDbType.Integer).Value          = infoTicket.IdTicket;
                        cmd.ExecuteNonQuery();
                    }
                    tran.Commit();
                }
                else if (infoTicket.EstadoTicket == "EN ESPERA")
                {
                    NpgsqlTransaction tran = conn_BD.BeginTransaction();
                    using (NpgsqlCommand cmd = new NpgsqlCommand("update dcicc_tickets set idresponsable_usuario=@iru,estado_ticket=@et,fecha_enespera_ticket=@fee,comentario_enespera_ticket=@cee where id_ticket=@it", conn_BD))
                    {
                        cmd.Parameters.Add("iru", NpgsqlTypes.NpgsqlDbType.Integer).Value        = infoTicket.IdResponsableUsuario;
                        cmd.Parameters.Add("et", NpgsqlTypes.NpgsqlDbType.Varchar).Value         = infoTicket.EstadoTicket.Trim();
                        cmd.Parameters.AddWithValue("fee", infoTicket.FechaEnEsperaTicket).Value = !string.IsNullOrEmpty(infoTicket.FechaEnEsperaTicket.ToString()) ? (object)infoTicket.FechaEnEsperaTicket : DBNull.Value;
                        cmd.Parameters.Add("cee", NpgsqlTypes.NpgsqlDbType.Varchar).Value        = !string.IsNullOrEmpty(infoTicket.ComentarioEnEsperaTicket) ? (object)infoTicket.ComentarioEnEsperaTicket.Trim() : DBNull.Value;
                        cmd.Parameters.Add("it", NpgsqlTypes.NpgsqlDbType.Integer).Value         = infoTicket.IdTicket;
                        cmd.ExecuteNonQuery();
                    }
                    tran.Commit();
                }
                else if (infoTicket.EstadoTicket == "RESUELTO")
                {
                    NpgsqlTransaction tran = conn_BD.BeginTransaction();
                    using (NpgsqlCommand cmd = new NpgsqlCommand("update dcicc_tickets set idresponsable_usuario=@iru,estado_ticket=@et,fecha_solucion_ticket=@fs,comentario_resuelto_ticket=@cs where id_ticket=@it", conn_BD))
                    {
                        cmd.Parameters.Add("iru", NpgsqlTypes.NpgsqlDbType.Integer).Value       = infoTicket.IdResponsableUsuario;
                        cmd.Parameters.Add("et", NpgsqlTypes.NpgsqlDbType.Varchar).Value        = infoTicket.EstadoTicket.Trim();
                        cmd.Parameters.AddWithValue("fs", infoTicket.FechaResueltoTicket).Value = !string.IsNullOrEmpty(infoTicket.FechaResueltoTicket.ToString()) ? (object)infoTicket.FechaResueltoTicket : DBNull.Value;
                        cmd.Parameters.Add("cs", NpgsqlTypes.NpgsqlDbType.Varchar).Value        = !string.IsNullOrEmpty(infoTicket.ComentarioResueltoTicket) ? (object)infoTicket.ComentarioResueltoTicket.Trim() : DBNull.Value;
                        cmd.Parameters.Add("it", NpgsqlTypes.NpgsqlDbType.Integer).Value        = infoTicket.IdTicket;
                        cmd.ExecuteNonQuery();
                    }
                    tran.Commit();
                }
                conn_BD.Close();
                msjTickets.OperacionExitosa = true;
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjTickets.OperacionExitosa = false;
                msjTickets.MensajeError     = e.Message;
            }
            return(msjTickets);
        }
Esempio n. 3
0
        /// <summary>
        /// Método para obtener los Tickets de la base de datos.
        /// </summary>
        /// <param name="idUsuario">Usuario que ha generado los tickets</param>
        /// <returns></returns>
        public MensajesTickets ObtenerTicketsPorIdUsuario(int infoIdUsuario)
        {
            List <Tickets>  lstTickets = new List <Tickets>();
            MensajesTickets msjTickets = new MensajesTickets();

            try
            {
                using (NpgsqlCommand cmd = new NpgsqlCommand("select * from ticketsreportados() where id_usuario=@iu", conn_BD))
                {
                    cmd.Parameters.Add("iu", NpgsqlTypes.NpgsqlDbType.Integer).Value = infoIdUsuario;
                    using (NpgsqlDataReader dr = cmd.ExecuteReader())
                    {
                        while (dr.Read())
                        {
                            Tickets objTickets = new Tickets
                            {
                                IdTicket                  = dr[0] != DBNull.Value ? (int)dr[0] : 0,
                                IdUsuario                 = dr[1] != DBNull.Value ? (int)dr[1] : 0,
                                IdResponsableUsuario      = dr[2] != DBNull.Value ? (int)dr[2] : 0,
                                IdLaboratorio             = dr[3] != DBNull.Value ? (int)dr[3] : 0,
                                IdDetalleActivo           = dr[4] != DBNull.Value ? (int)dr[4] : 0,
                                IdAccesorio               = dr[5] != DBNull.Value ? (int)dr[5] : 0,
                                EstadoTicket              = dr[6].ToString().Trim(),
                                FechaAperturaTicket       = DateTime.Parse(dr[7].ToString().Trim()),
                                DescripcionTicket         = dr[8].ToString().Trim(),
                                ComentarioEnProcesoTicket = dr[9].ToString().Trim(),
                                ComentarioEnEsperaTicket  = dr[10].ToString().Trim(),
                                ComentarioResueltoTicket  = dr[11].ToString().Trim(),
                                FechaEnProcesoTicket      = dr[12] != DBNull.Value ? DateTime.Parse(dr[12].ToString().Trim()) : new DateTime(DateTime.Now.Year, 1, 1),
                                FechaEnEsperaTicket       = dr[13] != DBNull.Value ? DateTime.Parse(dr[13].ToString().Trim()) : new DateTime(DateTime.Now.Year, 1, 1),
                                FechaResueltoTicket       = dr[14] != DBNull.Value ? DateTime.Parse(dr[14].ToString().Trim()) : new DateTime(DateTime.Now.Year, 1, 1),
                                PrioridadTicket           = dr[15].ToString().Trim(),
                                NombreUsuario             = dr[16].ToString().Trim(),
                                NombreUsuarioResponsable  = dr[17].ToString().Trim(),
                                NombreLaboratorio         = dr[18].ToString().Trim(),
                                NombreDetalleActivo       = dr[19].ToString().Trim(),
                                NombreAccesorio           = dr[20].ToString().Trim(),
                            };
                            lstTickets.Add(objTickets);
                        }
                        conn_BD.Close();
                        msjTickets.ListaObjetoInventarios = lstTickets;
                        msjTickets.OperacionExitosa       = true;
                    }
                }
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjTickets.OperacionExitosa = false;
                msjTickets.MensajeError     = e.Message;
            }
            return(msjTickets);
        }
Esempio n. 4
0
        public MensajesTickets ObtenerTicketsPorIdUsuario([FromBody] int infoIdUsuario)
        {
            MensajesTickets  msjTickets            = new MensajesTickets();
            ConsultasTickets objConsultasTicketsBD = new ConsultasTickets();

            msjTickets = objConsultasTicketsBD.ObtenerTicketsPorIdUsuario(infoIdUsuario);
            if (msjTickets.OperacionExitosa)
            {
                Logs.Info("Consulta de Tickets realizada exitosamente.");
            }
            else
            {
                Logs.Error(msjTickets.MensajeError);
            }
            return(msjTickets);
        }
Esempio n. 5
0
        public MensajesTickets ObtenerTicketsComp()
        {
            MensajesTickets  msjTickets            = new MensajesTickets();
            ConsultasTickets objConsultasTicketsBD = new ConsultasTickets();

            msjTickets = objConsultasTicketsBD.ObtenerTickets("ticketsreportados");
            if (msjTickets.OperacionExitosa)
            {
                Logs.Info("Consulta de Tickets realizada exitosamente.");
            }
            else
            {
                Logs.Error(msjTickets.MensajeError);
            }
            return(msjTickets);
        }
Esempio n. 6
0
        public MensajesTickets ActualizarTicket([FromBody] Tickets infoTicket)
        {
            MensajesTickets        msjTickets = new MensajesTickets();
            ActualizacionesTickets objActualizacionesTicketsBD = new ActualizacionesTickets();

            msjTickets = objActualizacionesTicketsBD.ActualizacionTicket(infoTicket);
            if (msjTickets.OperacionExitosa)
            {
                Logs.Info(string.Format("Actualización de Ticket con ID: {0} realizada exitosamente.", infoTicket.IdTicket));
            }
            else
            {
                Logs.Error(msjTickets.MensajeError);
            }
            return(msjTickets);
        }
Esempio n. 7
0
        public ActionResult ModificarTicket(Tickets infoTicket)
        {
            DateTime fechaActual = DateTime.Now;

            if (infoTicket.AsignacionTicket)
            {
                EnviarCorreoAsignacionTicket(infoTicket);
            }
            if (infoTicket.EstadoTicket == "RESUELTO")
            {
                infoTicket.FechaResueltoTicket      = fechaActual;
                infoTicket.ComentarioResueltoTicket = infoTicket.ComentarioTicket;
            }
            else if (infoTicket.EstadoTicket == "EN PROCESO")
            {
                infoTicket.FechaEnProcesoTicket      = fechaActual;
                infoTicket.ComentarioEnProcesoTicket = infoTicket.ComentarioTicket;
            }
            else if (infoTicket.EstadoTicket == "EN ESPERA")
            {
                infoTicket.FechaEnEsperaTicket      = fechaActual;
                infoTicket.ComentarioEnEsperaTicket = infoTicket.ComentarioTicket;
            }
            string          mensajesTickets = string.Empty;
            MensajesTickets msjTickets      = new MensajesTickets();

            try
            {
                TicketsAccDatos objTicketsAccDatos = new TicketsAccDatos((string)Session["NickUsuario"]);
                msjTickets = objTicketsAccDatos.ActualizarTicket(infoTicket);
                if (msjTickets.OperacionExitosa)
                {
                    mensajesTickets = string.Format("El ticket con ID: {0} ha sido modificado correctamente.", infoTicket.IdTicket);
                    Logs.Info(mensajesTickets);
                }
                else
                {
                    mensajesTickets = string.Format("No se ha podido actualizar el ticket con ID: {0}: {1}", infoTicket.IdTicket, msjTickets.MensajeError);
                    Logs.Error(mensajesTickets);
                }
            }
            catch (Exception e)
            {
                Logs.Error(string.Format("{0}: {1}", mensajesTickets, e.Message));
            }
            return(Json(msjTickets, JsonRequestBehavior.AllowGet));
        }
Esempio n. 8
0
        /// <summary>
        /// Método para actualizar un Ticket en la base de datos.
        /// </summary>
        /// <param name="infoTicket"></param>
        /// <returns></returns>
        public MensajesTickets ActualizarTicket(Tickets infoTicket)
        {
            MensajesTickets msjTickets = new MensajesTickets();

            try
            {
                var response = client_Service.PostAsJsonAsync("Tickets/ActualizarTicket", infoTicket).Result;
                if (response.IsSuccessStatusCode)
                {
                    var TicketsJson = response.Content.ReadAsStringAsync().Result;
                    msjTickets = JsonConvert.DeserializeObject <MensajesTickets>(TicketsJson);
                }
            }
            catch (Exception e)
            {
                Logs.Error(string.Format("Error en la conexión para actualizar un ticket: {0}", e.Message));
            }
            return(msjTickets);
        }
Esempio n. 9
0
        /// <summary>
        /// Método para obtener una lista con los Tickets de la base de datos.
        /// </summary>
        /// <param name="nombreFuncion">Tipo de función: Comp(Todos los registros) o Hab (Los registros habilitados)</param>
        /// <returns></returns>
        public MensajesTickets ObtenerTickets(string nombreFuncion)
        {
            MensajesTickets msjTickets = new MensajesTickets();

            try
            {
                HttpResponseMessage response = client_Service.GetAsync(string.Format("Tickets/ObtenerTickets{0}", nombreFuncion)).Result;
                if (response.IsSuccessStatusCode)
                {
                    var TicketsJson = response.Content.ReadAsStringAsync().Result;
                    msjTickets = JsonConvert.DeserializeObject <MensajesTickets>(TicketsJson);
                }
            }
            catch (Exception e)
            {
                Logs.Error(string.Format("Error en la conexión para obtener la lista de los tickets: {0}", e.Message));
            }
            return(msjTickets);
        }
Esempio n. 10
0
        public MensajesTickets RegistrarTicket([FromBody] Tickets infoTicket)
        {
            DateTime fechaRegistroTicket = DateTime.Now;

            infoTicket.FechaAperturaTicket = fechaRegistroTicket;
            MensajesTickets    msjTickets = new MensajesTickets();
            InsercionesTickets objInsercionesTicketsBD = new InsercionesTickets();

            msjTickets = objInsercionesTicketsBD.RegistroTicket(infoTicket);
            if (msjTickets.OperacionExitosa)
            {
                EnviarCorreoNuevoTicket(infoTicket);
                Logs.Info(string.Format("Registro de Ticket de Usuario: {0} realizado exitosamente.", infoTicket.NombreUsuario));
            }
            else
            {
                Logs.Error(msjTickets.MensajeError);
            }
            return(msjTickets);
        }