Esempio n. 1
0
        public void CalcDist_Test()
        {
            using (var db = new DBContext())
            {
                //Arrenge

                var t = new Transformador();
                t.Latitud  = -34.575233814928914;
                t.Longitud = -58.41500966716404;

                var zona = new Zona();
                zona.Latitud  = -34.571632362375716;
                zona.Longitud = -58.422944329525308;



                //Act

                var dist = t.CalcDistancia(zona);
                //db.Transformadores.Add(t);
                //db.SaveChanges();

                //Assert
                Assert.AreEqual(0.83, dist);
            }
        }
Esempio n. 2
0
        public void AsignarZona_Test()
        {
            using (var db = new DBContext())
            {
                //Arrenge

                var t = new Transformador();
                t.Latitud  = -34.575233814928914;
                t.Longitud = -58.41500966716404;
                var t2 = new Transformador();
                t2.Latitud  = -34.58248917295323;
                t2.Longitud = -58.45194180211615;


                //Act

                t.asignarZona();
                t2.asignarZona();
                //db.Transformadores.Add(t);
                //db.SaveChanges();

                //Assert
                Assert.AreEqual(8, t2.ZonaID);
                Assert.AreEqual(1, t.ZonaID);
            }
        }
        public void TestInitialize()
        {
            Cliente     cliente1 = new Cliente();
            Inteligente d1       = new Inteligente("TV LG", 100m);
            Estandar    d2       = new Estandar("TV", 200m);

            cliente1.Inteligentes.Add(d1);
            cliente1.Estandars.Add(d2);
            cliente1.TransformadorId = 1;

            Cliente     cliente2 = new Cliente();
            Inteligente d3       = new Inteligente("TV LG 55", 200m);
            Estandar    d4       = new Estandar("TV", 200m);
            Estandar    d5       = new Estandar("TV", 200m);

            cliente2.Inteligentes.Add(d3);
            cliente2.Estandars.Add(d4);
            cliente2.Estandars.Add(d5);
            cliente2.TransformadorId = 10;

            this.Clientes = new List <Cliente>
            {
                cliente1,
                cliente2
            };

            this.transformador          = new Transformador();
            this.transformador.Clientes = this.Clientes;

            //TransformadoresHelper th =new TransformadoresHelper();
            //List<Transformador> transformadores =(List<Transformador>) th.Transformadores;
        }
        public static void Tmp_cmd()
        {
            bool r = true;

            while (r)
            {
                sbyte[] a = new sbyte[4] {
                    1, 2, 3, 4
                };
                Console.WriteLine("\nSección de conversión de temperatura");
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine("\nComandos disponibles:\n{0}: Para convertir de Celsius a Fahrenheit y a Kelvins.\n{1}: Para convertir de Fahrenheit a Celsius y a Kelvins.", a[0], a[1]);
                Console.WriteLine("{0}: Para convertir de Kelvins a Celsius y a Fahrenheit.", a[2]);
                Console.Write($"{a[3]} para volver atras.");
                Console.ForegroundColor = ConsoleColor.Green;
                Console.Write("\n>> ");
                sbyte input = 1;//Establecemos este valor por sí el usuario introduce mal el número, poder iniciar el conversor de ºC
                try
                {
                    input = Convert.ToSByte(Console.ReadLine());
                }
                catch (Exception e) when(e.GetType() != typeof(FormatException))
                {
                    Console.WriteLine(e.Message);
                }
                catch (FormatException e)
                {
                    Console.WriteLine("El valor introducizo no es numérico, se iniciara el conversor ºC a ºF y a K(Es el predeterminado)");
                    Console.WriteLine(e.Message);
                }

                if (input == a[0])//Celsius a Fahrenheits y a Kelvins
                {
                    Transformador.TmpCel();
                    r = true;
                }
                else if (input == a[1]) //Fahrenheits a Celsius y Kelvins
                {
                    Transformador.TmpFahr();
                    r = true;
                }
                else if (input == a[2])//Kelvins a Celsius y a Fahrenheits
                {
                    Transformador.TmpKel();
                    r = true;
                }
                else if (input == a[3])
                {
                    Console.ForegroundColor = ConsoleColor.Green;//Cambiamos el color para volver atras y restablecerlo
                    r = false;
                }
                else
                {
                    Console.WriteLine("\nComando no encontrado, revise la ortografía");
                    r = true;
                }
            }
        }
