public async Task<IEnumerable<RuleResponse>> GetInboxFolderRules(int? folderId, SystemSession session)
 {
     var response = new List<RuleResponse>();
     var inboxRuleList = await Task.Factory.StartNew(() => (folderId == null)
         ? Client.InboxRuleService.getRules(session.UserId, session.GetSession())
         : Client.InboxService.getInboxFolderWithRules(session.UserId, (int)folderId, session.GetSession())
             .InboxRules).ConfigureAwait(false);
     if (inboxRuleList != null)
     {
         inboxRuleList.ForEach(
             x =>
             {
                 if (x.RuleId > 0)
                     response.Add(new RuleResponse
                     {
                         FolderId = x.InboxId,
                         MessageRuleId = x.RuleId,
                         RuleTypeUser = (SystemRuleTypeUser)x.RuleTypeUser,
                         ContactList = x.ContactList,
                         GroupList = x.GroupList,
                         RuleTypeSubject = (SystemRuleTypeSubject)x.RuleTypeSubject,
                         Subject = x.Subject
                     });
             });
     }
     return response;
 }
 public async Task<StatusData<string>> UpsertCategoryFriends(CategoryFriends request, SystemDbStatus mode, SystemSession session)
 {
     var userCategory = new UserCategory { UserId = session.UserId.ToString(), UserCategoryTypeId = request.CategoryId };
     var friends = request.Friends != null && request.Friends.Any() ? String.Join(",", request.Friends) : null;
     var result = (mode == SystemDbStatus.Inserted
                 ? await
                     Task.Factory.StartNew(
                         () => Client.UserService.insertInCategory(userCategory, friends, session.GetSession())).ConfigureAwait(false)
                 : await
                     Task.Factory.StartNew(
                         () => Client.UserService.removeFromCategory(userCategory, friends, session.GetSession())).ConfigureAwait(false));
     return result.GetStatusData<string>();
 }
 public async Task<StatusData<string>> ReCrop(ImageCropRequest cropRequest, SystemSession session)
 {
     var serviceCropRequest = new ElifImageCrop { Width = cropRequest.CropDetail.Width, Height = cropRequest.CropDetail.Height, Top = cropRequest.CropDetail.Top, Bottom = cropRequest.CropDetail.Bottom, Left = cropRequest.CropDetail.Left, Right = cropRequest.CropDetail.Right, SizeCodes = (SizedCodes)cropRequest.CropDetail.SizeCode };
     var response = await Task.Factory.StartNew(() => Client.ElifService.reCrop(cropRequest.FileId, serviceCropRequest, session.GetSession())).ConfigureAwait(false);
     var result = new StatusData<string> { Status = response ? SystemDbStatus.Updated : SystemDbStatus.NotModified };
     return result;
 }
        public async Task<UserSearchResponse> UserSearch(UserSearchRequest request, SystemSession session)
        {
            var serviceRequest = new UserSearchQuery
            {
                Query = request.Query,
                Cursor = request.Cursor,
                Limit = request.Limit
            };

            var response = await Task.Factory.StartNew(() => Client.SearchService.userSearch(serviceRequest, session.GetSession())).ConfigureAwait(false);

            var result = new UserSearchResponse
            {
                Cursor = response.Cursor,
                Limit = response.Limit,
                Count = response.Count,

                User = response.Users != null ? response.Users.Select(x => new UserInformationBaseExtendedResponse
                {
                    FirstName = x.UserInfoPerson.FirstName,
                    LastName = x.UserInfoPerson.LastName,
                    Image = x.UserInfo.Picture,
                    Title = x.UserInfo.Title,
                    UserId = Convert.ToInt32(x.UserInfoPerson.UserId),
                    UserName = x.UserName,
                    UserTypeId = (SystemUserType)x.UserInfo.UserTypeId
                }) : null
            };
            return result;
        }
        public virtual async Task<PersonalProfileResponse> GetProfileInformation(string targetUser,
            SystemSession session)
        {
            var serviceResponse =
                await
                    Task.Factory.StartNew(
                        () => Client.UserService.getProfile(session.UserId, 0, targetUser, session.GetSession()))
                        .ConfigureAwait(false);

            var response = new PersonalProfileResponse
            {
                BasicInformation = new BasicInformation
                {
                    UserId = Convert.ToInt32(serviceResponse.User.UserId),
                    UserName = serviceResponse.User.UserName,
                    UserTypeId = (SystemUserType)serviceResponse.UserInfo.UserTypeId,
                    Email = serviceResponse.User.Email,
                    FirstName = serviceResponse.UserInfoPerson.FirstName,
                    LastName = serviceResponse.UserInfoPerson.LastName,
                    FriendShipStatus = (SystemFriendshipStatus)serviceResponse.FriendshipStatus,
                    //(SystemFriendshipStatus)await Task.Factory.StartNew(() => _client.UserService.getFriendShipStatus(userId, targetUser, session.GetSession())),
                    PrimaryContactNumber = serviceResponse.User.PrimaryContactNumber,
                    Image = serviceResponse.UserInfo.Picture,
                    //ImageService.GetProfilePhoto(serviceResponse.UserInfo, (SystemImageSize)systemImageSize),
                    AvailableStatus = (SystemUserAvailabilityCode)Convert.ToByte(serviceResponse.User.ChatStatus),
                    Title = serviceResponse.UserInfoPerson.Title,
                    LastUpdated =
                        Convert.ToInt64(
                            (Convert.ToDateTime(serviceResponse.LastUpdated) - new DateTime(1970, 1, 1))
                                .TotalMilliseconds)
                }
            };
            return response;
        }
        public async Task<PaginatedResponseExtended<IEnumerable<ViewSummaryResponse>, int>> GetProfileViewSummary(PaginatedRequest<int> request, SystemSession session)
        {
            var serviceRequest = new ProfileView
            {
                UserId = request.UserId,
                ViewType = request.Data,
                PageIndex = request.PageIndex,
                PageSize = request.PageSize
            };

            var response = await Task.Factory.StartNew(() => Client.UserService.profileViewSummary(serviceRequest, session.GetSession())).ConfigureAwait(false);
            var data = response.ProfileViews.Select(x => new ViewSummaryResponse
            {
                TypeId = x.TypeId,
                Name = x.FirstName,
                ViewCount = x.ViewersCount,
                NewViewCount = x.NewViews,
                LastViewed = Convert.ToDateTime(x.ViewDate)
            });
            var result = new PaginatedResponseExtended<IEnumerable<ViewSummaryResponse>, int>
            {
                Page = data,
                HasNextPage = response.HasNextPage,
                Information = response.ViewCount
            };
            return result;
        }
        public async Task<PaginatedResponse<IEnumerable<CompanyReviewResponse>>> GetCompanyReviews(SingleData<int> request, int pageIndex, int pageSize, SystemSession session)
        {
            var serviceRequest = new CompanyReview
            {
                CompanyId = request.Data,
                OffSet = pageIndex,
                PageSize = pageSize

            };
            var response = await Task.Factory.StartNew(() => Client.UserService.getCompanyReviews(serviceRequest, session.GetSession())).ConfigureAwait(false);
            var result = new PaginatedResponse<IEnumerable<CompanyReviewResponse>>
            {
                HasNextPage = response.HasNextPage,
                Page = response.CompanyReviews.Select(
                 x => new CompanyReviewResponse
                 {
                     CompanyReviewGuid = x.CompanyReviewGUID != null ? Guid.Parse(x.CompanyReviewGUID) : Guid.Empty,
                     User = new UserResponse
                     {
                         UserId = x.UserId,
                         UserName = x.Username,
                         Name = x.Name,
                         Picture = x.PictureUrl
                     },
                     Star = x.Star,
                     Title = x.Title,
                     Comment = x.Comment,
                     DateCommented = x.DateCommented != null ? Convert.ToDateTime(x.DateCommented) : (DateTime?)null,
                     IsApproved = x.IsApproved
                 })

            };
            return result;
        }
 public async Task<string> GetUrl(ImageRequest request, SystemSession session)
 {
     var serviceRequest = new Elif { FileId = request.FileId, AskWebp = request.AskWebp, IsProfilePic = request.IsProfilePicture, SizeCodes = (SizedCodes)request.SizeCode, Username = request.UserName };
     var response = await Task.Factory.StartNew(() => Client.ElifService.getUrl(serviceRequest, session.GetSession())).ConfigureAwait(false);
     //  return string.IsNullOrWhiteSpace(response) ? null : response;
     return response;
 }
 public async Task<List<string>> DeleteFiles(SingleData<List<string>> request, SystemSession session)
 {
     var serviceRequest = new List<Elif>();
     request.Data.ForEach(x => serviceRequest.Add(new Elif { FileId = x, Username = session.UserName }));
     var response = await Task.Factory.StartNew(() => Client.ElifService.deleteFiles(serviceRequest, session.GetSession())).ConfigureAwait(false);
     return response;
 }
 public async Task<StatusData<int>> GetMessageCount(SystemSession session)
 {
     var result = new StatusData<int>();
     var response = await Task.Factory.StartNew(() => Client.NotificationService.messageCount(session.GetSession())).ConfigureAwait(false);
     result.Data = response;
     return result;
 }
        public async Task<PaginatedResponseExtended<IEnumerable<UserInformationBaseExtendedResponse>, int>> GetMutualFriends(PaginatedRequest<string> request, SystemSession session)
        {
            var serviceRequest = new MutualFriend
            {
                UserId = session.UserId,
                TargetType = "F",
                TargetUser = request.Data,
                PageIndex = request.PageIndex,
                PageSize = request.PageSize
            };

            var data = await Task.Factory.StartNew(() => Client.UserService.getMutualFriends(serviceRequest, session.GetSession())).ConfigureAwait(false);
            var result = new PaginatedResponseExtended<IEnumerable<UserInformationBaseExtendedResponse>, int>
            {
                Page = data.MutualFriends.Select(x => new UserInformationBaseExtendedResponse
                {
                    UserId = x.UserId,
                    UserName = x.UserName,
                    UserTypeId = (SystemUserType)x.UserTypeId,
                    FirstName = x.FirstName,
                    LastName = x.LastName,
                    Image = x.Picture,
                    Title = x.Title
                }),
                HasNextPage = data.HasNextPage,
                Information = data.Count
            };

            return result;
        }
        public async Task<PaginatedResponse<IEnumerable<FriendsInCategoryResponse>>> GetFriendsInCategory(PaginatedRequest<FriendsInCategoryRequest> request, SystemSession session)
        {
            var serviceRequest = new UserCategory
            {
                UserId = session.UserId.ToString(),
                UserCategoryTypeId = request.Data.CategoryId,
                InvertCatSerch = request.Data.InvertCategorySearch,
                PageIndex = request.PageIndex,
                PageSize = request.PageSize + 1
            };

            var data = await Task.Factory.StartNew(() => Client.UserService.getUserFriendsInCategory(serviceRequest, session.GetSession())).ConfigureAwait(false);
            var result = new PaginatedResponse<IEnumerable<FriendsInCategoryResponse>>
            {
                Page = data.Select(x => new FriendsInCategoryResponse
                {
                    UserId = x.UserId,
                    UserName = x.UserName,
                    Image = x.Picture,
                    FirstName = x.FirstName,
                    LastName = x.LastName,
                    Title = x.Title,
                    UserTypeId = (SystemUserType)x.UserTypeId,
                    Email = x.Email
                }).Take(request.PageSize),
                HasNextPage = data.Count > request.PageSize
            };

            return result;
        }
        public async Task<PaginatedResponseExtended<IEnumerable<ViewerDetailResponse>, int>> GetProfileViewDetail(PaginatedRequest<GeneralKvPair<SystemProfileViewType, int>> request, SystemSession session)
        {
            var serviceRequest = new ProfileView
            {
                UserId = request.UserId,
                ViewType = (byte)request.Data.Id,
                TypeId = request.Data.Value,
                PageIndex = request.PageIndex,
                PageSize = request.PageSize
            };

            var response = await Task.Factory.StartNew(() => Client.UserService.profileViewDetail(serviceRequest, session.GetSession())).ConfigureAwait(false);
            var data = response.ProfileViews.Select(x => new ViewerDetailResponse
            {
                UserId = x.UserId,
                UserTypeId = (SystemUserType)x.UserTypeId,
                UserName = x.Username,
                FirstName = x.FirstName,
                LastName = x.LastName,
                Image = x.Picture,
                FriendshipStatus = (SystemFriendshipStatus)x.IsConnected,
                Observed = x.Observed,
                Title = x.Title,
                ViewedDate = Convert.ToDateTime(x.ViewDate)
            });
            var result = new PaginatedResponseExtended<IEnumerable<ViewerDetailResponse>, int>
            {
                Page = data,
                HasNextPage = response.HasNextPage,
                Information = response.ViewCount
            };
            return result;
        }
 public async Task<StatusData<string>> SyncPhoneBook(PhoneBookContactsRequest request, SystemSession session)
 {
     var contacts = new UserMobileContacts
     {
         CTag = request.CTag,
         DeviceId = request.DeviceId,
         UserId = request.UserId,
         ToAddmobileContacts =
             request.Add.Select(
                 x =>
                     new MobileContact
                     {
                         CountryCode = x.CountryCode,
                         PrimaryContactNumber = x.MobileNumber.ToString()
                     }).ToList(),
         ToDelmobileContacts =
             request.Delete.Select(
                 x =>
                     new MobileContact
                     {
                         CountryCode = x.CountryCode,
                         PrimaryContactNumber = x.MobileNumber.ToString()
                     }).ToList(),
         Flush = request.Flush
     };
     var result = new StatusData<string>();
     var response = (await Task.Factory.StartNew(() => Client.UserService.contactSync(contacts, session.GetSession())).ConfigureAwait(false));
     result.Status = (SystemDbStatus)response.SystemDbStatus;
     result.Data = response.CTag;
     result.Message = response.DbStatusMsg;
     return result;
 }
        ////public async Task<StatusData<bool>> Crop(ImageCropRequest cropRequest, SystemSession session)
        ////{
        ////    var serviceRequest = new Elif { FileId = cropRequest.FileId, AskWebp = cropRequest.AskWebp, Username = cropRequest.UserName };
        ////    var serviceCropRequest = new ElifImageCrop { Width = cropRequest.CropDetail.Width, Height = cropRequest.CropDetail.Height, Top = cropRequest.CropDetail.Top, Bottom = cropRequest.CropDetail.Bottom, Left = cropRequest.CropDetail.Left, Right = cropRequest.CropDetail.Right, SizeCodes = (SizedCodes)cropRequest.CropDetail.SizeCode };
        ////    var response = await Task.Factory.StartNew(() => Client.ElifService.doCrop(serviceRequest, serviceCropRequest, session.GetSession())).ConfigureAwait(false);
        ////    var result = new StatusData<bool> { Status = response ? SystemDbStatus.Updated : SystemDbStatus.NotModified, Data = response };
        ////    return result;
        ////}

        public async Task<StatusData<bool>> Crop(ImageCropRequest cropRequest, SystemSession session)
        {
            var result = new StatusData<bool> { Status = SystemDbStatus.Updated };
            var serviceRequest = new Elif { FileId = cropRequest.FileId, AskWebp = cropRequest.AskWebp, Username = cropRequest.UserName };
            var serviceCropRequest = new ElifImageCrop { Width = cropRequest.CropDetail.Width, Height = cropRequest.CropDetail.Height, Top = cropRequest.CropDetail.Top, Bottom = cropRequest.CropDetail.Bottom, Left = cropRequest.CropDetail.Left, Right = cropRequest.CropDetail.Right, SizeCodes = (SizedCodes)cropRequest.CropDetail.SizeCode };
            result.Data = await Task.Factory.StartNew(() => Client.ElifService.doCrop(serviceRequest, serviceCropRequest, session.GetSession())).ConfigureAwait(false);
            return result;
        }
        public async Task<StatusData<bool>> LogOut(List<GeneralKvPair<string, string>> request, SystemSession session)
        {
            var result = new StatusData<bool> { Status = SystemDbStatus.Deleted };
            var serviceRequest = JsonConvert.SerializeObject(request.Select(x => new { authToken = x.Value }));
            result.Data = await Task.Factory.StartNew(() => Client.SessionService.sessionKickOut(session.GetSession(), serviceRequest)).ConfigureAwait(false);

            return result;
        }
