Exemple #1
0
        public void VerOertaShowldReturnViewWithViewModel()
        {
            Aeroporto aeroporto1 = new Aeroporto()
            {
                AeroportoId = 1,
                Nome        = "Aeroporto1",
                Latitude    = 38.779444,
                Longitude   = -9.136111,
            };

            Aeroporto aeroporto2 = new Aeroporto()
            {
                AeroportoId = 2,
                Nome        = "Aeroporto1",
                Latitude    = 39.779444,
                Longitude   = -10.136111,
            };

            Companhia companhia = new Companhia()
            {
                Nome          = "Companhia1",
                CompanhiaId   = 1,
                ListaReservas = new List <Reserva>()
            };

            Jato jato1 = new Jato()
            {
                CompanhiaId          = 1,
                AeroportoId          = 1,
                Nome                 = "Jato1",
                EmFuncionamento      = true,
                CreditosBase         = 2200,
                CreditosPorKilometro = 1.1,
                DistanciaMaxima      = 1000000,
                TempoPreparacao      = 1,
                VelocidadeMedia      = 200
            };

            Disponibilidade disponibilidade1 = new Disponibilidade()
            {
                DisponibilidadeId = 1,
                Inicio            = "2017-09-22",
                Fim = "2017-09-24"
            };

            jato1.ListaDisponibilidade.Add(disponibilidade1);

            DateTime dataPartida = new DateTime(2017, 9, 23);



            MyController <ClienteController>
            .Instance()
            .WithDbContext(dbContext => dbContext     // <---
                           .WithEntities(entities => entities.AddRange(
                                             aeroporto2, aeroporto1, companhia, jato1, disponibilidade1)))
            .Calling(c => c.VerOferta(aeroporto1.AeroportoId, aeroporto2.AeroportoId, dataPartida, jato1.JatoId))
            .ShouldReturn()
            .View();
        }
Exemple #2
0
        public async Task <IActionResult> GetAsync([FromQuery] int candidatoId)
        {
            try
            {
                var _httpClient = _httpClientFactory.CreateClient("BancoTalentosService");

                HttpResponseMessage responseMessage = await _httpClient.GetAsync(DisponibilidadesPath + Request.QueryString);

                Disponibilidade Disponibilidade = null;

                if (responseMessage.IsSuccessStatusCode)
                {
                    Disponibilidade = (await responseMessage.Content.ReadAsAsync <JsonModel <Disponibilidade> >()).Data as Disponibilidade;
                }
                else if (responseMessage.StatusCode == HttpStatusCode.Conflict || responseMessage.StatusCode == HttpStatusCode.BadRequest)
                {
                    return(BadRequest(responseMessage.Content.ReadAsStringAsync()));
                }

                return(Ok(Disponibilidade));
            }
            catch
            {
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
        }
        public ActionResult Definir(int id, int exp, DateTime[] selectedDatas)
        {
            UserAccountExposicao userAccountExposicao = _db.UserAccountExposicao.Find(id, exp);

            if (userAccountExposicao != null)
            {
                if (selectedDatas != null)
                {
                    foreach (var data in selectedDatas)
                    {
                        Disponibilidade disponibilidade = new Disponibilidade
                        {
                            DataDisponibilidade = data,
                            ExposicaoID         = exp,
                            UserAccountID       = id
                        };
                        _db.Disponibilidade.Add(disponibilidade);
                    }
                    _db.SaveChanges();
                    return(RedirectToAction("PerfilUser", "Account", new { id = id }));
                }
                return(RedirectToAction("Definir", new { id = id, exp = exp }));
            }
            return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
        }
Exemple #4
0
        private void AllProducts_FocusEnter(object sender, EventArgs e)
        {
            string     getProdutos          = "SELECT * FROM tb_produtos";
            SqlCommand commDisponibilidades = new SqlCommand(getProdutos, conn);

            SqlDataReader prodRead = commDisponibilidades.ExecuteReader();

            if (prodRead.HasRows)
            {
                listProdutos.Items.Clear();
                while (prodRead.Read())
                {
                    string nome_dev  = Desenvolvedor.getNameById(prodRead.GetInt32(1), conn);
                    string desc_disp = Disponibilidade.getNameById(prodRead.GetInt32(2), conn);

                    string[] row =
                    {
                        prodRead.GetInt32(0).ToString(),
                        prodRead.GetString(3),
                        nome_dev,
                        desc_disp,
                        prodRead.GetInt32(4).ToString(),
                        "R$ " + prodRead.GetDecimal(5).ToString("#.##")
                    };
                    ListViewItem item = new ListViewItem(row);
                    listProdutos.Items.Add(item);
                }
            }
        }
Exemple #5
0
        public List <Disponibilidade> Read(int id)
        {
            List <Disponibilidade> lista = new List <Disponibilidade>();

            SqlCommand cmd = new SqlCommand();

            cmd.Connection  = connection;
            cmd.CommandText = "SELECT * FROM ViewDisponibilidades Where CodProfessor = @id";

            cmd.Parameters.AddWithValue("@id", id);

            try
            {
                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        Disponibilidade e = new Disponibilidade();
                        e.CodProfessor = (int)reader["CodProfessor"];
                        e.CodSlot      = (int)reader["CodSlot"];
                        e.Status_slot  = (bool)reader["status_slot"];

                        lista.Add(e);
                    }
                    return(lista);
                }
            }
            catch
            {
                return(lista = null);
            }
        }