Esempio n. 5
0
        public void ReConectarTrafoProx_Test()
        {
            using (var db = new DBContext())
            {
                //Arrenge

                var t = new Transformador();
                t.Latitud  = -34.575233814928914;
                t.Longitud = -58.41500966716404;
                t.asignarZona();
                db.Transformadores.Add(t);

                var t2 = new Transformador();
                t2.Latitud  = -34.58248917295323;
                t2.Longitud = -58.45194180211615;
                t2.asignarZona();
                db.Transformadores.Add(t2);

                var t3 = new Transformador();
                t3.Latitud  = -34.58220308678515;
                t3.Longitud = -58.42022895812988;
                t3.asignarZona();
                db.Transformadores.Add(t3);

                var t4 = new Transformador();
                t4.Latitud  = -34.56774230669942;
                t4.Longitud = -58.43784063029881;
                t4.asignarZona();
                db.Transformadores.Add(t4);

                db.SaveChanges();



                foreach (var cli in db.Usuarios)
                {
                    //cli.ConectarseAlTrafoMasProx();
                    if (!cli.EsAdmin)
                    {
                        cli.ConectarseAlTrafoMasProx();
                    }
                }
                db.SaveChanges();
            }

            //Act

            /*
             * var trafoProx = db.Transformadores.Find(cliente.TransformadorID);
             * var trafoProx2 = db.Transformadores.Find(cliente2.TransformadorID);
             *
             * //Assert
             * Assert.AreEqual(cliente.TransformadorID, trafoProx.TransformadorID);
             * Assert.AreEqual(cliente2.TransformadorID, trafoProx2.TransformadorID);
             */
        }
Esempio n. 6
0
        private void buttonBinADeci_Click(object sender, EventArgs e)
        {
            NumeroBinario bin;
            NumeroDecimal deci;

            bin  = new NumeroBinario(this.textBinADeci.Text);
            deci = new NumeroDecimal(Transformador.BinarioDecimal(bin.numero));
            if (bin.numero.Contains("2") || bin.numero.Contains("3") || bin.numero.Contains("4") || bin.numero.Contains("5") ||
                bin.numero.Contains("6") || bin.numero.Contains("7") || bin.numero.Contains("8") || bin.numero.Contains("9"))
            {
                DialogResult s = new DialogResult();
                s = MessageBox.Show("Invalido", "Error");
            }
            else
            {
                this.textBoxResultadoBinADeci.Text = ((int)bin).ToString();
            }
        }
Esempio n. 7
0
        //• Consumo por transformador por periodo.
        public static decimal consumoTransformadorPorPeriodo(int idTransformador, DateTime fechaDesde, DateTime fechaHasta)
        {
            decimal consumo = 0;
            BaseRepositorio <Transformador> repoTransformador = new BaseRepositorio <Transformador>();
            var includesTransformador = new List <Expression <Func <Transformador, object> > >()
            {
                t => t.Clientes
            };
            Transformador transformador = repoTransformador.Single(t => t.Id == idTransformador, includesTransformador);

            if (transformador != null)
            {
                foreach (Cliente cliente in transformador.Clientes)
                {
                    consumo += consumoPorHogarYPeriodo(cliente.Id, fechaDesde, fechaHasta);
                }
            }

            return(consumo);
        }
Esempio n. 8
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            Zona zona = new Zona();

            zona.ProcesarDatosEnre();

            Transformador transformador = new Transformador();

            transformador.ProcesarDatosEnre();

            //Inteligente inteligente = new Inteligente();
            //inteligente.LevantarDispositivosArchivo();

            //  Catalogo catalogo = new Catalogo();
            //  catalogo.cargarCatalogoInicial();
        }
Esempio n. 9
0
        public HttpResponseMessage Get(long IdTransformador)
        {
            Transformador TransformadorDB = UnitOfWork.TransformadorRepository.Get(ip => ip.IdTransformador == IdTransformador && ip.DataExclusao == null).FirstOrDefault();

            if (TransformadorDB != null)
            {
                return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                {
                    Status = Status.OK,
                    Results =
                        new
                    {
                        IdTransformador = TransformadorDB.IdTransformador,
                        IdPoste = TransformadorDB.IdPoste,
                        CodigoGeoBD = TransformadorDB.CodigoGeoBD,
                        Status = TransformadorDB.Status,
                        Proprietario = TransformadorDB.Proprietario,
                        Fase = TransformadorDB.Fase,
                        NumeroCampo = TransformadorDB.NumeroCampo,
                        PotenciaTotal = TransformadorDB.PotenciaTotal,
                        TipoLigacao = TransformadorDB.TipoLigacao,
                        TensaoNominal = TransformadorDB.TensaoNominal,
                        TipoInstalacao = TransformadorDB.TipoInstalacao,
                        CortaCircuito = TransformadorDB.CortaCircuito,
                        Descricao = TransformadorDB.Descricao,
                        NumeroEquipamento = TransformadorDB.NumeroEquipamento
                    }
                }));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                {
                    Status = Status.NOK, Message = Resources.Messages.Not_Register_Data_Base
                }));
            }
        }
