Пример #1
0
        public static List <UserForMap> getUsersNearby(SqlConnection sqlConnection, UsersNearbyFilter usersFilter, int id)
        {
            sqlConnection.Close();

            SqlCommand cmd = new SqlCommand(USERS_PROCEDURE, sqlConnection);

            cmd.CommandType = System.Data.CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue(USERS_PROC_LAT, usersFilter.Latitude);
            cmd.Parameters.AddWithValue(USERS_PROC_LNG, usersFilter.Longitude);
            cmd.Parameters.AddWithValue(USERS_PROC_MAX_DISTANCE, usersFilter.MaxDistance);
            cmd.Parameters.AddWithValue(USERS_PROC_ID, id);
            sqlConnection.Open();

            List <UserForMap> users = new List <UserForMap>();

            using (SqlDataReader reader = cmd.ExecuteReader())
            {
                while (reader.Read())
                {
                    UserForMap user = new UserForMap();
                    user.Id       = reader.GetInt32(0);
                    user.UserName = reader.GetString(1);
                    user.Mail     = reader.GetString(3);
                    if (!reader.IsDBNull(4))
                    {
                        user.City = reader.GetString(4);
                    }
                    if (!reader.IsDBNull(5))
                    {
                        user.Latitude = (double)reader.GetDecimal(5);
                    }
                    if (!reader.IsDBNull(6))
                    {
                        user.Longitude = (double)reader.GetDecimal(6);
                    }
                    if (!reader.IsDBNull(7))
                    {
                        user.VehicleMake = reader.GetString(7);
                    }
                    if (!reader.IsDBNull(8))
                    {
                        user.VehicleModel = reader.GetString(8);
                    }
                    if (!reader.IsDBNull(9))
                    {
                        user.Birthdate = reader.GetDateTime(9).ToShortDateString();
                    }
                    if (!reader.IsDBNull(10))
                    {
                        user.Distance = Math.Round(reader.GetDouble(10), 3, MidpointRounding.AwayFromZero);
                    }

                    users.Add(user);
                }
            }
            sqlConnection.Close();

            return(users);
        }
Пример #2
0
        public object getUsersNearby(UsersNearbyFilter usersFilter)
        {
            int loggedUserId = runAuthenticate();

            if (loggedUserId > 0)
            {
                if (usersFilter != null)
                {
                    return(DBUtils.getUsersNearby(sqlConnection, usersFilter, loggedUserId));
                }
                else
                {
                    //GeoPoint userLocation = DBUtils.getUserLocation(sqlConnection, loggedUserId);
                    //return DBUtils.getUsersNearby(sqlConnection, userLocation, maxDistance, loggedUserId);
                    WebOperationContext.Current.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.BadRequest;
                    return(new Status(false, ""));
                }
            }
            else
            {
                return(getAuthorizationErrorStatus(true));
            }
        }
Пример #3
0
        public void POST_users_nearby()
        {
            string         url            = string.Format(API_URL, "/users/nearby");
            HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url);

            httpWebRequest.Method      = WebRequestMethods.Http.Post;
            httpWebRequest.Headers     = LoginHeaders;
            httpWebRequest.ContentType = "application/json; charset=utf-8";

            UsersNearbyFilter filter = new UsersNearbyFilter(50.041272, 21.999231, 40);

            string       postJson = objectToJsonNew <UsersNearbyFilter>(filter);
            StreamWriter writer   = new StreamWriter(httpWebRequest.GetRequestStream());

            writer.Write(postJson);
            writer.Close();

            HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();
            string          jsonString      = streamToString(httpWebResponse);

            object obj = jsonToObject <List <UserForMap> >(jsonString);

            Assert.IsInstanceOfType(obj, typeof(List <UserForMap>));
        }