Beispiel #1
0
        public UsersController()
        {
            var dbContext    = new WealthEconomyContext();
            var appUserStore = new AppUserStore(dbContext);
            var appRoleStore = new AppRoleStore(dbContext);

            _userManager = new AppUserManager(appUserStore, appRoleStore);
        }
Beispiel #2
0
 public ResourcePoolManager()
 {
     Context               = new WealthEconomyContext();
     ElementCellStore      = new BaseRepository <ElementCell>(Context);
     ElementFieldStore     = new BaseRepository <ElementField>(Context);
     ResourcePoolStore     = Context.Set <ResourcePool>();
     UserElementCellStore  = new BaseRepository <UserElementCell>(Context);
     UserElementFieldStore = new BaseRepository <UserElementField>(Context);
     UserResourcePoolStore = new BaseRepository <UserResourcePool>(Context);
 }
Beispiel #3
0
        public static void Apply(WealthEconomyContext context)
        {
            // Create roles
            CreateRoles(context);

            // Create admin user
            CreateAdminUser(context);

            // Create sample user
            CreateSampleUser(context);
        }
Beispiel #4
0
        private static void CreateRoles(WealthEconomyContext context)
        {
            // Manager & store
            var roleStore   = new RoleStore <Role, int, UserRole>(context);
            var roleManager = new RoleManager <Role, int>(roleStore);

            // Guest role
            var guestRole = new Role("Guest");

            roleManager.Create(guestRole);

            // Regular role
            var regularRole = new Role("Regular");

            roleManager.Create(regularRole);

            // Admin role
            var adminRole = new Role("Administrator");

            roleManager.Create(adminRole);

            // Save
            context.SaveChanges();
        }
Beispiel #5
0
        private static void CreateAdminUser(WealthEconomyContext context)
        {
            // Manager & store
            var userStore   = new AppUserStore(context);
            var userManager = new UserManager <User, int>(userStore);

            // Admin user
            var adminUserName = "******";
            var adminEmail    = "*****@*****.**";
            var adminUser     = new User(adminUserName, adminEmail)
            {
                EmailConfirmed          = true,
                EmailConfirmationSentOn = DateTime.UtcNow,
                HasPassword             = true
            };
            var adminUserPassword = DateTime.Now.ToString("yyyyMMdd");

            userManager.Create(adminUser, adminUserPassword);
            context.SaveChanges();

            // Add to "admin" role
            userManager.AddToRole(adminUser.Id, "Administrator");
            context.SaveChanges();
        }
Beispiel #6
0
 public void InitializeContext()
 {
     Context = new WealthEconomyContext();
 }
 public RoleRepository(WealthEconomyContext context)
     : base(context)
 {
 }
 public void InitializeContext()
 {
     Context = new WealthEconomyContext();
 }
Beispiel #9
0
 public UserLoginRepository(WealthEconomyContext context)
     : base(context)
 {
 }
 public LicenseRepository(WealthEconomyContext context)
     : base(context)
 {
 }
Beispiel #11
0
 public UserElementFieldRepository(WealthEconomyContext context)
     : base(context)
 {
 }
 public ElementRepository(WealthEconomyContext context)
     : base(context)
 {
 }
 public UserLicenseRatingRepository(WealthEconomyContext context)
     : base(context)
 {
 }
 public UserClaimRepository(WealthEconomyContext context)
     : base(context)
 {
 }
 public UserResourcePoolRepository(WealthEconomyContext context)
     : base(context)
 {
 }
Beispiel #16
0
 public BaseUnitOfWork()
 {
     Context        = new WealthEconomyContext();
     MainRepository = new BaseRepository <TEntityType>(Context);
 }
 public SectorRepository(WealthEconomyContext context)
     : base(context)
 {
 }
Beispiel #18
0
 public AppRoleStore(WealthEconomyContext context) : base(context)
 {
 }
