示例#1
0
        public async Task <IActionResult> PutVehicleOffense(int id, VehicleOffense vehicleOffense)
        {
            if (id != vehicleOffense.Id)
            {
                return(BadRequest());
            }

            _context.Entry(vehicleOffense).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (Exception e)
            {
                if (!VehicleOffenseExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    _logger.LogError(e.ToString());

                    throw;
                }
            }

            return(NoContent());
        }
示例#2
0
        public int CheckMaintenance(List <Vehicle> vehicles)
        {
            //List<VehicleModel> orderedphones = db.Vehicle.ToList()
            //vehicles
            int count = 0;

            foreach (var v in vehicles)
            {
                if (v.MaintenanceDate == null)
                {
                    continue;
                }
                var date = v.MaintenanceDate.Value;
                var dbV  = db.Vehicles.Find(v.Id);
                if ((DateTime.Now - date).TotalDays > 365 * 2)
                {
                    if (!dbV.MaintenanceSuccess)
                    {
                        count++;
                    }
                    dbV.MaintenanceSuccess = true;
                }
                else
                {
                    dbV.MaintenanceSuccess = false;
                }
                db.Entry(dbV).State = EntityState.Modified;
                //db.Vehicle.Update(dbV);
            }

            //int i = db.SaveChanges();
            db.SaveChanges();
            return(count);
        }
示例#3
0
        public async Task <IActionResult> PutCategory(int id, Category category)
        {
            if (id != category.Id)
            {
                return(BadRequest());
            }

            _context.Entry(category).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (Exception e)
            {
                if (!CategoryExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    _logger.LogError(e.ToString());

                    throw;
                }
            }

            return(NoContent());
        }
示例#4
0
 public void Update(Vehicle Vehicle)
 {
     db.Entry(Vehicle).State = EntityState.Modified;
 }
示例#5
0
        public async Task <IActionResult> PutDriverLicense(int id, DriverLicense driverLicense)
        {
            if (id != driverLicense.Id)
            {
                return(BadRequest());
            }
            //_context.Update(driverLicense);
            //_context.SaveChanges();

            //_context.Attach(driverLicense);
            //_context.Entry(driverLicense).State = EntityState.Modified;
            //foreach (var item in driverLicense.Categories)
            //{
            //    _context.Entry(item).State = EntityState.Added;
            //}
            //driverLicense.Categories.ForEach(a => driverLicense.ActivitityTravels.Add(new ActivityTravel() { Activity = a, Travel = travel }));
            //_context.AttachRange(driverLicense.Categories);
            //_context.DriverLicenses.Update(driverLicense);
            //var newCategories = _context.Categories.Where(t => !driverLicense.Categories.Contains(t)).ToList();
            //foreach (var n in newCategories)
            //{
            //    driverLicense.Categories = newCategories;
            //}
            _context.Attach(driverLicense);

            var deleteList = _context.TakeStrokes.Where(t => !driverLicense.TakeStrokes.Contains(t) && t.DriverLicense != null).ToList();

            foreach (var d in deleteList)
            {
                _context.TakeStrokes.Where(s => s.Id == d.Id).First().DriverLicense = null;
            }

            var deleteListCategories = _context.Categories.Where(t => !driverLicense.Categories.Contains(t) && t.DriverLicenses.Count != 0).ToList();

            foreach (var d in deleteListCategories)
            {
                var foundLicense = _context.DriverLicenses.Where(s => s.Id == driverLicense.Id)
                                   .Include(s => s.Categories)
                                   .First();
                foundLicense.Categories.Remove(d);
                //_context.Categories.Where(s => s.Id == d.Id).First().DriverLicenses.ForEach(t=>{
                //    if (t.Id == driverLicense.Id) t.= null;
            }

            foreach (var item in driverLicense.Categories)
            {
                var cats = _context.DriverLicenses.Where(t => t.Id == id && !t.Categories.Contains(item)).ToList();
                if (cats.Count != 0)
                {
                    _context.Entry(item).State = EntityState.Added;
                }
            }
            _context.Update(driverLicense);
            try
            {
                _context.SaveChanges();
            }
            catch (Exception e)
            {
                if (!DriverLicenseExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    _logger.LogError(e.ToString());

                    throw;
                }
            }

            return(NoContent());
        }
示例#6
0
 public void Update(CarOwner CarOwner)
 {
     db.Entry(CarOwner).State = EntityState.Modified;
 }