public string RegisterUser(AspNetUserDTO user)
 {
     try
     {
         var record = new AspNetUser()
         {
             Email        = user.Email,
             UserName     = user.UserName,
             PasswordHash = user.PasswordHash,
         };
         Create(record);
         _uow.Save();
         //record.AspNetRoles.Add(new AspNetRole() { Id=(int)UserRole.Admin});
         if (!string.IsNullOrEmpty(record.Id))
         {
             return(record.Id);
         }
         return(null);
     }
     catch (Exception ex)
     {
         Tracer.Error(ex);
         //cur.Trace.Warn("IsHijri Error :" + hijri.ToString() + "\n" + ex.Message);
         return("");
     }
 }
        public async Task <ActionResult> UpdateUserRole([FromBody] AspNetUserDTO aspNetUserDTO)
        {
            try
            {
                if (aspNetUserDTO.userRoles.RoleName != null && aspNetUserDTO.Email != null)
                {
                    var             GetuserId     = _userRepo.GetUser(aspNetUserDTO);
                    var             GetUserRoleId = _userRepo.GetRole(aspNetUserDTO.userRoles.RoleName);
                    AspNetUserRoles NewRole       = new AspNetUserRoles()
                    {
                        UserId = GetuserId.Result.Id,
                        RoleId = GetUserRoleId.Result.Id
                    };

                    await _userRepo.UpdateUserRole(NewRole);

                    return(new StatusCodeResult(200));
                }
                else
                {
                    return(new StatusCodeResult(400));
                }
            }catch (Exception ex)
            {
                return(new StatusCodeResult(400));
            }
        }
 public async Task <AspNetUserDTO> GetUserInfo(AspNetUserDTO aspNetUserDTO)
 {
     try{
         if (aspNetUserDTO.Email != null)
         {
             var userResult = _databaseContext.AspNetUsers.Where(a => a.Email == aspNetUserDTO.Email).Select(a => new AspNetUserDTO()
             {
                 BusNumber    = a.BusNumber,
                 Email        = a.Email,
                 FirstName    = a.FirstName,
                 LastName     = a.LastName,
                 PhoneNumber  = a.PhoneNumber,
                 PostCode     = a.PostCode,
                 Street       = a.Street,
                 StreetNumber = a.StreetNumber,
                 UserName     = a.Email
             }).FirstOrDefault();
             return(await Task.FromResult(userResult));
         }
         else
         {
             return(null);
         }
     }catch (Exception ex)
     {
         throw new ArgumentException(ex.Message);
     }
 }
Exemple #4
0
        /// <summary>
        /// Saves a new user or updates an already existing user.
        /// </summary>
        /// <param name="user">User to be saved or updated.</param>
        /// <param name="userId">UserId of the user creating or updating</param>
        /// <returns>User</returns>
        public AspNetUser SaveUser(AspNetUserDTO user, string userId)
        {
            var exists = this.UserExists(user.Id);

            if (exists == false)
            {
                exists = this.UserExists(user.Email);
            }

            if (exists != true)
            {
                var aspnetUser = new AspNetUser()
                {
                    Id                   = Guid.NewGuid().ToString(),
                    Email                = user.Email,
                    UserName             = user.UserName,
                    FirstName            = user.FirstName,
                    LastName             = user.LastName,
                    DateOfBirth          = user.DateOfBirth,
                    EmailConfirmed       = user.EmailConfirmed,
                    PhoneNumber          = user.PhoneNumber,
                    CreatedBy            = userId,
                    TimeStamp            = DateTime.Now,
                    CreatedOn            = DateTime.Now,
                    Deleted              = false,
                    GenderId             = user.GenderId,
                    AccessFailedCount    = 0,
                    PasswordHash         = user.PasswordHash,
                    PhoneNumberConfirmed = false,
                    TwoFactorEnabled     = false,
                    LockoutEnabled       = false,
                };

                this.UnitOfWork.Get <AspNetUser>().AddNew(aspnetUser);
                this.UnitOfWork.SaveChanges();
                return(aspnetUser);
            }

            else
            {
                var result = this.UnitOfWork.Get <AspNetUser>().AsQueryable()
                             .FirstOrDefault(u => u.Email == user.Email || u.Id == user.Id);
                if (result != null)
                {
                    result.FirstName    = user.FirstName;
                    result.LastName     = user.LastName;
                    result.UserName     = user.UserName;
                    result.DateOfBirth  = user.DateOfBirth;
                    result.GenderId     = user.GenderId;
                    result.PhoneNumber  = user.PhoneNumber;
                    result.PasswordHash = user.PasswordHash;
                    result.TimeStamp    = DateTime.Now;
                    result.UpdatedBy    = userId;

                    this.UnitOfWork.Get <AspNetUser>().Update(result);
                    this.UnitOfWork.SaveChanges();
                }
                return(result);
            }
        }
