Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="cityId"></param>
        /// <param name="entity"></param>
        public void AddPointOfInterestForCity(int cityId, PointOfInterest entity)
        {
            var city = GetCity(cityId, false);

            city.PointOfInterest.Add(entity);
            _dbContext.SaveChanges();
        }
        private void CreateEditions()
        {
            var defaultEdition = _context.Editions.IgnoreQueryFilters().FirstOrDefault(e => e.Name == EditionManager.DefaultEditionName);

            if (defaultEdition == null)
            {
                defaultEdition = new Edition {
                    Name = EditionManager.DefaultEditionName, DisplayName = EditionManager.DefaultEditionName
                };
                _context.Editions.Add(defaultEdition);
                _context.SaveChanges();

                /* Add desired features to the standard edition, if wanted... */
            }
        }
Ejemplo n.º 3
0
 public bool Add(City city)
 {
     //var cityToAdd=
     _contex.Cities.Add(city);
     _contex.SaveChanges();
     return(true);
 }
Ejemplo n.º 4
0
        public void Create()
        {
            new DefaultEditionCreator(_context).Create();
            new DefaultLanguagesCreator(_context).Create();
            new HostRoleAndUserCreator(_context).Create();
            new DefaultSettingsCreator(_context).Create();

            _context.SaveChanges();
        }
Ejemplo n.º 5
0
        private void AddSettingIfNotExists(string name, string value, int?tenantId = null)
        {
            if (_context.Settings.IgnoreQueryFilters().Any(s => s.Name == name && s.TenantId == tenantId && s.UserId == null))
            {
                return;
            }

            _context.Settings.Add(new Setting(tenantId, null, name, value));
            _context.SaveChanges();
        }
Ejemplo n.º 6
0
        private void AddLanguageIfNotExists(ApplicationLanguage language)
        {
            if (_context.Languages.IgnoreQueryFilters().Any(l => l.TenantId == language.TenantId && l.Name == language.Name))
            {
                return;
            }

            _context.Languages.Add(language);
            _context.SaveChanges();
        }
Ejemplo n.º 7
0
        public static void EnsureSeedDatForContext(this CityInfoDbContext context)
        {
            if (context.Cities.Any())
            {
                return;
            }
            var cities = new List <City>()
            {
                new City()
                {
                    Name            = "Iguala de la Independencia",
                    Description     = "Cuna de la Bandera Nacional",
                    PointOfInterest = new List <PointOfInterest>
                    {
                        new PointOfInterest()
                        {
                            Name        = "Asta Bandera Monumental",
                            Description = "La mas alta de LatinoAmerica"
                        },
                        new PointOfInterest()
                        {
                            Name        = "Laguna de Tuxpan",
                            Description = "Lugar de Recreacion Familiar"
                        }
                    }
                },
                new City()
                {
                    Name            = "Acapulco de Juarez",
                    Description     = "la Bahia mas hermosa del Mundo",
                    PointOfInterest = new List <PointOfInterest>()
                    {
                        new PointOfInterest()
                        {
                            Name        = "La Quebrada",
                            Description = "Lugar de emociones externas"
                        }
                    }
                }
            };

            context.Cities.AddRange(cities);
            context.SaveChanges();
        }
        public static void EnsureSeedDataForContext(this CityInfoDbContext context)
        {
            if (context.Cities.Any())
            {
                return;
            }

            var cities = new List <City>()
            {
                new City()
                {
                    Name             = "Silistra",
                    Description      = "Home Town",
                    PointsOfInterest = new List <PointOfInterest>()
                    {
                        new PointOfInterest {
                            Name = "Moskva", Description = "The Bar"
                        },
                        new PointOfInterest {
                            Name = "Krepostta", Description = "The Place"
                        }
                    }
                },
                new City()
                {
                    Name             = "Sofia",
                    Description      = "Live Town",
                    PointsOfInterest = new List <PointOfInterest>()
                    {
                        new PointOfInterest {
                            Name = "Switch", Description = "The Bar"
                        },
                        new PointOfInterest {
                            Name = "Vitosha", Description = "The Place"
                        }
                    }
                }
            };

            context.Cities.AddRange(cities);
            context.SaveChanges();
        }
