Beispiel #1
0
        public void AdicionaSaida(Lancamentos.Lancamento lancamento)
        {
            var saida = new Lancamento(lancamento.Data, lancamento.Descricao, lancamento.Valor);

            Saidas.Add(saida);

            Total = Total - saida.Valor;
        }
        public ActionResult DiminuirProdutos(Produtos produto, string optSector)
        {
            var ListaDeSectores = new List <string>()
            {
                "ABP", "Administrativo", "Compras", "Contabilidade", "Contas de Consumo",
                "DTI", "Financeiro", "Juridico", "Locação", "Membros e Obreiros", "Migração",
                "Patrimonio", "Provincias", "RH", "Secretaria", "Contratos", "Direcção",
                "Sector Tecnico"
            };

            ViewBag.Sectores = ListaDeSectores.ToList();

            ViewBag.Quantidadeatual = decrescimos;

            if (ModelState.IsValid)
            {
                var user  = Session["usuario"] as Usuario;
                var saida = new Saidas();
                saida.NomeUser    = user.NomeUsuario;
                saida.Quantidade  = produto.Quantidade;
                saida.Id_produto  = produto.Id_produto;
                saida.NomeProduto = produto.NomeProduto;
                saida.Sector      = optSector;
                saida.Imagem      = produto.Imagem;


                saidasAPP.Salvar(saida);
                if (decrescimos < produto.Quantidade)
                {
                    ViewBag.erro = "A saida não pode ser maior que a quantidade atual em stock";
                    return(View());
                }
                if (produto.Quantidade >= 0)
                {
                    produto.Quantidade = decrescimos - produto.Quantidade;
                    produtosAPP.Salvar(produto);
                }
                else
                {
                    ViewBag.erro = "A quantidade ou preço não pode ser um valor negativo";
                }
            }
            return(RedirectToAction("Listarprodutos"));
        }
Beispiel #3
0
        public static void MonitoraTwitter(Parametros objParametros, string wrkPath, Saidas wrkSaidas, FEZ_Components.LED ledPrincipal)
        {
            while (true)
            {
                //Defini o tempo de intervalo entre cada execução
                var timeout = DateTime.Now.AddSeconds(objParametros.Intervalo);

                try
                {
                    //Busca lista de mensagens
                    var mensagens = Mensagem.BuscaMensagensDiretas(objParametros.UltimaMsgId,
                                                                   objParametros.Token, objParametros.TokenSecret);

                    //Instancia comando
                    var wrkComando = new Comando(wrkPath);
                    if (wrkComando.PercorreMensagens(mensagens, wrkSaidas, objParametros.Token,
                                                     objParametros.TokenSecret, objParametros.ClasseIp) == "close")
                    {
                        //Finalizar aplicação
                        objParametros.UltimaMsgId = Parametros.ObtemUltimaMsgId(wrkPath);
                        break;
                    }

                    objParametros.UltimaMsgId = Parametros.ObtemUltimaMsgId(wrkPath);
                }
                catch (Exception ex)
                {
                    ledPrincipal.StartBlinking(500, 500);

                    //Grava log:
                    Funcoes.EscreverLog(wrkPath, "Erro de exceção ocorrido: " + ex, 1, false);
                }

                //Espera o tempo de leitura entre cada mensagem
                while (DateTime.Now < timeout)
                {
                    System.Threading.Thread.Sleep(500); //0,5 segundo
                }
            }
        }
Beispiel #4
0
        public static void MonitoraRede(Parametros objParametros, string wrkPath, Saidas wrkSaidas, FEZ_Components.LED ledPrincipal)
        {
            while (true)
            {
                //Defini o tempo de intervalo entre cada execução
                var timeout = DateTime.Now.AddSeconds(5); //5 segundos entre cada ping

                try
                {
                    //Efetua ping e verifica retorno
                    //if ()

                    //Desliga primeira tomada
                    //...

                    //Aguarda 10 segundos e religa a tomada
                    //...

                    //Aguarda 1 minuto para ativar conexão
                    //...
                }
                catch (Exception ex)
                {
                    ledPrincipal.StartBlinking(500, 500);

                    //Grava log:
                    Funcoes.EscreverLog(wrkPath, "Erro de exceção ocorrido: " + ex, 1, false);
                }

                //Espera o tempo de leitura entre cada mensagem
                while (DateTime.Now < timeout)
                {
                    System.Threading.Thread.Sleep(500); //0,5 segundo
                }
            }
        }
Beispiel #5
0
        public static void Main()
        {
            //Acende Led principal
            var ledPrincipal = new FEZ_Components.LED(FEZ_Pin.Digital.LED);

            ledPrincipal.TurnOn();

            PersistentStorage wrkSd = null;

            try
            {
                //Inicia relés / saidas digitais
                var wrkSaidas = new Saidas();

                //Monta diretórios do Cartão SD
                wrkSd = new PersistentStorage("SD");
                wrkSd.MountFileSystem();
                var wrkPath = GetRootFolder();
                //----------------------------

                Funcoes.EscreverLog(wrkPath, "Sistema Inicializado.", 0, true);

                //Busca os parametros do sistema
                var objParametros = Parametros.BuscaParametros(wrkPath);

                var executa = 1;
                if (executa > 1)
                {
                    //string ip = "10.1.1.9";
                    //string subnet = "255.0.0.0";
                    //string gateway = "10.1.1.1";
                    //string mac = "00:19:5B:04:36:20";
                    //string dns = "10.1.1.1";

                    // Connect using Static IP address
                    EthernetW5100.Initialize(objParametros.ClasseIp.EnderecoIp,
                                             objParametros.ClasseIp.MascaraIp,
                                             objParametros.ClasseIp.GatewayIp,
                                             objParametros.ClasseIp.EnderecoMacGateway,
                                             objParametros.ClasseIp.Dns);

                    // Connect using new dhcp option
                    //EthernetW5100.Initialize(mac);

                    //Inicia monitoramento da rede interna
                    //IniciaThreads();

                    //Iniciar monitoramento pelo Twitter
                    //MonitoraTwitter(objParametros, wrkPath, wrkSaidas, ledPrincipal)
                    //while (true)
                    //{
                    //    executa = 0;
                    //    if (executa > 0)
                    //        EscutaRequisicao();
                    //}
                }

                //Desliga o led principal
                ledPrincipal.ShutOff();
            }
            catch (Exception ex)
            {
                ledPrincipal.StartBlinking(500, 500);
            }
            finally
            {
                //Libera controle SD
                if (wrkSd != null)
                {
                    wrkSd.UnmountFileSystem();
                }
            }
        }
 // Elimina o Gerador da BD pelo ID
 public void Delete(Saidas saidas)
 {
     repositorio.Deletar(saidas);
 }
 //Executa o metodo Insert se o Id for menor que zero caso seja maior executa o metodo Update
 public void Salvar(Saidas saidas)
 {
     repositorio.Salvar(saidas);
 }