Esempio n. 1
0
        protected virtual async Task <UserLoginData> CreateSuperAdmin(UserAdminInputData input, UserManager <User> userManager)
        {
            User superAdmin = new User()
            {
                Id             = Guid.NewGuid().ToString(),
                FirstName      = "Super",
                LastName       = "Admin",
                OrganizationID = input.OrganizationID,
                Email          = input.Email,
                UserName       = input.Email,
                CreateBy       = "Provider Organization",
                UpdateBy       = "Provider Organization",
                CreateDate     = DateTimeService.ProvideDateTime(),
                UpdateDate     = DateTimeService.ProvideDateTime()
            };

            string password = Guid.NewGuid().ToString();

            await userManager.CreateAsync(superAdmin, password);

            await userManager.AddToRoleAsync(superAdmin, "SuperAdmin");

            UserLoginData userLogin = new UserLoginData()
            {
                Password = password, UserName = input.Email
            };

            return(userLogin);
        }
Esempio n. 2
0
        public async Task CreateNewRecord(SupplierInputModel model)
        {
            using (var transaction = DbContext.Database.BeginTransaction())
            {
                Guid supplierOrganizationID = await CreateSupplierOrganization(model);

                UserAdminInputData data = new UserAdminInputData()
                {
                    OrganizationID = supplierOrganizationID, Email = model.Email
                };

                var loginData = await CreateSuperAdmin(data, _userManager);
                await CreateSupplier(model, supplierOrganizationID);

                //await EmailSender.SendEmailAsync(model.Email, "Your Supplier Organization is created", $"Your logging credentials UserName:{loginData.UserName} and Password: {loginData.Password}");
                await EmailSender.SendEmailAsync("*****@*****.**", "Your Supplier Organization is created", $"Your logging credentials UserName:{loginData.UserName} and Password: {loginData.Password}");

                transaction.Commit();
            }
        }
Esempio n. 3
0
        public async Task CreateNewRecord(CustomerInputeModel model)
        {
            using (var transaction = DbContext.Database.BeginTransaction())
            {
                Guid customerOrganizationID = await CreateCustomerOrganization(model);

                UserAdminInputData data = new UserAdminInputData()
                {
                    OrganizationID = customerOrganizationID, Email = model.Email
                };

                var loginData = await CreateSuperAdmin(data, _userManager);

                await CreateCustomer(model, customerOrganizationID);

                // change it if you are going to production, password protection is needed too
                //await EmailSender.SendEmailAsync(model.Email, "Your Customer Organization is created", $"Your logging credentials UserName:{loginData.UserName} and Password: {loginData.Password}");
                await EmailSender.SendEmailAsync("*****@*****.**", "Your Customer Organization is created", $"Your logging credentials UserName:{loginData.UserName} and Password: {loginData.Password}");

                transaction.Commit();
            }
        }