コード例 #1
0
        public IEnumerable <Inscripcion> GetInscripcion([FromUri] int idEvento)
        {
            //if (estado == null) estado = "Nuevo";
            //return null;

            return(ControlInscripcion.devolverInstacia().devolverInscripcionEvento(idEvento));
        }
コード例 #2
0
        //id es iddetallevento
        public IEnumerable <AsistenciaDetalleEvento> Get([FromUri] int idEvento, [FromUri] int id)
        {
            //voy a tener todos los socios inscriptos
            List <Inscripcion>             listaInscripciones = ControlInscripcion.devolverInstacia().devolverInscripcionEvento(idEvento);
            List <Asistencia>              listaAsistencias   = ControlAsistencia.devolverInstacia().devolverAsistenciaDetalleEvento(id);
            List <AsistenciaDetalleEvento> listaAux           = new List <AsistenciaDetalleEvento>();

            foreach (var inscripcion in listaInscripciones)
            {
                AsistenciaDetalleEvento asistenciaDetalle = new AsistenciaDetalleEvento();
                asistenciaDetalle.socio = inscripcion.socio;
                var bandera = false;
                foreach (var asistencia in listaAsistencias)
                {
                    if (inscripcion.socio.id == asistencia.idSocio)
                    {
                        bandera = true;
                        break;
                    }
                }

                if (bandera)
                {
                    asistenciaDetalle.asistio = true;
                }
                else
                {
                    asistenciaDetalle.asistio = false;
                }
                listaAux.Add(asistenciaDetalle);
            }


            return(listaAux);
        }
コード例 #3
0
        // POST: api/cliente
        public IHttpActionResult Post([FromBody] Pago _pago)
        {
            try
            {
                Pago pago = ControlPagoCuota.devolverInstacia().devolverUltimo();
                _pago.fechaCobro = DateTime.Now;
                _pago.nroRecibo  = pago.id + 10000;
                // _pago.idInscripcion
                ControlPagoCuota.devolverInstacia().grabar(_pago);
                Inscripcion inscripto = ControlInscripcion.devolverInstacia().devolver(_pago.idInscripcion);

                //Metodo para determinar si ha pagado todas las cuotas
                Boolean banderaPagados = true;
                foreach (var itempago in inscripto.listaPagos)
                {
                    if (!itempago.estaPagado)
                    {
                        banderaPagados = false;
                        break;
                    }
                }

                if (banderaPagados)
                {
                    inscripto.estado = "PAGADO";
                    ControlInscripcion.devolverInstacia().update(inscripto);

                    //si ya ha pagado el user voy a ver si todos los users pagaron y pongo el estado del evento PAGADO
                    List <Inscripcion> listaInscriptos       = ControlInscripcion.devolverInstacia().devolverInscripcionEvento(inscripto.idEvento);
                    Boolean            banderaEventosPagados = true;
                    foreach (Inscripcion _inscripto in listaInscriptos)
                    {
                        if (_inscripto.estado == "ADEUDADO")
                        {
                            banderaEventosPagados = false;
                            break;
                        }
                    }

                    if (banderaEventosPagados)
                    {
                        Evento evento = ControlEvento.devolverInstancia().devolver(inscripto.idEvento);
                        evento.estadoDeudores = "PAGO";
                        ControlEvento.devolverInstancia().actualizar(evento);
                    }
                }



                return(Ok(_pago));
            }
            catch (UsuarioException ex)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.BadRequest, ex.errores));
            }
        }
コード例 #4
0
        // DELETE: api/ApiCliente/5
        public void Delete(int id)
        {
            Inscripcion inscripcion = ControlInscripcion.devolverInstacia().devolver(id);

            inscripcion.fechaBaja = DateTime.Now;
            //foreach (var pago in inscripcion.listaPagos)
            //{
            //    ControlPagoCuota.devolverInstacia().eliminar(pago.id);
            //}
            ControlInscripcion.devolverInstacia().eliminar(inscripcion);
        }
コード例 #5
0
 // POST: api/cliente
 public IHttpActionResult Post([FromBody] Inscripcion value)
 {
     try
     {
         ControlInscripcion.devolverInstacia().grabar(value);
         return(Ok(value));
     }
     catch (UsuarioException ex)
     {
         throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.BadRequest, ex.errores));
     }
 }
コード例 #6
0
        public Dictionary <string, int> GetAsistenciaXSocio([FromUri] int idEvento)
        {
            List <Inscripcion>          listaInscripciones = ControlInscripcion.devolverInstacia().devolverInscripcionEvento(idEvento);
            IEnumerable <DetalleEvento> detalleEvento      = ControlDetalleEvento.devolverInstancia().devolverTodos(idEvento);
            Dictionary <string, int>    dict = new Dictionary <string, int>();

            foreach (var item in listaInscripciones)
            {
                dict.Add(item.socio.nombre + " " + item.socio.apellido, 0);
            }

            int contador = 0;

            foreach (var item in detalleEvento)
            {
                if (item.asistencia)
                {
                    contador++;
                    IEnumerable <AsistenciaDetalleEvento> lista = Get(idEvento, item.id);

                    foreach (var asistenciaDetalle in lista)
                    {
                        if (asistenciaDetalle.asistio)
                        {
                            int valor = 0;
                            if (dict.TryGetValue(asistenciaDetalle.socio.nombre + " " + asistenciaDetalle.socio.apellido, out valor))
                            {
                                valor++;

                                dict[asistenciaDetalle.socio.nombre + " " + asistenciaDetalle.socio.apellido] = valor;
                            }
                        }
                    }
                }
            }
            //for (int i = 0; i < dict.Count; i++)

            //{

            //    dict.[i] ;

            //}

            foreach (string item in dict.Keys.ToList())
            {
                var roundedA = (Math.Round((double)((double)dict[item] / (double)contador), 1)) * 100;
                dict[item] = (int)(roundedA);
            }


            return(dict);
        }
