public List<Horario> Adicionar(Horario horario) { var listHorarios = new List<Horario>(); var horaBase = DateTime.ParseExact(horario.HoraInicial, "H:m", null).Hour; var horaLimite = DateTime.ParseExact(horario.HoraFinal, "H:m", null).Hour; var intervalo = horaLimite - horaBase; for (var i = 0; i < intervalo; i++) { var inicial = horaBase + i; var final = horaBase + i + 1; var horarioAdd = new Horario { Dia = horario.Dia, HoraInicial = inicial < 10 ? "0" + inicial + ":00" : inicial + ":00", HoraFinal = final < 10 ? "0" + final + ":00" : final + ":00" }; if (VerificaExistente(horarioAdd)) { listHorarios.Add(horarioAdd); continue; } VerificaOrdem(horarioAdd); _db.Horarios.Add(horarioAdd); listHorarios.Add(horarioAdd); } _db.SaveChanges(); return listHorarios; }
public bool Alterar(Horario horario) { VerificaOrdem(horario); _db.Entry(horario).State = EntityState.Modified; return _db.SaveChanges() > 0; }
public void VerificaOrdem(Horario horario) { switch (horario.Dia) { case "Segunda": horario.Ordem = 1; break; case "Terça": horario.Ordem = 2; break; case "Quarta": horario.Ordem = 3; break; case "Quinta": horario.Ordem = 4; break; case "Sexta": horario.Ordem = 5; break; } }
public bool VerificaExistente(Horario horario) { var horarioBanco = Get(x => x.Dia.Equals(horario.Dia) && x.HoraInicial.Equals(horario.HoraInicial) && x.HoraFinal.Equals(horario.HoraFinal)); var first = horarioBanco.FirstOrDefault(); if (first == null) return false; horario.Id = first.Id; return true; }
private void btnGravar_Click(object sender, EventArgs e) { horarioApp = new ServicoDeHorario(); objHorario = new Horario(); lbMensagem.Visible = false; bool result = true; objHorario.HoraInicial = dtpHoraInicial.Value.Hour.ToString().PadLeft(2, '0') + ":" + dtpHoraInicial.Value.Minute.ToString().PadLeft(2, '0'); objHorario.HoraFinal = dtpHoraFinal.Value.Hour.ToString().PadLeft(2, '0') + ":" + dtpHoraFinal.Value.Minute.ToString().PadLeft(2, '0'); objHorario.Dia = cbbDia.SelectedItem.ToString(); if (iCodigo == 0) { result = horarioApp.Adicionar(objHorario).Any(); } else { if (horarioApp.VerificaExistente(objHorario)) { result = false; } else { var horarioBanco = horarioApp.GetById(iCodigo); horarioBanco.HoraInicial = objHorario.HoraInicial; horarioBanco.HoraFinal = objHorario.HoraFinal; horarioBanco.Dia = objHorario.Dia; result = horarioApp.Alterar(horarioBanco); } } if (result) { EstadoInicial(); AlterarMsg("Gravado com sucesso!", false); } else AlterarMsg("Erro ao gravar. Verifique se o horário já não está cadastrado!", true); horarioApp.Dispose(); }
private void btnExcluir_Click(object sender, EventArgs e) { horarioApp = new ServicoDeHorario(); objHorario = new Horario(); lbMensagem.Visible = false; if (MessageBox.Show("Deseja excluir esse horario?", "Excluir", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { if (iCodigo > 0) { objHorario = horarioApp.GetById(iCodigo); if (horarioApp.Excluir(objHorario.Id)) { EstadoInicial(); AlterarMsg("Excluido com sucesso!", false); } else { AlterarMsg("Erro ao excluir os dados!", true); } } else AlterarMsg("Nenhum horario para excluir!", true); } horarioApp.Dispose(); }