Esempio n. 1
0
 public async Task <IActionResult> Register(CustomerForRegisterDto customer)
 {
     if (!await _iCustomerManager.RegisterCustomer(customer))
     {
         return(BadRequest("Email address already exists"));
     }
     return(Ok());
 }
Esempio n. 2
0
        public async Task <CustomerForRegisterDto> RegisterCustomer(CustomerForRegisterDto customerForRegisterDto, string password)
        {
            GenerateHashAndSalt(password, out byte[] hash, out byte[] salt);

            Customer customer = _iMapper.Map <CustomerForRegisterDto, Customer>(customerForRegisterDto);

            customer.Password = hash;
            customer.Salt     = salt;

            await _context.Customer.AddAsync(customer);

            return(customerForRegisterDto);
        }
        public async Task <bool> RegisterCustomer(CustomerForRegisterDto customerForRegisterDto)
        {
            customerForRegisterDto.Email = customerForRegisterDto.Email.ToLower();

            if (await _iUnitOfWork.CustomerRepository.CustomerExists(customerForRegisterDto.Email))
            {
                return(false);
            }

            var newCustomer = await _iUnitOfWork.CustomerRepository.RegisterCustomer(customerForRegisterDto, customerForRegisterDto.Password);

            await _iUnitOfWork.Commit();

            return(true);
        }
Esempio n. 4
0
        public async Task <IActionResult> Register(CustomerForRegisterDto customerForRegisterDto)
        {
            //Validate user

            customerForRegisterDto.Customername = customerForRegisterDto.Customername.ToLower();
            //Check whether user with username exists or not
            if (await _repo.CustomerExists(customerForRegisterDto.Customername))
            {
                return(BadRequest("Username already exists"));
            }

            //Create the user without hashed password to create
            var customerToCreate = new Customer
            {
                Customername = customerForRegisterDto.Customername
            };

            var customer = await _repo.Register(customerToCreate, customerForRegisterDto.Password);

            return(StatusCode(201));
        }
Esempio n. 5
0
        public async Task <IActionResult> Register(CustomerForRegisterDto customerForRegisterDto)
        {
            // Makes username lowercase
            customerForRegisterDto.Username = customerForRegisterDto.Username.ToLower();

            // Returns error if customer's username already exists in db
            if (await repo.CustomerExists(customerForRegisterDto.Username))
            {
                return(BadRequest("Username already exists"));
            }

            // Converts dto to the DB Customer model class
            var customerToCreate = this.mapper.Map <Customers>(customerForRegisterDto);

            // Runs the register method and returns the created user
            var createdUser = await repo.Register(customerToCreate, customerForRegisterDto.Password);

            // Maps the created user to an update DTO (for edit profile)
            var customerToReturn = mapper.Map <CustomerForUpdateDto>(createdUser);

            // Routing middleware to get the new customer details (from Customer controller GetCustomer with supplied id)
            return(CreatedAtRoute("GetCustomer", new { controller = "Customers", id = createdUser.CustomerId }, customerToReturn));
        }