コード例 #1
0
        public ActionResult ParkingExcel(int Id)
        {
            ViewBag.ActiveMenu = "admin";
            var model = new ParkingModel().GetParkingData(Id);

            return(View("..\\Parking\\ParkingExcel", model));
        }
コード例 #2
0
        public Task <int> AddParking(ParkingModel vehicle)
        {
            userContext.ParkingSpace.Add(vehicle);
            var result = userContext.SaveChangesAsync();

            return(result);
        }
コード例 #3
0
        //When user clocks the get data button
        private void SetParkingList()
        {
            WebClient myWeb = new WebClient();

            myList = new List <ParkingModel>();

            ParkingModel myPark1 = new ParkingModel("Fake Street", 0.0005, 0.0234234234);
            ParkingModel myPark2 = new ParkingModel("Unreal Grove", 0.045, 0.0234234234);
            ParkingModel myPark3 = new ParkingModel("Park Road", 0.065655, 0.02342334234);

            int i = 0;
            int x = 0;

            while (i != 100)
            {
                //myList.Add(myPark1);
                //myList.Add(myPark2);
                //myList.Add(myPark3);
                i++;
            }

            listBox1.ItemsSource = myList;
            //x++;


            wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadedCompleteEventHandler);
            wc.DownloadStringAsync(new Uri("http://api.parkshark.nl/psapi/api.jsp?action=find_nearest&lat=52.377&lon=4.9104&rate=3.0)"));
        }
コード例 #4
0
 public ParkingInfoViewModel(ParkingModel parking)
 {
     this.Parking  = parking;
     this.RentDate = DateTime.Now;
     this.RentFrom = DateTime.Now.TimeOfDay;
     this.RentTo   = DateTime.Now.TimeOfDay;
 }
コード例 #5
0
        public IActionResult Park([FromBody] ParkingModel parkingDetails)
        {
            try
            {
                DeleteCacheData();

                if (parkingDetails.VehicalOwnerName == null || parkingDetails.VehicalNumber == null || parkingDetails.VehicalOwnerEmail == null ||
                    parkingDetails.Brand == null || parkingDetails.Color == null || parkingDetails.DriverName == null)
                {
                    throw new Exception(ParkingLotExceptions.ExceptionType.NULL_EXCEPTION.ToString());
                }

                if (parkingDetails.VehicalOwnerName == "" || parkingDetails.VehicalNumber == "" || parkingDetails.VehicalOwnerEmail == "" ||
                    parkingDetails.Brand == "" || parkingDetails.Color == "" || parkingDetails.DriverName == "")
                {
                    throw new Exception(ParkingLotExceptions.ExceptionType.EMPTY_EXCEPTION.ToString());
                }

                RParkingModel parkResponse = parkingLotBL.Park(parkingDetails);

                if (parkResponse != null)
                {
                    //Message For MSMQ.
                    string message = "\n Hello " + Convert.ToString(parkResponse.VehicalOwnerName) +
                                     "\n Your " + " Vehicle Park Succesfully" +
                                     "\n Driver Name :" + Convert.ToString(parkResponse.DriverName) +
                                     "\n Email :" + Convert.ToString(parkResponse.VehicalOwnerEmail) +
                                     "\n Vehicle Number: " + Convert.ToString(parkResponse.VehicalNumber) +
                                     "\n Vehicle Brand :  " + Convert.ToString(parkResponse.Brand) +
                                     "\n Vehicle Color : " + Convert.ToString(parkResponse.Color) +
                                     "\n Parking Slot : " + Convert.ToString(parkResponse.ParkingSlot) +
                                     "\n Parking Date : " + Convert.ToString(parkResponse.ParkingDate) +
                                     "\n Handicapped : " + Convert.ToString(parkResponse.IsHandicap) + "\n";

                    string status = "parked";
                    senderObject.Send(message, status);

                    bool Success = true;
                    var  Message = "Vehical Parked";
                    return(Ok(new { Success, Message, Data = parkResponse }));
                }
                else if (parkResponse == null)
                {
                    bool Success = false;
                    var  Message = "Vehical Is Already Parked";
                    return(Conflict(new { Success, Message }));
                }
                else
                {
                    bool Success = false;
                    var  Message = "Lot Is Full";
                    return(NotFound(new { Success, Message }));
                }
            }
            catch (Exception exception)
            {
                return(BadRequest(new { Success = false, Message = exception.Message }));
            }
        }
コード例 #6
0
        // GET: Admin/Parking
        public ActionResult Index()
        {
            ViewBag.ActiveMenu = "admin";
            int id    = 0;
            var model = new ParkingModel().GetParkingData(id);

            return(View("..\\Parking\\Index", model));
        }
