예제 #1
0
        public static IList <TTipoAnomalia> GetTTipoAnomalias(TDispositivo dispositivo, SqlCeConnection conn)
        {
            IList <TTipoAnomalia> lttpa = new List <TTipoAnomalia>();
            string sql = String.Format("SELECT * FROM TipoAnomalia t INNER JOIN Revision r on t.tipo_anomalia_id = r.tipo_anomalia_id where r.dispositivo_id = {0}", dispositivo.DispositivoId);

            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TTipoAnomalia ta = new TTipoAnomalia()
                    {
                        TipoAnomaliaId = dr.GetInt32(0),
                        Nombre         = dr.GetString(1),
                        Abm            = dr.GetByte(2)
                    };
                    lttpa.Add(ta);
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(lttpa);
        }
예제 #2
0
        public static IList <TIncidencia> GetTIncidencias(TDispositivo dispositivo, SqlCeConnection conn)
        {
            List <TIncidencia> incidencias = new List <TIncidencia>();

            if (dispositivo == null)
            {
                return(incidencias);
            }
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = String.Format("SELECT * FROM Incidencia WHERE disp_id = {0}",
                                                dispositivo.DispositivoId);

                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TIncidencia incidencia = GetTIncidencia(dr.GetInt32(0), conn);
                    if (incidencia != null)
                    {
                        incidencias.Add(incidencia);
                    }
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(incidencias);
        }
예제 #3
0
        public static TDispositivo GetTDispositivo(int id, SqlCeConnection conn)
        {
            TDispositivo dispositivo = null;

            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = String.Format("SELECT * FROM Dispositivo WHERE dispositivo_id = {0}", id);
                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    dispositivo = new TDispositivo()
                    {
                        DispositivoId = dr.GetInt32(0),
                        Nombre        = dr.GetString(1),
                        Empresa       = dr.GetString(2),
                        Instalacion   = dr.GetString(3)
                    };
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(dispositivo);
        }
예제 #4
0
 public static void SetTDispositivo(TDispositivo dispositivo, SqlCeDataReader dr, SqlCeConnection conn)
 {
     dispositivo.DispositivoId = dr.GetInt32(0);
     dispositivo.Nombre        = dr.GetString(1);
     dispositivo.Empresa       = dr.GetString(2);
     dispositivo.Instalacion   = GetTInstalacion(dr.GetInt32(3), conn);
     dispositivo.Tipo          = GetTTipoDispositivo(dr.GetInt32(4), conn);
     dispositivo.Funcion       = dr.GetString(5);
     dispositivo.Estado        = dr.GetString(6);
     dispositivo.CodBarras     = dr.GetString(7);
     if (dr[14] != DBNull.Value)
     {
         dispositivo.Posicion = dr.GetString(14);
     }
     if (dr[8] != DBNull.Value)
     {
         dispositivo.FechaCaducidad = dr.GetDateTime(8);
     }
     dispositivo.Caducado = dr.GetBoolean(9);
     if (dr[10] != DBNull.Value)
     {
         dispositivo.FechaBaja = dr.GetDateTime(10);
     }
     if (dr[11] != DBNull.Value)
     {
         dispositivo.Modelo = GetTModeloDispositivo(dr.GetInt32(11), conn);
     }
 }
예제 #5
0
        public static IList <TRevision> GetTRevisiones(TDispositivo dispositivo, SqlCeConnection conn)
        {
            List <TRevision> revisiones = new List <TRevision>();

            if (dispositivo == null)
            {
                return(revisiones);
            }
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = String.Format("SELECT * FROM Revision WHERE dispositivo_id = {0}",
                                                dispositivo.DispositivoId);

                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TRevision revision = new TRevision()
                    {
                        RevisionId  = dr.GetInt32(0),
                        Usuario     = GetTUsuario(dr.GetInt32(2), conn),
                        Dispositivo = GetTDispositivo(dr.GetInt32(1), conn),
                        Resultado   = dr.GetString(6),
                        Comentario  = dr.GetString(7),
                        TPrograma   = GetTProgramaC(dr.GetInt32(8), conn),
                        Estado      = dr.GetString(9),
                        Plantilla   = dr.GetString(10),
                        Abm         = dr.GetByte(12)
                    };
                    // control de nulos en fechas.
                    if (dr[3] != DBNull.Value)
                    {
                        revision.FechaPlanificada = dr.GetDateTime(3);
                    }
                    if (dr[4] != DBNull.Value)
                    {
                        revision.FechaProgramada = dr.GetDateTime(3);
                    }
                    if (dr[5] != DBNull.Value)
                    {
                        revision.FechaRevision = dr.GetDateTime(3);
                    }
                    if (dr.GetInt32(11) == 0)
                    {
                        revision.TTipoAnomalia = null;
                    }
                    else
                    {
                        revision.TTipoAnomalia = GetTTipoAnomalia(dr.GetInt32(11), conn);
                    }
                    //revision.DatosRevision = GetTDatosRevision(revision, conn);
                    revisiones.Add(revision);
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(revisiones);
        }