Esempio n. 10
0
        private void button1_Click(object sender, EventArgs e)
        {
            Console.WriteLine("***************INTERPRETA TXT************");
            String texto = textBox1.Text;

            _OLC1_PROYECT1.AnalizadorTexto.AnalizadorTexto lex = new AnalizadorTexto.AnalizadorTexto();
            lex.escanear(texto);
            lex.imprimirLista(lex.salida);
            foreach (PilaExpresion pilas in lex.Pila)
            {
                Console.WriteLine("----------------->        " + pilas.getIdentificador_expresion());
                Thompson a        = new Thompson();
                Automata graficar = a.Analizarentrada(pilas.getPilita());

                Console.WriteLine(graficar);
                Hashtable alfabeto = graficar.getAlfabeto();
                alfabeto.Add(AnalizadorTexto.AnalizadorTexto.EPSILON, 145);
                graficar.setAlfabeto(alfabeto);
                Transformador AFD      = new Transformador();
                AFD_GRAFICA   automata = (AFD_GRAFICA)AFD.minimizar(graficar);
                textBox4.Text = automata.CreandoTabla();
                //AFD.minimizar(graficar);
                //Algoritmo simularAFD = new Algoritmo(graficar,"");
                Graphviz.FileDotEngine.Run1(pilas.getIdentificador_expresion(), crandoautomata(graficar));
                listBox1.Items.Add(pilas.getIdentificador_expresion());
            }
            PDF creando = new PDF();

            if (lex.errores.Count() > 0)
            {
                creando.crearPDFErrores(lex.errores);
            }
            else
            {
                creando.crearPDFLexico(lex.salida);
            }
        }
Esempio n. 11
0
        public ActionResult ReporteTransformador(SubmitViewModel model, DateTime FechaInicio, DateTime FechaFin)
        {
            using (var db = new DBContext())
            {
                Transformador trans         = db.Transformadores.FirstOrDefault(t => t.TransformadorID == model.IdSeleccionado);
                Reporte       reporteModelo = new Reporte("Transformador", trans.TransformadorID.ToString(), 0, FechaInicio, FechaFin);

                IEnumerable <Transformador> transformadores        = (IEnumerable <Transformador>)TransformadoresImp.transformadoresEnDb();//se carga lista de dispositivos
                List <SelectListItem>       dispositivosSelectList = new List <SelectListItem>();
                foreach (Transformador t in transformadores)
                {
                    dispositivosSelectList.Add(new SelectListItem()
                    {
                        Value = t.TransformadorID.ToString(), Text = t.TransformadorID.ToString()
                    });
                }
                ViewBag.IdSeleccionado = dispositivosSelectList;

                //if(reporte esta en mongo){find} else{ se crea y se guarda en mongo}
                var reportesEncontrados = Mongo.getReporte("Transformador", trans.TransformadorID.ToString(), FechaInicio, FechaFin);
                if (reportesEncontrados.ToList <Reporte>().Count > 0)
                {
                    var reporte = reportesEncontrados.ToList <Reporte>()[0];
                    ViewBag.consumo = "Consumo: " + reporte.consumo.ToString() + "Kw";
                }
                else
                {
                    reporteModelo.consumo = trans.EnergiaQueEstaSuministrando(FechaInicio, FechaFin);
                    ViewBag.consumo       = "Consumo: " + reporteModelo.consumo.ToString() + "Kw";
                    Mongo.insertarReporte(reporteModelo);
                }
                ViewBag.fechas = FechaInicio.ToShortDateString() + " - " + FechaFin.ToShortDateString();
                ViewBag.nombre = trans.TransformadorID.ToString();
            }
            return(View());
        }
Esempio n. 12
0
        public double ConsumoPorTransformador(int periodo, Transformador transformador)
        {
            double             consumo = 0;
            List <Dispositivo> dispos  = new List <Dispositivo>();

            foreach (Cliente cliente in transformador.Clientes)
            {
                dispos = DispositivoHandler.GetDispositivosByUsuarioID(cliente.UsuarioID);
                foreach (var disp in dispositivos)
                {
                    if (disp.GetType() == typeof(DispositivoEstandar))
                    {
                        DispositivoEstandar d = (DispositivoEstandar)disp;
                        consumo += d.CalcularConsumoMensual(periodo);
                    }
                    else if (disp.GetType() == typeof(DispositivoInteligente))
                    {
                        DispositivoInteligente d = (DispositivoInteligente)disp;
                        consumo += d.EnergiaConsumidaEnPeriodo(periodo);
                    }
                }
            }
            return(consumo);
        }
