public ActionResult <FlatDTO> createFlat()
        {
            var identity = HttpContext.User.Identity as ClaimsIdentity;
            int userID   = Int16.Parse(identity.FindFirst(ClaimTypes.NameIdentifier).Value);
            var user     = _context.User.FirstOrDefault(x => x.Id == userID);

            if (user.FlatId > 0)
            {
                Response.StatusCode = 403;
                return(null);
            }
            var flat = new Flat
            {
                //Temporary flat address. Will need to be added in with the post request later
                Address = "50 Symonds Street",
                Users   = new List <User> {
                    user
                },
                Schedules = new List <Schedule>(),
                Payments  = new List <Payment>()
            };

            user.Flat = flat;
            _context.Add(flat);
            _context.SaveChanges();
            Response.StatusCode = 201;
            return(new FlatDTO(flat));
        }
        public void SetupDevelopmentDataSet()
        {
            _database.Add(new TestModelItem
            {
                Name = "A Test Item"
            });

            _database.SaveChanges();
        }
        /// <summary>
        /// Tries to create a new user with the specified parameters
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="firstName"></param>
        /// <param name="lastName"></param>
        /// <param name="dateOfBirth"></param>
        /// <param name="phoneNumber"></param>
        /// <param name="email"></param>
        /// <param name="medicalInformation"></param>
        /// <param name="bankAccount"></param>
        /// <param name="password"></param>
        /// <param name="user">A user object - populated if the creation was successful</param>
        /// <returns>A bool indicating if a user was created</returns>
        private bool TryCreateUser(string userName, string firstName, string lastName, DateTime dateOfBirth, string phoneNumber,
                                   string email, string medicalInformation, string bankAccount, string password, out User user)
        {
            user = null;

            // Returns false if username is not unique (must be unique as per entity schema). Does not create user.
            if (_database.User.FirstOrDefault(u => u.UserName.ToLower() == userName.ToLower()) != null)
            {
                return(false);
            }

            // Returns false if email is not unique (must be unique as per entity schema). Does not create user.
            if (_database.User.FirstOrDefault(u => u.Email.ToLower() == email.ToLower()) != null)
            {
                return(false);
            }

            // Returns false if phone number is not unique (must be unique as per entity schema). Does not create user.
            if (_database.User.FirstOrDefault(u => u.PhoneNumber.ToLower() == phoneNumber.ToLower()) != null)
            {
                return(false);
            }

            user = new User
            {
                UserName           = userName,
                FirstName          = firstName,
                LastName           = lastName,
                DateOfBirth        = dateOfBirth,
                PhoneNumber        = phoneNumber,
                Email              = email,
                MedicalInformation = medicalInformation,
                BankAccount        = bankAccount,
                ResetToken         = "",
                CanReset           = false,
            };

            PasswordHasher <User> hasher = new PasswordHasher <User>();
            var hashedPassword           = hasher.HashPassword(user, password);

            user.HashedPassword = hashedPassword;
            _database.Add(user);
            _database.SaveChanges();

            return(true);
        }
Exemplo n.º 4
0
        public void SetupDevelopmentDataSet()
        {
            // This function could also be called in the unit tests if not called here
            InitialiseTestDataObjects();

            _database.Add(_yin);
            _database.Add(_teresa);
            _database.Add(_bryan);
            _database.Add(_clay);
            _database.Add(_payment1);
            _database.Add(_payment2);
            _database.Add(_userPaymentBryan1);
            _database.Add(_userPaymentBryan2);
            _database.Add(_userPaymentTeresa1);
            _database.Add(_userPaymentTeresa2);
            _database.Add(_userPaymentYin1);
            _database.Add(_userPaymentYin2);
            _database.Add(_schedule1);
            _database.Add(_chore1);
            _database.Add(_chore2);
            _database.Add(_flat1);
            _database.Add(_flat2);
            _database.Add(_test1);
            _database.Add(_test2);

            _database.SaveChanges();
        }
Exemplo n.º 5
0
        public void SetupDevelopmentDataSet()
        {
            // This function could also be called in the unit tests if not called here
            InitialiseTestDataObjects();

            _database.Add(yin);
            _database.Add(teresa);
            _database.Add(bryan);
            _database.Add(payment1);
            _database.Add(payment2);
            _database.Add(userPaymentBryan1);
            _database.Add(userPaymentBryan2);
            _database.Add(userPaymentTeresa1);
            _database.Add(userPaymentTeresa2);
            _database.Add(userPaymentYin1);
            _database.Add(userPaymentYin2);
            _database.Add(schedule1);
            _database.Add(flat1);

            AddTestUsers();

            _database.SaveChanges();
        }