Example #1
0
        public MainPage()
        {
            GetGeo += MainPage_GetGeo;
            GetGeo?.Invoke(this, EventArgs.Empty);
            InitializeComponent();
            // var res = await GeoAsync();
            var map = new Xamarin.Forms.Maps.Map(MapSpan.FromCenterAndRadius(new Position(coordinate[0], coordinate[1]), Distance.FromMiles(1))); //можно задать местоположение человека, допилим потом

            Content = map;
            string jsonString = FileReader();
            var    data       = JsonConvert.DeserializeObject <Data>(jsonString);
            List <ConnectionWithDataBase> connection = data.Parse();
            double x                = 55.702845;
            double y                = 37.530651;
            string name             = "Moscow State University";
            int    numberOfBuidings = (int)data.count;

            map.IsShowingUser = true;
            foreach (ConnectionWithDataBase db in connection)
            {
                x    = db.x;
                y    = db.y;
                name = db.name;
                var pin = new Pin()
                {
                    Position = new Position(x, y),
                    Label    = name,
                };
                pins.Add(pin);
                pin.MarkerClicked += Pin_MarkerClicked;
                map.Pins.Add(pin);
            }
        }
        public GetUsersResorce GetWhereUserResourceOne(User u)
        {
            GetCompany cmp = new GetCompany()
            {
                Bs          = u.Company.Bs,
                Name        = u.Company.Name,
                CatchPhrase = u.Company.CatchPhrase
            };
            GetGeo ge = new GetGeo()
            {
                Lat = u.Address.Geo.Lat,
                Lng = u.Address.Geo.Lng,
            };
            GetAddress adrs = new GetAddress()
            {
                City    = u.Address.City,
                Street  = u.Address.Street,
                Suite   = u.Address.Suite,
                Zipcode = u.Address.Zipcode,
                getGeo  = ge,
            };
            GetUsersResorce userResource = new GetUsersResorce()
            {
                id       = u.Id,
                address  = adrs,
                company  = cmp,
                email    = u.Email,
                name     = u.Name,
                phone    = u.Phone,
                username = u.Username,
                website  = u.Website
            };

            return(userResource);
        }
        public List <GetUsersResorce> GetWhereUserResource(IEnumerable <User> userListResponse)
        {
            List <GetUsersResorce> resources = new List <GetUsersResorce>();

            foreach (var item in userListResponse)
            {
                GetCompany cmp = new GetCompany()
                {
                    Bs          = item.Company.Bs,
                    Name        = item.Company.Name,
                    CatchPhrase = item.Company.CatchPhrase
                };
                GetGeo ge = new GetGeo()
                {
                    Lat = item.Address.Geo.Lat,
                    Lng = item.Address.Geo.Lng,
                };
                GetAddress adrs = new GetAddress()
                {
                    City    = item.Address.City,
                    Street  = item.Address.Street,
                    Suite   = item.Address.Suite,
                    Zipcode = item.Address.Zipcode,
                    getGeo  = ge,
                };
                GetUsersResorce userResource = new GetUsersResorce()
                {
                    id       = item.Id,
                    address  = adrs,
                    company  = cmp,
                    email    = item.Email,
                    name     = item.Name,
                    phone    = item.Phone,
                    username = item.Username,
                    website  = item.Website
                };

                resources.Add(userResource);
            }

            return(resources);
        }