public void DeleteRestaurantType(long restaurantTypeId) { var restaurantType = _restaurantTypeService.Find(restaurantTypeId); if (restaurantType == null) { throw new NotFoundException(ErrorCodes.RestaurantTypeNotFound); } restaurantType.IsDeleted = true; foreach (var restaurant in restaurantType.Restaurants) { restaurant.IsDeleted = true; restaurant.RestaurantAdmin.IsDeleted = true; _restaurantService.Update(restaurant); var waiters = _restaurantWaiterService.GetAlRestaurantWaitersByRestaurantId(restaurant.RestaurantId); waiters.ForEach(x => { x.IsDeleted = true; _restaurantWaiterService.Update(x); }); var globalAdmin = _globalAdminService.Find(restaurant.AdminId); //var packages = _packageService.GetAllPackagesByAdminId(globalAdmin.UserId); //Parallel.ForEach(packages, (package) => //{ // UpdateSubscription(globalAdmin, package.PackageGuid, package.Waiters.Count(x => !x.IsDeleted)); //}); } _restaurantTypeService.Update(restaurantType); SaveChanges(); }
public void UpdateRestaurantWaiter(RestaurantWaiterDTO restaurantWaiterDto) { var restaurantWaiter = _restaurantWaiterService.Find(restaurantWaiterDto.UserId); if (restaurantWaiter == null) { throw new NotFoundException(ErrorCodes.UserNotFound); } ValidateRestaurantWaiter(restaurantWaiterDto, restaurantWaiter.RestaurantId); restaurantWaiter.Name = restaurantWaiterDto.Name; restaurantWaiter.UserName = restaurantWaiterDto.UserName; restaurantWaiter.Password = PasswordHelper.Encrypt(restaurantWaiterDto.Password); restaurantWaiter.BranchId = restaurantWaiterDto.BranchId; _restaurantWaiterService.Update(restaurantWaiter); SaveChanges(); }