public existeCitaTerapiaProgramada ( System.DateTime fecha, System.TimeSpan horaInicio, System.TimeSpan horaFinal, String nombreTerapeuta ) : System.Boolean | ||
fecha | System.DateTime | |
horaInicio | System.TimeSpan | |
horaFinal | System.TimeSpan | |
nombreTerapeuta | String | |
return | System.Boolean |
public Boolean existeCitaTerapiaProgramada(DateTime fecha, TimeSpan horaInicio, TimeSpan horaFinal, String nombreTerapeuta)
{
Boolean existeCita;
try
{
Usuarios user = new Usuarios();
String userName = user.RetrieveUserName(nombreTerapeuta);
//Verificamos que la hora inicio no esta tomada
var query1 = from citas_t in entities.citas_terapia
where horaInicio>=citas_t.hora_inicio && horaInicio <= citas_t.hora_final && citas_t.fecha == fecha.Date
&& citas_t.user == userName
select citas_t;
//Verificamos que la hora final no esta tomada
var query2 = from citas_t in entities.citas_terapia
where horaFinal >= citas_t.hora_inicio && horaFinal <= citas_t.hora_final && citas_t.fecha == fecha.Date
&& citas_t.user == userName
select citas_t;
existeCita = query1.Any() || query2.Any();
return existeCita;
}
catch (Exception ex)
{
throw ex;
}
}
protected void btIngresar_Click(object sender, EventArgs e) { if (!validarHoras()) { return; } TimeSpan horaCitaInicio = new TimeSpan(timeSelectorHoraEmpieza.Hour, timeSelectorHoraEmpieza.Minute, 0); TimeSpan horaCitaFinaliza = new TimeSpan(timeSelectorHoraTermina.Hour, timeSelectorHoraTermina.Minute, 0); DateTime fechaCita = DateTime.Parse(txtfecha.Text); int prefijo = intIdCentro; try { BL.Citas cita = new BL.Citas(); if (cita.existeCitaTerapiaProgramada(fechaCita.Date,horaCitaInicio,horaCitaFinaliza,cmbEmpleados.Text) ) { Response.Write("<script>alert('El terapeuta ya tiene una cita en esta hora y fecha')</script>"); } else { cita.NuevaCitaTerapia(fechaCita.Date,cmbEmpleados.Text,intIdCentro,long.Parse(txtNumExpediente.Text),horaCitaInicio,horaCitaFinaliza); Response.Write("<script>alert('Se ha agregado la cita!')</script>"); } LimpiarControles(); } catch (Exception ex) { Session["Error_Msg"] = "Ha ocurrido un error al intentar agregar la cita, compruebe el nĂºmero de expediente"; Response.Redirect("~/Error.aspx", true); } }