public ReservasBE CreaReserva(ReservasBE ObjReserva)
 {
     try
     {
         //validacion de fecha
         if (ObjReserva.D_FecRegistro < Convert.ToDateTime(DateTime.Now.ToShortDateString()))
         {
             throw new FaultException("La fecha no puede ser inferior a la fecha actual");
         }
         //validacion de fecha
         if (ObjReserva.N_IdHorarioIni > ObjReserva.N_IdHorarioFin)
         {
             throw new FaultException("La hora inicial no puede ser mayor que la hora final");
         }
         //validacion maximo tres horas
         if ((ObjReserva.N_IdHorarioFin - ObjReserva.N_IdHorarioIni + 1) > 3)
         {
             throw new FaultException("No se puede reservar mas  de tres horas");
         }
        //validacion maximo de reservas y hora no disponible
         string valor;
         valor = ObjReservaDAO.ValidaReserva(ObjReserva);
         if (valor == "PASO_MAXIMO")
         {
             throw new FaultException("No puede hacer mas de una reserva por el mismo espacio");
         }
         else if (valor == "HORA_NO_DISPONIBLE")
         {
             throw new FaultException("La reserva no se aplica para ese horario , ya que esta ocupado");
         }
         else
             return ObjReservaDAO.CrearReserva(ObjReserva);
     }
     catch (Exception ex)
     {
          throw new FaultException(ex.Message);
     }
 }
예제 #2
0
        public ReservasBE CrearReserva(ReservasBE ObjReserva)
        {
            try
            {
                objconeccion = new SqlConnection(CadenaConexionSQL);
                SqlCommand objcomand = new SqlCommand("INSERTAR_RESERVAS", objconeccion);
                objcomand.CommandType = CommandType.StoredProcedure;
                objcomand.Parameters.Add("@N_IdResidente", SqlDbType.Int);
                objcomand.Parameters["@N_IdResidente"].Value = ObjReserva.N_IdResidente;
                objcomand.Parameters.Add("@N_IdHorarioIni ", SqlDbType.Int);
                objcomand.Parameters["@N_IdHorarioIni "].Value = ObjReserva.N_IdHorarioIni;
                objcomand.Parameters.Add("@N_IdHorarioFin ", SqlDbType.Int);
                objcomand.Parameters["@N_IdHorarioFin "].Value = ObjReserva.N_IdHorarioFin;
                objcomand.Parameters.Add("@N_IdEspacioComun", SqlDbType.Int);
                objcomand.Parameters["@N_IdEspacioComun"].Value = ObjReserva.N_IdEspacioComun;
                objcomand.Parameters.Add("@D_FecRegistro", SqlDbType.Date);
                objcomand.Parameters["@D_FecRegistro"].Value = ObjReserva.D_FecRegistro;
                objcomand.Parameters.Add("@B_Estado", SqlDbType.Bit);
                objcomand.Parameters["@B_Estado"].Value = ObjReserva.B_Estado;
                objconeccion.Open();

                int id;
                id = Convert.ToInt32(objcomand.ExecuteScalar());

                objconeccion.Close();

                ObjReserva.N_IdReserva = id;
                return ObjReserva;
            }
            catch (Exception ex)
            {
                if (objconeccion.State == ConnectionState.Open)
                    objconeccion.Close();
                throw new FaultException(ex.Message);
            }
        }
예제 #3
0
        public string ValidaReserva(ReservasBE ObjReserva)
        {
            try
            {
                objconeccion = new SqlConnection(CadenaConexionSQL);
                SqlCommand objcomand = new SqlCommand("VALIDAR_RESERVAS", objconeccion);
                objcomand.CommandType = CommandType.StoredProcedure;
                objcomand.Parameters.Add("@N_IdResidente", SqlDbType.Int);
                objcomand.Parameters["@N_IdResidente"].Value = ObjReserva.N_IdResidente;
                objcomand.Parameters.Add("@N_IdHorarioIni ", SqlDbType.Int);
                objcomand.Parameters["@N_IdHorarioIni "].Value = ObjReserva.N_IdHorarioIni;
                objcomand.Parameters.Add("@N_IdHorarioFin ", SqlDbType.Int);
                objcomand.Parameters["@N_IdHorarioFin "].Value = ObjReserva.N_IdHorarioFin;
                objcomand.Parameters.Add("@N_IdEspacioComun", SqlDbType.Int);
                objcomand.Parameters["@N_IdEspacioComun"].Value = ObjReserva.N_IdEspacioComun;
                objcomand.Parameters.Add("@D_FecRegistro", SqlDbType.Date);
                objcomand.Parameters["@D_FecRegistro"].Value = ObjReserva.D_FecRegistro;
                objconeccion.Open();

                string valor;
                valor = Convert.ToString(objcomand.ExecuteScalar());

                objconeccion.Close();

                return valor;
            }
            catch (Exception ex)
            {
                if (objconeccion.State == ConnectionState.Open)
                    objconeccion.Close();
                throw new FaultException(ex.Message);
            }
        }