コード例 #7
0
        public Task <int> AddParking(ParkingModel vehicle)
        {
            //int slot = CheckLotAvailability();
            userContext.ParkingSpace.Add(vehicle);
            var result = userContext.SaveChangesAsync();

            vehicleCount++;
            return(result);
        }
コード例 #8
0
 /// <summary>
 /// Function For Parking Vehical.
 /// </summary>
 /// <param name="parkingDetails"></param>
 /// <returns></returns>
 public RParkingModel Park(ParkingModel parkingDetails)
 {
     try
     {
         return(this.parkingLotRL.Park(parkingDetails));
     }
     catch (Exception exception)
     {
         throw exception;
     }
 }
コード例 #9
0
        public async Task StartAsync(Guid userID, ParkingModel model)
        {
            var parkModel = await GetParkModel(userID, model);

            await IsParked(parkModel.CompanyID, parkModel.VehicleID, true);
            await HasExceededLimit(parkModel.CompanyID, parkModel.TypeID, parkModel.QtdCars, parkModel.QtdMotorcycles);

            await _parkingRepository.AddAsync(new Parking { ID = Guid.NewGuid(), CompanyID = parkModel.CompanyID, StartDate = DateTimeOffset.UtcNow, VehicleID = parkModel.VehicleID, TypeID = parkModel.TypeID });

            await _parkingRepository.SaveChangeAsync();
        }
