private PreviewProfileModel formatProfileData(int userId, ProfileStatisticsModel profileStatisticsModel) { var db = new MyDBModels.DB(); var countUnreadMessages = 0; var countGroups = 0; var dateUtils = new DateUtils(); var userModel = db.user.Where(u => u.UserId == userId).First(); var profileModel = db.profile.Where(p => p.ProfileId == userModel.ProfileId).First(); var communicationIdArray = userModel.CommunicationIdArray; var communicationDataAccess = new CommunicationDataAccess(); communicationIdArray.ToList().ForEach(delegate(int communicationId) { var communicationModelDb = db.communication.Where(c => c.CommunicationId == communicationId).First(); if (IsUnreadCommunication(communicationModelDb.MessageIdArray, profileModel.ProfileId)) { countUnreadMessages++; } }); PreviewProfileModel previewProfileModel = new PreviewProfileModel(); previewProfileModel.FullName = String.Format("{0} {1}", profileModel.Name, profileModel.LastName); previewProfileModel.PhotoUrl = profileModel.PhotoUrl; previewProfileModel.TimeLastActive = profileModel.TimeLastActive;//dateUtils.calculateStateLastActivity(profileModel.TimeLastActive); previewProfileModel.CountRequestedFriends = userModel.FriendPossibleIdArray.Count();; previewProfileModel.CountUnreadMessages = countUnreadMessages; previewProfileModel.CountRequestedGroups = countGroups; previewProfileModel.ProfileStatistics = profileStatisticsModel; return(previewProfileModel); }
public PreviewProfileModel previewProfile(int userId, int typePeriod) { /*var db = new MyDBModels.DB(); * * PreviewProfileModel previewProfileModel = new PreviewProfileModel(); * * var userModel = db.user.Where(u => u.UserId == userId).First(); * var profileModel = db.profile.Where(p => p.ProfileId == userModel.ProfileId).First(); * * var profileStatistics = db.profileStatistics.Where(ps => ps.ProfileStatisticsId == profileModel.ProfileStatisticsId).First(); * * ProfileStatisticsModel profileStatisticsModel = new ProfileStatisticsModel(); * * profileStatisticsModel.CountDistanceTotal = profileStatistics.CountDistanceTotal; * profileStatisticsModel.MiddleSpeedTotal = profileStatistics.MiddleSpeedTotal; * profileStatisticsModel.TimeInTripTotal = (int) profileStatistics.TimeInTripTotal.TotalSeconds; * profileStatisticsModel.CaloriesTotal = profileStatistics.CaloriesTotal; * profileStatisticsModel.CountDangerousSituation = profileStatistics.CountDangerousSituation; * profileStatisticsModel.CountAttemptedTheft = profileStatistics.CountAttemptedTheft; * profileStatisticsModel.EveryDayProfileStatistics = statisticsByPeriod(userId, typePeriod); * */ ProfileStatisticsModel profileStatisticsModel = formatTotalStatisitcs(userId, statisticsByPeriod(userId, typePeriod)); return(formatProfileData(userId, profileStatisticsModel)); }
private ProfileStatisticsModel formatTotalStatisitcs(int userId, List <EveryDayProfileStatisticsModel> everyDayList) { var db = new MyDBModels.DB(); var userModel = db.user.Where(u => u.UserId == userId).First(); var profileModel = db.profile.Where(p => p.ProfileId == userModel.ProfileId).First(); var profileStatistics = db.profileStatistics.Where(ps => ps.ProfileStatisticsId == profileModel.ProfileStatisticsId).First(); ProfileStatisticsModel profileStatisticsModel = new ProfileStatisticsModel(); profileStatisticsModel.CountDistanceTotal = profileStatistics.CountDistanceTotal; profileStatisticsModel.MiddleSpeedTotal = profileStatistics.MiddleSpeedTotal; profileStatisticsModel.TimeInTripTotal = (int)profileStatistics.TimeInTripTotal.TotalSeconds; profileStatisticsModel.CaloriesTotal = profileStatistics.CaloriesTotal; profileStatisticsModel.CountDangerousSituation = profileStatistics.CountDangerousSituation; profileStatisticsModel.CountAttemptedTheft = profileStatistics.CountAttemptedTheft; profileStatisticsModel.EveryDayProfileStatistics = new List <EveryDayProfileStatisticsModel>(everyDayList); return(profileStatisticsModel); }