コード例 #1
0
        public bool Atualizar(Agendar agendar)
        {
            var agendasTotais = File.ReadAllLines(PATH);
            var agendaCSV     = PrepararAgendaCSV(agendar);
            var linhaPedido   = -1;
            var resultado     = false;

            for (int i = 0; i < agendasTotais.Length; i++)
            {
                var idConvertido = ulong.Parse(ExtrairValorDoCampo("id", agendasTotais[i]));
                if (agendar.Id.Equals(idConvertido))
                {
                    linhaPedido = i;
                    resultado   = true;
                    break;
                }
            }

            if (resultado)
            {
                agendasTotais[linhaPedido] = agendaCSV;
                File.WriteAllLines(PATH, agendasTotais);
            }
            return(resultado);
        }
コード例 #2
0
        public List <Agendar> ObterTodos()
        {
            var            linhas  = File.ReadAllLines(PATH);
            List <Agendar> agendar = new List <Agendar>();

            foreach (var linha in linhas)
            {
                Agendar agenda = new Agendar();

                agenda.Id               = ulong.Parse(ExtrairValorDoCampo("id", linha));
                agenda.Status           = uint.Parse(ExtrairValorDoCampo("status_pedido", linha));
                agenda.Cliente.Nome     = ExtrairValorDoCampo("cliente_nome", linha);
                agenda.Cliente.Email    = ExtrairValorDoCampo("cliente_email", linha);
                agenda.Cliente.CPF      = ExtrairValorDoCampo("cliente_cpf", linha);
                agenda.Cliente.Telefone = ExtrairValorDoCampo("cliente_telefone", linha);
                agenda.NomeDoEvento     = ExtrairValorDoCampo("nome_Evento", linha);
                agenda.TipoDeEvento     = ExtrairValorDoCampo("tipos_Eventos", linha);
                agenda.Complemento      = ExtrairValorDoCampo("outro_Tipo_De_Evento", linha);
                agenda.PlanoEvento.Nome = ExtrairValorDoCampo("planoDeEvento", linha);
                agenda.DiaDoEvento      = DateTime.Parse(ExtrairValorDoCampo("dataEvento", linha));
                agenda.DataDoRegistro   = DateTime.Parse(ExtrairValorDoCampo("diaDoRegistro", linha));
                agenda.DescricaoEvento  = ExtrairValorDoCampo("descricao", linha);
                agenda.PrecoTotal       = double.Parse(ExtrairValorDoCampo("precoTotal", linha));
                agenda.PublicoePrivado  = bool.Parse(ExtrairValorDoCampo("privadopublico", linha));

                agendar.Add(agenda);
            }
            return(agendar);
        }
コード例 #3
0
        private string PrepararAgendaCSV(Agendar agendar)
        {
            Cliente     c  = agendar.Cliente;
            PlanoEvento pe = agendar.PlanoEvento;

            return($"id={agendar.Id};status_pedido={agendar.Status};privadopublico={agendar.PublicoePrivado};cliente_nome={c.Nome};cliente_email={c.Email};cliente_cpf={c.CPF};cliente_telefone={c.Telefone};nome_Evento={agendar.NomeDoEvento};tipos_Eventos={agendar.TipoDeEvento};outro_Tipo_De_Evento={agendar.Complemento};planoDeEvento={agendar.PlanoEvento.Nome};dataEvento={agendar.DiaDoEvento};diaDoRegistro={agendar.DataDoRegistro};descricao={agendar.DescricaoEvento};precoTotal={agendar.PrecoTotal}");
        }
コード例 #4
0
        public ActionResult Agendar(string servico, int erro)
        {
            Servico serv = (from s in db.Servicoes where s.nome == servico select s).First();
            Agendar ag   = new Agendar();

            ag.servico = serv;
            ag.error   = erro;
            return(View(ag));
        }
コード例 #5
0
        public bool Inserir(Agendar agendar)
        {
            var quantidadePedidos = File.ReadAllLines(PATH).Length;

            agendar.Id = (ulong)++quantidadePedidos;
            var linha = new string[] { PrepararAgendaCSV(agendar) };

            File.AppendAllLines(PATH, linha);

            return(true);
        }
コード例 #6
0
        public IActionResult AgendarEvento(IFormCollection form)
        {
            Agendar agenda = new Agendar();

            agenda.NomeDoEvento    = form["nomeDoEvento"];
            agenda.TipoDeEvento    = form["tipoDeEvento"];
            agenda.PublicoePrivado = bool.Parse(form["publicoprivado"]);

            var         nomePlanoEvento = form["planoDeEvento"];
            PlanoEvento planoEvento     = new PlanoEvento();

            planoEvento.Nome  = form["planoDeEvento"];
            planoEvento.Preco = planoEventoRepository.ObterPrecoDe(nomePlanoEvento);

            agenda.PlanoEvento = planoEvento;

            Cliente cliente = new Cliente();

            cliente.Nome     = form["nome"];
            cliente.Email    = form["email"];
            cliente.CPF      = form["cpf"];
            cliente.Telefone = form["telefone"];

            agenda.Cliente = cliente;

            agenda.DataDoRegistro = DateTime.Now;

            agenda.DiaDoEvento = DateTime.Parse(form["date"]);

            agenda.DescricaoEvento = form["descricao"];

            agenda.PrecoTotal = planoEventoRepository.ObterPrecoDe(nomePlanoEvento);

            if (agendaRepository.Inserir(agenda))
            {
                return(View("Sucesso", new RespostaViewModel()
                {
                    NomeView = "Agenda",
                    UsuarioEmail = ObterUsuarioSession(),
                    UsuarioNome = ObterUsuarioNomeSession()
                }));
            }
            else
            {
                return(View("Erro", new RespostaViewModel()
                {
                    NomeView = "Pedido",
                    UsuarioEmail = ObterUsuarioSession(),
                    UsuarioNome = ObterUsuarioNomeSession()
                }));
            }
        }
コード例 #7
0
        public ActionResult AgendarTarefa(Agendar model, string ButtonType)
        {
            if (ButtonType == "Agendar")
            {
                Agendador.RunJob(model.Texto).GetAwaiter().GetResult();
            }

            if (ButtonType == "Iniciar")
            {
                Agendador.Start().GetAwaiter().GetResult();
            }

            if (ButtonType == "Parar")
            {
                Agendador.Stop().GetAwaiter().GetResult();
            }

            return(View("Index", model));
        }
コード例 #8
0
        public ActionResult AgendarTarefa(Agendar model, string ButtonType)
        {
            if (ButtonType == "Agendar")
            {
                //Como usar a notação CRON
                //https://stackoverflow.com/questions/27221438/cron-every-day-at-6pm
                RecurringJob.AddOrUpdate("xpto", () => Tarefa.Executar(model.Texto), Cron.Minutely, null, "default");
            }


            if (ButtonType == "Parar")
            {
                RecurringJob.RemoveIfExists("xpto");
            }

            if (ButtonType == "Executar")
            {
                Tarefa.Executar(model.Texto);
            }

            return(View("Index", model));
        }
コード例 #9
0
 public IActionResult Agendamento(Agendar animais)
 {
     ListaAgendamentos.Adicionar(animais);
     return(View("Listagem", ListaAgendamentos.Listar()));
 }