コード例 #10
0
 public ActionResult SaveUpdateParking(ParkingModel model)
 {
     try
     {
         return(Json(new { models = new ParkingModel().SaveUpdateParking(model) }, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         return(Json(new { models = ex.Message }, JsonRequestBehavior.AllowGet));
     }
 }
コード例 #11
0
        public async Task <IActionResult> Parking_Vahical(ParkingModel parking)
        {
            var result = await this.ownerManager.AddParking(parking);

            if (result == 1)
            {
                return(this.Ok(parking));
            }

            return(this.BadRequest());
        }
コード例 #12
0
        public ParkingModel UnPark(int slotNumber)
        {
            ParkingModel parking = userContext.ParkingSpace.Find(slotNumber);

            if (parking != null)
            {
                userContext.ParkingSpace.Remove(parking);
                userContext.SaveChanges();
            }
            return(parking);
        }
コード例 #13
0
        public ParkingEditViewModel(ParkingModel parking)
        {
            _navigationService = NavigationService.GetInstance();
            _parkingEdited     = parking;
            // this.ConvertUmageUrlToImageSource(parking.ImageUrl);
            DataService = new DataService();
            GetParkingCategories();
            GetParkingTypes();

            GetColorParkingIcon();
        }
コード例 #14
0
        private async Task <ParkModel> GetParkModel(Guid userID, ParkingModel model)
        {
            var companyID = await ValidateAsync(userID, model);

            var company = await _companyRepository.FirstOrDefaultAsync(x => x.ID == companyID);

            var vehicle = await _vehicleRepository.FirstOrDefaultAsync(x => x.Plate.Equals(model.Plate));

            return(new ParkModel {
                CompanyID = companyID, VehicleID = vehicle.ID, QtdCars = company.QtdCars, QtdMotorcycles = company.QtdMotorcycles, TypeID = vehicle.TypeID
            });
        }
コード例 #15
0
        private RParkingModel DataCopy(RParkingModel usermodel, ParkingModel user)
        {
            usermodel.VehicalOwnerName  = user.VehicalOwnerName;
            usermodel.VehicalOwnerEmail = user.VehicalOwnerEmail;
            usermodel.VehicalNumber     = user.VehicalNumber;
            usermodel.Brand             = user.Brand;
            usermodel.Color             = user.Color;
            usermodel.DriverName        = user.DriverName;
            usermodel.IsHandicap        = user.IsHandicap;

            return(usermodel);
        }
コード例 #16
0
        public async Task EndAsync(Guid userID, ParkingModel model)
        {
            var parkModel = await GetParkModel(userID, model);

            await IsParked(parkModel.CompanyID, parkModel.VehicleID, false);

            var parked = await _parkingRepository.FirstOrDefaultAsync(x => x.VehicleID == parkModel.VehicleID && x.EndDate == null);

            parked.EndDate = DateTimeOffset.UtcNow;

            await _parkingRepository.SaveChangeAsync();
        }
コード例 #17
0
ファイル: Parking.cs プロジェクト: LarrySheen/WiredPlayers-RP
        private void PlayerParkVehicle(Client player, ParkingModel parking)
        {
            // Get vehicle data
            VehicleModel vehicleModel = new VehicleModel();
            {
                vehicleModel.rotation    = player.Vehicle.Rotation;
                vehicleModel.id          = player.Vehicle.GetData(EntityData.VEHICLE_ID);
                vehicleModel.model       = player.Vehicle.GetData(EntityData.VEHICLE_MODEL);
                vehicleModel.colorType   = player.Vehicle.GetData(EntityData.VEHICLE_COLOR_TYPE);
                vehicleModel.firstColor  = player.Vehicle.GetData(EntityData.VEHICLE_FIRST_COLOR);
                vehicleModel.secondColor = player.Vehicle.GetData(EntityData.VEHICLE_SECOND_COLOR);
                vehicleModel.pearlescent = player.Vehicle.GetData(EntityData.VEHICLE_PEARLESCENT_COLOR);
                vehicleModel.faction     = player.Vehicle.GetData(EntityData.VEHICLE_FACTION);
                vehicleModel.plate       = player.Vehicle.GetData(EntityData.VEHICLE_PLATE);
                vehicleModel.owner       = player.Vehicle.GetData(EntityData.VEHICLE_OWNER);
                vehicleModel.price       = player.Vehicle.GetData(EntityData.VEHICLE_PRICE);
                vehicleModel.gas         = player.Vehicle.GetData(EntityData.VEHICLE_GAS);
                vehicleModel.kms         = player.Vehicle.GetData(EntityData.VEHICLE_KMS);

                // Update parking values
                vehicleModel.position  = parking.position;
                vehicleModel.dimension = Convert.ToUInt32(parking.id);
                vehicleModel.parking   = parking.id;
                vehicleModel.parked    = 0;
            }

            // Link vehicle to the parking
            ParkedCarModel parkedCarModel = new ParkedCarModel();

            {
                parkedCarModel.vehicle   = vehicleModel;
                parkedCarModel.parkingId = parking.id;
            }

            // Add the vehicle to the parking
            parkedCars.Add(parkedCarModel);

            // Save the vehicle and delete it from the game
            Vehicle vehicle = player.Vehicle;

            player.WarpOutOfVehicle();
            vehicle.Delete();

            Task.Factory.StartNew(() =>
            {
                NAPI.Task.Run(() =>
                {
                    // Save the vehicle
                    Database.SaveVehicle(vehicleModel);
                });
            });
        }
コード例 #18
0
        public static int GetParkedCarAmount(ParkingModel parking)
        {
            int totalVehicles = 0;

            foreach (ParkedCarModel parkedCar in parkedCars)
            {
                if (parkedCar.parkingId == parking.id)
                {
                    totalVehicles++;
                }
            }
            return(totalVehicles);
        }
コード例 #19
0
        private void CheckWeekendRate(Parking parking, ParkingModel model)
        {
            if (model.CarEntryDateTime.DayOfWeek == DayOfWeek.Saturday || model.CarEntryDateTime.DayOfWeek == DayOfWeek.Sunday)
            {
                var weekendRate = GetParkingPrice(ParkingRate.WeekendRate);
                var price       = parking.TotalPrice;

                if (weekendRate < double.Parse(price.Replace('$', ' ')))
                {
                    parking.ParkingRateName = ParkingRate.WeekendRate.GetAttribute <ParkingRateInfoAttribute>().Name;
                    parking.TotalPrice      = GetParkingPrice(ParkingRate.WeekendRate).ToString("C", CultureInfo.CurrentCulture);
                }
            }
        }
コード例 #20
0
        public static ParkingModel GetParkingById(int parkingId)
        {
            ParkingModel parking = null;

            foreach (ParkingModel parkingModel in parkingList)
            {
                if (parkingModel.id == parkingId)
                {
                    parking = parkingModel;
                    break;
                }
            }
            return(parking);
        }
コード例 #21
0
        public static ParkingModel GetClosestParking(Client player, float distance = 1.5f)
        {
            ParkingModel parking = null;

            foreach (ParkingModel parkingModel in parkingList)
            {
                if (parkingModel.position.DistanceTo(player.Position) < distance)
                {
                    distance = parkingModel.position.DistanceTo(player.Position);
                    parking  = parkingModel;
                }
            }
            return(parking);
        }
コード例 #22
0
        private void CreatePin(Position position, ParkingModel parking)
        {
            var pin = new CustomPin
            {
                Id       = parking.Id,
                Parking  = parking,
                Type     = PinType.Place,
                Position = position,
                Label    = "custom pin",
                Address  = "custom detail info"
            };

            MyMap.Pins.Add(pin);
        }
コード例 #23
0
ファイル: Parking.cs プロジェクト: vormz/WiredPlayers-RP
        private void PlayerParkVehicle(Client player, ParkingModel parking)
        {
            NetHandle vehicle = NAPI.Player.GetPlayerVehicle(player);

            // Get vehicle's colors
            Color primaryColor   = NAPI.Vehicle.GetVehicleCustomPrimaryColor(vehicle);
            Color secondaryColor = NAPI.Vehicle.GetVehicleCustomSecondaryColor(vehicle);

            // Get vehicle data
            VehicleModel vehicleModel = new VehicleModel();

            vehicleModel.rotation    = NAPI.Entity.GetEntityRotation(vehicle);
            vehicleModel.id          = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_ID);
            vehicleModel.model       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_MODEL);
            vehicleModel.colorType   = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_COLOR_TYPE);
            vehicleModel.firstColor  = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_FIRST_COLOR);
            vehicleModel.secondColor = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_SECOND_COLOR);
            vehicleModel.pearlescent = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_PEARLESCENT_COLOR);
            vehicleModel.faction     = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_FACTION);
            vehicleModel.plate       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_PLATE);
            vehicleModel.owner       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_OWNER);
            vehicleModel.price       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_PRICE);
            vehicleModel.gas         = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_GAS);
            vehicleModel.kms         = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_KMS);

            // Update parking values
            vehicleModel.position  = parking.position;
            vehicleModel.dimension = Convert.ToUInt32(parking.id);
            vehicleModel.parking   = parking.id;
            vehicleModel.parked    = 0;

            // Link vehicle to the parking
            ParkedCarModel parkedCarModel = new ParkedCarModel();

            parkedCarModel.vehicle   = vehicleModel;
            parkedCarModel.parkingId = parking.id;
            parkedCars.Add(parkedCarModel);

            // Save the vehicle and delete it from the game
            NAPI.Player.WarpPlayerOutOfVehicle(player);
            NAPI.Entity.DeleteEntity(vehicle);

            Task.Factory.StartNew(() =>
            {
                // Save the vehicle
                Database.SaveVehicle(vehicleModel);
            });
        }
