Example #1
0
        public IHttpActionResult GetAllUserWithCountryIcon(RequestModel model)
        {
            IList <UserWithCountryIconInfo> obj = new List <UserWithCountryIconInfo>();

            try
            {
                if (string.IsNullOrEmpty(model.Id))
                {
                    return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "User Id is required.")));
                }
                long userID   = Convert.ToInt64(model.Id);
                var  userList = _UserService.GetAllUsersWithCountryFlag();
                foreach (var item in userList)
                {
                    bool isAdd     = false;
                    var  blockList = _blockService.GetBlockedUserListByUserId(userID).ToList();
                    if (blockList.Count > 0)
                    {
                        var blockDetails = blockList.Where(a => a.BlockedUserId == item.User_Id).FirstOrDefault();
                        if (blockDetails == null)
                        {
                            isAdd = true;
                        }
                    }
                    else
                    {
                        blockList = _blockService.GetBlockedUserListByUserId(item.User_Id).ToList();
                        if (blockList.Count > 0)
                        {
                            var blockDetails = blockList.Where(a => a.BlockedUserId == userID).FirstOrDefault();
                            if (blockDetails == null)
                            {
                                isAdd = true;
                            }
                        }
                        else
                        {
                            isAdd = true;
                        }
                    }
                    if (isAdd)
                    {
                        UserWithCountryIconInfo details = new UserWithCountryIconInfo();
                        details.Address     = item.Address;
                        details.Country_Id  = item.Country_Id;
                        details.CreatedTime = item.CreatedTime;
                        details.DeviceId    = item.DeviceId;
                        details.Dob         = item.Dob;
                        details.Email_Id    = item.Email_Id;
                        details.Flag_Icon   = item.Flag_Icon;
                        details.Gender      = item.Gender;
                        details.Icon_Path   = imagePath + item.Flag_Icon;
                        if (string.IsNullOrEmpty(item.ImagePath))
                        {
                            details.ImagePath = noImagePath;
                        }
                        else
                        {
                            var extension = item.ImagePath.Split('.')[1];
                            var imageName = item.ImagePath.Split('.')[0] + "_thumbnail";
                            details.ImagePath = proImagePath + imageName + "." + extension;
                        }
                        //details.ImagePath = item.ImagePath == null ?  noImagePath: item.ImagePath == string.Empty ? noImagePath: proImagePath + item.ImagePath;
                        details.Interests             = item.Interests;
                        details.IsVerified            = item.IsVerified;
                        details.LagLevel_ID           = item.LagLevel_ID;
                        details.Name                  = item.Name;
                        details.QR_Code               = item.QR_Code;
                        details.Self_Introduction     = item.Self_Introduction;
                        details.TravelDestination_CId = item.TravelDestination_CId;
                        details.TrevoId               = item.TrevoId;
                        details.User_Id               = item.User_Id;
                        var languageDetails = _languageService.GetLanguageDetailsById(item.Native_LanguageId);
                        if (languageDetails != null)
                        {
                            details.NativeAbbrv = languageDetails.Abbreviation;
                        }
                        languageDetails = _languageService.GetLanguageDetailsById(item.Learning_LanguageId);
                        if (languageDetails != null)
                        {
                            details.LearningAbbrv = languageDetails.Abbreviation;
                        }
                        obj.Add(details);
                    }
                }
            }
            catch (Exception e)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)));
            }

            return(Ok(obj));
        }
Example #2
0
        public IHttpActionResult AdvancedSearch(AdvancedSearchModel model)

        {
            List <UserWithCountryIconInfo> userList = new List <UserWithCountryIconInfo>();

            try
            {
                var allUserList = _userService.GetAllUsersWithCountryFlag().ToList();
                if (!string.IsNullOrEmpty(model.Address))
                {
                    model.Address = model.Address.ToLower();
                    allUserList   = allUserList.Where(a => a.Address.ToLower().Contains(model.Address)).ToList();
                }
                if (model.NatioanlityId > 0)
                {
                    allUserList = allUserList.Where(a => a.Country_Id == model.NatioanlityId).ToList();
                }
                if (model.LangLevelId > 0)
                {
                    allUserList = allUserList.Where(a => a.LagLevel_ID == model.LangLevelId).ToList();
                }
                var userLangList = _userLanguageService.GetAllUsersLanguages().ToList();
                if (model.LearningLangId > 0)
                {
                    userLangList = userLangList.Where(a => a.Learning_LanguageId == model.LearningLangId).ToList();
                }
                if (model.NativeLangId > 0)
                {
                    userLangList = userLangList.Where(a => a.Native_LanguageId == model.NativeLangId).ToList();
                }
                string userIdList = string.Empty;
                if (userLangList.Count > 0)
                {
                    foreach (var item in userLangList)
                    {
                        if (string.IsNullOrEmpty(userIdList))
                        {
                            userIdList = item.User_Id.ToString();
                        }
                        else
                        {
                            userIdList = userIdList + "," + item.User_Id.ToString();
                        }
                    }
                }

                List <LanguageDetails> langList = _langService.GetAllLangugaes().ToList();
                foreach (var item in allUserList)
                {
                    if (!string.IsNullOrEmpty(userIdList))
                    {
                        if (userIdList.Contains(item.User_Id.ToString()))
                        {
                            UserWithCountryIconInfo details = new UserWithCountryIconInfo();
                            details.Address     = item.Address;
                            details.Country_Id  = item.Country_Id;
                            details.CreatedTime = item.CreatedTime;
                            details.DeviceId    = item.DeviceId;
                            details.Dob         = item.Dob;
                            details.Email_Id    = item.Email_Id;
                            details.Flag_Icon   = item.Flag_Icon;
                            details.Gender      = item.Gender;
                            details.Icon_Path   = countryIconPath + item.Flag_Icon;
                            if (string.IsNullOrEmpty(item.ImagePath))
                            {
                                details.ImagePath = noImagePath;
                            }
                            else
                            {
                                var extension = item.ImagePath.Split('.')[1];
                                var imageName = item.ImagePath.Split('.')[0] + "_thumbnail";
                                details.ImagePath = proImagePath + imageName + "." + extension;
                            }
                            // details.ImagePath = proImagePath + item.ImagePath;
                            details.Interests             = item.Interests;
                            details.IsVerified            = item.IsVerified;
                            details.LagLevel_ID           = item.LagLevel_ID;
                            details.LearningAbbrv         = langList.Where(a => a.Language_Id == item.Learning_LanguageId).FirstOrDefault().Abbreviation;
                            details.Name                  = item.Name;
                            details.NativeAbbrv           = langList.Where(a => a.Language_Id == item.Native_LanguageId).FirstOrDefault().Abbreviation;
                            details.Self_Introduction     = item.Self_Introduction;
                            details.TravelDestination_CId = item.TravelDestination_CId;
                            details.TrevoId               = item.TrevoId;
                            details.User_Id               = item.User_Id;
                            userList.Add(details);
                        }
                    }
                }
            }
            catch (Exception e)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)));
            }
            return(Ok(userList));
        }
