private MyDBModels.EveryDayProfileStatistics createEmptyDataDBEveryDayStatistics() { MyDBModels.EveryDayProfileStatistics statistics = new MyDBModels.EveryDayProfileStatistics(); statistics.CountDistance = 0; statistics.MiddleSpeed = 0; statistics.TimeInTrip = new TimeSpan(); statistics.Calories = 0; statistics.TimeCreate = new DateTime(); return(statistics); }
private int everyDayStatisticsCreate(int userId, EveryDayProfileStatisticsModel model) { var db = new MyDBModels.DB(); var dateUtils = new DateUtils(); var profileStatisticsModel = getStatisticsByUserId(db, userId); DateTime inputDate = model.TimeCreate; foreach (int everyDayId in profileStatisticsModel.EveryDayProfileStatisticsIdArray) { var modelEveryDay = db.everyDayProfileStatistics.Where(e => e.EveryDayProfileStatisticsId == everyDayId).First(); if (modelEveryDay.TimeCreate.Year == inputDate.Year && modelEveryDay.TimeCreate.Month == inputDate.Month && modelEveryDay.TimeCreate.Day == inputDate.Day) { return(modelEveryDay.EveryDayProfileStatisticsId); } } MyDBModels.EveryDayProfileStatistics everyDayStatistics = new MyDBModels.EveryDayProfileStatistics(); everyDayStatistics.CountDistance = 0; everyDayStatistics.MiddleSpeed = 0; everyDayStatistics.TimeInTrip = new TimeSpan(0 * 10000000); everyDayStatistics.Calories = 0; everyDayStatistics.TimeCreate = DateTime.Now; db.everyDayProfileStatistics.Add(everyDayStatistics); db.SaveChanges(); var lastStatisticsId = db.everyDayProfileStatistics.OrderByDescending(i => i.EveryDayProfileStatisticsId).FirstOrDefault().EveryDayProfileStatisticsId; var everyDayArrayStatisticsIdArray = profileStatisticsModel.EveryDayProfileStatisticsIdArray; int count = everyDayArrayStatisticsIdArray.Count(); var everyDayArrayStatisticsIdArrayUpdate = new int[count + 1]; Array.Copy(everyDayArrayStatisticsIdArray, everyDayArrayStatisticsIdArrayUpdate, count); everyDayArrayStatisticsIdArrayUpdate[count] = lastStatisticsId; profileStatisticsModel.EveryDayProfileStatisticsIdArray = everyDayArrayStatisticsIdArrayUpdate; /*правильнее * var everyDayArrayStatisticsIdArray = profileStatisticsModel.EveryDayProfileStatisticsIdArray.ToList(); * everyDayArrayStatisticsIdArray.Add(db.everyDayProfileStatistics.OrderByDescending(i => i.EveryDayProfileStatisticsId).FirstOrDefault().EveryDayProfileStatisticsId); * profileStatisticsModel.EveryDayProfileStatisticsIdArra = everyDayArrayStatisticsIdArray.ToArray(); */ db.SaveChanges(); return(lastStatisticsId); }
public PreviewProfileModel signUpUserToDataBase(SignUpModel model, string baseData) { var db = new MyDBModels.DB(); if (db.signUp.Where(s => s.BaseCode == baseData).Count() > 0) { return(null); } MyDBModels.EveryDayProfileStatistics everyDayProfileStatistics = new MyDBModels.EveryDayProfileStatistics(); everyDayProfileStatistics.CountDistance = 0; everyDayProfileStatistics.MiddleSpeed = 0; everyDayProfileStatistics.TimeInTrip = TimeSpan.Zero; everyDayProfileStatistics.Calories = 0; everyDayProfileStatistics.TimeCreate = DateTime.Now; db.everyDayProfileStatistics.Add(everyDayProfileStatistics); db.SaveChanges(); MyDBModels.ProfileStatistics profileStatistics = new MyDBModels.ProfileStatistics(); profileStatistics.CountDistanceTotal = 0; profileStatistics.MiddleSpeedTotal = 0; profileStatistics.TimeInTripTotal = TimeSpan.Zero; profileStatistics.CaloriesTotal = 0; profileStatistics.CountDangerousSituation = 0; profileStatistics.CountAttemptedTheft = 0; profileStatistics.EveryDayProfileStatisticsIdArray = new int[] { db.everyDayProfileStatistics.OrderByDescending(i => i.EveryDayProfileStatisticsId).FirstOrDefault().EveryDayProfileStatisticsId }; db.profileStatistics.Add(profileStatistics); db.SaveChanges(); MyDBModels.Profile profile = new MyDBModels.Profile(); profile.Name = model.Name; profile.LastName = model.LastName; profile.PhotoUrl = new PhotoUtils().generateRundomUrlPhoto(); profile.Phone = model.Phone; profile.Email = model.Email; profile.City = model.City; profile.TimeLastActive = DateTime.Now; profile.ProfileStatisticsId = db.profileStatistics.OrderByDescending(i => i.ProfileStatisticsId).FirstOrDefault().ProfileStatisticsId; db.profile.Add(profile); db.SaveChanges(); MyDBModels.User user = new MyDBModels.User(); user.ProfileId = db.profile.OrderByDescending(i => i.ProfileId).FirstOrDefault().ProfileId; user.FriendIdArray = new int[] {}; user.CommunicationIdArray = new int[] {}; user.GroupIdArray = new int[] {}; user.ArduinoIdArray = new int[] {}; user.FirebaseToken = ""; user.FriendPossibleIdArray = new int[] {}; user.CommunicationPinIdArray = new int[] {}; db.user.Add(user); db.SaveChanges(); MyDBModels.SignUp signUp = new MyDBModels.SignUp(); signUp.BaseCode = baseData; signUp.LoginEncode = model.Login; signUp.PasswordEncode = model.Password; signUp.UserId = db.user.OrderByDescending(i => i.UserId).FirstOrDefault().UserId; db.signUp.Add(signUp); db.SaveChanges(); var dataAccess = new ProfileDataAccess(); var userId = db.signUp.Where(s => s.BaseCode == baseData).First().UserId; var profileId = db.user.Where(u => u.UserId == userId).First().ProfileId; var profileDbModel = db.profile.Where(p => p.ProfileId == profileId).First(); var profileModel = new ProfileModel(); return(dataAccess.previewProfile(userId, 1)); }