コード例 #24
0
 public IActionResult PolicemanVehicalPark([FromBody] ParkingModel park)
 {
     try
     {
         var result = this.policeParking.ParkingVehical(park);
         if (result != null && park.DriverTypeID == 3)
         {
             return(this.Ok(new { Status = true, Message = "Parking Succesfully", Data = result }));
         }
         return(this.BadRequest(new { Status = false, Message = "Error While Parking" }));
     }
     catch (Exception e)
     {
         return(this.NotFound(new { Status = false, Message = e.Message }));
     }
 }
コード例 #25
0
 public IActionResult SecurityVehicalPark([FromBody] ParkingModel park)
 {
     try
     {
         var result = this.securityParking.ParkingVehical(park);
         if (result != null && park.DriverTypeID == 4)
         {
             return(this.Ok(new { Status = true, Message = "Data Added Succesfully", Data = result }));
         }
         return(this.BadRequest(new { Status = false, Message = "Please Check Driver Type ID" }));
     }
     catch (Exception e)
     {
         return(this.NotFound(new { Status = false, Message = e.Message }));
     }
 }
コード例 #26
0
ファイル: Parking.cs プロジェクト: timnboys/WiredPlayers-RP
        private void PlayerParkVehicle(Client player, ParkingModel parking)
        {
            // Obtenemos el vehículo
            NetHandle vehicle = NAPI.Player.GetPlayerVehicle(player);

            // Obtenemos los colores del vehículo
            Color primaryColor   = NAPI.Vehicle.GetVehicleCustomPrimaryColor(vehicle);
            Color secondaryColor = NAPI.Vehicle.GetVehicleCustomSecondaryColor(vehicle);

            // Obtenemos los datos del vehículo
            VehicleModel vehicleModel = new VehicleModel();

            vehicleModel.rotation    = NAPI.Entity.GetEntityRotation(vehicle);
            vehicleModel.id          = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_ID);
            vehicleModel.model       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_MODEL);
            vehicleModel.colorType   = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_COLOR_TYPE);
            vehicleModel.firstColor  = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_FIRST_COLOR);
            vehicleModel.secondColor = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_SECOND_COLOR);
            vehicleModel.pearlescent = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_PEARLESCENT_COLOR);
            vehicleModel.faction     = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_FACTION);
            vehicleModel.plate       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_PLATE);
            vehicleModel.owner       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_OWNER);
            vehicleModel.price       = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_PRICE);
            vehicleModel.gas         = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_GAS);
            vehicleModel.kms         = NAPI.Data.GetEntityData(vehicle, EntityData.VEHICLE_KMS);

            // Actualizamos los valores del parking
            vehicleModel.position  = parking.position;
            vehicleModel.dimension = Convert.ToUInt32(parking.id);
            vehicleModel.parking   = parking.id;
            vehicleModel.parked    = 0;

            // Añadimos el vehículo al parking
            ParkedCarModel parkedCarModel = new ParkedCarModel();

            parkedCarModel.vehicle   = vehicleModel;
            parkedCarModel.parkingId = parking.id;
            parkedCars.Add(parkedCarModel);

            // Guardamos el vehículo
            Database.SaveVehicle(vehicleModel);

            // Eliminamos el vehículo
            NAPI.Player.WarpPlayerOutOfVehicle(player);
            NAPI.Entity.DeleteEntity(vehicle);
        }
