public IHttpActionResult PostBitacoraVentana(BitacoraVentana bitacoraVentana)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                Ventana ventana = db.Ventana
                                  .Include(v => v.StatusVentana)
                                  .Where(v => (v.Id == bitacoraVentana.IdVentana))
                                  .FirstOrDefault();

                WorkFlowServicio workflowServicio          = new WorkFlowServicio();
                IRespuestaServicio <WorkFlowView> workFlow = workflowServicio.nextEstatus(ventana.IdSubCategoria, ventana.StatusVentana.Where(s => s.IdVentana == bitacoraVentana.IdVentana).OrderByDescending(s => s.Fecha).FirstOrDefault().IdStatus, true);

                if (workFlow.Respuesta != null)
                {
                    bitacoraVentana.IdStatus = workFlow.Respuesta.EstatusSiguiente.Id;
                }
                else
                {
                    workFlow = workflowServicio.nextEstatus(ventana.IdSubCategoria, ventana.StatusVentana.Where(s => s.IdVentana == bitacoraVentana.IdVentana).OrderByDescending(s => s.Fecha).FirstOrDefault().IdStatus, false);
                    bitacoraVentana.IdStatus = workFlow.Respuesta.EstatusInicial.Id;
                }

                bitacoraVentana.Fecha = DateTime.Now.Date;

                db.BitacoraVentana.Add(bitacoraVentana);
                db.SaveChanges();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            BitacoraVentana bitacoraVentanaAdded = db.BitacoraVentana.Find(bitacoraVentana.Id);

            return(Ok(bitacoraVentanaAdded));
        }
        // GET: Warehouse/Ventana/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Ventana ventana = db.Ventana.Find(id);

            if (ventana == null)
            {
                return(HttpNotFound());
            }

            ViewBag.IdProveedor    = new SelectList(db.Proveedores.Select(x => new { Id = x.Id, NombreCorto = x.NombreCorto }).OrderBy(x => x.NombreCorto), "Id", "NombreCorto", ventana.IdProveedor);
            ViewBag.IdProcedencia  = new SelectList(db.Locacion.Select(x => new { Id = x.Id, Nombre = (x.NombreCorto + " " + x.Nombre) }).OrderBy(x => x.Nombre), "Id", "Nombre", ventana.IdProcedencia);
            ViewBag.IdDestino      = new SelectList(db.Locacion.Select(x => new { Id = x.Id, Nombre = (x.NombreCorto + " " + x.Nombre) }).OrderBy(x => x.Nombre), "Id", "Nombre", ventana.IdDestino);
            ViewBag.IdCarrier      = new SelectList(db.Carrier.Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre", ventana.IdCarrier);
            ViewBag.IdSubCategoria = new SelectList(db.SubCategoria.Where(x => (x.IdCategoria == 10)).Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre", ventana.IdSubCategoria);
            ViewBag.IdOperacion    = new SelectList(db.TipoOperacion.Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre", ventana.IdOperacion);

            return(View(ventana));
        }
Exemple #3
0
        public Piso(int superficie, Tamanyo[] tamanyo, PuertaColor color, Tamanyo[] tamanyo_ventanas, VentanaCalidad calidad)
        {
            //puertas = new Puertas(tamanyos);

            //this.superficie = superficie;

            this.superficie = superficie;

            puerta = new Puerta[tamanyo.Length];

            ventana = new Ventana[tamanyo_ventanas.Length];

            for (int i = 0; i < tamanyo.Length; i++)
            {
                puerta[i] = new Puerta(tamanyo[i].ancho, tamanyo[i].alto, color);
            }

            for (int i = 0; i < tamanyo_ventanas.Length; i++)
            {
                ventana[i] = new Ventana(tamanyo_ventanas[i].ancho, tamanyo_ventanas[i].alto, calidad);
            }
        }
        public ActionResult Actualizar(VentanaView ventanaView)
        {
            try
            {
                string   id    = Request.Form["txtId"];
                DateTime desde = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, int.Parse(Request.Form["cboHoraDesde"]), int.Parse(Request.Form["cboMinutoDesde"]), 0);
                DateTime?hasta = null;
                if (Request.Form["cboHoraHasta"] != "-1" && Request.Form["cboMinutoHasta"] != "-1")
                {
                    hasta = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, int.Parse(Request.Form["cboHoraHasta"]), int.Parse(Request.Form["cboMinutoHasta"]), 0);
                }


                Ventana v = new Ventana();
                v.Id    = int.Parse(id);
                v.Desde = desde;
                v.Hasta = hasta;

                VentanaRepository vr = new VentanaRepository();

                v = vr.Actualizar(v);
                if (v.Id == 0)
                {
                    ventanaView.Mensaje = "Hubo un error al crear la ventana";
                    return(View("Obtener", ventanaView));
                }

                VentanaView vv = new VentanaView();
                vv.Mensaje = "Ventana Actualizada";
                vv.Ventana = v;
                return(View("Obtener", vv));
            }
            catch (Exception ex)
            {
                return(View("Mensaje", new VentanaView {
                    Mensaje = ex.Message
                }));
            }
        }