예제 #6
0
        public static IList <TSustitucion> GetTSustituciones(TDispositivo dispositivo, SqlCeConnection conn)
        {
            List <TSustitucion> sustituciones = new List <TSustitucion>();

            if (dispositivo == null)
            {
                return(sustituciones);
            }
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = String.Format("SELECT * FROM Sustituciones WHERE dispo_id = {0}",
                                                dispositivo.DispositivoId);

                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TSustitucion ts = new TSustitucion()
                    {
                        Comentarios = dr.GetString(2),
                        Estado      = dr.GetString(3),
                        Abm         = dr.GetByte(9)
                    };
                    if (dr[1] != DBNull.Value)
                    {
                        ts.Fecha = dr.GetDateTime(1);
                    }
                    if (dr[4] != DBNull.Value)
                    {
                        ts.TUsuario = GetTUsuario(dr.GetInt32(4), conn);
                    }
                    if (dr[5] != DBNull.Value)
                    {
                        ts.TDispositivoOriginal = GetTDispositivo(dr.GetInt32(5), conn);
                    }
                    if (dr[6] != DBNull.Value)
                    {
                        ts.TDispositivoSustituto = GetTDispositivo(dr.GetInt32(6), conn);
                    }
                    if (dr[7] != DBNull.Value)
                    {
                        ts.TRevision = GetTRevision(dr.GetInt32(7), conn);
                    }
                    if (dr[8] != DBNull.Value)
                    {
                        ts.TPrograma = GetTPrograma(dr.GetInt32(8), conn);
                    }

                    if (ts != null)
                    {
                        sustituciones.Add(ts);
                    }
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(sustituciones);
        }
예제 #7
0
        public static IList <TSustitucion> GetTSustituciones(TDispositivo dispositivo, SqlCeConnection conn)
        {
            IList <TSustitucion> l = new List <TSustitucion>();
            string sql             = String.Format("SELECT * FROM Sustituciones WHERE dispo_id = {0} ORDER BY fecha ASC",
                                                   dispositivo.DispositivoId);

            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TSustitucion tSustitucion = new TSustitucion()
                    {
                        SustitucionId = dr.GetInt32(0),
                        Comentarios   = dr.GetString(2),
                        Estado        = dr.GetString(3),
                        Abm           = dr.GetByte(9)
                    };
                    if (dr[1] != DBNull.Value)
                    {
                        tSustitucion.Fecha = dr.GetDateTime(1);
                    }
                    if (dr[4] != DBNull.Value)
                    {
                        tSustitucion.TUsuario = GetTUsuario(dr.GetInt32(4), conn);
                    }
                    if (dr[5] != DBNull.Value)
                    {
                        tSustitucion.TDispositivoOriginal = GetTDispositivo(dr.GetInt32(5), conn);
                    }
                    if (dr[6] != DBNull.Value)
                    {
                        tSustitucion.TDispositivoSustituto = GetTDispositivo(dr.GetInt32(6), conn);
                    }
                    if (dr[7] != DBNull.Value)
                    {
                        tSustitucion.TRevision = GetTRevision(dr.GetInt32(7), conn);
                    }
                    if (dr[8] != DBNull.Value)
                    {
                        tSustitucion.TPrograma = GetTPrograma(dr.GetInt32(8), conn);
                    }
                    if (tSustitucion.TDispositivoOriginal != null)
                    {
                        tSustitucion.NInstalacion = tSustitucion.TDispositivoOriginal.Instalacion.Nombre;
                    }

                    l.Add(tSustitucion);
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(l);
        }