Example #3
0
        public IHttpActionResult GetUserDetailsById(RequestModel model)
        {
            UserWithCountryIconInfo userDetails = new UserWithCountryIconInfo();

            try
            {
                List <HobbiesDetails> hobbiesList = new List <HobbiesDetails>();
                hobbiesList = _hobbiesService.GetAllHobbies();
                if (string.IsNullOrEmpty(model.Id))
                {
                    return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.Forbidden, "User Id is required.")));
                }
                long userId  = Convert.ToInt64(model.Id);
                var  details = _UserService.GetUserDetailsById(userId);
                if (details != null)
                {
                    userDetails.Address     = details.Address;
                    userDetails.Country_Id  = details.Country_Id;
                    userDetails.CreatedTime = details.CreatedTime;
                    userDetails.DeviceId    = details.DeviceId;
                    userDetails.Dob         = details.Dob;
                    userDetails.Email_Id    = details.Email_Id;
                    var countryDetails = _countryService.GetCountryDetailsById(details.Country_Id);
                    if (countryDetails != null)
                    {
                        userDetails.Flag_Icon = countryDetails.Flag_Icon;
                    }
                    userDetails.Gender    = details.Gender;
                    userDetails.Icon_Path = imagePath + countryDetails.Flag_Icon;
                }
                //userDetails.ImagePath = details.ImagePath == null ? noImagePath : details.ImagePath == string.Empty ? noImagePath : proImagePath + details.ImagePath;
                if (string.IsNullOrEmpty(details.ImagePath))
                {
                    userDetails.ImagePath = noImagePath;
                }
                else
                {
                    var extension = details.ImagePath.Split('.')[1];
                    var imageName = details.ImagePath.Split('.')[0] + "_thumbnail";
                    userDetails.ImagePath = proImagePath + imageName + "." + extension;
                }
                userDetails.Interests   = details.Interests;
                userDetails.IsVerified  = details.IsVerified;
                userDetails.LagLevel_ID = details.LagLevel_ID;
                var userLangDetails = _userLangService.GetLanguageListByUserId(details.User_Id);
                if (userLangDetails != null)
                {
                    var langDetails = _languageService.GetLanguageDetailsById(userLangDetails.Native_LanguageId);
                    userDetails.Native_LanguageId = userLangDetails.Native_LanguageId;
                    if (langDetails != null)
                    {
                        userDetails.NativeAbbrv = langDetails.Abbreviation;
                    }
                    langDetails = _languageService.GetLanguageDetailsById(userLangDetails.Learning_LanguageId);
                    userDetails.Learning_LanguageId = userLangDetails.Learning_LanguageId;
                    if (langDetails != null)
                    {
                        userDetails.LearningAbbrv = langDetails.Abbreviation;
                    }
                }
                userDetails.Name = details.Name;
                userDetails.Self_Introduction     = details.Self_Introduction;
                userDetails.TravelDestination_CId = details.TravelDestination_CId;
                userDetails.TrevoId = details.TrevoId;
                userDetails.User_Id = details.User_Id;

                var userHobbies = _hobbiesService.GetUserHobbiesByUserId(details.User_Id);
                foreach (var item in userHobbies)
                {
                    if (string.IsNullOrEmpty(userDetails.UserHobbies))
                    {
                        userDetails.UserHobbies = hobbiesList.Where(a => a.HobbiesId == item.HobbiesId).FirstOrDefault().Name;
                    }
                    else
                    {
                        userDetails.UserHobbies = userDetails.UserHobbies + " ," + hobbiesList.Where(a => a.HobbiesId == item.HobbiesId).FirstOrDefault().Name;
                    }
                }

                UserTransliterationDetails transliterationDetails = _transliterationService.GetTransliterationDetailsByUserId(userDetails.User_Id);
                if (transliterationDetails != null)
                {
                    userDetails.FavCount        = transliterationDetails.FavouritesCount;
                    userDetails.TTSCount        = transliterationDetails.TTSCount;
                    userDetails.SpellCheckCount = transliterationDetails.SpellCheckCount;
                    userDetails.TranslateCount  = transliterationDetails.TranslateCount;
                }
            }
            catch (Exception e)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)));
            }
            return(Ok(userDetails));
        }