Exemple #5
0
        public async Task <IActionResult> UpdateUserRole(string Email)
        {
            try
            {
                if (Email != null)
                {
                    AspNetUserDTO currentUser = new AspNetUserDTO()
                    {
                        Email = Email
                    };
                    var Getuser = await _userRepo.GetUser(currentUser);

                    var GetRoleUserid = await _userRepo.GetUserRoleId(Getuser);

                    var GetUserInfo = await _userRepo.GetUserInfo(currentUser);

                    string selected;
                    if (GetRoleUserid == null)
                    {
                        selected = "None";
                    }
                    else
                    {
                        var result = await _userRepo.GetUserRoleName(GetRoleUserid);

                        selected = result.RoleName;
                    }

                    var GetRoles = await _userRepo.GetRoles();

                    ViewUsersRole viewUsersRole = new ViewUsersRole()
                    {
                        BusNumber    = GetUserInfo.BusNumber,
                        Email        = GetUserInfo.Email,
                        FirstName    = GetUserInfo.FirstName,
                        LastName     = GetUserInfo.LastName,
                        PhoneNumber  = GetUserInfo.PhoneNumber,
                        PostCode     = GetUserInfo.PostCode,
                        Street       = GetUserInfo.Street,
                        StreetNumber = GetUserInfo.StreetNumber,
                        UserName     = GetUserInfo.UserName,
                        userRoles    = GetRoles,
                        SelectedRole = selected
                    };
                    //await _usersController.UpdateUserRole(CurrentUserDTO);
                    //var model = _userRepo.GetUsers();
                    return(View(viewUsersRole));
                }
                else
                {
                    return(BadRequest());
                }
            }catch (Exception ex)
            {
                return(BadRequest());
            }
        }
        public IHttpActionResult GetAspNetUser(string id)
        {
            AspNetUser aspNetUser = db.AspNetUsers.Find(id);

            if (aspNetUser == null)
            {
                return(NotFound());
            }

            return(Ok(AspNetUserDTO.FromEntity(aspNetUser)));
        }
        public IHttpActionResult GetAspNetUser()
        {
            var        userId     = User.Identity.GetUserId();
            AspNetUser aspNetUser = db.AspNetUsers.FirstOrDefault(user => user.Id == userId);

            if (aspNetUser == null)
            {
                return(NotFound());
            }
            return(Ok(AspNetUserDTO.FromEntity(aspNetUser)));
        }
Exemple #8
0
        public async Task <IActionResult> UpdateUserRolePost(ViewUsersRole viewUsersRole)
        {
            AspNetUserDTO updateuser = new AspNetUserDTO()
            {
                Email     = viewUsersRole.Email,
                userRoles = new UserRolesDTO()
                {
                    RoleName = viewUsersRole.SelectedRole
                }
            };

            await _usersController.UpdateUserRole(updateuser);

            return(RedirectToAction("UsersList"));
        }
        public async Task <ActionResult <AspNetUserDTO> > Getuser([FromBody] AspNetUserDTO user)
        {
            try
            {
                /*AspNetUserDTO userDTO = new AspNetUserDTO();
                 * userDTO.Email = user[0];
                 * userDTO.PasswordHash = user[1];*/
                var result = await _userRepo.GetUserAuth(user);

                var resultest = result;
                return(resultest);
            }catch (Exception ex)
            {
                return(StatusCode(400));
            }
        }