Esempio n. 13
0
        public void TestInitialize()
        {
            Cliente     cliente1 = new Cliente();
            Inteligente d1       = new Inteligente("TV LG", 100m);
            Estandar    d2       = new Estandar("TV", 200m);

            cliente1.Inteligentes.Add(d1);
            cliente1.Estandars.Add(d2);
            cliente1.Latitud         = 5.41;
            cliente1.Longitud        = 5.45;
            cliente1.TransformadorId = 1;

            Cliente     cliente2 = new Cliente();
            Inteligente d3       = new Inteligente("TV LG 55", 200m);
            Estandar    d4       = new Estandar("TV", 200m);
            Estandar    d5       = new Estandar("TV", 200m);

            cliente2.Inteligentes.Add(d3);
            cliente2.Estandars.Add(d4);
            cliente2.Estandars.Add(d5);
            cliente2.Latitud         = 5.39;
            cliente2.Longitud        = 5.43;
            cliente2.TransformadorId = 1;

            this.clientes1 = new List <Cliente> {
                cliente1, cliente2
            };


            //si se carga los transformadores con json comentar estoo
            Transformador trasformador1 = new Transformador();

            trasformador1.Id       = 1;
            trasformador1.Latitud  = 5.4;
            trasformador1.Longitud = 5.44;
            trasformador1.Clientes = clientes1;


            Cliente     cliente3 = new Cliente();
            Inteligente d6       = new Inteligente("TV LG", 100m);
            Estandar    d7       = new Estandar("TV", 200m);

            cliente3.Inteligentes.Add(d6);
            cliente3.Estandars.Add(d7);
            cliente3.Latitud         = -0.3;
            cliente3.Longitud        = -0.1;
            cliente3.TransformadorId = 10;

            Cliente     cliente4 = new Cliente();
            Inteligente d8       = new Inteligente("TV LG 55", 200m);
            Estandar    d9       = new Estandar("TV", 200m);
            Estandar    d10      = new Estandar("TV", 200m);

            cliente4.Inteligentes.Add(d8);
            cliente4.Estandars.Add(d9);
            cliente4.Estandars.Add(d10);
            cliente4.Latitud         = -0.1;
            cliente4.Longitud        = 0.1;
            cliente4.TransformadorId = 10;

            this.clientes2 = new List <Cliente> {
                cliente3, cliente4
            };

            //si se carga los transformadores con json comentar estoo
            Transformador trasformador2 = new Transformador();

            trasformador2.Id       = 10;
            trasformador2.Latitud  = -0.2;
            trasformador2.Longitud = 0;
            trasformador2.Clientes = clientes2;


            this.transformadores = new List <Transformador> {
                trasformador1, trasformador2
            };
            this.zona = new Zona();
            this.zona.Transformadores = transformadores;


            //TransformadoresHelper th = new TransformadoresHelper();
            //List<Transformador> transformadores = (List<Transformador>)th.Transformadores;
            //foreach (Transformador transformador in transformadores)
            //{
            //    if (transformador.Id==1)
            //    {
            //        transformador.Clientes = clientes1;
            //    }
            //    if (transformador.Id == 10)
            //    {
            //        transformador.Clientes = clientes2;
            //    }
            //}
        }