예제 #8
0
 public static void SetTDispositivo(TDispositivo dispositivo, SqlCeDataReader dr, SqlCeConnection conn)
 {
     dispositivo.DispositivoId = dr.GetInt32(0);
     dispositivo.Nombre        = dr.GetString(1);
     dispositivo.Empresa       = dr.GetString(2);
     dispositivo.Instalacion   = GetTInstalacion(dr.GetInt32(3), conn);
     dispositivo.Tipo          = GetTTipoDispositivo(dr.GetInt32(4), conn);
     dispositivo.Funcion       = dr.GetString(5);
     dispositivo.Estado        = dr.GetString(6);
     dispositivo.CodBarras     = dr.GetString(7);
     if (dr[14] != DBNull.Value)
     {
         dispositivo.Posicion = dr.GetString(14);
     }
     if (dr[8] != DBNull.Value)
     {
         dispositivo.FechaCaducidad = dr.GetDateTime(8);
     }
     dispositivo.Caducado = dr.GetBoolean(9);
     if (dr[12] != DBNull.Value)
     {
         dispositivo.Operativo = dr.GetBoolean(12);
     }
     //if (!CntSciTerminal.FechaNula(dispositivo.FechaBaja))
     //   dispositivo.FechaBaja = dr.GetDateTime(10);
     if (dr[10] != DBNull.Value)
     {
         dispositivo.FechaBaja = dr.GetDateTime(10);
     }
     if (dr[11] != DBNull.Value)
     {
         dispositivo.Modelo = GetTModeloDispositivo(dr.GetInt32(11), conn);
     }
     dispositivo.Abm = dr.GetByte(15);
     // nuevos campos vrs 2018.0.1.0
     if (dr[16] != DBNull.Value)
     {
         dispositivo.NIndustria = dr.GetString(16);
     }
     if (dr[17] != DBNull.Value)
     {
         dispositivo.CargaKg = dr.GetDouble(17);
     }
     if (dr[18] != DBNull.Value)
     {
         dispositivo.Fabricante = GetTFabricante(dr.GetInt32(18), conn);
     }
     if (dr[19] != DBNull.Value)
     {
         dispositivo.FechaFabricacion = dr.GetDateTime(19);
     }
     if (dr[20] != DBNull.Value)
     {
         dispositivo.AgenteExtintor = GetTAgenteExtintor(dr.GetInt32(20), conn);
     }
 }
예제 #9
0
        public static IList <TRevision> GetTRevisiones(bool estado, TDispositivo dispositivo, SqlCeConnection conn)
        {
            List <TRevision> revisiones = new List <TRevision>();

            if (dispositivo == null)
            {
                return(revisiones);
            }
            string sql = String.Format("SELECT DISTINCT r.revision_id, r.fecha_planificada, d.nombre, r.estado, d.posicion, r.abm, d.nIndustria, d.dispositivo_id FROM Revision r INNER JOIN Dispositivo d ON d.dispositivo_id = r.dispositivo_id  WHERE d.dispositivo_id = {0} ORDER BY fecha_planificada ASC",
                                       dispositivo.DispositivoId);

            if (estado)
            {
                sql = String.Format("SELECT DISTINCT r.revision_id, r.fecha_planificada, d.nombre, r.estado, d.posicion, r.abm, d.nIndustria , d.dispositivo_id FROM Revision r INNER JOIN Dispositivo d ON d.dispositivo_id = r.dispositivo_id  WHERE d.dispositivo_id = {0} AND r.estado = '{1}' ORDER BY fecha_planificada ASC",
                                    dispositivo.DispositivoId,
                                    "PROGRAMADA");
            }
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;

                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TRevision revision = new TRevision()
                    {
                        RevisionId   = dr.GetInt32(0),
                        NDispositivo = dr.GetString(2),
                        Dispositivo  = dispositivo,
                        Estado       = dr.GetString(3),
                        NInstalacion = dispositivo.Instalacion.Nombre,
                        Posicion     = dr.GetString(4),
                        Abm          = dr.GetByte(5),
                        NIndustria   = dr.GetString(6),
                    };
                    // control de nulos en fechas.
                    if (dr[3] != DBNull.Value)
                    {
                        revision.FechaPlanificada = dr.GetDateTime(1);
                    }
                    revisiones.Add(revision);
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(revisiones);
        }
