Exemplo n.º 1
0
        public async Task <IActionResult> Create([FromBody] AccountSaveResource accountModel) //AccountSaveResource accountModel
        {
            var user = new ApplicationUser()
            {
                UserName = "******", Email = "*****@*****.**", IsEnabled = true, EmailConfirmed = true, FirstName = "Akinsanya", LastName = "Olanrewaju"
            };
            var result = await userManager.CreateAsync(user, "SidClient@01");

            if (roleManager.Roles.Count() == 0)
            {
                await roleManager.CreateAsync(new IdentityRole { Name = "Admin" });

                await roleManager.CreateAsync(new IdentityRole { Name = "Client" });

                await roleManager.CreateAsync(new IdentityRole { Name = "Inventory" });

                await roleManager.CreateAsync(new IdentityRole { Name = "Manager" });
            }

            var user1 = await userManager.FindByNameAsync("atplerry");

            await userManager.AddToRolesAsync(user1, new string[] { "Admin", "Client", "Inventory", "Manager" });

            return(Content("Success", "text/html"));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> AdminClientUser([FromBody] AccountSaveResource model)
        {
            var user = new ApplicationUser()
            {
                UserName       = model.Username,
                Email          = model.Email,
                EmailConfirmed = true,
                FirstName      = model.FirstName,
                LastName       = model.LastName,
                PhoneNumber    = model.PhoneNumber,
                IsEnabled      = true
            };

            var result = await userManager.CreateAsync(user, "SidClient01");

            if (result.Succeeded)
            {
                string[] userRole    = new string[] { "Admin" };
                var      assignRoles = await DirectAssignRolesToUser(user.Id, userRole);
            }
            else
            {
                return(Content("Failed", "text/html"));
            }

            return(Content("Successful", "text/html"));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> CreateClientUser([FromBody] AccountSaveResource model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var user = new ApplicationUser()
            {
                UserName       = model.Username,
                Email          = model.Email,
                EmailConfirmed = true,
                FirstName      = model.FirstName,
                LastName       = model.LastName,
                PhoneNumber    = model.PhoneNumber,
                IsEnabled      = true
            };

            model.Password = "******";

            IdentityResult addUserResult = await userManager.CreateAsync(user, model.Password);

            if (!addUserResult.Succeeded)
            {
                return(StatusCode(400, addUserResult));
            }

            DepartmentMealProfiling departProfile = await context.DepartmentMealProfilings.Where(d => d.DepartmentId == model.DepartmentId).FirstOrDefaultAsync();

            var userProfiling = new UserMealProfiling()
            {
                UserId = user.Id,
                DepartmentMealProfilingId = departProfile.Id
            };

            context.UserMealProfilings.Add(userProfiling);
            await context.SaveChangesAsync();

            var result = mapper.Map <ApplicationUser, ApplicationUserModel>(user);

            return(StatusCode(200, result));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> CreateClientUser([FromBody] AccountSaveResource model)
        {
            var client = aspect.Clients.Where(c => c.Id == model.SidClientId).SingleOrDefault();

            if (client == null)
            {
                return(Content("Failed", "text/html"));
            }

            var user = new ApplicationUser()
            {
                UserName       = model.Username,
                Email          = model.Email,
                EmailConfirmed = true,
                FirstName      = model.FirstName,
                LastName       = model.LastName,
                PhoneNumber    = model.PhoneNumber,
                IsEnabled      = true
            };

            String randomPassword = GeneratePassword(3, 3, 3);

            randomPassword = "******";

            var result = await userManager.CreateAsync(user, randomPassword);

            if (result.Succeeded)
            {
                string[] userRole    = new string[] { "Client" };
                var      assignRoles = await DirectAssignRolesToUser(user.Id, userRole);

                // create user client
                var userClient = new ClientUser()
                {
                    SidClientId = model.SidClientId,
                    ClientName  = client.Client,
                    UserId      = user.Id
                };

                context.ClientUsers.Add(userClient);
                await context.SaveChangesAsync();


                #region EmailSender

                var uploadFolderPath = Path.Combine(host.WebRootPath, "templates/email-template");
                if (Directory.Exists(uploadFolderPath))
                {
                    Directory.CreateDirectory(uploadFolderPath);
                }

                var fileName = "Confirm_Account_Registration.html"; //Guid.NewGuid().ToString() + Path.GetExtension(file.FileName);
                var filePath = Path.Combine(uploadFolderPath, fileName);

                var builder = new BodyBuilder();

                using (StreamReader SourceReader = System.IO.File.OpenText(filePath))
                {
                    builder.HtmlBody = SourceReader.ReadToEnd();
                }

                var code = await userManager.GenerateEmailConfirmationTokenAsync(user);


                // Send Email Address
                var subject     = "SIDIMSLite Account Creation";
                var Email       = user.Email;
                var Password    = randomPassword;
                var Message     = "Messaage End";
                var callbackUrl = "http://*****:*****@secureidltd.com"),
                    Subject    = subject,
                    IsBodyHtml = true,
                    Body       = messageBody
                };

                mailMessage.To.Add(Email);

                var smtpClient = new SmtpClient
                {
                    Credentials = new NetworkCredential("*****@*****.**", "Secure123"),
                    Host        = "smtp.secureidltd.com",
                    Port        = 25 //587
                };

                smtpClient.Send(mailMessage);

                #endregion
            }
            else
            {
                return(Content("Failed", "text/html"));
            }

            return(Content("Successful", "text/html"));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> CreateManager(AccountSaveResource accountModel)
        {
            await roleManager.CreateAsync(new IdentityRole { Name = "Manager" });

            return(Content("Success", "text/html"));
        }