public ActionResult ModificarEstadoAccesorio(Accesorios infoAccesorios)
        {
            string                   mensajesAccesorios = string.Empty;
            MensajesAccesorios       msjAccesorios      = new MensajesAccesorios();
            MensajesHistoricoActivos msjHistActivos     = new MensajesHistoricoActivos();

            try
            {
                AccesoriosAccDatos objAccesoriosAccDatos = new AccesoriosAccDatos((string)Session["NickUsuario"]);
                msjAccesorios = objAccesoriosAccDatos.ActualizarAccesorios(infoAccesorios, true);
                if (msjAccesorios.OperacionExitosa)
                {
                    mensajesAccesorios = string.Format("El accesorio con ID: {0} ha sido modificado correctamente.", infoAccesorios.IdAccesorio);
                    Logs.Info(mensajesAccesorios);
                }
                else
                {
                    mensajesAccesorios = string.Format("No se ha podido actualizar el accesorio con ID: {0}: {1}", infoAccesorios.IdAccesorio, msjAccesorios.MensajeError);
                    Logs.Error(mensajesAccesorios);
                }
            }
            catch (Exception e)
            {
                Logs.Error(string.Format("{0}: {1}", mensajesAccesorios, e.Message));
            }
            return(Json(msjAccesorios, JsonRequestBehavior.AllowGet));
        }
        /// <summary>
        /// Método para actualizar el estado de un Accesorio en la base de datos.
        /// </summary>
        /// <param name="infoAccesorios"></param>
        /// <returns></returns>
        public MensajesAccesorios ActualizacionEstadoAccesorio(Accesorios infoAccesorios)
        {
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();

            try
            {
                NpgsqlTransaction tran = conn_BD.BeginTransaction();
                using (NpgsqlCommand cmd = new NpgsqlCommand("UPDATE public.dcicc_accesorio SET estado_accesorio=@ea WHERE id_accesorio=@ia;", conn_BD))
                {
                    cmd.Parameters.Add("ea", NpgsqlTypes.NpgsqlDbType.Varchar).Value = infoAccesorios.EstadoAccesorio;
                    cmd.Parameters.Add("ia", NpgsqlTypes.NpgsqlDbType.Integer).Value = infoAccesorios.IdAccesorio;
                    cmd.ExecuteNonQuery();
                }
                if (infoAccesorios.EstadoAccesorio == "DE BAJA")
                {
                    InsercionesHistoricoActivos objInsercionesHA = new InsercionesHistoricoActivos();
                    HistoricoActivos            infoHistActivo   = new HistoricoActivos
                    {
                        IdAccesorio           = infoAccesorios.IdAccesorio,
                        FechaModifHistActivos = DateTime.Now
                    };
                    objInsercionesHA.RegistroHistoricoActivos(infoHistActivo);
                }
                tran.Commit();
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = true;
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = false;
                msjAccesorios.MensajeError     = e.Message;
            }
            return(msjAccesorios);
        }
        /// <summary>
        /// Método para obtener los Accesorios de la base de datos.
        /// </summary>
        /// <param name="nombreFuncion">Tipo de función a llamar: consultaaccesorios o accesorioshabilitados</param>
        /// <returns></returns>
        public MensajesAccesorios ObtenerNombresAccesorios()
        {
            List <Accesorios>  lstAccesorios = new List <Accesorios>();
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();

            try
            {
                using (NpgsqlCommand cmd = new NpgsqlCommand("SELECT nombre_accesorio,id_cqr,nombre_detalleact FROM accesoriostotales();", conn_BD))
                {
                    using (NpgsqlDataReader dr = cmd.ExecuteReader())
                    {
                        while (dr.Read())
                        {
                            Accesorios objAccesorios = new Accesorios
                            {
                                NombreAccesorio     = dr[0].ToString().Trim(),
                                IdCQR               = dr[1].ToString().Trim(),
                                NombreDetalleActivo = dr[2].ToString().Trim()
                            };
                            lstAccesorios.Add(objAccesorios);
                        }
                        conn_BD.Close();
                        msjAccesorios.ListaObjetoInventarios = lstAccesorios;
                        msjAccesorios.OperacionExitosa       = true;
                    }
                }
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = false;
                msjAccesorios.MensajeError     = e.Message;
            }
            return(msjAccesorios);
        }