Exemple #6
0
        public void AeroportosDisponiveisDestinoShowReturnListEmpty()
        {
            Aeroporto aeroporto1 = new Aeroporto()
            {
                AeroportoId = 1,
                Nome        = "Aeroporto1",
                Latitude    = 38.779444,
                Longitude   = -9.136111,
            };

            Aeroporto aeroporto2 = new Aeroporto()
            {
                AeroportoId = 2,
                Nome        = "Aeroporto2",
                Latitude    = 39.779444,
                Longitude   = -10.136111,
            };

            Companhia companhia = new Companhia()
            {
                Nome          = "Companhia1",
                CompanhiaId   = 1,
                ListaReservas = new List <Reserva>()
            };

            Jato jato1 = new Jato()
            {
                CompanhiaId          = 1,
                AeroportoId          = 1,
                Nome                 = "Jato1",
                EmFuncionamento      = true,
                CreditosBase         = 2200,
                CreditosPorKilometro = 1.1,
                DistanciaMaxima      = 1000000,
                TempoPreparacao      = 1,
                VelocidadeMedia      = 0
            };

            Disponibilidade disponibilidade1 = new Disponibilidade()
            {
                DisponibilidadeId = 1,
                Inicio            = "2017-09-22",
                Fim = "2017-09-26"
            };

            jato1.ListaDisponibilidade.Add(disponibilidade1);

            DateTime dataPartida = new DateTime(2017, 9, 23);

            MyController <ClienteController>
            .Instance()
            .WithDbContext(dbContext => dbContext    // <---
                           .WithEntities(entities => entities.AddRange(
                                             aeroporto2, aeroporto1, companhia, jato1, disponibilidade1)))
            .Calling(c => c.AeroportosDestinoDisponiveis(aeroporto1.AeroportoId, dataPartida))
            .ShouldReturn()
            .ResultOfType <IEnumerable <Aeroporto> >()
            .Passing(c => c.Count() == 0);
        }
Exemple #7
0
        public void DisponibilidadePontualTesteDeslocacao()
        {
            Aeroporto aeroporto1 = new Aeroporto()
            {
                AeroportoId = 1,
                Nome        = "Aeroporto1",
                Latitude    = 38.779444,
                Longitude   = -9.136111,
            };

            Aeroporto aeroporto2 = new Aeroporto()
            {
                AeroportoId = 2,
                Nome        = "Aeroporto2",
                Latitude    = 40.472222,
                Longitude   = -3.560833,
            };

            Companhia companhia = new Companhia()
            {
                Nome          = "Companhia1",
                CompanhiaId   = 1,
                ListaReservas = new List <Reserva>()
            };

            Jato jato1 = new Jato()
            {
                CompanhiaId          = 1,
                AeroportoId          = 1,
                Nome                 = "Jato1",
                EmFuncionamento      = true,
                CreditosBase         = 2200,
                CreditosPorKilometro = 1.1
            };

            Disponibilidade disponibilidade1 = new Disponibilidade()
            {
                DisponibilidadeId = 1,
                Inicio            = "22/09/2017",
                Fim = "24/09/2017"
            };

            jato1.ListaDisponibilidade.Add(disponibilidade1);

            DateTime dataPartida = new DateTime(2017, 9, 23);

            MyController <ClienteController> .Instance()
            .WithDbContext(dbContext => dbContext
                           .WithEntities(entities => entities.AddRange(
                                             aeroporto1,
                                             aeroporto2,
                                             companhia,
                                             jato1,
                                             disponibilidade1)))
            .Calling(c => c.AeroportosDisponiveis(dataPartida))
            .ShouldReturn()
            .ResultOfType <IEnumerable <Aeroporto> >()
            .Passing(c => c.Any(a => a.AeroportoId == aeroporto2.AeroportoId));
        }
        public DisponibilidadeViewModel(Disponibilidade obj)
        {
            if (obj == null)
            {
                return;
            }

            Id        = obj.Id;
            Descricao = obj.Descricao;
        }
 public bool CadastrarDisponibilidade(Disponibilidade d)
 {
     if (BuscarDisponibilidadePorMedico(d.Medico) == null)
     {
         ctx.Disponibilidades.Add(d);
         ctx.SaveChanges();
         return(true);
     }
     return(false);
 }
Exemple #10
0
        public void Create(Disponibilidade pDisp)
        {
            sql.Append("INSERT INTO disponibilidade (idVoluntario, idAtividade) " +
                       "VALUES (@idV, @idAtividade)");

            cmm.CommandText = sql.ToString();
            cmm.Parameters.AddWithValue("@idV", pDisp.voluntario.idVoluntario);
            cmm.Parameters.AddWithValue("@idAtividade", pDisp.atividade.idAtividade);

            db.executarComando(cmm);
            sql.Clear();
        }
Exemple #11
0
        private Disponibilidade RetornaDisponibilidade(DateTime data, int profCod, int hora, int ano, Unidade unidade, List <Disponibilidade> disponibilidades, TipoCurso regime)
        {
            Disponibilidade disp = disponibilidades.Where(p =>
                                                          p.Professor_Codigo == profCod &&
                                                          p.Ano == ano &&
                                                          p.Unidade == unidade &&
                                                          (p.Dia_Semana - 1) == ((int)data.DayOfWeek) &&
                                                          (p.Horario.Hours >= hora && p.Horario.Hours <= (hora + 1)) &&
                                                          p.TipoCurso == regime).FirstOrDefault();

            return(disp);
        }
Exemple #12
0
        public void Update(Disponibilidade pDisp)
        {
            sql.Append("UPDATE disponibilidade " +
                       "SET idAtividade = @idAtividade " +
                       "WHERE idVoluntario = @idV");

            cmm.CommandText = sql.ToString();
            cmm.Parameters.AddWithValue("@idV", pDisp.voluntario.idVoluntario);
            cmm.Parameters.AddWithValue("@idAtividade", pDisp.atividade.idAtividade);

            db.executarComando(cmm);
            sql.Clear();
        }