Esempio n. 14
0
        static void Main()
        {
            /*Application.EnableVisualStyles();
             * Application.SetCompatibleTextRenderingDefault(false);
             * Application.Run(new Form1());
             */


            Automata nuevo = new Automata();
            Estado   S0    = new Estado(0);
            Estado   S1    = new Estado(1);
            Estado   S2    = new Estado(2);
            ////
            Trancisiones S0a = new Trancisiones();

            S0a.setInicio(S0);
            S0a.setFin(S1);
            S0a.setSimbolo("a");
            S0.setTransiciones(S0a);
            Trancisiones S0b = new Trancisiones();

            S0b.setInicio(S0);
            S0b.setFin(S0);
            S0b.setSimbolo("a");
            S0.setTransiciones(S0b);
            Trancisiones S0c = new Trancisiones();

            S0c.setInicio(S0);
            S0c.setFin(S1);
            S0c.setSimbolo("b");
            S0.setTransiciones(S0c);
            nuevo.addEstados(S0);
            /////
            Trancisiones S1a = new Trancisiones();

            S1a.setInicio(S1);
            S1a.setFin(S2);
            S1a.setSimbolo("a");
            S1.setTransiciones(S1a);
            Trancisiones S1b = new Trancisiones();

            S1b.setInicio(S1);
            S1b.setFin(S1);
            S1b.setSimbolo("b");
            S1.setTransiciones(S1b);
            Trancisiones S1c = new Trancisiones();

            S1c.setInicio(S1);
            S1c.setFin(S2);
            S1c.setSimbolo("b");
            S1.setTransiciones(S1c);
            nuevo.addEstados(S1);
            ///
            Trancisiones S2a = new Trancisiones();

            S2a.setInicio(S2);
            S2a.setFin(S1);
            S2a.setSimbolo("a");
            S2.setTransiciones(S2a);
            Trancisiones S2b = new Trancisiones();

            S2b.setInicio(S2);
            S2b.setFin(S0);
            S2b.setSimbolo("a");
            S2.setTransiciones(S2b);
            Trancisiones S2c = new Trancisiones();

            S2c.setInicio(S2);
            S2c.setFin(S2);
            S2c.setSimbolo("b");
            S2.setTransiciones(S2c);
            Trancisiones S2d = new Trancisiones();

            S2d.setInicio(S2);
            S2d.setFin(S1);
            S2d.setSimbolo(AnalizadorTexto.AnalizadorTexto.EPSILON);
            S2.setTransiciones(S2d);
            nuevo.addEstados(S2);
            ///
            nuevo.setEstadoInicial(S0);
            nuevo.addEstadosAceptacion(S2);
            Hashtable alfabeto = new Hashtable();

            alfabeto.Add("a", 13);
            alfabeto.Add("b", 22);
            alfabeto.Add(AnalizadorTexto.AnalizadorTexto.EPSILON, 18);
            nuevo.setAlfabeto(alfabeto);
            Transformador AFD      = new Transformador();
            AFD_GRAFICA   automata = (AFD_GRAFICA)AFD.minimizar(nuevo);

            automata.CreandoTabla();
            String tabla2 = "";


            ///er1 -> . {letra} *|{letra} |  {digito} "_";

            /*Thompson a = new Thompson();
             * LinkedList<DatoExpresion> n = new LinkedList<DatoExpresion>();
             * n.AddLast(new DatoExpresion("+", DatoExpresion.TipoExpresion.OPERADOR, "punto" + 1));
             * n.AddLast(new DatoExpresion("letra", DatoExpresion.TipoExpresion.CONJUNTOS, "letra" + 1));*/
            //n.AddLast(new DatoExpresion("digito", DatoExpresion.TipoExpresion.CONJUNTOS, "digito" + 1));

            /*n.AddLast(new DatoExpresion("|", DatoExpresion.TipoExpresion.OPERADOR, "or" + 1));
             * n.AddLast(new DatoExpresion("letra", DatoExpresion.TipoExpresion.CONJUNTOS, "letra" + 2));
             * n.AddLast(new DatoExpresion("|", DatoExpresion.TipoExpresion.OPERADOR, "or" + 2));
             * n.AddLast(new DatoExpresion("digito", DatoExpresion.TipoExpresion.CONJUNTOS, "digito" + 1));
             * n.AddLast(new DatoExpresion("_", DatoExpresion.TipoExpresion.CADENA, "cad" + 1));*/
            //a.Analizarentrada(n);
        }