Ejemplo n.º 9
0
        private void CreateDefaultTenant()
        {
            // Default tenant

            var defaultTenant = _context.Tenants.IgnoreQueryFilters().FirstOrDefault(t => t.TenancyName == AbpTenantBase.DefaultTenantName);

            if (defaultTenant == null)
            {
                defaultTenant = new Tenant(AbpTenantBase.DefaultTenantName, AbpTenantBase.DefaultTenantName);

                var defaultEdition = _context.Editions.IgnoreQueryFilters().FirstOrDefault(e => e.Name == EditionManager.DefaultEditionName);
                if (defaultEdition != null)
                {
                    defaultTenant.EditionId = defaultEdition.Id;
                }

                _context.Tenants.Add(defaultTenant);
                _context.SaveChanges();
            }
        }
Ejemplo n.º 10
0
 public bool Save()
 {
     return(context.SaveChanges() >= 0);
 }
Ejemplo n.º 11
0
        public static void EnsureSeedDataForContext(this CityInfoDbContext context)
        {
            if (context.Cities.Any())
            {
                return;
            }
            //init seed data
            var cities = new List <City>()
            {
                new City()
                {
                    Name             = "Santo Domingo",
                    Description      = "La Capital",
                    PointsOfInterest = new List <PointOfInterest>()
                    {
                        new PointOfInterest()
                        {
                            Name        = "Zona Colonial",
                            Description = "Un lugar como de antaño"
                        },
                        new PointOfInterest()
                        {
                            Name        = "El conde",
                            Description = "La gran calle peatonal"
                        }
                    }
                },
                new City()
                {
                    Name             = "Santiago",
                    Description      = "La principal en el cibao",
                    PointsOfInterest = new List <PointOfInterest>()
                    {
                        new PointOfInterest()
                        {
                            Name        = "Centro Leon",
                            Description = "De los mejores museos del pais"
                        },
                        new PointOfInterest()
                        {
                            Name        = "El monumento de los 30 caballeros",
                            Description = "El simbolo por exelencia de la ciudad corazon"
                        }
                    }
                },
                new City()
                {
                    Name             = "La Romana",
                    Description      = "Buen polo turistico",
                    PointsOfInterest = new List <PointOfInterest>()
                    {
                        new PointOfInterest()
                        {
                            Name        = "Isla Catalina",
                            Description = "Un lugar paradisiaco con aguas cristalinas"
                        },
                        new PointOfInterest()
                        {
                            Name        = "Casa de Campo",
                            Description = "Solo para millonarios XD"
                        }
                    }
                },
                new City()
                {
                    Name             = "Higuey",
                    Description      = "La ciudad religiosa",
                    PointsOfInterest = new List <PointOfInterest>()
                    {
                        new PointOfInterest()
                        {
                            Name        = "La Basilica",
                            Description = "Iglecia catolica de gran magnitud"
                        }
                    }
                }
            };

            context.AddRange(cities);
            context.SaveChanges();
        }