Beispiel #19
0
        private static void CreateSampleUser(WealthEconomyContext context)
        {
            // Managers & stores & repositories
            var userStore         = new AppUserStore(context);
            var userManager       = new UserManager <User, int>(userStore);
            var resourcePoolStore = context.Set <ResourcePool>();

            // Sample user
            var sampleUserName = "******";
            var sampleEmail    = "*****@*****.**";
            var sampleUser     = new User(sampleUserName, sampleEmail)
            {
                EmailConfirmed          = true,
                EmailConfirmationSentOn = DateTime.UtcNow,
                HasPassword             = true
            };
            var sampleUserPassword = DateTime.Now.ToString("yyyyMMdd");

            userManager.Create(sampleUser, sampleUserPassword);
            context.SaveChanges();

            // Add to regular role
            userManager.AddToRole(sampleUser.Id, "Regular");
            context.SaveChanges();

            // Login as (required in order to save the rest of the items)
            Security.LoginAs(sampleUser.Id, "Regular");

            // Sample resource pools
            var billionDollarQuestion      = CreateBillionDollarQuestion(sampleUser);
            var upoSample                  = CreateUPOSample(sampleUser);
            var basicsExistingSystemSample = CreateBasicsExistingSystemSample(sampleUser);
            var basicsNewSystemSample      = CreateBasicsNewSystemSample(sampleUser);
            var priorityIndexSample        = CreatePriorityIndexSample(sampleUser);
            var knowledgeIndexSample       = CreateKnowledgeIndexSample(sampleUser);
            var knowledgeIndexPopularSoftwareLicenseSample = CreateKnowledgeIndexPopularSoftwareLicenseSample(sampleUser);
            var totalCostIndexExistingSystemSample         = CreateTotalCostIndexExistingSystemSample(sampleUser);
            var totalCostIndexNewSystemSample = CreateTotalCostIndexNewSystemSample(sampleUser);
            var allInOneSample = CreateAllInOneSample(sampleUser);

            // Set Id fields explicitly, since strangely EF doesn't save them in the order that they've been added to ResourcePoolSet.
            // And they're referred with these Ids on front-end samples
            billionDollarQuestion.Id      = 1;
            upoSample.Id                  = 8;
            basicsExistingSystemSample.Id = 9;
            basicsNewSystemSample.Id      = 10;
            priorityIndexSample.Id        = 2;
            knowledgeIndexSample.Id       = 3;
            knowledgeIndexPopularSoftwareLicenseSample.Id = 4;
            totalCostIndexExistingSystemSample.Id         = 5;
            totalCostIndexNewSystemSample.Id = 6;
            allInOneSample.Id = 7;

            // Insert
            resourcePoolStore.Add(billionDollarQuestion);
            resourcePoolStore.Add(upoSample);
            resourcePoolStore.Add(basicsExistingSystemSample);
            resourcePoolStore.Add(basicsNewSystemSample);
            resourcePoolStore.Add(priorityIndexSample);
            resourcePoolStore.Add(knowledgeIndexSample);
            resourcePoolStore.Add(knowledgeIndexPopularSoftwareLicenseSample);
            resourcePoolStore.Add(totalCostIndexExistingSystemSample);
            resourcePoolStore.Add(totalCostIndexNewSystemSample);
            resourcePoolStore.Add(allInOneSample);

            // First save
            context.SaveChanges();
        }
Beispiel #20
0
 public AppUserStore(WealthEconomyContext context) : base(context)
 {
     AutoSaveChanges = false;
 }
 public OrganizationRepository(WealthEconomyContext context)
     : base(context)
 {
 }
Beispiel #22
0
        public static void Apply(WealthEconomyContext context)
        {
            Framework.Security.LoginAs(1, "Administrator"); // Necessary to be able to access all user cells etc. (see UserQueryVisitor.cs)

            var cellStore         = context.Set <ElementCell>();
            var fieldStore        = context.Set <ElementField>();
            var resourcePoolStore = context.Set <ResourcePool>();
            var userCellStore     = context.Set <UserElementCell>();

            // 1. Default initial value for all resource pools
            var resourcePools = resourcePoolStore.GetAll(false)
                                .Where(resourcePool => resourcePool.InitialValue == 0)
                                .AsEnumerable();

            foreach (var resourcePool in resourcePools)
            {
                resourcePool.InitialValue = 100;
            }

            // Save
            context.SaveChanges();

            // 2. Remove obsolete records
            var obsoleteUserCells = userCellStore
                                    .GetAll(false)
                                    .Where(userCell => userCell.ElementCell.ElementField.DataType == 2 ||
                                           userCell.ElementCell.ElementField.DataType == 3 ||
                                           userCell.ElementCell.ElementField.DataType == 5 ||
                                           userCell.ElementCell.ElementField.DataType == 11 ||
                                           userCell.ElementCell.ElementField.DataType == 12)
                                    .AsEnumerable();

            userCellStore.RemoveRange(obsoleteUserCells);

            // Save
            context.SaveChanges();

            var obsoleteCells = cellStore.GetAll(false)
                                .Where(cell => cell.ElementField.DataType == 2 ||
                                       cell.ElementField.DataType == 3 ||
                                       cell.ElementField.DataType == 5 ||
                                       cell.ElementField.DataType == 11 ||
                                       cell.ElementField.DataType == 12)
                                .AsEnumerable();

            cellStore.RemoveRange(obsoleteCells);

            // Save
            context.SaveChanges();

            var obsoleteFields = fieldStore.GetAll(false)
                                 .Where(field => field.DataType == 2 ||
                                        field.DataType == 3 ||
                                        field.DataType == 5 ||
                                        field.DataType == 11 ||
                                        field.DataType == 12)
                                 .AsEnumerable();

            fieldStore.RemoveRange(obsoleteFields);

            // Save
            context.SaveChanges();
        }
 public UserSectorRatingRepository(WealthEconomyContext context)
     : base(context)
 {
 }