예제 #10
0
        public static TDispositivo GetTDispositivo(int id, SqlCeConnection conn)
        {
            TDispositivo dispositivo = null;

            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandType = System.Data.CommandType.Text;
                cmd.CommandText = String.Format("SELECT * FROM Dispositivo WHERE dispositivo_id = {0}", id);
                using (SqlCeDataReader dr = cmd.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        dispositivo = new TDispositivo();
                        dispositivo.DispositivoId = dr.GetInt32(0);
                        dispositivo.Nombre        = dr.GetString(1);
                        dispositivo.Instalacion   = GetTInstalacion(dr.GetInt32(3), conn);
                        dispositivo.Tipo          = GetTTipoDispositivo(dr.GetInt32(4), conn);
                        dispositivo.Funcion       = dr.GetString(5);
                        dispositivo.Estado        = dr.GetString(6);
                        dispositivo.CodBarras     = dr.GetString(7);
                        if (dr[14] != DBNull.Value)
                        {
                            dispositivo.Posicion = dr.GetString(14);
                        }
                        if (dr[8] != DBNull.Value)
                        {
                            dispositivo.FechaCaducidad = dr.GetDateTime(8);
                        }
                        dispositivo.Caducado = dr.GetBoolean(9);
                        if (dr[10] != DBNull.Value)
                        {
                            dispositivo.FechaBaja = dr.GetDateTime(10);
                        }
                        if (dr[11] != DBNull.Value)
                        {
                            dispositivo.Modelo = GetTModeloDispositivo(dr.GetInt32(11), conn);
                        }
                        dispositivo.Operativo = dr.GetBoolean(12);
                        dispositivo.Abm       = dr.GetByte(15);
                    }
                    if (!dr.IsClosed)
                    {
                        dr.Close();
                    }
                }
            }
            return(dispositivo);
        }
예제 #11
0
 public static void SetTDispositivo(TDispositivo dispositivo, SqlCeDataReader dr)
 {
     dispositivo.DispositivoId  = dr.GetInt32(0);
     dispositivo.Nombre         = dr.GetString(1);
     dispositivo.Empresa        = dr.GetString(2);
     dispositivo.Instalacion    = dr.GetString(3);
     dispositivo.Tipo           = dr.GetString(4);
     dispositivo.Funcion        = dr.GetString(5);
     dispositivo.Estado         = dr.GetString(6);
     dispositivo.CodBarras      = dr.GetString(7);
     dispositivo.FechaCaducidad = dr.GetDateTime(8);
     dispositivo.Caducado       = dr.GetBoolean(9);
     if (!CntSciTerminal.FechaNula(dispositivo.FechaBaja))
     {
         dispositivo.FechaBaja = dr.GetDateTime(10);
     }
 }
예제 #12
0
        public static void TSave(TDispositivo td, SqlCeConnection conn)
        {
            string sql             = "";
            string fecha_caducidad = "NULL";
            string fecha_baja      = "NULL";
            int    caducado        = 0;

            if (!CntSciTerminal.FechaNula(td.FechaCaducidad))
            {
                fecha_caducidad = String.Format("'{0:MM/dd/yyyy}'", td.FechaCaducidad);
            }
            if (!CntSciTerminal.FechaNula(td.FechaBaja))
            {
                fecha_baja = String.Format("'{0:MM/dd/yyyy}'", td.FechaBaja);
            }
            if (td.Caducado)
            {
                caducado = 1;
            }
            // primero verificamos que si el elemento está
            TDispositivo tdsp = GetTDispositivo(td.DispositivoId, conn);

            if (tdsp == null)
            {
                sql = @"INSERT INTO Dispositivo(dispositivo_id, nombre, 
                            empresa, instalacion, 
                            tipo, funcion, estado,
                            fecha_caducidad, caducado, fecha_baja, codbarras) VALUES({0},'{1}','{2}','{3}','{4}','{5}','{6}',{7},{8},{9},'{10}')";
            }
            else
            {
                sql = @"UPDATE Dispositivo SET nombre='{1}',empresa='{2}',instalacion='{3}',
                        tipo='{4}, funcion='{5}', estado='{6}'
                        fecha_caducidad='{7}, caducado='{8}', fecha_baja='{9}', codbarras='{10}'
                        WHERE dispositivo_id={0}";
            }
            sql = String.Format(sql, td.DispositivoId, td.Nombre, td.Empresa, td.Instalacion, td.Tipo, td.Funcion, td.Estado, fecha_caducidad, caducado, fecha_baja, td.CodBarras);
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                int nrec = cmd.ExecuteNonQuery();
            }
        }