Esempio n. 17
0
        public async Task<object> TinyInstancePush(ChatRequest.InstanceRequest request, SystemSession session)
        {
            var tinyInstancePush = new ChatInstancePullInfo { UserId = session.UserName, PageSize = request.PageSize, DrillUp = request.DrillUp, DrillDown = request.DrillDown, Limit = request.Limit, Cursor = request.Cursor, IncludeMsg = request.IncludeMessage, FolderId = request.FolderId };

            var response = await Task.Factory.StartNew(() => Client.ChatService.tinyInstancePush(tinyInstancePush, session.GetSession())).ConfigureAwait(false);

            return JsonConvert.DeserializeObject(response);
        }
 public async Task<NotificationCountResponse> GetNotificationCount(List<long> notificationRequestTypes, SystemSession session)
 {
     var serviceRequest = string.Join(",", notificationRequestTypes);
     var response = await Task.Factory.StartNew(() => Client.UserService.getNotificationRequestCount(serviceRequest, session.GetSession())).ConfigureAwait(false);
     return new NotificationCountResponse
     {
         NotificationCount = response.NotificationCount,
         RequestCount = response.RequestCount
     };
 }
Esempio n. 19
0
        public async Task<object> TinyMessagePush(ChatRequest.MessageRequest request, SystemSession session)
        {
            // var result = new StatusData<object> { Status = SystemDbStatus.Selected };

            var tinyMessagePull = new ChatMessagePull { UserId = session.UserName, PageSize = request.PageSize, DrillUp = request.DrillUp, DrillDown = request.DrillDown, Limit = request.Limit, InstanceId = request.InstanceId, LastMsg = request.LastMessage, Cursor = request.Cursor, UnreadMsg = request.UnReadMessage };

            var response = await Task.Factory.StartNew(() => Client.ChatService.tinyMsgPush(tinyMessagePull, session.GetSession())).ConfigureAwait(false);
            // Helper.Helper.ExtractData(result, response, "error", elementsToBypass: new Collection<string> { "error" });
            return JsonConvert.DeserializeObject(response);
        }
 public async Task<StatusData<byte?>> InsertCategory(CategoryAddRequest request, SystemSession session)
 {
     var userCategory = new UserCategory { UserId = session.UserId.ToString(), Name = request.Name, Description = request.Description };
     var result = new StatusData<byte?>();
     var friends = request.Friends != null && request.Friends.Any() ? String.Join(",", request.Friends) : null;
     var serviceResponse = await Task.Factory.StartNew(() => Client.UserService.createNewCategory(userCategory, friends, session.GetSession())).ConfigureAwait(false);
     result.Data = (byte?)serviceResponse.UserCategoryTypeId;
     result.Message = serviceResponse.DbStatusMsg;
     result.Status = (SystemDbStatus)serviceResponse.DbStatusCode;
     result.SubStatus = serviceResponse.DbSubStatusCode;
     return result;
 }
 public async Task<StatusData<string>> UpdateEmployeeWorkSchedule(EmployeeWorkScheduleUpdateRequest request, SystemSession session)
 {
     var serviceRequest = new EmployeeWorkSchedule
     {
         PersonEmpId = request.PersonEmploymentId,
         ScheduleType = request.ScheduleType == SystemWorkSchedule.Fixed,
         Text = string.Join("|", request.Schedules)
     };
     var response = await Task.Factory.StartNew(() => Client.UserService.setEmployeWorkSchedule(serviceRequest, session.GetSession())).ConfigureAwait(false);
     var data = new StatusData<string> { Status = (SystemDbStatus)response.DbStatusCode, Message = response.DbStatusMsg, SubStatus = response.DbSubStatusCode };
     return data;
 }
 public async Task<IEnumerable<ImageDetectionResponse>> GetDetection(ImageRequest request, SystemSession session)
 {
     var serviceRequest = new Elif { FileId = request.FileId, Username = request.UserName };
     var response = await Task.Factory.StartNew(() => Client.ElifService.getDetection(serviceRequest, session.GetSession())).ConfigureAwait(false);
     var result = response.Select(x => new ImageDetectionResponse
     {
         X = x.X,
         Y = x.Y,
         Height = x.Height,
         Width = x.Width
     });
     return result;
 }
        public async Task<StatusData<string>> CategoryFriendsCopy(CopyCategory request, SystemSession session)
        {
            var userCategory = new UserCategory { UserId = session.UserId.ToString() };
            var friends = string.Join(",", request.Friends);
            var result = new StatusData<string>();
            var isOperationSuccessful = true;
            foreach (var categoryId in request.TargetCategories)
            {
                userCategory.UserCategoryTypeId = categoryId;
                var serviceResponse = await Task.Factory.StartNew(() => Client.UserService.insertInCategory(userCategory, friends, session.GetSession())).ConfigureAwait(false);
                isOperationSuccessful &= ((SystemDbStatus)serviceResponse.DbStatusCode).IsOperationSuccessful();
            }
            if (request.RemoveFromSource)
            {
                userCategory.UserCategoryTypeId = request.CategoryId;
                var serviceResponse = await Task.Factory.StartNew(() => Client.UserService.removeFromCategory(userCategory, friends, session.GetSession())).ConfigureAwait(false);
                isOperationSuccessful &= ((SystemDbStatus)serviceResponse.DbStatusCode).IsOperationSuccessful();
            }

            result.Status = isOperationSuccessful ? SystemDbStatus.Inserted : SystemDbStatus.Duplicate;
            return result;
        }
 public async Task<IEnumerable<SettingResponse>> ActiveDeviceList(SystemSession session)
 {
     var response = await Task.Factory.StartNew(() => Client.SessionService.getSession(session.GetSession())).ConfigureAwait(false);
     var result = response.Select(x => new SettingResponse
     {
         LastActivity = x.LastActivity,
         DeviceId = x.DeviceId,
         ModelName = x.ModelName,
         Token = x.SessionToken,
         DeviceType = x.DeviceType
     });
     return result;
 }
 public async Task<IEnumerable<InboxResponse>> GetInboxFolder(SystemSession session)
 {
     var response = await Task.Factory.StartNew(() => Client.InboxService.listInboxFolders(session.UserId, session.GetSession())).ConfigureAwait(false);
     var result = response.Select(x => new InboxResponse
     {
         FolderId = x.FolderId,
         Name = x.Name,
         Created = Convert.ToDateTime(x.CreatedDate),
         RuleCount = x.RuleCount,
         Mute = x.Muted == 1
     });
     return result;
 }
 public async Task<IEnumerable<CategoryResponse>> GetUserCategoryList(SystemSession session)
 {
     var result = await Task.Factory.StartNew(() => Client.UserService.categoryList(session.UserId, session.GetSession())).ConfigureAwait(false);
     return result.Select(c => new CategoryResponse
     {
         Name = c.Name,
         CategoryId = c.UserCategoryTypeId,
         Description = c.Description,
         // Users = c.Friends.ToList().Select(x => Convert.ToInt32(x)),
         Friends = c.Friends == null ? new List<int>() : c.Friends.ToList().Select(x => Convert.ToInt32(x)),
         IsSystemDefaultCategory = c.IsSystemDefault
     });
 }
