コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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));
        }