Exemple #5
0
        public bool saveStatusVentana(BitacoraVentana bitacoraVentana)
        {
            StatusVentana statusVentana = new StatusVentana();

            statusVentana.IdResponsable = bitacoraVentana.IdResponsable;
            statusVentana.IdStatus      = bitacoraVentana.IdStatus;
            statusVentana.IdVentana     = bitacoraVentana.IdVentana;
            statusVentana.Fecha         = bitacoraVentana.Fecha;
            statusVentana.Comentarios   = bitacoraVentana.Comentarios;
            db.StatusVentana.Add(statusVentana);
            db.SaveChanges();

            Ventana ventana = db.Ventana
                              .Include(v => v.StatusVentana)
                              .Include(v => v.StatusVentana.Select(s => s.Status))
                              .Include(v => v.BitacoraVentana)
                              .Include(v => v.BitacoraVentana.Select(b => b.Estatus))
                              .Include(v => v.BitacoraVentana.Select(b => b.Rechazo))
                              .Include(v => v.Evento)
                              .Include(v => v.Proveedor)
                              .SingleOrDefault(x => x.Id == statusVentana.IdVentana);

            try
            {
                UsuarioServicio     usuarioServicio = new UsuarioServicio();
                NotificationService notify          = new NotificationService();

                string       senders      = usuarioServicio.GetEmailByStatus(ventana);
                EmailService emailService = new EmailService();
                emailService.SendMail(senders, ventana);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }

            return(true);
        }