コード例 #27
0
        public async Task <IActionResult> UpdateAsync([FromBody] ParkingModel model)
        {
            try
            {
                await _parkingService.EndAsync(Guid.Parse(User.Identity.Name), model);

                return(Ok());
            }
            catch (CustomExceptions ex)
            {
                return(BadRequest(ex.Message));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #28
0
        // GET: ParkedVehicles/Park/5
        public ActionResult Park(int?id)
        {
            if (id == null)
            {
                return(View());
            }
            else
            {
                ParkedVehicle  parkedVehicle = db.ParkedVehicles.Find(id);
                ParkingSpace[] parkingSpaces = db.ParkingSpaces.ToArray();
                ParkingModel   pm            = new ParkingModel();
                pm.ParkedVehicle = parkedVehicle;
                if (parkedVehicle.VehicleType.Id == 2)
                {
                    pm.AvailableParkingSpaces = new Functionalities.DoIt().GetAvailableMCParkingSpaces(parkingSpaces);
                }
                else
                {
                    pm.AvailableParkingSpaces = new Functionalities.DoIt().GetAvailableParkingSpaces(parkedVehicle.Size, parkingSpaces);
                }
                pm.ParkedVehicleId     = (int)id;
                ViewBag.ParkingSpaceId = new SelectList(pm.AvailableParkingSpaces, "Id", "Id");
                //ViewBag.ParkedVehicleId = new SelectList(, "Id", "RegNumber", id);

                if (parkingSpaces[0] != null)
                {
                    pm.ParkingSpaceId = parkingSpaces[0].Id;
                }

                if (parkedVehicle != null)
                {
                    if (pm.AvailableParkingSpaces.Count > 0)
                    {
                        return(View(pm));
                    }
                    else
                    {
                        return(RedirectToAction("ParkingFull", "Home"));
                    }
                }
            }
            return(View("Index"));
        }
コード例 #29
0
        private void CheckEarlyBird(Parking parking, ParkingModel model)
        {
            if (model.CarEntryDateTime.DayOfWeek != DayOfWeek.Saturday && model.CarEntryDateTime.DayOfWeek != DayOfWeek.Sunday)
            {
                var incomingStart  = new TimeSpan(6, 0, 0);
                var incomingEnd    = new TimeSpan(9, 0, 0);
                var outGoingStart  = new TimeSpan(15, 30, 0);
                var outGoingEnd    = new TimeSpan(23, 30, 0);
                var earlyBirdPrice = GetParkingPrice(ParkingRate.EarlyBirdRate);
                var price          = parking.TotalPrice;

                if (model.CarEntryDateTime.TimeOfDay > incomingStart && model.CarEntryDateTime.TimeOfDay < incomingEnd &&
                    model.CarExitDateTime.TimeOfDay > outGoingStart && model.CarExitDateTime.TimeOfDay < outGoingEnd &&
                    earlyBirdPrice < double.Parse(price.Replace('$', ' ')))
                {
                    parking.ParkingRateName = ParkingRate.EarlyBirdRate.GetAttribute <ParkingRateInfoAttribute>().Name;
                    parking.TotalPrice      = earlyBirdPrice.ToString("C", CultureInfo.CurrentCulture);
                }
            }
        }
コード例 #30
0
        public string UnParking(int slotNumber)
        {
            ParkingModel parking = userContext.ParkingSpace.Find(slotNumber);
            int          index   = slotNumber;

            try
            {
                if (parking == null)
                {
                    throw new ParkingLotException("This slot id is empty");
                }
                userContext.ParkingSpace.Remove(parking);
                userContext.SaveChanges();
                return(ParkingCharge(slotNumber));
            }
            catch (ParkingLotException e)
            {
                return(e.Message);
            }
        }