コード例 #7
0
        public IEnumerable <Calendario> Get([FromUri] DateTime fechaDesde,
                                            [FromUri] DateTime fechaHasta,
                                            [FromUri] int idEspacio)
        {
            var usuarioActual = ControlUsuario.devolverInstancia().devolverPorUsuario(User.Identity.Name);

            IEnumerable <Calendario> detalle = ControlDetalleEvento.devolverInstancia().devolverTodosCalendario(fechaDesde, fechaHasta, idEspacio);

            if (usuarioActual.rol == "SOCIO")
            {
                IEnumerable <Inscripcion> inscripciones = ControlInscripcion.devolverInstacia().
                                                          devolverInscripcionXSocio(usuarioActual.idSocio.Value);

                detalle = detalle.Where(x => inscripciones.Select(y => y.idEvento).Contains(x.idEvento)).ToList();
            }
            return(detalle);
        }
コード例 #8
0
        // POST: api/cliente
        public IHttpActionResult Post([FromBody] RatingEvento value)
        {
            try
            {
                Inscripcion inscripcion = ControlInscripcion.devolverInstacia().devolverXsocioXevento(value.idEvento, value.idSocio);

                ControlRating.devolverInstacia().grabar(value);
                inscripcion.estadoEncuesta = true;
                ControlInscripcion.devolverInstacia().update(inscripcion);

                return(Ok(value));
            }
            catch (Exception ex)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.BadRequest, ex.Data));
            }
        }
コード例 #9
0
        //public IEnumerable<Evento> Get([FromUri]int idEvento)
        //{

        //    if (search == null) search = "";

        //    return ControlEvento.devolverInstancia().devolverTodos(search);
        //}


        public List <DeudaCuota> Get([FromUri] int idEvento)
        {
            Evento            evento        = ControlEvento.devolverInstancia().devolver(idEvento);
            List <DeudaCuota> listaDeudores = new List <DeudaCuota>();

            //Genero el nombre de la cuota con los deudores
            foreach (var _cuota in evento.listaCuotas)
            {
                DeudaCuota cuota = new DeudaCuota();
                cuota.nombreCuota = _cuota.nombre + " - vto. " + _cuota.fechaVencimiento.ToString("dd-MM-yyyy");
                cuota.idCuota     = _cuota.id;

                cuota.listaSocios = new List <Socio>();
                listaDeudores.Add(cuota);
            }
            foreach (var inscripcion in evento.listaInscripciones)
            {
                Inscripcion _inscripcion = ControlInscripcion.devolverInstacia().devolver(inscripcion.id);

                if (_inscripcion != null)
                {
                    foreach (var pago in _inscripcion.listaPagos)
                    {
                        if (!pago.estaPagado)
                        {
                            foreach (var deuda in listaDeudores)
                            {
                                if (pago.idCuota == deuda.idCuota)
                                {
                                    deuda.listaSocios.Add(_inscripcion.socio);
                                    break;
                                }
                            }
                        }
                    }
                }
            }

            return(listaDeudores);
        }
コード例 #10
0
        // POST: api/cliente
        public IHttpActionResult Post([FromBody] Pago _pago)
        {
            try
            {
                Pago pago = ControlPagoCuota.devolverInstacia().devolverUltimo();
                _pago.fechaCobro = DateTime.Now;
                _pago.nroRecibo  = pago.id + 10000;
                // _pago.idInscripcion
                ControlPagoCuota.devolverInstacia().grabar(_pago);
                Inscripcion inscripto = ControlInscripcion.devolverInstacia().devolver(_pago.idInscripcion);

                //Metodo para determinar si ha pagado todas las cuotas
                Boolean banderaPagados = true;
                foreach (var itempago in inscripto.listaPagos)
                {
                    if (!itempago.estaPagado)
                    {
                        banderaPagados = false;
                        break;
                    }
                }

                if (banderaPagados)
                {
                    inscripto.estado = "PAGADO";
                    ControlInscripcion.devolverInstacia().update(inscripto);
                }


                return(Ok(_pago));
            }
            catch (UsuarioException ex)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.BadRequest, ex.errores));
            }
        }
コード例 #11
0
 // PUT: api/cliente/5
 public void Put(int id, [FromBody] Inscripcion value)
 {
     ControlInscripcion.devolverInstacia().grabar(value);
 }
コード例 #12
0
 // GET: api/cliente/5
 public Inscripcion Get(int id)
 {
     return(ControlInscripcion.devolverInstacia().devolver(id));
 }
コード例 #13
0
 // GET: api/cliente
 public IEnumerable <Inscripcion> Get([FromUri] int?idEvento = 0, [FromUri] int?idSocio = 0)
 {
     return(ControlInscripcion.devolverInstacia().devolverTodos(idEvento, idSocio));
 }
コード例 #14
0
 // DELETE: api/ApiCliente/5
 public void Delete(int id)
 {
     ControlInscripcion.devolverInstacia().eliminar(id);
 }