Esempio n. 27
0
        public async Task<StatusData<object>> InstancePull(ChatRequest.InstanceRequest request, SystemSession session)
        {
            var result = new StatusData<object> { Status = SystemDbStatus.Selected };

            if (request.FolderId == null)
                request.FolderId = "0";

            var instancePull = new ChatInstancePullInfo { UserId = session.UserName, PageSize = request.PageSize, DrillUp = request.DrillUp, DrillDown = request.DrillDown, Limit = request.Limit, Cursor = request.Cursor, IncludeMsg = request.IncludeMessage, FolderId = request.FolderId };

            var response = await Task.Factory.StartNew(() => Client.ChatService.instancePull(instancePull, session.GetSession())).ConfigureAwait(false);
            Helper.Helper.ExtractData(result, response, "error", elementsToBypass: new Collection<string> { "error" });

            return result;
        }
        public async Task<AboutResponse> GetUserAbout(string targetUser, SystemSession session)
        {
            AboutResponse response = null;
            var result = await Task.Factory.StartNew(() => Client.UserService.getUserAbout(targetUser, session.GetSession())).ConfigureAwait(false);

            if (result != null)
            {
                response = new AboutResponse
                {
                    Headline = result.HeadLine,
                    About = result.About
                };
            }
            return response;
        }
 public async Task<StatusData<string>> UpdateBasicContactCompany(BasicContactBusinessRequest request, SystemSession session)
 {
     var serviceRequest = new BusinessBasicDetails
     {
         UserId = session.UserId,
         About = request.About,
         CompanyName = request.CompanyName,
         Street = request.Street,
         Town = request.Town,
         CityId = request.CityId,
         Phone = request.Phone,
         Fax = request.Fax,
         Email = request.Email,
         Web = request.Web
     };
     var response = (await Task.Factory.StartNew(() => Client.UserService.setBusinessBaiscDetail(serviceRequest, session.GetSession())).ConfigureAwait(false)).GetStatusData<string>();
     return response;
 }
 public async Task<PaginatedResponse<IEnumerable<EmployeeViewResponse>>> GetEmployees(EmployeeViewRequest request, int pageIndex, int pageSize, SystemSession session)
 {
     var serviceRequest = new Employees
     {
         UserId = request.TargetUserId,
         FilterId = request.FilterId,
         Offset = pageIndex,
         PageSize = pageSize,
         SearchTerm = request.SearchTerm
     };
     var response = await Task.Factory.StartNew(() => Client.UserService.getEmployees(serviceRequest, session.GetSession())).ConfigureAwait(false);
     var result = new PaginatedResponse<IEnumerable<EmployeeViewResponse>>
     {
         HasNextPage = response.HasNextPage,
         Page = response.CompanyEmployeeInfos.Select(
             x => new EmployeeViewResponse
             {
                 User = new UserResponse
                 {
                     UserId = x.UserId,
                     UserName = x.Username,
                     Name = x.Firstname + " " + x.Lastname,
                     Picture = x.Picture
                 },
                 Position = new GeneralKvPair<int?, string>
                 {
                     Id = x.PositionId,
                     Value = x.Position
                 },
                 EmploymentId = x.EmploymentId,
                 EmployeeTypeId = x.EmployeeTypeId,
                 EmploymentDate = new BeginEndDate
                 {
                     BeginDate = Convert.ToDateTime(x.StartDate),
                     EndDate = x.EndDate != null ? Convert.ToDateTime(x.EndDate) : (DateTime?)null
                 },
                 IsExecutiveBody = x.IsExecutiveBody,
                 Added = x.Added != null ? Convert.ToDateTime(x.Added) : (DateTime?)null,
                 IsApproved = x.ApprovedStatus
             })
     };
     return result;
 }