Ejemplo n.º 12
0
        private void CreateHostRoleAndUsers()
        {
            // Admin role for host

            var adminRoleForHost = _context.Roles.IgnoreQueryFilters().FirstOrDefault(r => r.TenantId == null && r.Name == StaticRoleNames.Host.Admin);

            if (adminRoleForHost == null)
            {
                adminRoleForHost = _context.Roles.Add(new Role(null, StaticRoleNames.Host.Admin, StaticRoleNames.Host.Admin)
                {
                    IsStatic = true, IsDefault = true
                }).Entity;
                _context.SaveChanges();
            }

            // Grant all permissions to admin role for host

            var grantedPermissions = _context.Permissions.IgnoreQueryFilters()
                                     .OfType <RolePermissionSetting>()
                                     .Where(p => p.TenantId == null && p.RoleId == adminRoleForHost.Id)
                                     .Select(p => p.Name)
                                     .ToList();

            var permissions = PermissionFinder
                              .GetAllPermissions(new CityInfoAuthorizationProvider())
                              .Where(p => p.MultiTenancySides.HasFlag(MultiTenancySides.Host) &&
                                     !grantedPermissions.Contains(p.Name))
                              .ToList();

            if (permissions.Any())
            {
                _context.Permissions.AddRange(
                    permissions.Select(permission => new RolePermissionSetting
                {
                    TenantId  = null,
                    Name      = permission.Name,
                    IsGranted = true,
                    RoleId    = adminRoleForHost.Id
                })
                    );
                _context.SaveChanges();
            }

            // Admin user for host

            var adminUserForHost = _context.Users.IgnoreQueryFilters().FirstOrDefault(u => u.TenantId == null && u.UserName == AbpUserBase.AdminUserName);

            if (adminUserForHost == null)
            {
                var user = new User
                {
                    TenantId         = null,
                    UserName         = AbpUserBase.AdminUserName,
                    Name             = "admin",
                    Surname          = "admin",
                    EmailAddress     = "*****@*****.**",
                    IsEmailConfirmed = true,
                    IsActive         = true
                };

                user.Password = new PasswordHasher <User>(new OptionsWrapper <PasswordHasherOptions>(new PasswordHasherOptions())).HashPassword(user, "123qwe");
                user.SetNormalizedNames();

                adminUserForHost = _context.Users.Add(user).Entity;
                _context.SaveChanges();

                // Assign Admin role to admin user
                _context.UserRoles.Add(new UserRole(null, adminUserForHost.Id, adminRoleForHost.Id));
                _context.SaveChanges();

                // User account of admin user
                _context.UserAccounts.Add(new UserAccount
                {
                    TenantId     = null,
                    UserId       = adminUserForHost.Id,
                    UserName     = AbpUserBase.AdminUserName,
                    EmailAddress = adminUserForHost.EmailAddress
                });
                _context.SaveChanges();
            }
        }
Ejemplo n.º 13
0
        private void CreateRolesAndUsers()
        {
            // Admin role

            var adminRole = _context.Roles.IgnoreQueryFilters().FirstOrDefault(r => r.TenantId == _tenantId && r.Name == StaticRoleNames.Tenants.Admin);

            if (adminRole == null)
            {
                adminRole = _context.Roles.Add(new Role(_tenantId, StaticRoleNames.Tenants.Admin, StaticRoleNames.Tenants.Admin)
                {
                    IsStatic = true
                }).Entity;
                _context.SaveChanges();
            }

            // Grant all permissions to admin role

            var grantedPermissions = _context.Permissions.IgnoreQueryFilters()
                                     .OfType <RolePermissionSetting>()
                                     .Where(p => p.TenantId == _tenantId && p.RoleId == adminRole.Id)
                                     .Select(p => p.Name)
                                     .ToList();

            var permissions = PermissionFinder
                              .GetAllPermissions(new CityInfoAuthorizationProvider())
                              .Where(p => p.MultiTenancySides.HasFlag(MultiTenancySides.Tenant) &&
                                     !grantedPermissions.Contains(p.Name))
                              .ToList();

            if (permissions.Any())
            {
                _context.Permissions.AddRange(
                    permissions.Select(permission => new RolePermissionSetting
                {
                    TenantId  = _tenantId,
                    Name      = permission.Name,
                    IsGranted = true,
                    RoleId    = adminRole.Id
                })
                    );
                _context.SaveChanges();
            }

            // Admin user

            var adminUser = _context.Users.IgnoreQueryFilters().FirstOrDefault(u => u.TenantId == _tenantId && u.UserName == AbpUserBase.AdminUserName);

            if (adminUser == null)
            {
                adminUser                  = User.CreateTenantAdminUser(_tenantId, "*****@*****.**");
                adminUser.Password         = new PasswordHasher <User>(new OptionsWrapper <PasswordHasherOptions>(new PasswordHasherOptions())).HashPassword(adminUser, "123qwe");
                adminUser.IsEmailConfirmed = true;
                adminUser.IsActive         = true;

                _context.Users.Add(adminUser);
                _context.SaveChanges();

                // Assign Admin role to admin user
                _context.UserRoles.Add(new UserRole(_tenantId, adminUser.Id, adminRole.Id));
                _context.SaveChanges();

                // User account of admin user
                if (_tenantId == 1)
                {
                    _context.UserAccounts.Add(new UserAccount
                    {
                        TenantId     = _tenantId,
                        UserId       = adminUser.Id,
                        UserName     = AbpUserBase.AdminUserName,
                        EmailAddress = adminUser.EmailAddress
                    });
                    _context.SaveChanges();
                }
            }
        }