Esempio n. 15
0
        public HttpResponseMessage Edit(TransformadorEditAPI Transformador)
        {
            /// Validando o Transformador
            ICollection <ValidationResult> results;

            if (Transformador.TryValidate(out results))
            {
                Transformador TransformadorDB = UnitOfWork.TransformadorRepository.Get(trf => trf.IdTransformador == Transformador.IdTransformador && trf.DataExclusao == null, includeProperties: "Poste.Cidade").FirstOrDefault();
                if (TransformadorDB != null)
                {
                    //Atribuindo os novos valores da Edicao
                    TransformadorDB.CodigoGeoBD       = Transformador.CodigoGeoBD;
                    TransformadorDB.Status            = Transformador.Status;
                    TransformadorDB.Proprietario      = Transformador.Proprietario;
                    TransformadorDB.Fase              = Transformador.Fase;
                    TransformadorDB.NumeroCampo       = Transformador.NumeroCampo;
                    TransformadorDB.PotenciaTotal     = Transformador.PotenciaTotal;
                    TransformadorDB.TipoLigacao       = Transformador.TipoLigacao;
                    TransformadorDB.TensaoNominal     = Transformador.TensaoNominal;
                    TransformadorDB.TipoInstalacao    = Transformador.TipoInstalacao;
                    TransformadorDB.CortaCircuito     = Transformador.CortaCircuito;
                    TransformadorDB.Descricao         = Transformador.Descricao;
                    TransformadorDB.NumeroEquipamento = Transformador.NumeroEquipamento;

                    // Salvando a posição do Mobile no momento da Edição do poste
                    UTM posicaoAtualizacao = new ConverterLatLonToUtm(TransformadorDB.Poste.Cidade.Datum, TransformadorDB.Poste.Cidade.NorteOuSul, TransformadorDB.Poste.Cidade.Zona).Convert(Transformador.LatAtualizacao, Transformador.LonAtualizacao);
                    TransformadorDB.Poste.XAtualizacao = posicaoAtualizacao.X;
                    TransformadorDB.Poste.YAtualizacao = posicaoAtualizacao.Y;

                    UnitOfWork.TransformadorRepository.Update(TransformadorDB);
                    UnitOfWork.Save(); //Commit

                    return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                    {
                        Status = Status.OK,
                        Message = Resources.Messages.Save_OK,
                        Results = new
                        {
                            IdTransformador = TransformadorDB.IdTransformador,
                            IdPoste = TransformadorDB.IdPoste,
                            CodigoGeoBD = TransformadorDB.CodigoGeoBD,
                            Status = TransformadorDB.Status,
                            Proprietario = TransformadorDB.Proprietario,
                            Fase = TransformadorDB.Fase,
                            NumeroCampo = TransformadorDB.NumeroCampo,
                            PotenciaTotal = TransformadorDB.PotenciaTotal,
                            TipoLigacao = TransformadorDB.TipoLigacao,
                            TensaoNominal = TransformadorDB.TensaoNominal,
                            TipoInstalacao = TransformadorDB.TipoInstalacao,
                            CortaCircuito = TransformadorDB.CortaCircuito,
                            Descricao = TransformadorDB.Descricao,
                            NumeroEquipamento = TransformadorDB.NumeroEquipamento
                        }
                    }));
                }
                else
                {
                    return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                    {
                        Status = Status.NOK, Message = Resources.Messages.Transformador_Not_Found
                    }));
                }
            }
            else
            {
                string MessageValidate = string.Empty;
                foreach (var validationResult in results)
                {
                    MessageValidate += validationResult.ErrorMessage + "-";
                }
                return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                {
                    Status = Status.NOK, Message = MessageValidate.Remove(MessageValidate.Length - 1)
                }));
            }
        }