예제 #13
0
        public static IList <TIncidencia> GetTIncidencias(TDispositivo dispositivo, SqlCeConnection conn)
        {
            List <TIncidencia> incidencias = new List <TIncidencia>();

            if (dispositivo == null)
            {
                return(incidencias);
            }
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = String.Format("SELECT * FROM Incidencia WHERE disp_id = {0}",
                                                dispositivo.DispositivoId);

                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TIncidencia incidencia = new TIncidencia()
                    {
                        IncidenciaId = dr.GetInt32(0),
                        Operativo    = dr.GetBoolean(5),
                        Usuario      = GetTUsuario(dr.GetInt32(3), conn),
                        Dispositivo  = GetTDispositivo(dr.GetInt32(2), conn),
                        Comentarios  = dr.GetString(4)
                    };
                    // control de nulos en fechas.
                    if (dr[3] != DBNull.Value)
                    {
                        incidencia.FechaApertura = dr.GetDateTime(1);
                    }

                    if (incidencia != null)
                    {
                        incidencias.Add(incidencia);
                    }
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(incidencias);
        }
예제 #14
0
        public static IList <TDispositivo> GetTNuevosDispositivos(SqlCeConnection conn)
        {
            IList <TDispositivo> dispositivos = new List <TDispositivo>();

            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = "SELECT * FROM Dispositivo WHERE abm = 1";
                using (SqlCeDataReader dr = cmd.ExecuteReader())
                {
                    while (dr.Read())
                    {
                        TDispositivo dispositivo = new TDispositivo();

                        dispositivo.DispositivoId = dr.GetInt32(0);
                        dispositivo.Nombre        = dr.GetString(1);
                        dispositivo.Instalacion   = GetTInstalacion(dr.GetInt32(3), conn);
                        dispositivo.Tipo          = GetTTipoDispositivo(dr.GetInt32(4), conn);
                        if (dr[14] != DBNull.Value)
                        {
                            dispositivo.Posicion = dr.GetString(14);
                        }
                        if (dr[11] != DBNull.Value)
                        {
                            dispositivo.Modelo = GetTModeloDispositivo(dr.GetInt32(11), conn);
                        }
                        if (dr[12] != DBNull.Value)
                        {
                            dispositivo.Operativo = dr.GetBoolean(12);
                        }
                        dispositivo.CodBarras = dr.GetString(7);
                        dispositivo.Estado    = dr.GetString(6);
                        dispositivo.Abm       = dr.GetByte(15);
                        dispositivos.Add(dispositivo);
                    }
                    if (!dr.IsClosed)
                    {
                        dr.Close();
                    }
                }
            }
            return(dispositivos);
        }
예제 #15
0
        public static TDispositivo GetTDispositivo(string codBarras, SqlCeConnection conn)
        {
            TDispositivo dispositivo = null;

            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = String.Format("SELECT * FROM Dispositivo WHERE codbarras= '{0}'", codBarras);
                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    dispositivo = new TDispositivo();
                    SetTDispositivo(dispositivo, dr);
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(dispositivo);
        }
예제 #16
0
        public static void TSave(TDispositivo td, SqlCeConnection conn)
        {
            string sql = "";
            // primero verificamos que si el elemento está
            TDispositivo tdsp = GetTDispositivo(td.DispositivoId, conn);

            if (tdsp == null)
            {
                sql = "INSERT INTO Dispositivo(dispositivo_id, nombre, empresa, instalacion) VALUES({0},'{1}','{2}','{3}')";
            }
            else
            {
                sql = "UPDATE Dispositivo SET nombre='{1}',empresa='{2}',instalacion='{3}' WHERE dispositivo_id={0}";
            }
            sql = String.Format(sql, td.DispositivoId, td.Nombre, td.Empresa, td.Instalacion);
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                int nrec = cmd.ExecuteNonQuery();
            }
        }