Exemple #10
0
 public AspNetUserDTO GetUserByName(string userName)
 {
     using (var uow = new UnitOfWork())
     {
         var userEntity = uow.AspNetUsers.GetUserByName(userName);
         var user       = new AspNetUserDTO()
         {
             Id                = userEntity.Id,
             UserName          = userEntity.UserName,
             Email             = userEntity.Email,
             EmailConfirmed    = userEntity.EmailConfirmed,
             AccessFailedCount = userEntity.AccessFailedCount,
         };
         return(user);
     }
 }
        public async Task <ActionResult> PostUser([FromBody] AspNetUserDTO newUser)
        {
            try
            {
                var GetRoleId      = _userRepo.GetRole("Member");
                var hashedpassword = new PasswordHasher <IdentityUser>();
                var Password       = new IdentityUser();
                var resultpass     = hashedpassword.HashPassword(Password, newUser.PasswordHash);

                Guid        NewuserId = Guid.NewGuid();
                AspNetUsers User      = new AspNetUsers()
                {
                    Email              = newUser.Email,
                    BusNumber          = newUser.BusNumber,
                    FirstName          = newUser.FirstName,
                    Id                 = Password.Id,
                    LastName           = newUser.LastName,
                    NormalizedEmail    = newUser.Email.ToUpper(),
                    NormalizedUserName = newUser.Email.ToUpper(),
                    PasswordHash       = resultpass,
                    ConcurrencyStamp   = Password.ConcurrencyStamp,
                    PhoneNumber        = newUser.PhoneNumber,
                    PostCode           = newUser.PostCode,
                    Street             = newUser.Street,
                    StreetNumber       = newUser.StreetNumber,
                    SecurityStamp      = null,
                    UserName           = newUser.Email
                };


                AspNetUserRoles AddRoleToUser = new AspNetUserRoles()
                {
                    RoleId = GetRoleId.Result.Id,
                    UserId = Password.Id
                };
                await _userRepo.AddnewUser(User, AddRoleToUser);

                return(new OkObjectResult(200));
            }catch (Exception ex)
            {
                return(new StatusCodeResult(400));
            }
        }
Exemple #12
0
        public AspNetUser ConvertToEF(AspNetUserDTO DTO)
        {
            var EF = new AspNetUser()
            {
                AccessFailedCount = DTO.AccessFailedCount,
                Email             = DTO.Email,
                EmailConfirmed    = DTO.EmailConfirmed,
                Id                   = DTO.Id,
                LockoutEnabled       = DTO.LockoutEnabled,
                LockoutEndDateUtc    = DTO.LockoutEndDateUtc,
                PasswordHash         = DTO.PasswordHash,
                PhoneNumber          = DTO.PhoneNumber,
                PhoneNumberConfirmed = DTO.PhoneNumberConfirmed,
                SecurityStamp        = DTO.SecurityStamp,
                TwoFactorEnabled     = DTO.TwoFactorEnabled,
                UserName             = DTO.UserName
            };

            return(EF);
        }
