示例#1
0
        private static void CargarProgramas(Empresa empresa, SqlCeConnection conn, LainsaSci ctx)
        {
            var rs = from p in ctx.Programas
                     where p.Estado != "FINALIZADA" &&
                     p.Usuario.Empresa.EmpresaId == empresa.EmpresaId
                     select p;

            foreach (Programa p in rs)
            {
                TPrograma tp = new TPrograma()
                {
                    ProgramaId      = p.ProgramaId,
                    Usuario         = CntSciTerminal.GetTUsuario(p.Usuario.UsuarioId, conn),
                    Estado          = p.Estado,
                    FechaProgramada = p.FechaProgramada,
                    Comentarios     = p.Comentarios
                };
                CntSciTerminal.TSave(tp, conn);
                foreach (Revision r in p.Revisions)
                {
                    CargarRevision(r, conn, ctx);
                }
                foreach (Sustitucion s in p.Sustitucions)
                {
                    CargarSustitucion(s, conn, ctx);
                }
            }
        }
示例#2
0
 public RevisionesGrid(TPrograma prg, TUsuario usuario)
 {
     this.caller  = "programa";
     this.usuario = usuario;
     this.conn    = CntSciTerminal.TSqlConnection();
     InitializeComponent();
     vPrograma = prg;
     CargarGrid();
     lblInst.Text   = vPrograma.NInstalacion;
     Cursor.Current = Cursors.Default;
 }
示例#3
0
        private void grdProgramas_DoubleClick(object sender, EventArgs e)
        {
            Cursor.Current = Cursors.WaitCursor;
            int i = grdProgramas.CurrentRowIndex;

            if (i >= 0)
            {
                TPrograma[]    atp           = (TPrograma[])grdProgramas.DataSource;
                TPrograma      tp            = atp[i];
                RevisionesGrid grdRevisiones = new RevisionesGrid(tp, usuario);
                grdRevisiones.Show();
                this.Close();
            }
            Cursor.Current = Cursors.Default;
        }
        private static void CargarProgramas(Empresa empresa, ArrayList programas, SqlCeConnection conn, LainsaSci ctx, RadProgressContext context)
        {
            string texto = context.CurrentOperationText.ToString();

            Int16 stackIndex;
            int   totReg = 0;
            int   numReg = 0;

            totReg = programas.Count;
            for (stackIndex = 0; stackIndex <= programas.Count - 1; stackIndex++)
            {
                string   curItem = programas[stackIndex].ToString();
                int      id      = int.Parse(curItem);
                Programa p       = CntLainsaSci.GetPrograma(id, ctx);

                if (p.Revisions != null && p.Revisions.Count > 0)
                {
                    if (p.Revisions[0].Dispositivo.Instalacion.Empresa.EmpresaId != empresa.EmpresaId)
                    {
                        continue;
                    }
                }

                context.CurrentOperationText = String.Format("{0}{1} [{2} de {3}]", texto, id, numReg, totReg);
                TPrograma tp = new TPrograma()
                {
                    ProgramaId      = p.ProgramaId,
                    Usuario         = CntSciTerminal.GetTUsuario(p.Usuario.UsuarioId, conn),
                    Estado          = p.Estado,
                    FechaProgramada = p.FechaProgramada,
                    Comentarios     = p.Comentarios
                };
                CntSciTerminal.TSave(tp, conn);
                foreach (Revision r in p.Revisions)
                {
                    CargarRevision(r, conn, ctx);
                }
                foreach (Sustitucion s in p.Sustitucions)
                {
                    CargarSustitucion(s, conn, ctx);
                }
                numReg = stackIndex;
            }
        }
