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; }
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 }; }
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 }); }
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; }