예제 #17
0
        public static void TSave(TDispositivo td, SqlCeConnection conn)
        {
            string sql               = "";
            string fecha_caducidad   = "NULL";
            string fecha_baja        = "NULL";
            string fecha_fabricacion = "NULL";
            int    caducado          = 0;
            int    operativo         = 1;

            if (!td.Operativo)
            {
                operativo = 0;
            }
            if (!CntSciTerminal.FechaNula(td.FechaCaducidad))
            {
                fecha_caducidad = String.Format("CONVERT(DATETIME,'{0:yyyy-MM-dd HH:mm:ss}',102)", td.FechaCaducidad);
            }
            if (!CntSciTerminal.FechaNula(td.FechaBaja))
            {
                fecha_baja = String.Format("CONVERT(DATETIME,'{0:yyyy-MM-dd HH:mm:ss}',102)", td.FechaBaja);
            }
            if (td.Caducado)
            {
                caducado = 1;
            }
            string posicion = "";

            if (td.Posicion != null)
            {
                posicion = td.Posicion;
            }
            int modelo = 0;

            if (td.Modelo != null)
            {
                modelo = td.Modelo.ModeloDispositivoId;
            }
            //
            byte abm = td.Abm;

            if (abm != 1)
            {
                abm = 3;
            }
            // Nuevos campos VRS 2018.0.1.0
            // td.Funcion -> ya viene precargado
            // td.CargaKg -> precargado
            if (!CntSciTerminal.FechaNula(td.FechaFabricacion))
            {
                fecha_fabricacion = String.Format("CONVERT(DATETIME,'{0:yyyy-MM-dd HH:mm:ss}',102)", td.FechaFabricacion);
            }
            int fabricante = 0;

            if (td.Fabricante != null)
            {
                fabricante = td.Fabricante.FabricanteId;
            }
            int agente = 0;

            if (td.AgenteExtintor != null)
            {
                agente = td.AgenteExtintor.AgenteExtintorId;
            }
            //
            TDispositivo tdsp = GetTDispositivo(td.DispositivoId, conn);

            if (tdsp == null)
            {
                sql = @"SELECT MAX(dispositivo_id) from dispositivo";
                using (SqlCeCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = sql;
                    SqlCeDataReader dr = cmd.ExecuteReader();
                    while (dr.Read())
                    {
                        if (dr[0] != DBNull.Value)
                        {
                            td.DispositivoId = dr.GetInt32(0) + 1;
                        }
                        else
                        {
                            td.DispositivoId = 1;
                        }
                        break;
                    }
                }

                sql = @"INSERT INTO Dispositivo(dispositivo_id, nombre, 
                            empresa, instalacion, 
                            tipo, funcion, estado,
                            fecha_caducidad, caducado, fecha_baja, codbarras, modelo, operativo, posicion, abm, carga_kg, fabricante_id, fecha_fabricacion, agente_extintor_id) VALUES({0},'{1}','{2}',{3},{4},'{5}','{6}',{7},{8},{9},'{10}',{11},'{12}','{13}',{14},{15},{16}, {17}, {18})";
            }
            else
            {
                sql = @"UPDATE Dispositivo SET nombre='{1}',empresa='{2}',instalacion={3},
                        tipo={4}, funcion='{5}', estado='{6}',
                        fecha_caducidad={7}, caducado='{8}', fecha_baja={9}, codbarras='{10}', modelo={11}, operativo='{12}', posicion='{13}', abm={14}, carga_kg = {15}, fabricante_id = {16}, fecha_fabricacion = {17}, agente_extintor_id = {18}
                        WHERE dispositivo_id={0}";
            }
            sql = String.Format(sql, td.DispositivoId, td.Nombre, td.Empresa, td.Instalacion.InstalacionId, td.Tipo.TipoDispositivoId, td.Funcion, td.Estado, fecha_caducidad, caducado, fecha_baja, td.CodBarras, modelo, operativo, posicion, abm, td.CargaKg, fabricante, fecha_fabricacion, agente);
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                int nrec = cmd.ExecuteNonQuery();
            }
        }