Esempio n. 16
0
        public HttpResponseMessage Add(TransformadorEditAPI Transformador)
        {
            /// Validando o IP
            ICollection <ValidationResult> results;

            if (Transformador.TryValidate(out results))
            {
                Poste PosteBD = UnitOfWork.PosteRepository.Get(os => os.IdPoste == Transformador.IdPoste, includeProperties: "Cidade").FirstOrDefault();
                if (PosteBD != null)
                {
                    // Salvando a posição do Mobile no momento da Edição do poste
                    UTM posicaoAtualizacao = new ConverterLatLonToUtm(PosteBD.Cidade.Datum, PosteBD.Cidade.NorteOuSul, PosteBD.Cidade.Zona).Convert(Transformador.LatAtualizacao, Transformador.LonAtualizacao);
                    PosteBD.XAtualizacao = posicaoAtualizacao.X;
                    PosteBD.YAtualizacao = posicaoAtualizacao.Y;

                    Transformador TransformadorAux = new Transformador()
                    {
                        Poste             = PosteBD,
                        CodigoGeoBD       = Transformador.CodigoGeoBD,
                        Status            = Transformador.Status,
                        Proprietario      = Transformador.Proprietario,
                        Fase              = Transformador.Fase,
                        NumeroCampo       = Transformador.NumeroCampo,
                        PotenciaTotal     = Transformador.PotenciaTotal,
                        TipoLigacao       = Transformador.TipoLigacao,
                        TensaoNominal     = Transformador.TensaoNominal,
                        TipoInstalacao    = Transformador.TipoInstalacao,
                        CortaCircuito     = Transformador.CortaCircuito,
                        Descricao         = Transformador.Descricao,
                        NumeroEquipamento = Transformador.NumeroEquipamento
                    };

                    UnitOfWork.TransformadorRepository.Insert(TransformadorAux);
                    UnitOfWork.Save();

                    return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                    {
                        Status = Status.OK,
                        Message = Resources.Messages.Save_OK,
                        Results = new
                        {
                            IdTransformador = TransformadorAux.IdTransformador,
                            IdPoste = TransformadorAux.IdPoste,
                            CodigoGeoBD = TransformadorAux.CodigoGeoBD,
                            Status = TransformadorAux.Status,
                            Proprietario = TransformadorAux.Proprietario,
                            Fase = TransformadorAux.Fase,
                            NumeroCampo = TransformadorAux.NumeroCampo,
                            PotenciaTotal = TransformadorAux.PotenciaTotal,
                            TipoLigacao = TransformadorAux.TipoLigacao,
                            TensaoNominal = TransformadorAux.TensaoNominal,
                            TipoInstalacao = TransformadorAux.TipoInstalacao,
                            CortaCircuito = TransformadorAux.CortaCircuito,
                            Descricao = TransformadorAux.Descricao,
                            NumeroEquipamento = TransformadorAux.NumeroEquipamento
                        }
                    }));
                }
                else
                {
                    return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                    {
                        Status = Status.NOK, Message = Resources.Messages.Poste_Not_Found
                    }));
                }
            }
            else
            {
                string MessageValidate = string.Empty;
                foreach (var validationResult in results)
                {
                    MessageValidate += validationResult.ErrorMessage;
                }
                return(Request.CreateResponse(HttpStatusCode.OK, new ResponseApi()
                {
                    Status = Status.NOK, Message = MessageValidate
                }));
            }
        }
        public static void SbmPresion()
        {
            bool r = true;

            while (r)
            {
                Console.ForegroundColor = ConsoleColor.Green;
                sbyte[] a = new sbyte[9] {
                    1, 2, 3, 4, 5, 6, 7, 8, 9
                };                                                     //Le asignamos un valor de cantidades máximas
                Console.WriteLine($"Comandos disponibles:\n{a[0]}: Conversor Atmósferas.\n{a[1]}: Conversor Bares.\n{a[2]}: Conversor Milibares.");
                Console.WriteLine($"{a[3]}: Conversor Pascales.\n{a[4]}: Conversor HectoPascales.\n{a[5]}: Conversor PSI.\n{a[6]}: Conversor mmHg y Torr.");
                Console.WriteLine($"{a[7]}: Conversor Kiloponidos por cm2.\n{a[8]}: Volver al menú.");
                sbyte i = 1;
                try
                {
                    Console.Write(">> ");
                    i = Convert.ToSByte(Console.ReadLine());
                }
                catch (Exception e) when(e.GetType() != typeof(FormatException))
                {
                    Console.WriteLine(e.Message);
                }
                catch (FormatException e)
                {
                    Console.WriteLine("El valor introducido no es númerico");
                    Console.WriteLine(e.Message);
                }
                finally
                {
                    if (i == a[0])
                    {
                        Transformador.CmdAtm();//Atmosferas técnicas
                        r = true;
                    }
                    else if (i == a[1])
                    {
                        Transformador.CmdBar();//Bares
                        r = true;
                    }
                    else if (i == a[2])
                    {
                        Transformador.CmdmBar();//Milibares
                        r = true;
                    }
                    else if (i == a[3])
                    {
                        Transformador.CmdPa();//Pascales
                        r = true;
                    }
                    else if (i == a[4])
                    {
                        Transformador.CmdhPa();//Hectopascales
                        r = true;
                    }
                    else if (i == a[5])
                    {
                        Transformador.CmdPSI();//PSI
                        r = true;
                    }

                    else if (i == a[6])
                    {
                        Transformador.CmdmmhgTorr();//Milimetros de mercurio y Torrs
                        r = true;
                    }
                    else if (i == a[7])
                    {
                        Transformador.CmdKpcm2();//Kilopondios por centrimetro cuadrado
                        r = true;
                    }
                    else if (i == a[8])//Salir
                    {
                        r = false;
                        Console.Clear();
                    }
                    else//Excepción
                    {
                        Console.WriteLine("Comando no encontrado.");
                        r = true;
                    }
                }
            }
        }
        public static void SbmMasa()
        {
            bool r = true;

            while (r)
            {
                Console.ForegroundColor = ConsoleColor.Green;
                sbyte[] a = new sbyte[9] {
                    1, 2, 3, 4, 5, 6, 7, 8, 9
                };
                Console.WriteLine("Comandos disponibles:\n{0}: Conversor Kilogramos.\n{1}: Conversor Gramos.", a[0], a[1]);
                Console.WriteLine("{0}: Conversor Toneladas (métricas).\n{1}: Conversor Toneladas Cortas.\n{2}: Conversor Toneladas Largas", a[2], a[3], a[4]);
                Console.WriteLine("{0}: Conversor Libras.\n{1}: Conversor Onzas.\n{2}: Conversor \"Stones\".", a[5], a[6], a[7]);
                Console.WriteLine("{0}: Volver al menú.", a[8]);

                sbyte i = 1;
                try
                {
                    Console.Write(">> ");
                    i = Convert.ToSByte(Console.ReadLine());
                }
                catch (Exception e) when(e.GetType() != typeof(FormatException))
                {
                    Console.WriteLine(e.Message);
                }
                catch (FormatException e)
                {
                    Console.WriteLine("El valor introducizo no es numérico.");
                    Console.WriteLine(e.Message);
                }
                finally
                {
                    if (i == a[0])
                    {
                        Transformador.CmdKg();
                        r = true;
                    }
                    else if (i == a[1])
                    {
                        Transformador.CmdGr();
                        r = true;
                    }
                    else if (i == a[2])
                    {
                        Transformador.CmdT();
                        r = true;
                    }
                    else if (i == a[3])
                    {
                        Transformador.CmdUsT();
                        r = true;
                    }
                    else if (i == a[4])
                    {
                        Transformador.CmdUkT();
                        r = true;
                    }
                    else if (i == a[5])
                    {
                        Transformador.CmdLb();
                        r = true;
                    }
                    else if (i == a[6])
                    {
                        Transformador.CmdOz();
                        r = true;
                    }
                    else if (i == a[7])
                    {
                        Transformador.CmdSt();
                        r = true;
                    }
                    else if (i == a[8])
                    {
                        r = false;
                        Console.Clear();
                    }
                    else
                    {
                        Console.WriteLine("Comando no encontrado.");
                        r = true;
                    }
                }
            }
        }
        public static void Long_cmd()
        {
            bool r = true;

            while (r)
            {
                #region Comandos
                sbyte[] c = new sbyte[8] {
                    1, 2, 3, 4, 5, 6, 7, 8
                };                                                  //Utilizamos sbyte en vez de int porque utilizamos valores pequeños y no es necesario reservar mucho espacio en la memoria RAM, estos valores van de -128 a 127, por lo que aún nos sobra.
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine("\nComandos disponibles:\n{0}: Para convertir Metros.", c[0]);
                Console.WriteLine("{0}: Para convertir kilometros.\n{1}: Para convertir Millas.", c[1], c[2]);
                Console.WriteLine("{0}: Para convertir Millas náuticas.\n{1}: Para convertir Pulgadas.", c[3], c[4]);
                Console.WriteLine("{0}: Para convertir Yardas.\n{1}: Para convertir Pies", c[5], c[6]);
                Console.WriteLine("{0}: Para volver al menú principal del conversor", c[7]);
                #endregion
                #region if-else
                sbyte i = 1;
                try
                {
                    Console.Write(">> ");
                    i = Convert.ToSByte(Console.ReadLine());
                }
                catch (Exception e) when(e.GetType() != typeof(FormatException))
                {
                    Console.WriteLine(e.Message);
                }
                catch (FormatException e)
                {
                    Console.WriteLine("El valor introducizo no es numérico.");
                    Console.WriteLine(e.Message);
                }
                finally
                {
                    if (i == (c[0]))
                    {
                        Transformador.CmdM();//Metros al resto
                        r = true;
                    }
                    else if (i == (c[1]))
                    {
                        Transformador.Cmdkm();//Kilometros al resto
                        r = true;
                    }
                    else if (i == (c[2]))
                    {
                        Transformador.CmdMi();//Millas
                        r = true;
                    }
                    else if (i == (c[3]))
                    {
                        Transformador.CmdNmi();//Millas-Millas Náuticas
                        r = true;
                    }
                    else if (i == (c[4]))
                    {
                        Transformador.CmdInc();//Pulgadas
                        r = true;
                    }
                    else if (i == (c[5]))
                    {
                        Transformador.CmdYd();//Yardas
                        r = true;
                    }
                    else if (i == (c[6]))
                    {
                        Transformador.CmdPie();//Pies
                        r = true;
                    }
                    else if (i == (c[7]))//Vamos a ordenar que el texto de entrada sea transformado en minusculas
                    {
                        Console.Clear();
                        Console.ForegroundColor = ConsoleColor.Green;
                        r = false; //Importante no poner el r como true, ya que entonces no saldríamos del bucle
                    }
                    else
                    {
                        Console.WriteLine("\nComando no encontrado, compruebe su ortografía.");
                        r = true;
                    }
                }
                #endregion
            }
        }