示例#5
0
        private static void CargarRevision(Revision r, SqlCeConnection conn, LainsaSci ctx)
        {
            TPrograma tpr  = null;
            TUsuario  tusu = null;

            if (r.Usuario != null)
            {
                tusu = CntSciTerminal.GetTUsuario(r.Usuario.UsuarioId, conn);
            }
            if (r.Programa != null)
            {
                tpr = CntSciTerminal.GetTPrograma(r.Programa.ProgramaId, conn);
            }
            TDispositivo d  = CntSciTerminal.GetTDispositivo(r.Dispositivo.DispositivoId, conn);
            TRevision    tr = new TRevision()
            {
                RevisionId       = r.RevisionId,
                Dispositivo      = d,
                Usuario          = tusu,
                FechaPlanificada = r.FechaPlanificada,
                FechaProgramada  = r.FechaProgramada,
                FechaRevision    = r.FechaRevision,
                Resultado        = r.Resultado,
                Comentario       = r.Observaciones,
                Estado           = r.Estado,
                TPrograma        = tpr,
                Plantilla        = r.PlantillaRevision.Descripcion
            };

            if (r.TipoAnomalia != null)
            {
                tr.TTipoAnomalia = CntSciTerminal.GetTTipoAnomalia(r.TipoAnomalia.TipoAnomaliaId, conn);
            }
            CntSciTerminal.TSave(tr, conn);
            foreach (DatosRevision dr in r.DatosRevisions)
            {
                CargarDatoRevision(dr, conn, ctx);
            }
        }