예제 #18
0
        public static IList <TIncidencia> GetTIncidencias(TDispositivo dispositivo, SqlCeConnection conn)
        {
            IList <TIncidencia> l = new List <TIncidencia>();

            if (dispositivo == null)
            {
                return(l);
            }
            string sql = String.Format("SELECT * FROM Incidencia WHERE disp_id = {0} AND abm<>2 ORDER BY incidencia_id DESC",
                                       dispositivo.DispositivoId);

            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                SqlCeDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    TIncidencia tIncidencia = new TIncidencia()
                    {
                        IncidenciaId = dr.GetInt32(0),
                        Comentarios  = dr.GetString(3),
                        Operativo    = dr.GetBoolean(4)
                    };
                    if (dr[5] != DBNull.Value)
                    {
                        tIncidencia.FechaApertura = dr.GetDateTime(5);
                    }
                    if (dr[6] != DBNull.Value)
                    {
                        tIncidencia.FechaCierre = dr.GetDateTime(6);
                    }
                    else
                    {
                        tIncidencia.FechaCierre = null;
                    }
                    if (dr[2] != DBNull.Value)
                    {
                        tIncidencia.TUsuario = GetTUsuario(dr.GetInt32(2), conn);
                    }
                    if (dr[1] != DBNull.Value)
                    {
                        tIncidencia.TDisp = GetTDispositivo(dr.GetInt32(1), conn);
                    }
                    if (dr[7] != DBNull.Value)
                    {
                        tIncidencia.TEstado = GetTEstado(dr.GetInt32(7), conn);
                    }
                    if (dr[8] != DBNull.Value)
                    {
                        tIncidencia.TPrioridad = GetTPrioridad(dr.GetInt32(8), conn);
                    }
                    if (dr[9] != DBNull.Value)
                    {
                        tIncidencia.TResponsable = GetTResponsable(dr.GetInt32(9), conn);
                    }
                    tIncidencia.Abm = dr.GetByte(10);
                    if (dr[11] != DBNull.Value)
                    {
                        tIncidencia.FechaPrevista = dr.GetDateTime(11);
                    }
                    else
                    {
                        tIncidencia.FechaPrevista = null;
                    }
                    l.Add(tIncidencia);
                }
                if (!dr.IsClosed)
                {
                    dr.Close();
                }
            }
            return(l);
        }
예제 #19
0
        public static void TSave(TDispositivo td, SqlCeConnection conn)
        {
            string sql             = "";
            string fecha_caducidad = "NULL";
            string fecha_baja      = "NULL";
            int    caducado        = 0;
            int    operativo       = 0;

            if (!CntSciTerminal.FechaNula(td.FechaCaducidad))
            {
                fecha_caducidad = String.Format("'{0:MM/dd/yyyy}'", td.FechaCaducidad);
            }
            if (!CntSciTerminal.FechaNula(td.FechaBaja))
            {
                fecha_baja = String.Format("'{0:MM/dd/yyyy}'", td.FechaBaja);
            }
            if (td.Caducado)
            {
                caducado = 1;
            }
            if (td.Operativo)
            {
                operativo = 1;
            }
            int modelo = 0;

            if (td.Modelo != null)
            {
                modelo = td.Modelo.ModeloId;
            }
            int tipo = 0;

            if (td.Tipo != null)
            {
                tipo = td.Tipo.TipoId;
            }
            string posicion = "";

            if (td.Posicion != null)
            {
                posicion = td.Posicion.Replace("'", "");
            }
            int instalacion = 0;

            if (td.Instalacion != null)
            {
                instalacion = td.Instalacion.InstalacionId;
            }
            // primero verificamos que si el elemento está
            // TDispositivo tdsp = GetTDispositivo(td.DispositivoId, conn);
            TDispositivo tdsp = null;

            if (tdsp == null)
            {
                sql = @"INSERT INTO Dispositivo(dispositivo_id, nombre, 
                            empresa, instalacion, 
                            tipo, funcion, estado,
                            fecha_caducidad, caducado, fecha_baja, codbarras, operativo, modelo, posicion) VALUES({0},'{1}','{2}',{3}, {4},'{5}','{6}',{7},{8},{9},'{10}',{11},{12},'{13}')";
            }
            else
            {
                sql = @"UPDATE Dispositivo SET nombre='{1}',empresa='{2}',instalacion={3},
                        tipo={4}, funcion='{5}', estado='{6}'
                        fecha_caducidad='{7}, caducado={8}, fecha_baja={9}, codbarras='{10}', operativo={11}, modelo={12}, posicion='{13}'
                        WHERE dispositivo_id={0}";
            }
            sql = String.Format(sql, td.DispositivoId, td.Nombre, td.Empresa, instalacion, tipo, td.Funcion, td.Estado, fecha_caducidad, caducado, fecha_baja, td.CodBarras, operativo, modelo, posicion);
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                int nrec = cmd.ExecuteNonQuery();
            }
        }
