Пример #1
0
        private bool ValidarComprobaciones(ConductorVehiculo conductorVehiculo)
        {
            try
            {
                bool esCorrecto;

                //Check num máximo de conductores habituales
                esCorrecto = ConductorVehiculoService.ComprobarMaxConductores(conductorVehiculo);
                if (!esCorrecto)
                {
                    return(false);
                }

                //Por problema al crear modelo, check si ya existe el conductor en ese vehículo
                esCorrecto = ConductorVehiculoService.ComprobarDuplicidad(conductorVehiculo);
                if (!esCorrecto)
                {
                    return(false);
                }

                return(true);
            }
            catch
            {
                return(false);
            }
        }
Пример #2
0
        public void CreateHabitual(ConductorVehiculo habitual)
        {
            if (habitual == null)
            {
                throw new ArgumentNullException(nameof(habitual));
            }

            _ctx.ConductorVehiculos.Add(habitual);
        }
Пример #3
0
        static public bool ComprobarMaxConductores(ConductorVehiculo conductorVehiculo)
        {
            try
            {
                int conductores = db.ConductorVehiculo
                                  .Where(x => x.dni == conductorVehiculo.dni)
                                  .ToList().Count;

                return(conductores < 5);
            }
            catch
            {
                return(false);
            }
        }
Пример #4
0
        static public bool ComprobarDuplicidad(ConductorVehiculo conductorVehiculo)
        {
            try
            {
                int registro = db.ConductorVehiculo
                               .Where(x => x.dni == conductorVehiculo.dni)
                               .Where(x => x.matricula == conductorVehiculo.matricula)
                               .ToList().Count;

                return(registro < 1);
            }
            catch
            {
                return(false);
            }
        }
Пример #5
0
        static public string ObtenerConductorHabitual(string matricula)
        {
            List <ConductorVehiculo> lConductores = db.ConductorVehiculo
                                                    .Where(x => x.matricula == matricula)
                                                    .ToList();

            if (lConductores.Count == 1)
            {
                ConductorVehiculo oConductorHabitual = lConductores.ElementAt(0);
                return(oConductorHabitual.dni);
            }
            else
            {
                return(null);
            }
        }
Пример #6
0
        public IHttpActionResult PostConductorVehiculo(ConductorVehiculo conductorVehiculo)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!ValidarComprobaciones(conductorVehiculo))
            {
                return(BadRequest(ModelState));
            }

            db.ConductorVehiculo.Add(conductorVehiculo);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = conductorVehiculo.id }, conductorVehiculo));
        }
Пример #7
0
        public ActionResult <HabitualDTO> CreateHabitual(ConductorVehiculo habitual)
        {
            var conductor           = _conductorRepo.GetConductorById(habitual.Dni);
            var vehiculo            = _vehiculoRepo.GetVehiculoById(habitual.Matricula);
            var habitualesConductor = _repo.GetHabitualesByDni(habitual.Dni);
            var habituales          = _repo.GetHabitualByDniAndMatricula(habitual.Dni, habitual.Matricula);

            if (habitualesConductor.Count() >= 10 || conductor == null || vehiculo == null || habituales != null)
            {
                return(BadRequest());
            }
            _repo.CreateHabitual(habitual);
            _repo.SaveChanges();

            var habitualDTO = _mapper.Map <HabitualDTO>(habitual);

            return(CreatedAtRoute(nameof(GetHabitualesByDniAndMatricula), new { dni = habitualDTO.Dni, matricula = habitualDTO.Matricula }, habitualDTO));
        }