Exemplo n.º 1
0
        /// <summary>
        /// Obtiene todas las reservaciones hechas por la aprobacion de una solicitud
        /// </summary>
        /// <returns>DataTable Object (start,end,name,id)</returns>
        private DataTable ObtenerAprobaciones()
        {
            cUDGDFAPROBACIONNegocios cAprobaciones = new cUDGDFAPROBACIONNegocios(0, "", 0, "");
            DataTable dtAprobaciones = cAprobaciones.Seleccionar_Todo_Detallado();
            DataTable toReturn = new DataTable();
            toReturn.Columns.Add("start", typeof(DateTime));
            toReturn.Columns.Add("end", typeof(DateTime));
            toReturn.Columns.Add("name", typeof(string));
            toReturn.Columns.Add("id", typeof(string));
            String sFechainicio, sFechafin, sHorainicio, sHorafin, sDescripcion;
            String sID;
            Boolean blunes, bmartes, bmiercoles, bjueves, bviernes, bsabado, bdomingo;

            foreach (DataRow drLocalRow in dtAprobaciones.Rows)
            {
                sFechainicio = drLocalRow[1].ToString();
                sFechafin = drLocalRow[2].ToString();
                sHorainicio = drLocalRow[3].ToString();
                sHorafin = drLocalRow[4].ToString();
                sDescripcion = "Reservacion de " + drLocalRow[5].ToString();
                sID = "Reservacion:" + int.Parse(drLocalRow[0].ToString());
                blunes = true;
                bmartes = true;
                bmiercoles = true;
                bjueves = true;
                bviernes = true;
                bsabado = true;
                bdomingo = true;
                toReturn.Merge(ObtenerFechas(sFechainicio, sFechafin, sHorainicio, sHorafin, sDescripcion, sID, blunes, bmartes, bmiercoles, bjueves, bviernes, bsabado, bdomingo));
            }

            return toReturn;
        }
Exemplo n.º 2
0
        /// <summary>
        /// Acepta una solicitud realizada por un usuario
        /// </summary>
        public int AceptarSolicitud()
        {
            int iResultado = 1000;
            cUDGDFSOLICITUDNegocios cSolicitud = new cUDGDFSOLICITUDNegocios(0, "", 0, "");
            cUDGDFAPROBACIONNegocios cAprobacion = new cUDGDFAPROBACIONNegocios(0, "", 0, "");
            cUDGDFRESERVACIONNegocios cReservacion = new cUDGDFRESERVACIONNegocios(0, "", 0, "");
            cUDGDFNTIFICACIONNegocios cNotificacion = new cUDGDFNTIFICACIONNegocios(0, "", 0, "");
            String sNotificacionMessage;
            
            DataRow drSolicitud = cSolicitud.BuscarConId(_id_Solicitud).Rows[0];
            
            cNotificacion.ID_NOTIFICACION = 1;
            try
            {
                sNotificacionMessage = cNotificacion.SeleccionarUno().Rows[0][1].ToString();
            }catch
            {
                sNotificacionMessage = "Su solicitud ha sido procesada. Para más informacion del resultado comuniquese con la unidad de deportes del Instituto Tecnológico de Costa Rica.";       
            }


            //DateTime p_fecinicio, DateTime p_fecfin, DateTime p_hrainicio, DateTime p_hrafin, int p_idInstalacion
            iResultado = cReservacion.ConsultarDisponibilidad((DateTime)drSolicitud[1], (DateTime)drSolicitud[2], DateTime.Parse(drSolicitud[4].ToString()), DateTime.Parse(drSolicitud[5].ToString()), int.Parse(drSolicitud[18].ToString()));
            
            if (iResultado == 1)
            {
                // Realiza la reservacion para la solicitud especificada
                cReservacion.FEC_FECHAFIN = (DateTime)drSolicitud[2];
                cReservacion.FEC_FECHAINICIO = (DateTime)drSolicitud[1];
                cReservacion.HRA_HORAINICIO = DateTime.Parse(drSolicitud[4].ToString());
                cReservacion.HRA_HORAFIN = DateTime.Parse(drSolicitud[5].ToString());
                cReservacion.Insertar();

                // Ingresa la solicitud como aceptada
                cAprobacion.FKY_RESEREVACION = cReservacion.ID_RESERVACION;
                cAprobacion.FKY_SOLICITUD = int.Parse(drSolicitud[0].ToString());
                cAprobacion.Insertar();

                // Actualiza la solicitud estableciendola como atendida
                cSolicitud.ActualizarAtendidoConID(int.Parse(drSolicitud[0].ToString()));

                // Envia un correo al usuario
                this.EnviarCorreo(drSolicitud[13].ToString(), drSolicitud[6].ToString(), sNotificacionMessage);

                return 1;
            }

            else
                return -1;
        }