예제 #20
0
        public static void TSave(bool newRecord, TIncidencia ts, SqlCeConnection conn)
        {
            int usuario_id = 0;

            if (ts.TUsuario != null)
            {
                usuario_id = ts.TUsuario.UsuarioId;
            }
            int dispo_id = 0;

            if (ts.TDisp != null)
            {
                dispo_id = ts.TDisp.DispositivoId;
            }
            int estado_id = 0;

            if (ts.TEstado != null)
            {
                estado_id = ts.TEstado.EstadoId;
            }
            int prioridad_id = 0;

            if (ts.TPrioridad != null)
            {
                prioridad_id = ts.TPrioridad.PrioridadId;
            }
            int responsable_id = 0;

            if (ts.TResponsable != null)
            {
                responsable_id = ts.TResponsable.ResponsableId;
            }
            string fecha_apertura = "NULL";

            if (!CntSciTerminal.FechaNula(ts.FechaApertura))
            {
                fecha_apertura = String.Format("'{0:MM/dd/yyyy}'", ts.FechaApertura);
            }
            string fecha_prevista = "NULL";

            if (!CntSciTerminal.FechaNula(ts.FechaPrevista))
            {
                fecha_prevista = String.Format("'{0:MM/dd/yyyy}'", ts.FechaPrevista);
            }
            string fecha_cierre = "NULL";

            if (!CntSciTerminal.FechaNula(ts.FechaCierre))
            {
                fecha_cierre = String.Format("'{0:MM/dd/yyyy}'", ts.FechaCierre);
            }
            string comentarios = "";

            if (ts.Comentarios != null)
            {
                comentarios = ts.Comentarios;
            }
            int operativo = 0;

            if (ts.Operativo)
            {
                operativo = 1;
            }
            byte abm = ts.Abm;

            if (abm != 1)
            {
                abm = 3;
            }
            string sql = "";

            // primero verificamos que si el elemento está
            if (newRecord)
            {
                //Seleccionamos el id con una unidad mayor que el máximo de la base de datos
                sql = @"SELECT MAX(incidencia_id) from incidencia";
                using (SqlCeCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = sql;
                    SqlCeDataReader dr = cmd.ExecuteReader();
                    while (dr.Read())
                    {
                        if (dr[0] != DBNull.Value)
                        {
                            ts.IncidenciaId = dr.GetInt32(0) + 1;
                        }
                        else
                        {
                            ts.IncidenciaId = 1;
                        }
                        break;
                    }
                    if (!dr.IsClosed)
                    {
                        dr.Close();
                    }
                }
                sql = @"INSERT INTO Incidencia(incidencia_id, fecha_apertura, comentarios,
                            usuario_id, disp_id, operativo, fecha_cierre, estado_id, prioridad_id, responsable_id, abm, fecha_prevista) 
                            VALUES({0},{1},'{2}',{3},
                            {4},{5},{6},{7},{8},{9},1,{11})";
            }
            else
            {
                sql = @"UPDATE Incidencia SET fecha_apertura={1},comentarios='{2}',
                        usuario_id={3}, disp_id={4}, operativo={5}, fecha_cierre={6}, estado_id={7}, prioridad_id={8}, responsable_id={9},
                        abm={10}, fecha_prevista={11}
                        WHERE incidencia_id={0}";
            }

            sql = String.Format(sql, ts.IncidenciaId, fecha_apertura, comentarios,
                                usuario_id, dispo_id, operativo, fecha_cierre, estado_id, prioridad_id, responsable_id, abm, fecha_prevista);
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();
            }
            //Modificamos la operatividad del dispositivo según la incidencia
            sql = String.Format(@"UPDATE Dispositivo SET operativo={1}
                        WHERE dispositivo_id={0}", ts.TDisp.DispositivoId, operativo);
            using (SqlCeCommand cmd = conn.CreateCommand())
            {
                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();
            }
            // hay que actualizar el dispositivo
            TDispositivo d = ts.TDisp;

            d.Operativo = ts.Operativo;
            CntSciTerminal.TSave(d, conn);
        }