示例#1
0
        public void EnviarPeticion(M_PeticionArduino MPA)
        {
            string Peticion = "";

            Peticion = Peticion + MPA.estacion;
            Peticion = Peticion + MPA.giro;

            this.inicializar();
            arduino.Open();
            arduino.Write(Peticion);
            arduino.Close();
        }
        public ActionResult Index(M_PeticionArduino MPA)
        {
            //Validar que haya gasolina del tipo seleccionado
            int est  = Convert.ToInt16(MPA.estacion);
            int tipo = Convert.ToInt16(MPA.tipo);
            int cant = Convert.ToInt16(MPA.giro);

            float cantidadActual = db.estacion.Where(p => p.numero == est && p.tipo == tipo).Select(p => p.cantidad).Single();

            if (cantidadActual > float.Parse(MPA.giro))
            {
                //hacerlo
                if (MPA.tipo == "1")        //Regular
                {
                    //Arbitrariamente se selecciono grados menores de 90
                    float giro       = float.Parse(MPA.giro) * 10;
                    float movimiento = 90 - giro;
                    MPA.giro = movimiento.ToString();
                    CARD.EnviarPeticion(MPA);
                }
                else if (MPA.tipo == "2")    //Disel
                {
                    //Arbitrariamente se selecciono grados mayores de 90
                    float giro       = float.Parse(MPA.giro) * 10;
                    float movimiento = 90 + giro;
                    MPA.giro = movimiento.ToString();
                    CARD.EnviarPeticion(MPA);
                }

                // Actualizando BD
                estacion E = db.estacion.Where(p => p.numero == est && p.tipo == tipo).Single();
                E.cantidad = E.cantidad - cant;
                db.SaveChanges();

                //Redireccionar Exito
                return(RedirectToAction("Index"));
            }
            else
            {
                //Escribir Error
                string mensaje = "Lo sentimos no hay suficiente combustible de ese tipo en esta estacion";
                return(RedirectToAction("Index", new { mensaje }));
            }
        }
示例#3
0
 public ActionResult Index(M_PeticionArduino MPA)
 {
     CARD.Test2(MPA);
     return(View(MPA));
 }