Exemple #13
0
        private Professor RetornaProfQueLecionaDisciplinaHorario(List <ProfessorDisciplina> prof_disciplina, int disciplinaCodigo, DateTime data, int hora, int ano, Unidade unidade, List <Disponibilidade> disponibilidades, List <Professor> profs, TipoCurso regime)
        {
            List <ProfessorDisciplina> aux = prof_disciplina.Where(p => p.Disciplina_Codigo == disciplinaCodigo).ToList();

            foreach (ProfessorDisciplina pd in aux)
            {
                Disponibilidade disp = RetornaDisponibilidade(data, pd.Professor_Codigo, hora, ano, unidade, disponibilidades, regime);

                if (disp != null)
                {
                    Professor prof = profs.Where(p => p.Codigo == pd.Professor_Codigo).FirstOrDefault();
                    return(prof);
                }
            }

            return(null);
        }
        public IActionResult DisponibilidadeMedico()
        {
            Medico _medico = _medicoDao.BuscarMedicoPorLogin(_userManager.GetUserName(User));
            List <Disponibilidade> disponibilidades = _disponibilidadeDao.ListarDisponiblidade();
            Disponibilidade        disponibilidade  = new Disponibilidade();

            foreach (var dipo in disponibilidades)
            {
                if (dipo.Medico.Id == _medico.Id)
                {
                    disponibilidade = dipo;
                    break;
                }
            }

            return(View(disponibilidade));
        }
 public ActionResult <Disponibilidade> Get([FromQuery] int?candidatoId)
 {
     try
     {
         IQueryable <Disponibilidade> DisponibilidadeQuery = _DisponibilidadeRepository.Get()
                                                             .Include(x => x.Disponibilidades)
                                                             .AsNoTracking();
         if (candidatoId.HasValue)
         {
             DisponibilidadeQuery = DisponibilidadeQuery.Where(x => x.Disponibilidades.Any(b => b.Candidato.Id == candidatoId));
         }
         Disponibilidade Disponibilidade = DisponibilidadeQuery.FirstOrDefault();
         return(Ok(new BancoTalentosJson <Disponibilidade>().GetOK(Disponibilidade)));
     }
     catch (Exception ex)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, new BancoTalentosJson <Disponibilidade>().GetInternalServerError(ex)));
     }
 }
Exemple #16
0
        //tanto para admin quando para user
        public ActionResult Create(int ProfessorId, string slotDisponivel, string slotTalvez)
        {
            using (AvailabilityModel model = new AvailabilityModel())
            {
                model.Delete(ProfessorId);
            }

            string[] disponiveis = slotDisponivel.Split(',');
            if (disponiveis[0] != "")
            {
                for (int i = 0; i < disponiveis.Length; i++)
                {
                    Disponibilidade d = new Disponibilidade();
                    d.CodProfessor = ProfessorId;
                    d.CodSlot      = Convert.ToInt32(disponiveis[i]);
                    d.Status_slot  = true; //Status_slot True para slots verdes

                    using (AvailabilityModel model = new AvailabilityModel())
                    {
                        model.Create(d);
                    }
                }
            }

            string[] talvez = slotTalvez.Split(',');
            if (talvez[0] != "")
            {
                for (int i = 0; i < talvez.Length; i++)
                {
                    Disponibilidade d = new Disponibilidade();
                    d.CodProfessor = ProfessorId;
                    d.CodSlot      = Convert.ToInt32(talvez[i]);
                    d.Status_slot  = false; //Status_slot false para slots lranjas

                    using (AvailabilityModel model = new AvailabilityModel())
                    {
                        model.Create(d);
                    }
                }
            }

            return(Json("Salvo com sucesso"));
        }
Exemple #17
0
        private bool ProfessorPodeAplicarAProva(Professor prof, List <Turma> todasTurmas, List <Curso> todosCursos, bool ehEngenharia, int turma_codigo, DateTime data, int hora, int ano, Unidade unidade, List <Disponibilidade> disponibilidades, TipoCurso regime)
        {
            bool result = false;

            Curso c = RetornaCurso(todasTurmas, todosCursos, turma_codigo);

            if (c != null)
            {
                if ((c.Nome.ToLower().Contains("engenharia") && ehEngenharia) || (!c.Nome.ToLower().Contains("engenharia") && !ehEngenharia))
                {
                    Disponibilidade disp = RetornaDisponibilidadeCurso(data, prof.Codigo, hora, ano, unidade, disponibilidades, regime, c);
                    if (disp != null)
                    {
                        result = true;
                    }
                }
            }

            return(result);
        }
Exemple #18
0
        private List <Professor> RetornaListaProfsDisponiveis(List <Disponibilidade> disponibilidades, HoraProva h, DataProva dp, List <Professor> profsNaoMesarios)
        {
            List <Professor> result = new List <Professor>();

            foreach (Professor prof in profsNaoMesarios)
            {
                Disponibilidade d = disponibilidades.Where(p =>
                                                           p.Professor_Codigo == prof.Codigo &&
                                                           (p.Horario.Hours >= h.Hora.Hours && p.Horario.Hours <= (h.Hora.Hours + 1)) &&
                                                           ((p.Dia_Semana - 1) == (int)dp.Data.DayOfWeek)).FirstOrDefault();

                if (d != null)
                {
                    result.Add(prof);
                }
            }



            return(result);
        }
 public IActionResult DisponibilidadeMedico(Disponibilidade disponibilidade)
 {
     if (ModelState.IsValid)
     {
         disponibilidade.Medico = _medicoDao.BuscarMedicoPorLogin(_userManager.GetUserName(User));
         if (disponibilidade.Id == 0)
         {
             if (_disponibilidadeDao.CadastrarDisponibilidade(disponibilidade))
             {
                 return(RedirectToAction("MenuPrincipalMedico"));
             }
             ModelState.AddModelError("", "Algum erro aconteceu");
         }
         if (_disponibilidadeDao.AlterarDisponibilidade(disponibilidade))
         {
             return(RedirectToAction("MenuPrincipalMedico"));
         }
         ModelState.AddModelError("", "Algum erro aconteceu");
     }
     return(View(disponibilidade));
 }