Exemple #4
0
        /// <summary>
        /// Método para ingresar un nuevo Accesorio en la base de datos.
        /// </summary>
        /// <param name="infoAccesorios"></param>
        /// <returns></returns>
        public MensajesAccesorios RegistroAccesorio(Accesorios infoAccesorios)
        {
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();

            try
            {
                NpgsqlTransaction tran = conn_BD.BeginTransaction();
                using (NpgsqlCommand cmd = new NpgsqlCommand("INSERT INTO public.dcicc_accesorio(id_tipoaccesorio, id_detalleact,id_cqr, nombre_accesorio, serial_accesorio, modelo_accesorio, descripcion_accesorio, estado_accesorio)VALUES (@ita, @ida,@icq,@na, @sa, @ma, @da, @ea);", conn_BD))
                {
                    cmd.Parameters.Add("ita", NpgsqlTypes.NpgsqlDbType.Integer).Value = infoAccesorios.IdTipoAccesorio;
                    cmd.Parameters.Add("ida", NpgsqlTypes.NpgsqlDbType.Integer).Value = infoAccesorios.IdDetalleActivo;
                    cmd.Parameters.Add("icq", NpgsqlTypes.NpgsqlDbType.Varchar).Value = infoAccesorios.IdCQR;
                    cmd.Parameters.Add("na", NpgsqlTypes.NpgsqlDbType.Varchar).Value  = infoAccesorios.NombreAccesorio.Trim();
                    cmd.Parameters.Add("sa", NpgsqlTypes.NpgsqlDbType.Varchar).Value  = !string.IsNullOrEmpty(infoAccesorios.SerialAccesorio) ? (object)infoAccesorios.SerialAccesorio.Trim() : DBNull.Value;
                    cmd.Parameters.Add("ma", NpgsqlTypes.NpgsqlDbType.Varchar).Value  = !string.IsNullOrEmpty(infoAccesorios.ModeloAccesorio) ? (object)infoAccesorios.ModeloAccesorio.Trim() : DBNull.Value;
                    cmd.Parameters.Add("da", NpgsqlTypes.NpgsqlDbType.Varchar).Value  = !string.IsNullOrEmpty(infoAccesorios.DescripcionAccesorio) ? (object)infoAccesorios.DescripcionAccesorio.Trim() : DBNull.Value;
                    cmd.Parameters.Add("ea", NpgsqlTypes.NpgsqlDbType.Varchar).Value  = infoAccesorios.EstadoAccesorio.Trim();
                    cmd.ExecuteNonQuery();
                }
                using (NpgsqlCommand cmd = new NpgsqlCommand("SELECT id_accesorio,id_cqr, nombre_accesorio FROM public.dcicc_accesorio where nombre_accesorio=@na", conn_BD))
                {
                    cmd.Parameters.Add("na", NpgsqlTypes.NpgsqlDbType.Varchar).Value = infoAccesorios.NombreAccesorio.Trim();
                    using (NpgsqlDataReader dr = cmd.ExecuteReader())
                    {
                        while (dr.Read())
                        {
                            Accesorios objAccesorio = new Accesorios
                            {
                                IdAccesorio     = (int)dr[0],
                                IdCQR           = (string)dr[1],
                                NombreAccesorio = (string)dr[2]
                            };
                            msjAccesorios.ObjetoInventarios = objAccesorio;
                        }
                    }
                }
                tran.Commit();
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = true;
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = false;
                msjAccesorios.MensajeError     = e.Message;
            }
            return(msjAccesorios);
        }
        public MensajesAccesorios ObtenerAccesoriosCQR()
        {
            MensajesAccesorios  msjAccesorios            = new MensajesAccesorios();
            ConsultasAccesorios objConsultasAccesoriosBD = new ConsultasAccesorios();

            msjAccesorios = objConsultasAccesoriosBD.ObtenerAccesorios("accesorioscqr");
            if (msjAccesorios.OperacionExitosa)
            {
                Logs.Info("Consulta de Accesorios CQR realizada exitosamente.");
            }
            else
            {
                Logs.Error(msjAccesorios.MensajeError);
            }
            return(msjAccesorios);
        }
        public MensajesAccesorios ActualizarEstadoAccesorio([FromBody] Accesorios infoAccesorios)
        {
            MensajesAccesorios        msjAccesorios = new MensajesAccesorios();
            ActualizacionesAccesorios objActualizacionesAccesoriosBD = new ActualizacionesAccesorios();

            msjAccesorios = objActualizacionesAccesoriosBD.ActualizacionEstadoAccesorio(infoAccesorios);
            if (msjAccesorios.OperacionExitosa)
            {
                Logs.Info(string.Format("Actualización de estado de Accesorio con ID: {0} realizada exitosamente.", infoAccesorios.IdAccesorio));
            }
            else
            {
                Logs.Error(msjAccesorios.MensajeError);
            }
            return(msjAccesorios);
        }
        public MensajesAccesorios RegistrarAccesorio([FromBody] Accesorios infoAccesorios)
        {
            MensajesAccesorios    msjAccesorios = new MensajesAccesorios();
            InsercionesAccesorios objInsercionesAccesoriosBD = new InsercionesAccesorios();

            msjAccesorios = objInsercionesAccesoriosBD.RegistroAccesorio(infoAccesorios);
            if (msjAccesorios.OperacionExitosa)
            {
                Logs.Info(string.Format("Registro de Accesorio \"{0}\" realizado exitosamente.", infoAccesorios.NombreAccesorio));
            }
            else
            {
                Logs.Error(msjAccesorios.MensajeError);
            }
            return(msjAccesorios);
        }
        public ActionResult NuevoAccesorio(Accesorios infoAccesorios)
        {
            Id_CQR            = string.Empty;
            Nombre_Activo     = string.Empty;
            Nombre_ActivoRaiz = string.Empty;
            Tipo_CQR          = string.Empty;
            string             mensajesAccesorios    = string.Empty;
            MensajesAccesorios msjAccesorios         = new MensajesAccesorios();
            AccesoriosAccDatos objAccesoriosAccDatos = new AccesoriosAccDatos((string)Session["NickUsuario"]);

            try
            {
                if (objAccesoriosAccDatos.ObtenerAccesorios("Nombres").ListaObjetoInventarios.Find(x => x.NombreAccesorio.Trim().ToLower() == infoAccesorios.NombreAccesorio.Trim().ToLower()) == null)
                {
                    Tipo_CQR = "ACC";
                    MensajesCQR msjCQR = NuevoCQR(Tipo_CQR);
                    if (msjCQR.OperacionExitosa)
                    {
                        infoAccesorios.IdCQR = msjCQR.ObjetoInventarios.IdCqr;
                        msjAccesorios        = objAccesoriosAccDatos.RegistrarAccesorios(infoAccesorios);
                        if (msjAccesorios.OperacionExitosa)
                        {
                            SetIdCQR(infoAccesorios.IdCQR);
                            SetNombreActivo(infoAccesorios.NombreAccesorio);
                            SetNombreActivoRaiz(infoAccesorios.NombreDetalleActivo);
                            msjAccesorios.ObjetoInventarios.NombreDetalleActivo = infoAccesorios.NombreDetalleActivo;
                            mensajesAccesorios = string.Format("El accesorio \"{0}\" ha sido registrado exitosamente.", infoAccesorios.NombreAccesorio);
                            Logs.Info(mensajesAccesorios);
                        }
                        else
                        {
                            mensajesAccesorios = string.Format("No se ha podido registrar el accesorio \"{0}\": {1}", infoAccesorios.NombreAccesorio, msjAccesorios.MensajeError);
                            Logs.Error(mensajesAccesorios);
                        }
                    }
                }
                else
                {
                    msjAccesorios.OperacionExitosa = false;
                }
            }
            catch (Exception e)
            {
                Logs.Error(string.Format("{0}: {1}", mensajesAccesorios, e.Message));
            }
            return(Json(msjAccesorios, JsonRequestBehavior.AllowGet));
        }
        /// <summary>
        /// Método para actualizar un Accesorio en la base de datos.
        /// </summary>
        /// <param name="infoAccesorios"></param>
        /// <param name="actEstado">Boolean para definir si se actualizará solo el estado o todo el registro</param>
        /// <returns></returns>
        public MensajesAccesorios ActualizarAccesorios(Accesorios infoAccesorios, bool actEstado)
        {
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();

            try
            {
                var response = client_Service.PostAsJsonAsync(actEstado? "Accesorios/ActualizarEstadoAccesorio":"Accesorios/ActualizarAccesorio", infoAccesorios).Result;
                if (response.IsSuccessStatusCode)
                {
                    var AccesoriosJson = response.Content.ReadAsStringAsync().Result;
                    msjAccesorios = JsonConvert.DeserializeObject <MensajesAccesorios>(AccesoriosJson);
                }
            }
            catch (Exception e)
            {
                Logs.Error(string.Format("Error en la conexión para actualizar un accesorio: {0}", e.Message));
            }
            return(msjAccesorios);
        }
        /// <summary>
        /// Método para obtener una lista con los Accesorios 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 MensajesAccesorios ObtenerAccesorios(string nombreFuncion)
        {
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();

            try
            {
                HttpResponseMessage response = client_Service.GetAsync(string.Format("Accesorios/ObtenerAccesorios{0}", nombreFuncion)).Result;
                if (response.IsSuccessStatusCode)
                {
                    var AccesoriosJson = response.Content.ReadAsStringAsync().Result;
                    msjAccesorios = JsonConvert.DeserializeObject <MensajesAccesorios>(AccesoriosJson);
                }
            }
            catch (Exception e)
            {
                Logs.Error(string.Format("Error en la conexión para obtener la lista de los accesorios: {0}", e.Message));
            }
            return(msjAccesorios);
        }
        public MensajesAccesorios ObtenerAccesorioPorIdCQR(string idCQR)
        {
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();
            Accesorios         objAccesorios = new Accesorios();

            try
            {
                using (NpgsqlCommand cmd = new NpgsqlCommand("select * from accesoriostotales() where id_cqr=@cqr", conn_BD))
                {
                    cmd.Parameters.Add("cqr", NpgsqlTypes.NpgsqlDbType.Varchar).Value = idCQR;
                    using (var dr = cmd.ExecuteReader())
                    {
                        while (dr.Read())
                        {
                            objAccesorios = new Accesorios
                            {
                                IdAccesorio          = (int)dr[0],
                                IdTipoAccesorio      = (int)dr[1],
                                IdDetalleActivo      = (int)dr[2],
                                NombreAccesorio      = dr[3].ToString().Trim(),
                                SerialAccesorio      = dr[4].ToString().Trim(),
                                ModeloAccesorio      = dr[5].ToString().Trim(),
                                DescripcionAccesorio = dr[6].ToString().Trim(),
                                EstadoAccesorio      = dr[7].ToString().Trim(),
                                IdCQR = dr[8].ToString().Trim(),
                                NombreTipoAccesorio = dr[9].ToString().Trim(),
                                NombreDetalleActivo = dr[10].ToString().Trim()
                            };
                        }
                        conn_BD.Close();
                        msjAccesorios.ObjetoInventarios = objAccesorios;
                        msjAccesorios.OperacionExitosa  = true;
                    }
                }
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = false;
                msjAccesorios.MensajeError     = e.Message;
            }
            return(msjAccesorios);
        }
        /// <summary>
        /// Método para actualizar un Accesorio en la base de datos.
        /// </summary>
        /// <param name="infoAccesorios"></param>
        /// <returns></returns>
        public MensajesAccesorios ActualizacionAccesorioBasico(Accesorios infoAccesorios)
        {
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();

            try
            {
                NpgsqlTransaction tran = conn_BD.BeginTransaction();
                using (NpgsqlCommand cmd = new NpgsqlCommand("UPDATE public.dcicc_accesorio SET nombre_accesorio=@na, serial_accesorio=@sa, modelo_accesorio=@ma, estado_accesorio=@ea WHERE id_accesorio=@ia;", conn_BD))
                {
                    cmd.Parameters.Add("na", NpgsqlTypes.NpgsqlDbType.Varchar).Value = infoAccesorios.NombreAccesorio.Trim();
                    cmd.Parameters.Add("sa", NpgsqlTypes.NpgsqlDbType.Varchar).Value = !string.IsNullOrEmpty(infoAccesorios.SerialAccesorio) ? (object)infoAccesorios.SerialAccesorio.Trim() : DBNull.Value;
                    cmd.Parameters.Add("ma", NpgsqlTypes.NpgsqlDbType.Varchar).Value = !string.IsNullOrEmpty(infoAccesorios.ModeloAccesorio) ? (object)infoAccesorios.ModeloAccesorio.Trim() : DBNull.Value;
                    cmd.Parameters.Add("ea", NpgsqlTypes.NpgsqlDbType.Varchar).Value = infoAccesorios.EstadoAccesorio.Trim();
                    cmd.Parameters.Add("ia", NpgsqlTypes.NpgsqlDbType.Integer).Value = infoAccesorios.IdAccesorio;
                    cmd.ExecuteNonQuery();
                }
                if (!infoAccesorios.DeBaja)
                {
                    if (infoAccesorios.EstadoAccesorio == "DE BAJA")
                    {
                        InsercionesHistoricoActivos objInsercionesHA = new InsercionesHistoricoActivos();
                        HistoricoActivos            infoHistActivo   = new HistoricoActivos
                        {
                            IdAccesorio           = infoAccesorios.IdAccesorio,
                            FechaModifHistActivos = DateTime.Now
                        };
                        objInsercionesHA.RegistroHistoricoActivos(infoHistActivo);
                    }
                }
                tran.Commit();
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = true;
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = false;
                msjAccesorios.MensajeError     = e.Message;
            }
            return(msjAccesorios);
        }
        public MensajesAccesorios ObtenerAccesorioPorCQR([FromBody] string idCQR)
        {
            MensajesAccesorios  msjAccesorios            = new MensajesAccesorios();
            ConsultasAccesorios objConsultasAccesoriosBD = new ConsultasAccesorios();

            msjAccesorios = objConsultasAccesoriosBD.ObtenerAccesorioPorIdCQR(idCQR);
            if (msjAccesorios.OperacionExitosa)
            {
                if (msjAccesorios.ObjetoInventarios.IdAccesorio != 0)
                {
                    msjAccesorios.ObjetoInventarios.BytesCQR = ActivosController.GenerarBytesQR(idCQR);
                }
                else
                {
                    msjAccesorios.ObjetoInventarios = null;
                }
                Logs.Info("Consulta de Activo según su CQR realizada exitosamente.");
            }
            else
            {
                Logs.Error(msjAccesorios.MensajeError);
            }
            return(msjAccesorios);
        }
        /// <summary>
        /// Método para obtener los Accesorios de la base de datos.
        /// </summary>
        /// <param name="nombreFuncion">Tipo de función a llamar: consultaaccesorios o accesorioshabilitados</param>
        /// <returns></returns>
        public MensajesAccesorios ObtenerAccesorios(string nombreFuncion)
        {
            List <Accesorios>  lstAccesorios = new List <Accesorios>();
            MensajesAccesorios msjAccesorios = new MensajesAccesorios();

            try
            {
                using (NpgsqlCommand cmd = new NpgsqlCommand(nombreFuncion, conn_BD))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    using (NpgsqlDataReader dr = cmd.ExecuteReader())
                    {
                        if (nombreFuncion == "accesoriostotales")
                        {
                            while (dr.Read())
                            {
                                Accesorios objAccesorios = new Accesorios
                                {
                                    IdAccesorio          = (int)dr[0],
                                    IdTipoAccesorio      = (int)dr[1],
                                    IdDetalleActivo      = (int)dr[2],
                                    NombreAccesorio      = dr[3].ToString().Trim(),
                                    SerialAccesorio      = dr[4].ToString().Trim(),
                                    ModeloAccesorio      = dr[5].ToString().Trim(),
                                    DescripcionAccesorio = dr[6].ToString().Trim(),
                                    EstadoAccesorio      = dr[7].ToString().Trim(),
                                    IdCQR = dr[8].ToString().Trim(),
                                    NombreTipoAccesorio = dr[9].ToString().Trim(),
                                    NombreDetalleActivo = dr[10].ToString().Trim()
                                };
                                lstAccesorios.Add(objAccesorios);
                            }
                        }
                        else if (nombreFuncion == "accesorioshabilitados")
                        {
                            while (dr.Read())
                            {
                                Accesorios objAccesorios = new Accesorios
                                {
                                    IdAccesorio          = int.Parse(dr[0].ToString().Trim()),
                                    IdTipoAccesorio      = int.Parse(dr[1].ToString().Trim()),
                                    IdDetalleActivo      = int.Parse(dr[2].ToString().Trim()),
                                    NombreAccesorio      = dr[3].ToString().Trim(),
                                    SerialAccesorio      = dr[4].ToString().Trim(),
                                    ModeloAccesorio      = dr[5].ToString().Trim(),
                                    DescripcionAccesorio = dr[6].ToString().Trim(),
                                    EstadoAccesorio      = dr[7].ToString().Trim(),
                                    IdCQR = dr[8].ToString().Trim(),
                                };
                                lstAccesorios.Add(objAccesorios);
                            }
                        }
                        else if (nombreFuncion == "accesorioscqr")
                        {
                            while (dr.Read())
                            {
                                Accesorios objAccesorios = new Accesorios
                                {
                                    IdAccesorio         = int.Parse(dr[0].ToString().Trim()),
                                    IdTipoAccesorio     = int.Parse(dr[1].ToString().Trim()),
                                    IdDetalleActivo     = int.Parse(dr[2].ToString().Trim()),
                                    IdCQR               = dr[3].ToString().Trim(),
                                    NombreAccesorio     = dr[4].ToString().Trim(),
                                    EstadoAccesorio     = dr[5].ToString().Trim(),
                                    NombreTipoAccesorio = dr[6].ToString().Trim(),
                                    NombreDetalleActivo = dr[7].ToString().Trim(),
                                    ImpresoCQR          = (bool)dr[8]
                                };
                                lstAccesorios.Add(objAccesorios);
                            }
                        }
                        conn_BD.Close();
                        msjAccesorios.ListaObjetoInventarios = lstAccesorios;
                        msjAccesorios.OperacionExitosa       = true;
                    }
                }
            }
            catch (Exception e)
            {
                conn_BD.Close();
                msjAccesorios.OperacionExitosa = false;
                msjAccesorios.MensajeError     = e.Message;
            }
            return(msjAccesorios);
        }