示例#6
0
        private static void CargarSustitucion(Sustitucion s, SqlCeConnection conn, LainsaSci ctx)
        {
            TPrograma    tpr    = null;
            TUsuario     tusu   = null;
            TDispositivo tdispo = null;
            TDispositivo tdisps = null;

            if (s.Usuario != null)
            {
                tusu = CntSciTerminal.GetTUsuario(s.Usuario.UsuarioId, conn);
            }
            if (s.Programa != null)
            {
                tpr = CntSciTerminal.GetTPrograma(s.Programa.ProgramaId, conn);
            }
            if (s.DispositivoOriginal != null)
            {
                tdispo = CntSciTerminal.GetTDispositivo(s.DispositivoOriginal.DispositivoId, conn);
            }
            if (s.DispositivoSustituto != null)
            {
                tdisps = CntSciTerminal.GetTDispositivo(s.DispositivoSustituto.DispositivoId, conn);
            }
            TSustitucion ts = new TSustitucion()
            {
                SustitucionId         = s.SustitucionId,
                Comentarios           = s.Comentarios,
                Estado                = s.Estado,
                TUsuario              = tusu,
                TDispositivoOriginal  = tdispo,
                TDispositivoSustituto = tdisps,
                TPrograma             = tpr,
                Fecha = s.Fecha
            };

            CntSciTerminal.TSave(ts, conn);
        }
        private void PantallaValidacion(SqlCeConnection conn)
        {
            pantalla = new StringBuilder();
            pantalla.Append(String.Format("<b>Empresa: {0}</b><br/>", empresa.Nombre));
            //Incidencias
            IList <TIncidencia> incis = CntSciTerminal.GetTIncidencias(conn);

            pantalla.Append("<b>Incidencias:</b><br/>");
            if (incis != null)
            {
                foreach (TIncidencia inc in incis)
                {
                    var rs = (from d in ctx.Incidencias
                              where d.IncidenciaId == inc.IncidenciaId && d.Dispositivo.DispositivoId == inc.Dispositivo.DispositivoId
                              select d).FirstOrDefault <Incidencia>();
                    if (rs == null)
                    {
                        pantalla.AppendLine(String.Format("Incidencia en dispositivo: {0}<br/>", inc.Dispositivo.Nombre));
                    }
                }
            }

            //Sustituciones
            IList <TSustitucion> sustituciones = CntSciTerminal.GetTSustituciones(conn);

            pantalla.AppendLine("<b>Sustituciones:</b><br/>");
            if (sustituciones != null)
            {
                foreach (TSustitucion sust in sustituciones)
                {
                    var rs = (from d in ctx.Sustitucions
                              where d.SustitucionId == sust.SustitucionId && d.DispositivoOriginal.DispositivoId == sust.TDispositivoOriginal.DispositivoId
                              select d).FirstOrDefault <Sustitucion>();
                    if (rs == null)
                    {
                        pantalla.AppendLine(String.Format("Disp. Original: {0} / Disp. Sustituto: {1}<br/>", sust.TDispositivoOriginal.Nombre, sust.TDispositivoSustituto.Nombre));
                    }
                }
            }

            //Revisiones
            IList <TRevision> revisiones = CntSciTerminal.GetTRevisiones(conn);

            pantalla.AppendLine("<b>Revisiones:</b><br/>");
            if (revisiones != null)
            {
                TPrograma p    = null;
                int       p_id = 0;
                foreach (TRevision rev in revisiones)
                {
                    if ((p = rev.TPrograma) != null)
                    {
                        p_id = p.ProgramaId;
                    }
                    pantalla.AppendLine(String.Format("Revisión realizada en: {1} del dispositivo: {0}. Programa: {2}<br/>", rev.NDispositivo, rev.FechaRevision.ToShortDateString(), p_id));
                }
            }
            if (conn.State != System.Data.ConnectionState.Closed)
            {
                conn.Close();
            }

            RadNotification2.Text = String.Format("<b>{0}</b><br/>{1}",
                                                  (string)GetGlobalResourceObject("ResourceLainsaSci", "Warning"),
                                                  pantalla.ToString());
            RadNotification2.Show();

            RadAjaxManager1.ResponseScripts.Add(String.Format("return radconfirm('¿Desea continuar con la importación?', confirmCallBackFn, 330, 100, null,'Importación', '');"));
        }
        private void PantallaValidacion(SqlCeConnection conn)
        {
            pantalla = new StringBuilder();
            pantalla.Append(String.Format("<b>Empresa: {0}</b><br/>", empresa.Nombre));
            //Incidencias
            IList <TIncidencia> incis = CntSciTerminal.GetTIncidencias(conn);

            pantalla.Append("--- INCIDENCIAS ------<br/>");
            if (incis != null)
            {
                foreach (TIncidencia inc in incis)
                {
                    // solo las incidencias que se han creado modificado o eliminado en el terminal
                    if (inc.Abm != 0)
                    {
                        pantalla.AppendLine(String.Format("ID:{6} Dispositivo: {0} ABM: {1} Apertura:{2:dd/MM/yyyy} Cierre:{3:dd/MM/yyyy} Prevista:{4:dd/MM/yyyy} Comentarios:{5} <br/>",
                                                          inc.TDispositivo.Nombre,
                                                          inc.Abm,
                                                          inc.FechaApertura,
                                                          inc.FechaCierre,
                                                          inc.FechaPrevista,
                                                          inc.Comentarios,
                                                          inc.IncidenciaId));
                    }
                }
            }

            //Incidencias (Evolución)
            IList <TIncidenciaEvolucion> incievos = CntSciTerminal.GetTIncidenciaEvolucions(conn);

            pantalla.Append("--- INCIDENCIAS EVOLUCIONES ------<br/>");
            if (incievos != null)
            {
                foreach (TIncidenciaEvolucion inc in incievos)
                {
                    // solo las incidencias que se han creado modificado o eliminado en el terminal
                    if (inc.Abm != 0)
                    {
                        pantalla.AppendLine(String.Format("IDEVO:{4} IDINCI:{5} Dispositivo: {0} ABM: {1} Fecha:{2:dd/MM/yyyy} Comentarios:{3} <br/>",
                                                          inc.Incidencia.TDispositivo.Nombre,
                                                          inc.Abm,
                                                          inc.FechaEvolucion,
                                                          inc.Comentarios,
                                                          inc.IncidenciaEvolucionId,
                                                          inc.Incidencia.IncidenciaId));
                    }
                }
            }

            //Sustituciones
            IList <TSustitucion> sustituciones = CntSciTerminal.GetTSustituciones(conn);

            pantalla.AppendLine("--- SUSTITUCIONES ------<br/>");
            if (sustituciones != null)
            {
                foreach (TSustitucion sust in sustituciones)
                {
                    if (sust.Abm != 0)
                    {
                        var rs = (from d in ctx.Sustitucions
                                  where d.SustitucionId == sust.SustitucionId && d.DispositivoOriginal.DispositivoId == sust.TDispositivoOriginal.DispositivoId
                                  select d).FirstOrDefault <Sustitucion>();
                        if (rs == null)
                        {
                            if (sust.TDispositivoSustituto != null)
                            {
                                pantalla.AppendLine(String.Format("IDSUS:{0} Disp. Original:{1}  Disp. Sustituto:{2} Fecha:{3:dd/MM/yyyy} Comentarios:{4}<br/>",
                                                                  sust.SustitucionId,
                                                                  sust.TDispositivoOriginal.Nombre,
                                                                  sust.TDispositivoSustituto.Nombre,
                                                                  sust.Fecha,
                                                                  sust.Comentarios));
                            }
                            else
                            {
                                // Si el sustituto es nulo el problema es que no se ha hecho la sustitución
                                pantalla.AppendLine(String.Format("IDSUS:{0} Disp. Original: {1} Fecha:{2:dd/MM/yyyy} Comentarios:{3} / Disp. ¿Sustitución no realizada?<br/>",
                                                                  sust.SustitucionId,
                                                                  sust.TDispositivoOriginal.Nombre,
                                                                  sust.Fecha,
                                                                  sust.Comentarios));
                            }
                        }
                    }
                }
            }

            //Revisiones
            IList <TRevision> revisiones = CntSciTerminal.GetTRevisiones(conn);

            pantalla.AppendLine("--- REVISIONES ------<br/>");
            if (revisiones != null)
            {
                TPrograma p    = null;
                int       p_id = 0;
                foreach (TRevision rev in revisiones)
                {
                    if (rev.Abm != 0)
                    {
                        if ((p = rev.TPrograma) != null)
                        {
                            p_id = p.ProgramaId;
                        }
                        else
                        {
                            p_id = 0;
                        }
                        pantalla.AppendLine(String.Format("IDREV:{0} Dispositivo:{1} Fecha:{2:dd/MM/yyyy} Programa: {3} ABM:{4} Estado:{5} Comentario:{6}<br/>",
                                                          rev.RevisionId,
                                                          rev.NDispositivo,
                                                          rev.FechaRevision,
                                                          p_id,
                                                          rev.Abm,
                                                          rev.Estado,
                                                          rev.Comentario));
                    }
                }
            }

            //Nuevos dispositivos
            IList <TDispositivo> dispositivos = CntSciTerminal.GetTNuevosDispositivos(conn);

            pantalla.Append("--- NUEVOS DISPOSITIVOS ------<br/>");
            if (dispositivos != null)
            {
                foreach (TDispositivo disp in dispositivos)
                {
                    pantalla.AppendLine(String.Format("ID:{0} Nombre:{1} Instalacion: {2} Tipo:{3} Modelo:{4} CodBarras:{5}<br/>",
                                                      disp.DispositivoId,
                                                      disp.Nombre,
                                                      disp.Instalacion.Nombre,
                                                      disp.Tipo.Nombre,
                                                      disp.Modelo.Nombre,
                                                      disp.CodBarras));
                }
            }

            if (conn.State != System.Data.ConnectionState.Closed)
            {
                conn.Close();
            }

            string msg = pantalla.ToString();

            msg         = msg.Replace("'", "");
            msg         = msg.Replace("<b>", "");
            msg         = msg.Replace("</b>", "");
            msg         = msg.Replace("<br/>", "\n");
            txtInf.Text = msg;

            //RadNotification2.Text = String.Format("<b>{0}</b><br/>{1}",
            //                                     (string)GetGlobalResourceObject("ResourceLainsaSci", "Warning"),
            //                                     pantalla.ToString());
            //RadNotification2.Show();

            // RadAjaxManager1.ResponseScripts.Add(String.Format("return radconfirm('¿Desea continuar con la importación?', confirmCallBackFn, 330, 100, null,'Importación', '');"));
            btnCargar.Visible   = false;
            btnImportOK.Visible = true;
        }