Esempio n. 1
0
        public IHttpActionResult update([FromBody] Cancha cancha)
        {
            canchas    canchaDto   = new canchas();
            domicilios domicilio   = new domicilios();
            Boolean    transaccion = false;

            try
            {
                canchaDto.nombre        = cancha.nombre;
                canchaDto.capacidad     = cancha.capacidad;
                canchaDto.id_cancha     = cancha.id_cancha;
                domicilio.id_domicilio  = (int)cancha.domicilio.id_domicilio;
                domicilio.barrio        = cancha.domicilio.barrio;
                domicilio.calle         = cancha.domicilio.calle;
                domicilio.numeracion    = cancha.domicilio.numeracion;
                domicilio.observaciones = cancha.domicilio.observaciones;

                canchas canchaCheck = db.canchas.Where(x => x.nombre.ToUpper().Equals(canchaDto.nombre.ToUpper())).FirstOrDefault();

                if ((canchaCheck != null && canchaCheck.id_cancha == cancha.id_cancha) || canchaCheck == null)
                {
                    var result    = db.canchas.SingleOrDefault(b => b.id_cancha == canchaDto.id_cancha);
                    var resultDom = db.domicilios.SingleOrDefault(b => b.id_domicilio == domicilio.id_domicilio);
                    if (resultDom != null)
                    {
                        resultDom.id_domicilio  = domicilio.id_domicilio;
                        resultDom.calle         = domicilio.calle;
                        resultDom.numeracion    = domicilio.numeracion;
                        resultDom.observaciones = domicilio.observaciones;
                        resultDom.barrio        = domicilio.barrio;
                        db.SaveChanges();
                        transaccion = true;
                    }

                    if (transaccion && result != null)
                    {
                        result.id_cancha = canchaDto.id_cancha;
                        result.nombre    = canchaDto.nombre;
                        result.capacidad = canchaDto.capacidad;
                        result.id_club   = 1;
                        db.SaveChanges();
                        return(Ok());
                    }
                }
                return(BadRequest());
            }
            catch (Exception e)
            {
                return(BadRequest(e.ToString()));
            }
        }
Esempio n. 2
0
        public IHttpActionResult registrar([FromBody] Cancha cancha)
        {
            canchas canchaDto = new canchas();

            try
            {
                canchaDto.nombre    = cancha.nombre;
                canchaDto.capacidad = cancha.capacidad;
                canchaDto.id_club   = cancha.club.id_club;

                int canchaCheck = db.canchas.Where(x => x.nombre.ToUpper().Equals(canchaDto.nombre.ToUpper())).Count();

                if (canchaCheck == 0)
                {
                    // Si no existe el nombre de la cancha, doy de alta el domicilio que trae antes de dar de alta la cancha
                    // El club no es necesario porque va a ser siempre 1, de Golden Club.
                    domicilios domicilioDto = new domicilios();
                    domicilioDto.barrio        = cancha.domicilio.barrio;
                    domicilioDto.observaciones = cancha.domicilio.observaciones;
                    domicilioDto.calle         = cancha.domicilio.calle;
                    domicilioDto.numeracion    = cancha.domicilio.numeracion;

                    db.domicilios.Add(domicilioDto);
                    db.SaveChanges();

                    int id_domicilio = domicilioDto.id_domicilio;
                    canchaDto.id_domicilio = id_domicilio;

                    db.canchas.Add(canchaDto);
                    db.SaveChanges();
                    return(Ok(true));
                }
                return(BadRequest());
            }
            catch (Exception e)
            {
                return(BadRequest(e.ToString()));
            }
        }