Exemple #13
0
        public AspNetUserDTO ConvertToDTO(AspNetUser EF)
        {
            var DTO = new AspNetUserDTO()
            {
                AccessFailedCount = EF.AccessFailedCount,
                Email             = EF.Email,
                EmailConfirmed    = EF.EmailConfirmed,
                Id                   = EF.Id,
                LockoutEnabled       = EF.LockoutEnabled,
                LockoutEndDateUtc    = EF.LockoutEndDateUtc,
                PasswordHash         = EF.PasswordHash,
                PhoneNumber          = EF.PhoneNumber,
                PhoneNumberConfirmed = EF.PhoneNumberConfirmed,
                SecurityStamp        = EF.SecurityStamp,
                TwoFactorEnabled     = EF.TwoFactorEnabled,
                UserName             = EF.UserName
            };

            return(DTO);
        }
        public async Task <AspNetUsers> GetUser(AspNetUserDTO aspNETUserDTO)
        {
            try
            {
                var UserGetInfo = _databaseContext.AspNetUsers.Where(a => a.Email == aspNETUserDTO.Email).Select(a => new AspNetUsers()
                {
                    Id = a.Id
                }).FirstOrDefault();

                if (UserGetInfo != null)
                {
                    return(UserGetInfo);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                throw new ArgumentException(ex.Message);
            }
        }
        public async Task <AspNetUserDTO> GetUserAuth(AspNetUserDTO aspNETUserDTO)
        {
            try
            {
                var UserGetInfo = _databaseContext.AspNetUsers.Include(y => y.TblReservation).ThenInclude(x => x.MusicEvement).Include(y => y.TblReservation).ThenInclude(b => b.Price).Include(y => y.TblReservation).Where(a => a.Email == aspNETUserDTO.Email).Select(a => new AspNetUserDTO()
                {
                    UserName     = a.UserName,
                    Email        = a.Email,
                    BusNumber    = a.BusNumber,
                    PhoneNumber  = a.PhoneNumber,
                    PostCode     = a.PostCode,
                    Street       = a.Street,
                    StreetNumber = a.StreetNumber,
                    FirstName    = a.FirstName,
                    LastName     = a.LastName,
                    PasswordHash = a.PasswordHash,
                    Reservaties  = a.TblReservation.Select(ab => new TblReservationDTO()
                    {
                        MusicEvement = new TblFestivalsDTO()
                        {
                            MusicEvenementName = ab.MusicEvement.MusicEvenementName
                        },
                        Price = new TblPriceDTO()
                        {
                            Name  = ab.Price.TypeNavigation.Name,
                            Price = ab.Price.Price
                        }
                    })
                })
                                  .FirstOrDefault();
                if (UserGetInfo != null)
                {
                    var PWHasher = new PasswordHasher <IdentityUser>();
                    var Password = new IdentityUser()
                    {
                        PasswordHash = aspNETUserDTO.PasswordHash
                    };
                    bool pwd = PWHasher.VerifyHashedPassword(Password, UserGetInfo.PasswordHash, Password.PasswordHash) == PasswordVerificationResult.Success;


                    if (pwd)
                    {
                        Console.WriteLine("correct");
                        return(await Task.FromResult(UserGetInfo));
                    }
                    else
                    {
                        Console.WriteLine("fout");
                        return(null);
                    }
                }
                else
                {
                    Console.WriteLine("lol");
                    return(null);
                }

                //var postReponse = await string.Format("")
            }catch (Exception ex)
            {
                throw new ArgumentException(ex.Message);
            }
        }
Exemple #16
0
        public async Task <ActionResult> PostReservation([FromBody] TblReservationDTO tblReservationDTO)
        {
            try
            {
                AspNetUserDTO aspNetUserDTO = new AspNetUserDTO();
                aspNetUserDTO.Email = tblReservationDTO.User.Email;

                AspNetUsers aspNetUser = await _userRepo.GetUser(aspNetUserDTO);

                TblFestivalsDTO tblFestivalsDTO = new TblFestivalsDTO();
                tblFestivalsDTO.MusicEvenementName = tblReservationDTO.MusicEvement.MusicEvenementName;

                TblFestivals tblFestivals = new TblFestivals();
                tblFestivals = await _festivalRepo.GetFestivalName(tblFestivalsDTO);

                TblPriceDTO tblPriceDTOGetCat = new TblPriceDTO()
                {
                    Name = tblReservationDTO.Price.Name
                };

                TblPrice tblPriceCat = new TblPrice();
                tblPriceCat = await _festivalRepo.GetFestivalTypeCategory(tblPriceDTOGetCat);

                TblReservation tblTempReservation = new TblReservation();
                tblTempReservation.MusicEvementId = tblFestivals.MusicEvenementId;
                tblTempReservation.Price          = new TblPrice()
                {
                    Price = tblReservationDTO.Price.Price,
                    Type  = tblPriceCat.Type
                };
                int NumberOfSeat;

                if (tblReservationDTO.Seat != null)
                {
                    NumberOfSeat = tblReservationDTO.Seat.SeatNumber;
                }
                else
                {
                    NumberOfSeat = 0;
                }


                TblPrice tblPrice = new TblPrice();
                tblPrice = await _festivalRepo.GetPrice(tblTempReservation);

                Guid           NewSeatId        = Guid.NewGuid();
                Guid           NewReservationId = Guid.NewGuid();
                TblReservation tblReservation   = new TblReservation()
                {
                    ReservationId  = NewReservationId,
                    Userid         = aspNetUser.Id,
                    MusicEvementId = tblFestivals.MusicEvenementId,
                    PriceId        = tblPrice.Priceid,
                    SeatId         = NewSeatId,
                    Seat           = new TblSeat()
                    {
                        SeatId     = NewSeatId,
                        SeatNumber = NumberOfSeat
                    }
                };

                await _reservationRepo.AddnewReservatie(tblReservation);

                return(new OkObjectResult(200));
            }
            catch (Exception ex)
            {
                return(new StatusCodeResult(400));
            }
        }
 // GET: api/Users
 public JsonResult <IEnumerable <AspNetUserDTO> > GetAspNetUsers()
 {
     return(Json(db.AspNetUsers.ToList().Select(user => AspNetUserDTO.FromEntity(user, 1))));
 }