Exemple #6
0
        public static PdfDocument CreateDocument(Ventana ventana)
        {
            PdfDocument document = new PdfDocument();

            document.Info.Title = ventana.PO + "_" + ventana.Proveedor.NombreCorto + "_" + ventana.NombreCarrier + "_" + ventana.Evento.FechaInicio.ToString("yyyy-MM-dd");

            Document doc     = new Document();
            Section  section = doc.AddSection();

            CreateHeader(doc);
            CreatePage(doc, ventana);

            var pdfRenderer = new DocumentRenderer(doc);

            pdfRenderer.PrepareDocument();

            int pages = pdfRenderer.FormattedDocument.PageCount;

            for (int i = 1; i <= pages; ++i)
            {
                var page = document.AddPage();

                PageInfo pageInfo = pdfRenderer.FormattedDocument.GetPageInfo(i);
                page.Width       = pageInfo.Width;
                page.Height      = pageInfo.Height;
                page.Orientation = pageInfo.Orientation;

                using (XGraphics gfx = XGraphics.FromPdfPage(page))
                {
                    gfx.MUH  = PdfFontEncoding.Unicode;
                    gfx.MFEH = PdfFontEmbedding.Default;
                    pdfRenderer.RenderPage(gfx, i);
                }
            }

            return(document);
        }
        public ActionResult Upload(HttpPostedFileBase file, Ventana ventana)
        {
            if ((file != null) && (file.ContentLength > 0) && !string.IsNullOrEmpty(file.FileName))
            {
                string fileName        = file.FileName;
                string fileContentType = file.ContentType;
                byte[] fileBytes       = new byte[file.ContentLength];
                var    data            = file.InputStream.Read(fileBytes, 0, Convert.ToInt32(file.ContentLength));

                ViewBag.SelectSubCategoria = new SelectList(db.SubCategoria.Where(x => (x.IdCategoria == 10)).Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre", ventana.IdSubCategoria);
                ViewBag.SelectOperacion    = new SelectList(db.TipoOperacion.Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre", ventana.IdOperacion);

                using (var package = new ExcelPackage(file.InputStream))
                {
                    PersonaServicio personaServicio      = new PersonaServicio();
                    IRespuestaServicio <Persona> persona = personaServicio.GetPersona(User.Identity.GetUserId());

                    var currentSheet = package.Workbook.Worksheets;

                    foreach (var workSheet in currentSheet)
                    {
                        var noOfCol = workSheet.Dimension.End.Column;
                        var noOfRow = workSheet.Dimension.End.Row;

                        if (workSheet.Cells[3, 2].Value != null)
                        {
                            ventana.PO = workSheet.Cells[2, 2].Value == null ? string.Empty : workSheet.Cells[2, 2].Value.ToString().Trim();
                            var numProveedor = Convert.ToInt32(workSheet.Cells[3, 2].Value.ToString().Trim());
                            ventana.IdProveedor   = db.Proveedores.Where(p => (p.NumeroProveedor == numProveedor)).Select(p => p.Id).FirstOrDefault();
                            ventana.Recurso       = workSheet.Cells[4, 2].Value == null ? string.Empty : workSheet.Cells[4, 2].Value.ToString().Trim();
                            ventana.Cantidad      = workSheet.Cells[5, 2].Value == null ? string.Empty : workSheet.Cells[5, 2].Value.ToString().Trim();
                            ventana.NombreCarrier = workSheet.Cells[6, 2].Value == null ? string.Empty : workSheet.Cells[6, 2].Value.ToString().Trim();
                            ventana.IdCarrier     = db.Carrier.Where(c => c.NombreCorto == ventana.NombreCarrier).Select(c => c.Id).FirstOrDefault() == 0
                                ? db.Carrier.Where(c => c.NombreCorto == "NO CONFIRMADO").Select(c => c.Id).FirstOrDefault()
                                : db.Carrier.Where(c => c.NombreCorto == ventana.NombreCarrier).Select(c => c.Id).FirstOrDefault();
                            ventana.Conductor      = workSheet.Cells[7, 2].Value == null ? string.Empty : workSheet.Cells[7, 2].Value.ToString().Trim();
                            ventana.MovilConductor = workSheet.Cells[8, 2].Value == null ? string.Empty : workSheet.Cells[8, 2].Value.ToString().Trim();
                            var nombreCorto = workSheet.Cells[9, 2].Value == null ? "MX" : workSheet.Cells[9, 2].Value.ToString().Trim();
                            ventana.IdProcedencia = db.Locacion.Where(l => l.NombreCorto == nombreCorto).Select(l => l.Id).FirstOrDefault() == 0
                                ? db.Locacion.Where(l => l.NombreCorto == "MX").Select(l => l.Id).FirstOrDefault()
                                : db.Locacion.Where(l => l.NombreCorto == nombreCorto).Select(l => l.Id).FirstOrDefault();
                            nombreCorto       = workSheet.Cells[10, 2].Value == null ? "MX" : workSheet.Cells[10, 2].Value.ToString().Trim();
                            ventana.IdDestino = db.Locacion.Where(l => l.NombreCorto == nombreCorto).Select(l => l.Id).FirstOrDefault() == 0
                                ? db.Locacion.Where(l => l.NombreCorto == "MX").Select(l => l.Id).FirstOrDefault()
                                : db.Locacion.Where(l => l.NombreCorto == nombreCorto).Select(l => l.Id).FirstOrDefault();
                            ventana.NumeroEconomico   = workSheet.Cells[11, 2].Value == null ? string.Empty : workSheet.Cells[11, 2].Value.ToString().Trim();
                            ventana.NumeroPlaca       = workSheet.Cells[12, 2].Value == null ? string.Empty : workSheet.Cells[12, 2].Value.ToString().Trim();
                            ventana.EconomicoRemolque = workSheet.Cells[13, 2].Value == null ? string.Empty : workSheet.Cells[13, 2].Value.ToString().Trim();
                            ventana.PlacaRemolque     = workSheet.Cells[14, 2].Value == null ? string.Empty : workSheet.Cells[14, 2].Value.ToString().Trim();
                            ventana.ModeloContenedor  = workSheet.Cells[15, 2].Value == null ? string.Empty : workSheet.Cells[15, 2].Value.ToString().Trim();
                            ventana.ColorContenedor   = workSheet.Cells[16, 2].Value == null ? string.Empty : workSheet.Cells[16, 2].Value.ToString().Trim();
                            ventana.Sellos            = workSheet.Cells[17, 2].Value == null ? string.Empty : workSheet.Cells[17, 2].Value.ToString().Trim();
                            ventana.TipoUnidad        = workSheet.Cells[18, 2].Value == null ? string.Empty : workSheet.Cells[18, 2].Value.ToString().Trim();
                            ventana.Dimension         = workSheet.Cells[19, 2].Value == null ? string.Empty : workSheet.Cells[19, 2].Value.ToString().Trim();
                            ventana.Temperatura       = workSheet.Cells[20, 2].Value == null ? string.Empty : workSheet.Cells[20, 2].Value.ToString().Trim();

                            db.Ventana.Add(ventana);
                            db.SaveChanges();

                            Evento evento = db.Evento.Find(ventana.IdEvento);
                            evento.IdSubCategoria  = ventana.IdSubCategoria;
                            db.Entry(evento).State = EntityState.Modified;
                            db.SaveChanges();

                            for (int i = 0; i < 3; i++)
                            {
                                changeEstatus(ventana);
                            }
                        }
                    }
                    return(RedirectToAction("Index", "Evento", new { Area = "Operaciones" }));
                }
            }
            return(View("Index"));
        }
        public ActionResult Create(Ventana ventana)
        {
            ViewBag.IdProveedor   = new SelectList(db.Proveedores.Select(x => new { Id = x.Id, NombreCorto = x.NombreCorto }).OrderBy(x => x.NombreCorto), "Id", "NombreCorto");
            ViewBag.IdProcedencia = new SelectList(db.Locacion.Select(x => new { Id = x.Id, Nombre = (x.NombreCorto + " " + x.Nombre) }).OrderBy(x => x.Nombre), "Id", "Nombre");
            ViewBag.IdDestino     = new SelectList(db.Locacion.Select(x => new { Id = x.Id, Nombre = (x.NombreCorto + " " + x.Nombre) }).OrderBy(x => x.Nombre), "Id", "Nombre");
            //ViewBag.IdCarrier = new SelectList(db.Carrier.Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre");
            ViewBag.IdSubCategoria = new SelectList(db.SubCategoria.Where(x => (x.IdCategoria == 10)).Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre");
            ViewBag.IdOperacion    = new SelectList(db.TipoOperacion.Select(x => new { Id = x.Id, Nombre = x.Nombre }).OrderBy(x => x.Nombre), "Id", "Nombre");

            if (ventana.PO == null)
            {
                ventana.PO = " ";
            }
            if (ventana.Recurso == null)
            {
                ventana.Recurso = " ";
            }
            if (ventana.TipoUnidad == null)
            {
                ventana.TipoUnidad = " ";
            }
            if (ventana.NombreCarrier == null)
            {
                ventana.NombreCarrier = " ";
            }
            if (ventana.Dimension == null)
            {
                ventana.Dimension = " ";
            }
            if (ventana.NumeroEconomico == null)
            {
                ventana.NumeroEconomico = " ";
            }
            if (ventana.NumeroPlaca == null)
            {
                ventana.NumeroPlaca = " ";
            }
            if (ventana.EconomicoRemolque == null)
            {
                ventana.EconomicoRemolque = " ";
            }
            if (ventana.ColorContenedor == null)
            {
                ventana.ColorContenedor = " ";
            }
            if (ventana.PlacaRemolque == null)
            {
                ventana.PlacaRemolque = " ";
            }
            if (ventana.Sellos == null)
            {
                ventana.Sellos = " ";
            }
            if (ventana.ModeloContenedor == null)
            {
                ventana.ModeloContenedor = " ";
            }
            if (ventana.Conductor == null)
            {
                ventana.Conductor = " ";
            }
            if (ventana.MovilConductor == null)
            {
                ventana.MovilConductor = " ";
            }

            if (ModelState.IsValid)
            {
                db.Ventana.Add(ventana);
                db.SaveChanges();

                for (int i = 0; i < 3; i++)
                {
                    changeEstatus(ventana);
                }

                return(RedirectToAction("Index", "Evento", new { Area = "Operaciones" }));
            }

            return(View(ventana));
        }
Exemple #9
0
        public bool SendMail(string To_Mail, Ventana ventana)
        {
            try
            {
                MailMessage smail = new MailMessage();
                smail.IsBodyHtml   = true;
                smail.BodyEncoding = System.Text.Encoding.GetEncoding("iso-8859-1");
                smail.From         = new MailAddress("*****@*****.**", "*****@*****.**");

                string[] emails = To_Mail.Split(',');
                foreach (string email in emails)
                {
                    if (email != "")
                    {
                        smail.To.Add(email);
                    }
                }

                var estatus = ventana.StatusVentana.OrderByDescending(s => s.Fecha).Select(s => s.Status).FirstOrDefault();

                smail.Subject = "[PMMX Notification] Ventana: " + ventana.PO + " " + ventana.Proveedor.NombreCorto + " " + ventana.NombreCarrier;
                smail.Body    = string.Format("<html><head><meta charset='UTF-8'></head>");
                smail.Body    = smail.Body + string.Format("<body> <div style='width:100%'>"
                                                           + "<div align='center' style='font-weight:bold; text-align: center; width:50%; margin: 0 auto; display: table; background: #D6EAF8;' >");
                smail.Body = smail.Body + string.Format(" <h1 style ='text - transform: uppercase; background: #21618C; color: #FFFFFF;'> Ventana " + ventana.PO + " " + ventana.Proveedor.NombreCorto + " " + ventana.NombreCarrier + " </h1>");
                smail.Body = smail.Body + string.Format("Has been change to status to <span style='color: #5caad2;'>" + estatus.Nombre);

                if (ventana.BitacoraVentana.Where(b => (b.IdVentana == ventana.Id) && (b.Estatus.Id == estatus.Id)).OrderByDescending(v => v.Fecha).Select(v => v.IdRechazo).Count() > 0)
                {
                    smail.Body = smail.Body + string.Format(" Rejected by"
                                                            + "</br><span style='color: #21618C;'>"
                                                            + ventana.BitacoraVentana.OrderByDescending(s => s.Fecha).Select(s => s.Rechazo.Nombre).FirstOrDefault()
                                                            + "</span>");
                }

                smail.Body = smail.Body + string.Format(" <br /><br /><br /><br /> ");
                smail.Body = smail.Body + string.Format("<h3 style ='text - transform: uppercase; background: #21618C; color: #FFFFFF;'><a style='color: #FFFFFF;'' href='https://serverpmi.tr3sco.net/'>For more information click here</a><br /></h3> ");
                smail.Body = smail.Body + string.Format(" </div>"
                                                        + "</div>"
                                                        + "</body>"
                                                        + "</html> ");

                SmtpClient smtp = new SmtpClient();
                smtp.Host                  = "smtp.gmail.com";
                smtp.Port                  = 587;
                smtp.EnableSsl             = true;
                smtp.UseDefaultCredentials = false;
                smtp.Credentials           = new System.Net.NetworkCredential("*****@*****.**", "82000100");
                smtp.DeliveryMethod        = SmtpDeliveryMethod.Network;
                smtp.Timeout               = 100000;
                smtp.Send(smail);

                NotificationService notify          = new NotificationService();
                UsuarioServicio     usuarioServicio = new UsuarioServicio();

                List <DispositivoView> dispositivos = usuarioServicio.GetDispositivoByEvento(ventana.IdEvento);
                List <string>          llaves       = dispositivos.Select(x => x.Llave).ToList();

                foreach (string notificacion in llaves)
                {
                    notify.SendPushNotification(notificacion, "Ventana: " + ventana.Evento.Descripcion + ". ", "La ventana " + ventana.Evento.Descripcion + " ha cambiado de estatus a " + estatus.Nombre);
                }
            }
            catch (SmtpException ex)
            {
                Console.WriteLine(ex.StatusCode);
                Console.WriteLine(ex.Message);
                return(false);
            }
            return(true);
        }
Exemple #10
0
 static void Main()
 {
     Gtk.Application.Init();
     Ventana ven = new Ventana ();
     Gtk.Application.Run();
 }
 /// <summary>
 /// Constructor
 /// Creates a VentanaHasMenu link in the same Partition as the given Ventana
 /// </summary>
 /// <param name="source">Ventana to use as the source of the relationship.</param>
 /// <param name="target">Menu to use as the target of the relationship.</param>
 public VentanaHasMenu(Ventana source, Menu target)
     : base((source != null ? source.Partition : null), new DslModeling::RoleAssignment[] { new DslModeling::RoleAssignment(VentanaHasMenu.VentanaDomainRoleId, source), new DslModeling::RoleAssignment(VentanaHasMenu.MenuDomainRoleId, target) }, null)
 {
 }
 private void Ventana_MouseDown(object sender, MouseButtonEventArgs e)
 {
     m_start       = e.GetPosition(vParent);
     m_startOffset = new Vector(tt.X, tt.Y);
     Ventana.CaptureMouse();
 }
Exemple #13
0
    static void Init()
    {
        Ventana ventana = (Ventana)EditorWindow.GetWindow(typeof(Ventana));

        ventana.Show();
    }
 public VisualizacionCompleta(Ventana x)
 {
     ventana = x;
     InitializeComponent();
 }
Exemple #15
0
 public static bool GetPermiso(Ventana ventana, CRUDItem cRUDItem)
 {
     return(false);
 }
 public static void SetPrototools(Ventana element, Prototools newPrototools)
 {
     DslModeling::DomainRoleInfo.SetLinkedElement(element, VentanaDomainRoleId, newPrototools);
 }
 public static DslModeling::LinkedElementCollection <Menu> GetMenu(Ventana element)
 {
     return(GetRoleCollection <DslModeling::LinkedElementCollection <Menu>, Menu>(element, VentanaDomainRoleId));
 }
 public static void SetVentana(Menu element, Ventana newVentana)
 {
     DslModeling::DomainRoleInfo.SetLinkedElement(element, MenuDomainRoleId, newVentana);
 }
Exemple #19
0
    static void Main()
    {
        const int TAMANYO = 100;

        Dispositivo[] d = new Dispositivo[TAMANYO];

        d[0] = new Ventana(new Persiana(10));
        d[1] = new Ventana(new Persiana(25));
        d[2] = new Ventana(new Persiana(45));
        d[3] = new Puerta(true);
        d[4] = new PuertaDeGaraje(false, 10);
        d[5] = new Toldo(70);
        d[6] = new Luz(false);
        d[7] = new Calefaccion(25);
        d[8] = new Calefaccion(23);

        int contador = 9;

        int opcion;

        do
        {
            Console.WriteLine("Elige una opción:");
            Console.WriteLine("1. Bloquear puerta de acceso");
            Console.WriteLine("2. Desbloquear puerta de acceso");
            Console.WriteLine("3. Encender punto de luz");
            Console.WriteLine("4. Apagar punto de luz");
            Console.WriteLine("5. Subir por completo puerta del garaje");
            Console.WriteLine("6. Bajar por completo puerta del garaje");
            Console.WriteLine("7. Subir 25% las 3 persianas");
            Console.WriteLine("8. Recoger el toldo");
            Console.WriteLine("9. Extender el toldo");
            Console.WriteLine("10. Subir un grado cada calefacción");
            Console.WriteLine("11. Bajar un grado cada calefacción");
            Console.WriteLine("12. Ver estado de los dispositivos");
            Console.WriteLine("0. Salir");

            opcion = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine();

            switch (opcion)
            {
            case 1: ((Puerta)(d[3])).Bloquear(); break;

            case 2: ((Puerta)(d[3])).Desbloquear(); break;

            case 3: ((Luz)(d[6])).Encender(); break;

            case 4: ((Luz)(d[6])).Apagar(); break;

            case 5: ((PuertaDeGaraje)(d[4])).Subir(); break;

            case 6: ((PuertaDeGaraje)(d[4])).Bajar(); break;

            case 7:
                ((Ventana)(d[0])).GetPersiana().Subir(25);
                ((Ventana)(d[1])).GetPersiana().Subir(25);
                ((Ventana)(d[2])).GetPersiana().Subir(25);
                break;

            case 8: ((Toldo)(d[5])).Subir(); break;

            case 9: ((Toldo)(d[5])).Bajar(); break;

            case 10:
                d[7] = new Calefaccion(
                    ((Calefaccion)(d[7])).GetTemperatura() + 1);
                d[8] = new Calefaccion(
                    ((Calefaccion)(d[8])).GetTemperatura() + 1);
                break;

            case 11:
                d[7] = new Calefaccion(
                    ((Calefaccion)(d[7])).GetTemperatura() - 1);
                d[8] = new Calefaccion(
                    ((Calefaccion)(d[8])).GetTemperatura() - 1);
                break;

            case 12:
                for (int i = 0; i < contador; i++)
                {
                    Console.WriteLine(d[i]);
                }
                Console.WriteLine();
                break;

            case 0: Console.WriteLine("Hasta otra"); break;

            default: Console.WriteLine("Opción incorrecta"); break;
            }
        } while (opcion != 0);
    }
    public static void Main()
    {
        const int OBJETOS     = 10;
        int       canObjetios = 9;

        Dispositivo[] d = new Dispositivo[OBJETOS];
        d[0] = new Puerta(true, "Puerta de acceso");
        d[1] = new PuertaGaraje(true, 0, "Puerta garaje");
        d[2] = new Toldo(0, "Toldo");
        d[3] = new Luz(true, "Bombilla");
        d[4] = new Calefaccion(false, 20, "Cal1");
        d[5] = new Calefaccion(false, 20, "Cal2");
        d[6] = new Ventana(new Persiana(0, "Persiana 1"), "Ventana 1");
        d[8] = new Ventana(new Persiana(0, "Persiana 2"), "Ventana 2");
        d[7] = new Ventana(new Persiana(0, "Persiana 3"), "Ventana 3");
        string opcion;

        do
        {
            System.Console.WriteLine("1. Bloquear puerta");
            System.Console.WriteLine("2. Desbloquear puerta");
            System.Console.WriteLine("3. Encender luz");
            System.Console.WriteLine("4. Apagar luz");
            System.Console.WriteLine("5. Subir puerta garaje");
            System.Console.WriteLine("6. Bajar puerta garaje");
            System.Console.WriteLine("7. Subir un 25 Persiana 1");
            System.Console.WriteLine("8. Subir un 25 Persiana 2");
            System.Console.WriteLine("9. Subir un 25 Persiana 3");
            System.Console.WriteLine("10. Bajar un 25 Persiana 1");
            System.Console.WriteLine("11. Bajar un 25 Persiana 2");
            System.Console.WriteLine("12. Bajar un 25 Persiana 3");
            System.Console.WriteLine("13. Recoger toldo");
            System.Console.WriteLine("14. Extender toldo");
            System.Console.WriteLine("15. Subir un grado calefaccion");
            System.Console.WriteLine("16. Bajar un grado calefaccion");
            System.Console.WriteLine("17. Ver estado dispositivos");
            System.Console.WriteLine("0. Salir");
            opcion = System.Console.ReadLine();

            switch (opcion)
            {
            case "1":
                ((Puerta)(d[0])).Bloquear();
                break;

            case "2":
                ((Puerta)(d[0])).Desbloquear();
                break;

            case "3":
                ((Luz)d[3]).Encender();
                break;

            case "4":
                ((Luz)d[3]).Apagar();
                break;

            case "5":
                ((PuertaGaraje)(d[1])).Subir();
                break;

            case "6":
                ((PuertaGaraje)(d[1])).Bajar();
                break;

            case "7":
                ((Persiana)(d[6])).Subir();
                break;

            case "8":
                ((Persiana)(d[7])).Subir();
                break;

            case "9":
                ((Persiana)(d[8])).Subir();
                break;

            case "10":
                ((Persiana)(d[6])).Bajar();
                break;

            case "11":
                ((Persiana)(d[7])).Bajar();
                break;

            case "12":
                ((Persiana)(d[8])).Bajar();
                break;

            case "13":
                ((Toldo)d[3]).Subir();
                break;

            case "14":
                ((Toldo)d[3]).Bajar();
                break;

            case "15":
                ((Calefaccion)d[4]).
                SetTemperatura(((Calefaccion)d[4]).
                               GetTemperatura() + 1);
                ((Calefaccion)d[5]).
                SetTemperatura(((Calefaccion)d[5]).
                               GetTemperatura() + 1);

                break;

            case "16":
                ((Calefaccion)d[4]).
                SetTemperatura(((Calefaccion)d[4]).
                               GetTemperatura() - 1);

                ((Calefaccion)d[5]).
                SetTemperatura(((Calefaccion)d[5]).
                               GetTemperatura() - 1);

                break;

            case "17":
                for (int i = 0; i < canObjetios; i++)
                {
                    System.Console.WriteLine(d[i]);
                }
                break;

            case "0":
                System.Console.WriteLine("Bye!");
                break;

            default:
                System.Console.WriteLine("Wrong number!");
                break;
            }
        } while (opcion != "0");
    }
Exemple #21
0
        public ActionResult EnviarEjecutor(string id)
        {
            try
            {
                SolicitudRepository sr      = new SolicitudRepository();
                string estadoInicial        = "Aprobado_x_RM";
                string accionSiguiente      = "RM.Enviar_Ejec";
                string nombreUsuario        = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).UserData;
                string codigoPase           = String.Empty;
                string responsableEjecucion = String.Empty;

                Usuario ux        = new UsuarioRepository().Obtener(nombreUsuario);
                int     ventanaId = int.Parse(Request.Form["cboVentana"]);

                AreaRepository ar    = new AreaRepository();
                List <Area>    areas = ar.Listar("");

                string[]           keys = Request.Form.AllKeys;
                int                solicitudId;
                AmbienteRepository ambienteRepository = new AmbienteRepository();

                List <Solicitud> solicitudes = new List <Solicitud>();
                List <Ambiente>  ambientes   = new List <Ambiente>();

                #region Validar si se están marcando solicitudes de regularización
                var listaReg = new List <string>();
                foreach (var key in keys)
                {
                    if (String.Compare(key.Substring(0, 3), "chk") == 0 && String.Compare(key, "chkTodos") != 0)
                    {
                        if (String.Compare(Request.Form[key], "on") == 0)
                        {
                            solicitudId = int.Parse(key.Substring(3));
                            var s = sr.Obtener(solicitudId);
                            if (s.Regularizacion)
                            {
                                listaReg.Add("S" + s.Id.ToString().PadLeft(6, '0'));
                            }
                        }
                    }
                }
                if (listaReg.Count() > 0)
                {
                    var sbMensaje = new StringBuilder();
                    sbMensaje.Append("<p>No se pueden enviar al ejecutor las siguientes solicitudes de regularizacion</p>");
                    sbMensaje.Append("<ul>");
                    foreach (var item in listaReg)
                    {
                        sbMensaje.Append("<li>" + item + "</li>");
                    }
                    sbMensaje.Append("</ul>");
                    var hv = new HomeView();
                    hv.Mensaje = sbMensaje.ToString();
                    return(View("Mensaje", hv));
                }
                #endregion

                #region Validar si existen areas asignadas a las solicitudes marcadas para enviar
                StringBuilder ambienteEnviar = new StringBuilder();
                StringBuilder validacion     = new StringBuilder();
                validacion.Append("<p>Las siguientes solicitudes no tienen asignados en sus formularios los ejecutores</p>");
                validacion.Append("<ul>");
                bool areasVacias = false;

                foreach (string key in keys)
                {
                    if (String.Compare(key.Substring(0, 3), "chk") == 0 && String.Compare(key, "chkTodos") != 0 && String.Compare(Request.Form[key], "on") == 0)
                    {
                        solicitudId = int.Parse(key.Substring(3));
                        Solicitud s = sr.Obtener(solicitudId);
                        s.Ambiente = ambienteRepository.Obtener(s.Ambiente.Id);
                        if (!ambientes.Exists(p => p.Id == s.Ambiente.Id))
                        {
                            ambientes.Add(s.Ambiente);
                            ambienteEnviar.Append(s.Ambiente.Nombre);
                            ambienteEnviar.Append(",");
                        }
                        if (!Util.Util.ExisteArea(s))
                        {
                            areasVacias = true;
                            validacion.Append("<li>S" + s.Id.ToString().PadLeft(6, '0') + "</li>");
                        }
                    }
                }
                validacion.Append("</ul>");
                if (areasVacias)
                {
                    HomeView hv = new HomeView();
                    hv.Mensaje = validacion.ToString();
                    return(View("Mensaje", hv));
                }
                #endregion
                string listaAmbientes = ambienteEnviar.ToString().Substring(0, ambienteEnviar.ToString().Length - 1);

                string        url = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~"));
                StringBuilder sb  = new StringBuilder();
                sb.Append("<table border='1' style='border-collapse:collapse;width:100%;font-family:Arial;font-size:12px;'>");
                sb.Append("<thead>");
                sb.Append("<tr><th style='background-color:#002060;color:#ffffff;'>AMBIENTE</th><th style='background-color:#002060;color:#ffffff;'>SOLICITUD</th><th style='background-color:#002060;color:#ffffff;'>RESPONSABLE DE EJECUCION</th><th style='background-color:#002060;color:#ffffff;'>ANALISTA DESARROLLO</th><th style='background-color:#002060;color:#ffffff;'>PROYECTO</th><th style='background-color:#002060;color:#ffffff;'>FORMULARIO</th></tr>");
                sb.Append("</thead>");
                sb.Append("<tbody>");

                foreach (string key in keys)
                {
                    if (String.Compare(key.Substring(0, 3), "chk") == 0 && String.Compare(key, "chkTodos") != 0)
                    {
                        if (String.Compare(Request.Form[key], "on") == 0)
                        {
                            solicitudId = int.Parse(key.Substring(3));
                            Solicitud s = sr.Obtener(solicitudId);

                            solicitudes.Add(s);
                            List <SolicitudArchivo> solicitudesArchivo = Util.Util.ListarArchivos(s);
                            string solicitudRFC = (s.Ambiente.Final && !String.IsNullOrEmpty(s.RFC)) ? s.RFC : String.Concat("S", s.Id.ToString().PadLeft(6, '0'));
                            foreach (SolicitudArchivo sa in solicitudesArchivo)
                            {
                                if (sa.Area.Correos.Count() > 0)
                                {
                                    responsableEjecucion = sa.Area.Nombre;
                                }
                                else
                                {
                                    responsableEjecucion = s.AnalistaTestProd;
                                }


                                //sb.Append("<tr><td>" + s.Ambiente.Nombre + "</td><td>S" + s.Id.ToString().PadLeft(6, '0') + "</td><td>" + sa.SarID + "</td><td style='background-color:" + sa.Area.Color + ";'>" + responsableEjecucion + "</td><td>" + s.AnalistaDesarrollo + "</td><td>" + s.Proyecto.Codigo + "</td>");
                                sb.Append("<tr><td>" + s.Ambiente.Nombre + "</td><td>" + solicitudRFC + "</td><td style='background-color:" + sa.Area.Color + ";'>" + responsableEjecucion + "</td><td>" + s.AnalistaDesarrollo + "</td><td>" + s.Proyecto.Codigo + " - " + s.Proyecto.Nombre + "</td>");
                                sb.Append("<td>");
                                foreach (Archivo archivo in sa.Archivos)
                                {
                                    sb.Append("<a href='" + url + "/Home/ObtenerArchivo/S" + s.Id.ToString().PadLeft(6, '0') + "-" + archivo.Id.ToString() + "'>" + archivo.Nombre + "</a><br/>");
                                }
                                sb.Append("</td></tr>");
                            }
                            foreach (var otros in s.Aprobaciones)
                            {
                                if (otros.Area != null && otros.Area.Id != 0)
                                {
                                    sb.Append("<tr><td>" + s.Ambiente.Nombre + "</td><td>" + solicitudRFC + "</td><td style='background-color:" + otros.Area.Color + ";'>" + responsableEjecucion + "</td><td>" + s.AnalistaDesarrollo + "</td><td>" + s.Proyecto.Codigo + " - " + s.Proyecto.Nombre + "</td>");
                                    sb.Append("<td>");
                                    sb.Append("<a href='" + url + "/Solicitud/ObtenerAprobacion/" + otros.Id.ToString() + "'>" + otros.Nombre + "</a><br/>");
                                    sb.Append("</td></tr>");
                                }
                            }

                            string estado = sr.ObtenerEstado("RM", estadoInicial, accionSiguiente);

                            s.Estado = estado;
                            if (ventanaId == 0)
                            {
                                s.Ventana           = null;
                                s.EjecutarEmergente = false;
                            }
                            else if (ventanaId == -1)
                            {
                                s.Ventana           = null;
                                s.EjecutarEmergente = true;
                            }
                            else if (ventanaId > 0)
                            {
                                s.Ventana           = new VentanaRepository().Obtener(ventanaId);
                                s.EjecutarEmergente = false;
                            }
                            else
                            {
                                s.Ventana           = null;
                                s.EjecutarEmergente = false;
                            }

                            Log log = new Log();
                            log.Usuario    = ux;
                            log.Accion     = accionSiguiente;
                            log.Comentario = "Se envía a los ejecutores";
                            log.Estado     = s.Estado;
                            log.FechaHora  = DateTime.Now;
                            s.Logs.Add(log);

                            sr.ActualizarRMSolicitadoxSol(s);
                            s.Logs = s.Logs.OrderByDescending(p => p.FechaHora).ToList();
                            EstadoRepository er      = new EstadoRepository();
                            List <Estado>    estados = er.Listar();
                            Estado           estadoX = estados.FirstOrDefault(p => p.Nombre == s.Estado);
                            if (estadoX != null && estadoX.EnviarCorreo)
                            {
                                Util.Util.EnviarCorreo(url, s, "Solicitud S" + s.Id.ToString().PadLeft(6, '0') + (s.Emergente ? " EMERGENTE/Normal Urgente " : " ") + s.Estado);
                            }
                        }
                    }
                }

                sb.Append("</tbody>");
                sb.Append("</table>");

                string ventana = String.Empty;
                if (ventanaId == -1)
                {
                    ventana = "Emergente";
                }
                else if (ventanaId > 0)
                {
                    VentanaRepository vr        = new VentanaRepository();
                    Ventana           vv        = vr.Obtener(ventanaId);
                    string            horaHasta = String.Empty;
                    if (vv.Hasta.HasValue)
                    {
                        horaHasta = " - " + vv.Hasta.Value.ToString("HH:mm");
                    }
                    ventana = String.Concat("Normal a horas ", vv.Desde.ToString("HH:mm"), horaHasta);
                }
                else
                {
                    ventana = Util.Util.ObtenerDescripcionVentana(solicitudes);
                }
                StringBuilder sbPrevio     = new StringBuilder();
                var           mensajeEnvio = Request.Form["txtMensajeEnvio"];
                sbPrevio.Append(mensajeEnvio);
                //sbPrevio.Append("Estimados<br/><br/>");
                //sbPrevio.Append("Se envía la relación de pases a ejecutarse en la ventana: " + ventana + "<br/><br/>");
                var asunto = Request.Form["txtAsunto"];

                /*StringBuilder sb2 = new StringBuilder();
                 * sb2.Append("Pases a ejecutar");
                 * sb2.Append(" Ventana: " + ventana);
                 * sb2.Append(" - Ambiente: " + listaAmbientes.ToUpper());
                 */
                Util.Util.EnviarCorreo(solicitudes.ToArray(), asunto, sbPrevio.ToString() + sb.ToString(), true, true, true, true, true, true, true, true);

                return(View("Mensaje", new HomeView {
                    Mensaje = "Se envió el correo a los ejecutores"
                }));
            }
            catch (Exception ex)
            {
                return(View("Mensaje", new HomeView {
                    Mensaje = ex.Message
                }));
            }
        }
 public static Prototools GetPrototools(Ventana element)
 {
     return(DslModeling::DomainRoleInfo.GetLinkedElement(element, VentanaDomainRoleId) as Prototools);
 }
Exemple #23
0
 public Casa()
 {
     _puerta  = new Puerta();
     _ventana = new Ventana();
 }
 /// <summary>
 /// Constructor
 /// Creates a PrototoolsHasVentana link in the same Partition as the given Prototools
 /// </summary>
 /// <param name="source">Prototools to use as the source of the relationship.</param>
 /// <param name="target">Ventana to use as the target of the relationship.</param>
 public PrototoolsHasVentana(Prototools source, Ventana target)
     : base((source != null ? source.Partition : null), new DslModeling::RoleAssignment[] { new DslModeling::RoleAssignment(PrototoolsHasVentana.PrototoolsDomainRoleId, source), new DslModeling::RoleAssignment(PrototoolsHasVentana.VentanaDomainRoleId, target) }, null)
 {
 }
 private void Ventana_MouseUp(object sender, MouseButtonEventArgs e)
 {
     Ventana.ReleaseMouseCapture();
 }
Exemple #26
0
 public Casa()
 {
     Puerta  = new Puerta();
     Ventana = new Ventana();
 }
Exemple #27
0
        public static void CreatePage(Document document, Ventana ventana)
        {
            MigraDoc.DocumentObjectModel.Tables.Table table = new MigraDoc.DocumentObjectModel.Tables.Table();
            table.Borders.Width = 0.5;

            Column column = table.AddColumn(MigraDoc.DocumentObjectModel.Unit.FromCentimeter(4));

            column.Format.Alignment = ParagraphAlignment.Left;

            table.AddColumn(MigraDoc.DocumentObjectModel.Unit.FromCentimeter(12.5));

            Row row = table.AddRow();

            row.Shading.Color = Colors.White;
            Cell cell = row.Cells[0];

            row.Cells[0].MergeRight = 1;

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("PO:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.PO);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Recursos:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Recurso);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Cantidades (#pp):");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Cantidad);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Linea Transportista:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Carrier.NombreCorto);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Operador:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Conductor);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Movil:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.MovilConductor);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Origen:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Procedencia.NombreCorto);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Destino:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Destino.NombreCorto);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Fecha:");
            cell = row.Cells[1];
            cell.AddParagraph((ventana.Evento.FechaInicio).ToString());

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("No ECO Tractor:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.NumeroEconomico);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Placas Tractor:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.NumeroPlaca);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("No Caja/Contenedor:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.EconomicoRemolque);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Placas Caja/Contenedor:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.PlacaRemolque);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Modelo:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.ModeloContenedor);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Color:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.ColorContenedor);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Tipo Unidad:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.TipoUnidad);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Dimensión:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Dimension);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Sellos:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Sellos);

            row = table.AddRow();
            row.Format.Font.Size = 6;
            cell = row.Cells[0];
            cell.AddParagraph("Temperatura Controlada:");
            cell = row.Cells[1];
            cell.AddParagraph(ventana.Temperatura);

            table.SetEdge(0, 0, 2, 20, Edge.Box, MigraDoc.DocumentObjectModel.BorderStyle.Single, .5, Colors.Black);

            document.LastSection.Add(table);
        }
Exemple #28
0
 public VentanaView()
     : base()
 {
     Ventana  = new Ventana();
     Ventanas = new List <Ventana>();
 }