Exemple #20
0
        public bool Create(Disponibilidade e)
        {
            SqlCommand cmd = new SqlCommand();

            cmd.Connection  = connection;
            cmd.CommandText = @"ArmazenaDisponibilidade";
            cmd.CommandType = CommandType.StoredProcedure;

            cmd.Parameters.AddWithValue("@codProfessor", e.CodProfessor);
            cmd.Parameters.AddWithValue("@codSlot", e.CodSlot);
            cmd.Parameters.AddWithValue("@status_slot", e.Status_slot);

            try
            {
                cmd.ExecuteNonQuery();
                return(true);
            }
            catch
            {
                return(false);
            }
        }
Exemple #21
0
        private void AllProducts_Load(object sender, EventArgs e)
        {
            try {
                conn = new SqlConnection(connectionString);
                conn.Open();


                // Alimenta toda a lista de produtos
                string     getProdutos          = "SELECT * FROM tb_produtos";
                SqlCommand commDisponibilidades = new SqlCommand(getProdutos, conn);

                SqlDataReader prodRead = commDisponibilidades.ExecuteReader();

                if (prodRead.HasRows)
                {
                    listProdutos.Items.Clear();
                    while (prodRead.Read())
                    {
                        string nome_dev  = Desenvolvedor.getNameById(prodRead.GetInt32(1), conn);
                        string desc_disp = Disponibilidade.getNameById(prodRead.GetInt32(2), conn);

                        string[] row =
                        {
                            prodRead.GetInt32(0).ToString(),
                            prodRead.GetString(3),
                            nome_dev,
                            desc_disp,
                            prodRead.GetInt32(4).ToString(),
                            "R$ " + prodRead.GetDecimal(5).ToString("#.##")
                        };
                        ListViewItem item = new ListViewItem(row);
                        listProdutos.Items.Add(item);
                    }
                }
            } catch (Exception ex) {
                Console.WriteLine("Erro: " + ex.Message);
            }
        }
        private void ProductsReport_Load(object sender, EventArgs e)
        {
            try {
                conn = new SqlConnection(connectionString);
                conn.Open();

                // Alimenta combobox de desenvolvedores
                string     getDev   = "SELECT * FROM tb_desenvolvedor";
                SqlCommand commDevs = new SqlCommand(getDev, conn);

                SqlDataReader devRead = commDevs.ExecuteReader();

                if (devRead.HasRows)
                {
                    while (devRead.Read())
                    {
                        cmbDevFiltro.Items.Add(new Desenvolvedor {
                            codigo = devRead.GetInt32(0), nome = devRead.GetString(1)
                        });
                    }
                }

                // Alimenta combobox de disponibilidades
                string     getDisp  = "SELECT * FROM tb_disponibilidades";
                SqlCommand commDisp = new SqlCommand(getDisp, conn);

                SqlDataReader dispRead = commDisp.ExecuteReader();

                if (dispRead.HasRows)
                {
                    while (dispRead.Read())
                    {
                        cmbDispFiltro.Items.Add(new Disponibilidade {
                            codigo = dispRead.GetInt32(0), dias = dispRead.GetInt32(1), descricao = dispRead.GetString(2)
                        });
                    }
                }

                // Alimenta checklistbox de gêneros
                string        sqlGeneros     = "SELECT * FROM tb_generos";
                SqlCommand    commandGeneros = new SqlCommand(sqlGeneros, conn);
                SqlDataReader gr             = commandGeneros.ExecuteReader();

                if (gr.HasRows)
                {
                    List <Genero> generos = new List <Genero>();
                    while (gr.Read())
                    {
                        Genero genero = new Genero {
                            codigo = gr.GetInt32(0),
                            nome   = gr.GetString(1).ToString()
                        };
                        generos.Add(genero);
                    }

                    generos = generos.OrderBy(o => o.nome).ToList();

                    for (int i = 0; i < generos.Count - 1; i++)
                    {
                        checkListGenFiltro.Items.Add(generos[i]);
                    }
                }


                // Alimenta toda a lista de produtos
                string     getProdutos          = "SELECT * FROM tb_produtos";
                SqlCommand commDisponibilidades = new SqlCommand(getProdutos, conn);

                SqlDataReader prodRead = commDisponibilidades.ExecuteReader();

                if (prodRead.HasRows)
                {
                    listProdutos.Items.Clear();
                    while (prodRead.Read())
                    {
                        string nome_dev  = Desenvolvedor.getNameById(prodRead.GetInt32(1), conn);
                        string desc_disp = Disponibilidade.getNameById(prodRead.GetInt32(2), conn);

                        string[] row =
                        {
                            prodRead.GetInt32(0).ToString(),
                            prodRead.GetString(3),
                            nome_dev,
                            desc_disp,
                            prodRead.GetInt32(4).ToString(),
                            "R$ " + prodRead.GetDecimal(5).ToString("#.##")
                        };
                        ListViewItem item = new ListViewItem(row);
                        listProdutos.Items.Add(item);
                    }
                }
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
Exemple #23
0
        private void Sales_Load(object sender, EventArgs e)
        {
            try {
                conn = new SqlConnection(connectionString);
                conn.Open();

                // Alimenta toda a lista de produtos
                string     getProdutos = "SELECT * FROM tb_produtos";
                SqlCommand commProd    = new SqlCommand(getProdutos, conn);

                SqlDataReader prodRead = commProd.ExecuteReader();

                if (prodRead.HasRows)
                {
                    listProdutos.Items.Clear();
                    while (prodRead.Read())
                    {
                        string nome_dev  = Desenvolvedor.getNameById(prodRead.GetInt32(1), conn);
                        string desc_disp = Disponibilidade.getNameById(prodRead.GetInt32(2), conn);

                        string[] row =
                        {
                            prodRead.GetInt32(0).ToString(),
                            prodRead.GetString(3),
                            prodRead.GetInt32(4).ToString(),
                            desc_disp,
                            "R$ " + prodRead.GetDecimal(5).ToString("#.##")
                        };
                        ListViewItem item = new ListViewItem(row);
                        listProdutos.Items.Add(item);
                    }
                }


                // Alimenta lista do carrinho
                List <CarrinhoItem> items = MainForm.Cart.getItems();

                int    totalItens = 0;
                double totalPreco = 0.0;

                foreach (CarrinhoItem item in items)
                {
                    Produto produto = new Produto();
                    produto.codigo = item.getCodigo();

                    string[] rowCart =
                    {
                        item.getCodigo().ToString(),
                        produto.getNome(),
                        item.getQuantidade().ToString(),
                        "R$ " + (produto.getPreco() * item.getQuantidade()).ToString("#.##")
                    };
                    ListViewItem row = new ListViewItem(rowCart);
                    listCarrinho.Items.Add(row);

                    totalItens += item.getQuantidade();
                    totalPreco += (produto.getPreco() * item.getQuantidade());
                }

                txtTotalItems.Text = totalItens.ToString();
                txtTotalPrice.Text = "R$ " + totalPreco.ToString("#.##");



                // Alimenta select de clientes
                string     sqlCli  = "SELECT * FROM tb_clientes";
                SqlCommand cliComm = new SqlCommand(sqlCli, conn);

                SqlDataReader readCli = cliComm.ExecuteReader();

                if (readCli.HasRows)
                {
                    while (readCli.Read())
                    {
                        Cliente cliente = new Cliente {
                            codigo    = readCli.GetInt32(0),
                            nome      = readCli.GetString(4),
                            sobrenome = readCli.GetString(5)
                        };

                        comboBox1.Items.Add(cliente);
                    }
                }
            } catch (Exception ex) {
                Console.WriteLine("Erro: " + ex.Message);
            }
        }
Exemple #24
0
        private void button2_Click(object sender, EventArgs e)
        {
            try {
                int codigo_funcionario = MainForm.loggedUser.codigo;
                int codigo_cliente     = -1;
                if (comboBox1.SelectedItem.ToString() != "")
                {
                    Cliente c = comboBox1.SelectedItem as Cliente;
                    codigo_cliente = c.codigo;
                }
                double total = Convert.ToDouble(txtTotalPrice.Text.Replace("R$ ", "").Trim());


                string     sqlVenda  = "INSERT INTO tb_vendas (codigo_funcionario, codigo_cliente, data_venda, total) OUTPUT INSERTED.codigo VALUES (@codfun, @codcli, @data_venda, @total)";
                SqlCommand vendaComm = new SqlCommand(sqlVenda, conn);
                vendaComm.Parameters.AddWithValue("@codfun", codigo_funcionario);
                vendaComm.Parameters.AddWithValue("@codcli", codigo_cliente);
                vendaComm.Parameters.AddWithValue("@data_venda", DateTime.Now);
                vendaComm.Parameters.AddWithValue("@total", total);

                var result = vendaComm.ExecuteScalar();

                if (result != null)
                {
                    MessageBox.Show("Venda realizada sucesso.");

                    int codigo_venda = Convert.ToInt32(result);


                    foreach (CarrinhoItem item in MainForm.Cart.getItems())
                    {
                        int codigo     = item.getCodigo();
                        int quantidade = item.getQuantidade();

                        Produto prod = new Produto();
                        prod.codigo = codigo;
                        double total_item = prod.getPreco() * quantidade;

                        string     sqlItem  = "INSERT INTO tb_itens_venda (codigo_produto, codigo_venda, quantidade, total) VALUES(@cp, @cv, @q, @t)";
                        SqlCommand itemComm = new SqlCommand(sqlItem, conn);
                        itemComm.Parameters.AddWithValue("@cp", codigo);
                        itemComm.Parameters.AddWithValue("@cv", codigo_venda);
                        itemComm.Parameters.AddWithValue("@q", quantidade);
                        itemComm.Parameters.AddWithValue("@t", total_item);

                        itemComm.ExecuteNonQuery();



                        // Retirar estoque do produto
                        prod.setEstoque(prod.getEstoque() - item.getQuantidade());

                        string     getProdutos = "SELECT * FROM tb_produtos";
                        SqlCommand commProd    = new SqlCommand(getProdutos, conn);

                        SqlDataReader prodRead = commProd.ExecuteReader();

                        if (prodRead.HasRows)
                        {
                            listProdutos.Items.Clear();
                            while (prodRead.Read())
                            {
                                string nome_dev  = Desenvolvedor.getNameById(prodRead.GetInt32(1), conn);
                                string desc_disp = Disponibilidade.getNameById(prodRead.GetInt32(2), conn);

                                string[] row =
                                {
                                    prodRead.GetInt32(0).ToString(),
                                    prodRead.GetString(3),
                                    prodRead.GetInt32(4).ToString(),
                                    desc_disp,
                                    "R$ " + prodRead.GetDecimal(5).ToString("#.##")
                                };
                                ListViewItem list_item = new ListViewItem(row);
                                listProdutos.Items.Add(list_item);
                            }
                        }
                    }

                    MainForm.Cart.limpa();
                    listCarrinho.Items.Clear();
                    txtQtd.Text        = "";
                    txtTotalPrice.Text = "";
                    txtTotalItems.Text = "";
                }
                else
                {
                    MessageBox.Show("Alguns campos foram preenchidos incorretamente.");
                }
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }
        private void ProductsRegistration_Load(object sender, EventArgs e)
        {
            try {
                conn = new SqlConnection(connectionString);
                conn.Open();

                string        sqlDesenvolvedor = "SELECT * FROM tb_desenvolvedor";
                SqlCommand    commandDes       = new SqlCommand(sqlDesenvolvedor, conn);
                SqlDataReader er = commandDes.ExecuteReader();

                if (er.HasRows)
                {
                    while (er.Read())
                    {
                        Desenvolvedor desenvolvedor = new Desenvolvedor {
                            codigo = er.GetInt32(0),
                            nome   = er.GetString(1).ToString()
                        };
                        desenvolvedores.Add(desenvolvedor);
                    }

                    desenvolvedores = desenvolvedores.OrderBy(o => o.nome).ToList();

                    foreach (Desenvolvedor desenvolvedor in desenvolvedores)
                    {
                        cmbDesenvolvedor.Items.Add(desenvolvedor);
                    }
                }



                string        sqlDisponibilidade = "SELECT * FROM tb_disponibilidades";
                SqlCommand    commandDis         = new SqlCommand(sqlDisponibilidade, conn);
                SqlDataReader dr = commandDis.ExecuteReader();

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        Disponibilidade disponibilidade = new Disponibilidade {
                            codigo    = dr.GetInt32(0),
                            dias      = dr.GetInt32(1),
                            descricao = dr.GetString(2).ToString()
                        };
                        disponibilidades.Add(disponibilidade);
                    }

                    //disponibilidades = disponibilidades.OrderBy(o => o.descricao).ToList();

                    foreach (Disponibilidade disponibilidade in disponibilidades)
                    {
                        cmbDisponibilidade.Items.Add(disponibilidade);
                    }
                }



                string        sqlGeneros     = "SELECT * FROM tb_generos";
                SqlCommand    commandGeneros = new SqlCommand(sqlGeneros, conn);
                SqlDataReader gr             = commandGeneros.ExecuteReader();

                if (gr.HasRows)
                {
                    while (gr.Read())
                    {
                        Genero genero = new Genero {
                            codigo = gr.GetInt32(0),
                            nome   = gr.GetString(1).ToString()
                        };
                        generos.Add(genero);
                    }

                    generos = generos.OrderBy(o => o.nome).ToList();

                    for (int i = 0; i < generos.Count - 1; i++)
                    {
                        checkListGeneros.Items.Add(generos[i]);
                    }
                }
            } catch (Exception ex) {
                Console.WriteLine("Erro: " + ex.Message);
            }
        }
        private void btnNewProduct_Click(object sender, EventArgs e)
        {
            try {
                Validate val = new Validate();

                bool validateNome    = val.Required(txtNome, "Nome");
                bool validateDes     = (cmbDesenvolvedor.SelectedItem != null);
                bool validateDisp    = (cmbDisponibilidade.SelectedItem != null);
                bool validateEstoque = mskEstoque.Text.Length != 0;
                bool validatePreco   = txtPreco.Text.Length != 0;

                if (validateNome && validateDes && validateDisp && validateEstoque && validatePreco)
                {
                    // Before insert
                    Desenvolvedor   desSelect  = cmbDesenvolvedor.SelectedItem as Desenvolvedor;
                    Disponibilidade dispSelect = cmbDisponibilidade.SelectedItem as Disponibilidade;

                    int    codigo_desenvolvedor   = desSelect.codigo;
                    int    codigo_disponibilidade = dispSelect.codigo;
                    string nome      = txtNome.Text.ToString();
                    int    estoque   = Convert.ToInt32(mskEstoque.Text.ToString());
                    double preco     = Convert.ToDouble(txtPreco.Text.ToString().Replace(".", ","));
                    string descricao = txtDescricao.Text.ToString();


                    string     sqlInsert      = "INSERT INTO tb_produtos (codigo_desenvolvedor, codigo_disponibilidade, nome, estoque, preco, descricao) OUTPUT INSERTED.codigo VALUES (@cod_des, @cod_disp, @nome, @estoque, @preco, @descricao)";
                    SqlCommand commandProduto = new SqlCommand(sqlInsert, conn);
                    commandProduto.Parameters.AddWithValue("@cod_des", codigo_desenvolvedor);
                    commandProduto.Parameters.AddWithValue("@cod_disp", codigo_disponibilidade);
                    commandProduto.Parameters.AddWithValue("@nome", nome);
                    commandProduto.Parameters.AddWithValue("@estoque", estoque);
                    commandProduto.Parameters.AddWithValue("@preco", preco);
                    commandProduto.Parameters.AddWithValue("@descricao", descricao);

                    var codigoInserido = commandProduto.ExecuteScalar();

                    // After insert
                    if (codigoInserido != null)
                    {
                        codigoInserido = Convert.ToInt32(codigoInserido);


                        // Inserir gêneros
                        List <int> checkedItems = new List <int>();

                        foreach (object item in checkListGeneros.CheckedItems)
                        {
                            int codigoItem = Genero.getIdByName(item.ToString(), conn);

                            string     sqlGender    = "INSERT INTO tb_produtos_generos (codigo_produto, codigo_genero) VALUES (@cod_prod, @cod_gen)";
                            SqlCommand comNewGender = new SqlCommand(sqlGender, conn);
                            comNewGender.Parameters.AddWithValue("@cod_prod", codigoInserido);
                            comNewGender.Parameters.AddWithValue("@cod_gen", codigoItem);

                            comNewGender.ExecuteNonQuery();
                        }


                        // Salvar imagem do produto
                        if (globalImageName != "")
                        {
                            string path         = @".\tb_produtos";
                            string product_path = path + "/" + codigoInserido + "/";

                            if (!Directory.Exists(path))
                            {
                                Directory.CreateDirectory(path);
                            }
                            if (!Directory.Exists(product_path))
                            {
                                Directory.CreateDirectory(product_path);
                            }

                            try {
                                string iName    = openImageDialog.SafeFileName;
                                string filepath = openImageDialog.FileName;

                                File.Copy(filepath, product_path + iName);


                                // Salvar imagem no banco
                                string     sqlImagem  = "SELECT * FROM tb_arquivos WHERE codigo_item = @cod_item AND tabela = 'tb_produtos'";
                                SqlCommand commImagem = new SqlCommand(sqlImagem, conn);
                                commImagem.Parameters.AddWithValue("@cod_item", codigoInserido);

                                var checkImageExists = commImagem.ExecuteScalar();

                                if (checkImageExists != null)
                                {
                                    int codigoArquivo = Convert.ToInt32(checkImageExists);

                                    string     sqlUptArquivo = "UPDATE tb_arquivos SET arquivo = @arquivo, nome = @nome";
                                    SqlCommand updateCommand = new SqlCommand(sqlUptArquivo, conn);
                                    updateCommand.Parameters.AddWithValue("@arquivo", iName);
                                    updateCommand.Parameters.AddWithValue("@nome", iName);

                                    updateCommand.ExecuteNonQuery();
                                }
                                else
                                {
                                    string     sqlIstArquivo = "INSERT INTO tb_arquivos (codigo_item, nome, arquivo, tabela) VALUES (@cod_item, @nome, @arquivo, @tabela)";
                                    SqlCommand insertCommand = new SqlCommand(sqlIstArquivo, conn);
                                    insertCommand.Parameters.AddWithValue("@cod_item", codigoInserido);
                                    insertCommand.Parameters.AddWithValue("@nome", iName);
                                    insertCommand.Parameters.AddWithValue("@arquivo", iName);
                                    insertCommand.Parameters.AddWithValue("@tabela", "tb_produtos");

                                    insertCommand.ExecuteNonQuery();
                                }
                            } catch (Exception ex) {
                                Console.WriteLine("Erro: " + ex.Message);
                            }
                        }
                    }
                }
            } catch (Exception ex) {
                Console.WriteLine(ex.StackTrace);
            }
        }
 public bool AlterarDisponibilidade(Disponibilidade d)
 {
     ctx.Entry(d).State = EntityState.Modified;
     ctx.SaveChanges();
     return(true);
 }
 public void RemoverDisponbilidade(Disponibilidade d)
 {
     ctx.Disponibilidades.Remove(d);
     ctx.SaveChanges();
 }
        private void button1_Click(object sender, EventArgs e)
        {
            string conditions = "";

            bool where = false;

            string     filtroNome    = "";
            int        filtroDev     = -1;
            int        filtroDisp    = -1;
            int        filtroEstoque = -1;
            double     filtroPreco   = -1;
            List <int> checkedList   = new List <int>();

            if (txtNomeFiltro.Text.Length > 0)
            {
                filtroNome  = txtNomeFiltro.Text;
                conditions += " p.nome LIKE @nome AND ";
                where       = true;
            }

            if (cmbDevFiltro.SelectedItem != null)
            {
                var item = cmbDevFiltro.SelectedItem as Desenvolvedor;
                filtroDev   = item.codigo;
                conditions += " p.codigo_desenvolvedor = @cod_dev AND ";
                where       = true;
            }

            if (cmbDispFiltro.SelectedItem != null)
            {
                var item = cmbDispFiltro.SelectedItem as Disponibilidade;
                filtroDisp  = item.codigo;
                conditions += " p.codigo_disponibilidade = @cod_disp AND ";
                where       = true;
            }

            if (txtEstoqueFiltro.Text.Length > 0 && Convert.ToInt32(txtEstoqueFiltro.Text) >= 0)
            {
                filtroEstoque = Convert.ToInt32(txtEstoqueFiltro.Text);
                conditions   += " p.estoque = @estoque AND ";
                where         = true;
            }

            if (txtPrecoFiltro.Text.Length > 0 && Convert.ToDouble(txtPrecoFiltro.Text) >= 0)
            {
                filtroPreco = Convert.ToDouble(txtPrecoFiltro.Text);
                conditions += " p.preco = @preco AND ";
                where       = true;
            }

            if (checkListGenFiltro.CheckedItems.Count > 0)
            {
                CheckedItemCollection checkedItems = checkListGenFiltro.CheckedItems;
                foreach (Genero item in checkedItems)
                {
                    int codigo = item.codigo;
                    checkedList.Add(codigo);
                }
                conditions += " p.codigo IN (SELECT pg.codigo_produto FROM tb_produtos_generos AS pg WHERE pg.codigo_genero IN (@generos_list)) AND ";
            }

            conditions = conditions.Trim();
            // Remove último 'AND' da string
            string[] tmp = conditions.Split(' ');
            conditions = String.Join(" ", tmp.Take(tmp.Length - 1).ToArray());


            string sqlFiltro = "SELECT * FROM tb_produtos AS p ";

            if (where)
            {
                sqlFiltro += " WHERE ";
                sqlFiltro += conditions;
            }

            SqlCommand commandFiltro = new SqlCommand(sqlFiltro, conn);

            if (filtroNome != "")
            {
                commandFiltro.Parameters.AddWithValue("@nome", filtroNome + "%");
            }
            if (filtroDev != -1)
            {
                commandFiltro.Parameters.AddWithValue("@cod_dev", filtroDev);
            }
            if (filtroDisp != -1)
            {
                commandFiltro.Parameters.AddWithValue("@cod_disp", filtroDisp);
            }
            if (filtroEstoque != -1)
            {
                commandFiltro.Parameters.AddWithValue("@estoque", filtroEstoque);
            }
            if (filtroPreco != -1)
            {
                commandFiltro.Parameters.AddWithValue("@preco", filtroPreco);
            }
            if (checkedList.Count > 0)
            {
                commandFiltro.Parameters.AddWithValue("@generos_list", String.Join(", ", checkedList.ToArray()));
            }

            try {
                SqlDataReader filtroReader = commandFiltro.ExecuteReader();

                if (filtroReader.HasRows)
                {
                    listProdutos.Items.Clear();

                    while (filtroReader.Read())
                    {
                        string codigo  = filtroReader.GetInt32(0).ToString();
                        string nome    = filtroReader.GetString(3);
                        string dev     = Desenvolvedor.getNameById(filtroReader.GetInt32(1), conn);
                        string disp    = Disponibilidade.getNameById(filtroReader.GetInt32(2), conn);
                        string estoque = filtroReader.GetInt32(4).ToString();
                        string preco   = "R$ " + filtroReader.GetDecimal(5).ToString("#.##");

                        string[]     row  = { codigo, nome, dev, disp, estoque, preco };
                        ListViewItem item = new ListViewItem(row);
                        listProdutos.Items.Add(item);
                    }
                }
                else
                {
                    listProdutos.Items.Clear();
                }
            } catch (SqlException ex) {
                Console.WriteLine(ex.StackTrace);
            }
        }
Exemple #30
0
        private void saveEdit_Click(object sender, EventArgs e)
        {
            try {
                string          nome        = txtNome.Text;
                Desenvolvedor   dev_item    = cmbDesenvolvedor.SelectedItem as Desenvolvedor;
                int             codigo_dev  = dev_item.codigo;
                Disponibilidade disp_item   = cmbDisponibilidade.SelectedItem as Disponibilidade;
                int             codigo_disp = disp_item.codigo;
                int             estoque     = Convert.ToInt32(mskEstoque.Text);
                double          preco       = Convert.ToDouble(txtPreco.Text);
                string          descricao   = txtDescricao.Text;

                string     updateProduto  = "UPDATE tb_produtos SET codigo_desenvolvedor = @cod_dev, codigo_disponibilidade = @cod_disp, nome = @nome, estoque = @estoque, preco = @preco, descricao = @descricao WHERE codigo = @codigo";
                SqlCommand commandProduto = new SqlCommand(updateProduto, conn);
                commandProduto.Parameters.AddWithValue("@cod_dev", codigo_dev);
                commandProduto.Parameters.AddWithValue("@cod_disp", codigo_disp);
                commandProduto.Parameters.AddWithValue("@nome", nome);
                commandProduto.Parameters.AddWithValue("@estoque", estoque);
                commandProduto.Parameters.AddWithValue("@preco", preco);
                commandProduto.Parameters.AddWithValue("@descricao", descricao);
                commandProduto.Parameters.AddWithValue("@codigo", codigo);


                // Verifica se a imagem foi alterada e seta uma nova
                if (loadNewImage && globalImageName.Length > 0)
                {
                    // limpa imagens da pasta
                    string        path         = @".\tb_produtos";
                    string        product_path = path + "/" + codigo + "/";
                    string        image_link   = "";
                    DirectoryInfo di           = new DirectoryInfo(product_path);

                    foreach (FileInfo file in di.GetFiles())
                    {
                        try {
                            file.Delete();
                        } catch (Exception ex) {
                            Console.WriteLine("Image delete throw: " + ex.Message);
                        }
                    }

                    string iName    = openImageDialog.SafeFileName;
                    string filepath = openImageDialog.FileName;

                    File.Copy(filepath, product_path + iName);


                    // Salvar imagem no banco
                    string     sqlImagem  = "SELECT * FROM tb_arquivos WHERE codigo_item = @cod_item AND tabela = 'tb_produtos'";
                    SqlCommand commImagem = new SqlCommand(sqlImagem, conn);
                    commImagem.Parameters.AddWithValue("@cod_item", codigo);

                    var checkImageExists = commImagem.ExecuteScalar();

                    if (checkImageExists != null)
                    {
                        int codigoArquivo = Convert.ToInt32(checkImageExists);

                        string     sqlUptArquivo = "UPDATE tb_arquivos SET arquivo = @arquivo, nome = @nome WHERE codigo_item = @codigo";
                        SqlCommand updateCommand = new SqlCommand(sqlUptArquivo, conn);
                        updateCommand.Parameters.AddWithValue("@arquivo", iName);
                        updateCommand.Parameters.AddWithValue("@nome", iName);
                        updateCommand.Parameters.AddWithValue("@codigo", codigo);

                        updateCommand.ExecuteNonQuery();
                    }
                    else
                    {
                        string     sqlIstArquivo = "INSERT INTO tb_arquivos (codigo_item, nome, arquivo, tabela) VALUES (@cod_item, @nome, @arquivo, @tabela)";
                        SqlCommand insertCommand = new SqlCommand(sqlIstArquivo, conn);
                        insertCommand.Parameters.AddWithValue("@cod_item", codigo);
                        insertCommand.Parameters.AddWithValue("@nome", iName);
                        insertCommand.Parameters.AddWithValue("@arquivo", iName);
                        insertCommand.Parameters.AddWithValue("@tabela", "tb_produtos");

                        insertCommand.ExecuteNonQuery();
                    }
                }

                // Limpa todos os gêreros para o produto e coloca os selecionados (gambiarra mode)
                try {
                    string     deleteGeneros = "DELETE FROM tb_produtos_generos WHERE codigo_produto = @codigo";
                    SqlCommand deleteCommand = new SqlCommand(deleteGeneros, conn);
                    deleteCommand.Parameters.AddWithValue("@codigo", codigo);
                    deleteCommand.ExecuteNonQuery();

                    foreach (Genero item in checkListGeneros.CheckedItems)
                    {
                        int codigoItem = item.codigo;

                        string     sqlGender    = "INSERT INTO tb_produtos_generos (codigo_produto, codigo_genero) VALUES (@cod_prod, @cod_gen)";
                        SqlCommand comNewGender = new SqlCommand(sqlGender, conn);
                        comNewGender.Parameters.AddWithValue("@cod_prod", codigo);
                        comNewGender.Parameters.AddWithValue("@cod_gen", codigoItem);

                        comNewGender.ExecuteNonQuery();
                    }
                } catch (Exception ex) {
                    Console.WriteLine(ex.Message);
                }


                commandProduto.ExecuteNonQuery();

                AllProducts allProducts = new AllProducts();
                allProducts.Focus();
                this.Close();
            } catch (Exception ex) {
                Console.WriteLine(ex.Message);
            }
        }