コード例 #1
0
        protected async void SetLocation(Location location)
        {
            Latitude    = location.Latitude;
            Longitude   = location.Longitude;
            CurrentZone = await ZoneService.GetZoneByPoint(location);

            var parkingMachines = await ParkingMachineService.GetNearestParkingMachines(location);

            if (parkingMachines.Count > 1)
            {
                await JSRuntime.InvokeAsync <object>("mapSetParkingMachines", parkingMachines[0].Location, parkingMachines[1].Location);
            }
            StateHasChanged();
        }
コード例 #2
0
        protected async void SetLocation(Location location)
        {
            Console.WriteLine($"Check this position: {location.Latitude} {location.Longitude}");
            var areas = (await AreaService.GetAreasByPoint(location)).OrderByDescending(a => a.PriorityEnum);

            Console.WriteLine($"Got {areas.Count()} areas.");

            var area = areas.OrderByDescending(a => a.PriorityEnum).FirstOrDefault();

            IntersectingArea    = null;
            ParkingMachines     = null;
            VisitorRestrictions = null;

            if (area != null)
            {
                if (areas.Count(a => a.PriorityEnum == area.PriorityEnum) > 1)
                {
                    OverlappingAreas = true;
                }
                else
                {
                    IntersectingArea    = area;
                    VisitorRestrictions = await RestrictionService.GetActiveVisitorRestrictions(area.Restrictions.Where(r => r as VisitorRestriction != null).Cast <VisitorRestriction>().ToList());

                    // draw parking machines on the map
                    var parkingMachines = await ParkingMachineService.GetNearestParkingMachines(location);

                    ParkingMachines = parkingMachines;
                    await JSRuntime.InvokeAsync <object>("mapSetParkingMachines", parkingMachines[0].LocationObj, parkingMachines[1].LocationObj);
                }
            }

            Latitude  = location.Latitude;
            Longitude = location.Longitude;
            StateHasChanged();
        }