private static void MapTo(this OrganisationEntity entity, VerifiedOrganisation organisation, string parentFullName) { organisation.AccountManagerId = entity.OrganisationalUnitEntity.accountManagerId; organisation.VerifiedById = entity.OrganisationalUnitEntity.verifiedById; organisation.ContactDetails = entity.OrganisationalUnitEntity.Map(); organisation.SetParent(entity.OrganisationalUnitEntity.parentId, parentFullName); }
public async Task <IActionResult> PutOrganisationEntity(int id, OrganisationEntity organisationEntity) { if (id != organisationEntity.ID) { return(BadRequest()); } _context.Entry(organisationEntity).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!OrganisationEntityExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public OrganisationEntityBuilder() { //Default _organisationEntity = new OrganisationEntity { Id = Guid.NewGuid(), Name = "Organis1" }; }
public async Task <OrganisationEntity> UpdateOrganisationByIdAsync( OrganisationEntity organisationEntity, CancellationToken token) { _dbContext.Organisations.Update(organisationEntity); await this._dbContext.SaveChangesAsync(token); return(organisationEntity); }
public async Task <OrganisationEntity> AddOrganisationAsync( OrganisationEntity organisationEntity, CancellationToken token) { await _dbContext.Organisations.AddAsync(organisationEntity, token); await _dbContext.SaveChangesAsync(token); return(organisationEntity); }
public static OrganisationEntity Map(this Organisation organisation) { var entity = new OrganisationEntity { id = organisation.Id, }; organisation.MapTo(entity); entity.OrganisationalUnitEntity = organisation is VerifiedOrganisation ? ((VerifiedOrganisation)organisation).Map() : null; return(entity); }
private static async Task InsertSupplierAsync(SupplierTable supplierTable) { var organisations = (await OrganisationEntity.FetchAllAsync().ConfigureAwait(false)).ToList(); await SupplierEntityBuilder.Create() .WithId(supplierTable.Id) .WithOrganisation(organisations.First(o => o.Name == supplierTable.OrganisationName).Id) .WithName(supplierTable.Id) .Build() .InsertAsync() .ConfigureAwait(false); }
public OrganisationEntityBuilder() { organisationEntity = new OrganisationEntity { OrganisationId = Guid.NewGuid(), Name = "Organisation Name", OdsCode = "Ods Code", PrimaryRoleId = "ID 0", CatalogueAgreementSigned = false, AddressObject = new Address(), LastUpdated = DateTime.Now, }; }
private OrganisationEntity MapModelToEntity(OrganisationEdit model, OrganisationEntity enity = null) { if (enity == null) { enity = new OrganisationEntity(); } enity.Name = model.Name; enity.ApplicationIds = model.ApplicationIds; enity.Config = model.Config; return(enity); }
public static OrganisationEntity InsertOrganisation(DbContextOptions <DataContext> options) { var organisation = new OrganisationEntity { Id = Guid.NewGuid(), Name = "A Org 1", Config = new Model.Directory.Model.Organisation.Configuration.Config() }; using (var context = new DataContext(options)) { context.Organisation.Add(organisation); context.SaveChanges(); } return(organisation); }
public static Organisation Map(this OrganisationEntity entity, string parentFullName, Guid?affiliateId, ILocationQuery locationQuery) { if (entity.OrganisationalUnitEntity == null) { var organisation = new Organisation { Id = entity.id, AffiliateId = affiliateId }; entity.MapTo(organisation, locationQuery); return(organisation); } var verifiedOrganisation = new VerifiedOrganisation { Id = entity.id, AffiliateId = affiliateId }; entity.MapTo(verifiedOrganisation, locationQuery); entity.MapTo(verifiedOrganisation, parentFullName); return(verifiedOrganisation); }
public static async Task GivenSolutionsExist(Table table) { var organisations = await OrganisationEntity.FetchAllAsync().ConfigureAwait(false); foreach (var solutionTable in table.CreateSet <SolutionTable>()) { await SolutionEntityBuilder.Create() .WithName(solutionTable.SolutionName) .WithId(solutionTable.SolutionID) .WithOnLastUpdated(solutionTable.LastUpdated) .WithOrganisationId(organisations.First(o => o.Name == solutionTable.OrganisationName).Id) .WithSupplierStatusId(solutionTable.SupplierStatusId) .WithPublishedStatusId(solutionTable.PublishedStatusId) .WithOnLastUpdated(solutionTable.LastUpdated != DateTime.MinValue ? solutionTable.LastUpdated : DateTime.UtcNow) .Build() .InsertAsync() .ConfigureAwait(false); } }
public async Task <ActionResult <OrganisationEntity> > RegisterOrganisationAsync(OrganisationEntity organisationEntity) { _context.Organisations.Add(organisationEntity); await _context.SaveChangesAsync(); return(CreatedAtAction("GetOrganisationEntity", new { id = organisationEntity.ID }, organisationEntity)); }
public async Task GetPolicy_CheckScope() { var options = TestHelper.GetDbContext("GetPolicy_CheckScope"); var org1 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "Org 1" }; var org2 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "Org 2" }; var branch1 = new BranchEntity { Id = Guid.NewGuid(), OrganisationId = org1.Id, Name = "Branch 1" }; var branch2 = new BranchEntity { Id = Guid.NewGuid(), OrganisationId = org1.Id, Name = "Branch 2" }; var branch3 = new BranchEntity { Id = Guid.NewGuid(), OrganisationId = org2.Id, Name = "Branch 3" }; var user1 = new UserEntity { Id = Guid.NewGuid(), BranchId = branch1.Id }; var user2 = new UserEntity { Id = Guid.NewGuid(), BranchId = branch1.Id }; var user3 = new UserEntity { Id = Guid.NewGuid(), BranchId = branch2.Id }; var user4 = new UserEntity { Id = Guid.NewGuid(), BranchId = branch3.Id }; var client1 = new ClientEntity { Id = Guid.NewGuid(), OrganisationId = org1.Id }; var client2 = new ClientEntity { Id = Guid.NewGuid(), OrganisationId = org2.Id }; var policy1 = new PolicyEntity { Id = Guid.NewGuid(), ClientId = client1.Id, UserId = user1.Id }; var policy2 = new PolicyEntity { Id = Guid.NewGuid(), ClientId = client1.Id, UserId = user2.Id }; var policy3 = new PolicyEntity { Id = Guid.NewGuid(), ClientId = client1.Id, UserId = user3.Id }; var policy4 = new PolicyEntity { Id = Guid.NewGuid(), ClientId = client2.Id, UserId = user4.Id }; var policy5 = new PolicyEntity { Id = Guid.NewGuid(), ClientId = client1.Id, UserId = user1.Id }; using (var context = new DataContext(options)) { context.Organisation.Add(org1); context.Branch.Add(branch1); context.Branch.Add(branch2); context.Users.Add(user1); context.Users.Add(user2); context.Users.Add(user3); context.Users.Add(user4); context.Client.Add(client1); context.Client.Add(client2); context.Policy.Add(policy1); context.Policy.Add(policy2); context.Policy.Add(policy3); context.Policy.Add(policy4); context.Policy.Add(policy5); context.SaveChanges(); } using (var context = new DataContext(options)) { var auditService = new AuditServiceMock(); var service = new PolicyService(context, auditService); //When //In scope (org 1 -> policy 1) var scope = new ScopeOptions(org1.Id, branch1.Id, user1.Id, Scope.Organisation); var policy = await service.GetPolicy(scope, policy1.Id); Assert.Equal(policy1.Id, policy.Id); //In scope (org 1 -> policy 3) scope = new ScopeOptions(org1.Id, branch1.Id, user1.Id, Scope.Organisation); policy = await service.GetPolicy(scope, policy3.Id); Assert.Equal(policy3.Id, policy.Id); //Out of scope (org 2 -> policy 1) scope = new ScopeOptions(org2.Id, branch3.Id, user4.Id, Scope.Organisation); policy = await service.GetPolicy(scope, policy1.Id); Assert.Null(policy); //In scope (branch 1 -> policy 1) scope = new ScopeOptions(org1.Id, branch1.Id, user1.Id, Scope.Branch); policy = await service.GetPolicy(scope, policy1.Id); Assert.Equal(policy1.Id, policy.Id); //In scope (branch 1 -> policy 2) scope = new ScopeOptions(org1.Id, branch1.Id, user1.Id, Scope.Branch); policy = await service.GetPolicy(scope, policy2.Id); Assert.Equal(policy2.Id, policy.Id); //Out of scope (branch 2 -> policy 1) scope = new ScopeOptions(org1.Id, branch2.Id, user3.Id, Scope.Branch); policy = await service.GetPolicy(scope, policy1.Id); Assert.Null(policy); //Out of scope (branch 3 -> policy 1) scope = new ScopeOptions(org2.Id, branch3.Id, user4.Id, Scope.Branch); policy = await service.GetPolicy(scope, policy1.Id); Assert.Null(policy); //In scope (user 1 -> policy 1) scope = new ScopeOptions(org1.Id, branch1.Id, user1.Id, Scope.User); policy = await service.GetPolicy(scope, policy1.Id); Assert.Equal(policy1.Id, policy.Id); //Out of scope (user 2 -> policy 1) scope = new ScopeOptions(org1.Id, branch1.Id, user2.Id, Scope.User); policy = await service.GetPolicy(scope, policy1.Id); Assert.Null(policy); } }
public static DefaultUser InsertUserDetailed(DbContextOptions <DataContext> options, OrganisationEntity organisation, Scope scope = Scope.Organisation) { var user = new UserEdit { Id = Guid.NewGuid(), FirstName = Guid.NewGuid().ToString(), LastName = Guid.NewGuid().ToString(), Scope = scope, Roles = new List <string>(), Aliases = new List <string>(), }; return(InsertUserDetailed(options, organisation, user)); }
public static DefaultUser InsertUserDetailed(DbContextOptions <DataContext> options, OrganisationEntity organisation, UserEdit sourceUser) { var branch = new BranchEntity { Id = Guid.NewGuid(), OrganisationId = organisation.Id, Name = "Branch 1" }; var user = new UserEntity { Id = sourceUser.Id.Value, FirstName = sourceUser.FirstName, LastName = sourceUser.LastName, Aliases = sourceUser.Aliases, BranchId = branch.Id, Scope = sourceUser.Scope, Config = sourceUser.Config, }; using (var context = new DataContext(options)) { context.Branch.Add(branch); context.Users.Add(user); context.SaveChanges(); } return(new DefaultUser() { User = user, Branch = branch, Organisation = organisation }); }
public static CommissionStatementEntity InsertCommissionStatement(DbContextOptions <DataContext> options, OrganisationEntity organisation, Guid?companyId = null, DateTime?date = null) { companyId = companyId.HasValue ? companyId : InsertCompany(options).Id; var statement = new CommissionStatementEntity { Id = Guid.NewGuid(), OrganisationId = organisation.Id, CompanyId = companyId.Value, Date = date ?? DateTime.Now }; using (var context = new DataContext(options)) { context.CommissionStatement.Add(statement); context.SaveChanges(); } return(statement); }
public static void Initialize(HelpToHealthApiContext context) { context.Database.EnsureCreated(); context.Database.ExecuteSqlRaw("TRUNCATE TABLE CareGivers"); context.Database.ExecuteSqlRaw("TRUNCATE TABLE CareVolunteers"); var organisation = new OrganisationEntity { Email = "*****@*****.**", Name = "Hospital A", OrganisationType = "Public", CareGivers = new List <CareGiverEntity>() }; var careGivers = new CareGiverEntity[] { new CareGiverEntity { Address = "1 Apple Park Way, Cupertino, CA 95014, USA", Email = "*****@*****.**", Name = "John Smith", PhoneNumber = "07813116321" }, new CareGiverEntity { Address = "26 Federal Plaza, New York, NY 10278, USA", Email = "*****@*****.**", Name = "Sam Dickkson", PhoneNumber = "07813129431" }, new CareGiverEntity { Address = "Legacy Bldg, Belfast BT3 9DT, UK", Email = "*****@*****.**", Name = "Sarah Woodview", PhoneNumber = "07813038729" } }; foreach (CareGiverEntity careGiver in careGivers) { organisation.CareGivers.Add(careGiver); } context.Organisations.Add(organisation); var careVolunteers = new CareVolunteerEntity[] { new CareVolunteerEntity { Address = "5 Ormonde Cres, Belfast BT6 9FL, UK", PhoneNumber = "07712345432", Name = "Faraz Goff", Latitude = 54.5847523M, Longitude = -5.891415599999999M, Password = "******", TrainingCompleted = "No", WillingToDo = "Shopping", AvailabilityFrom = "Mon 9am", AvailabilityTo = "Fri 5pm", Email = "Email" }, new CareVolunteerEntity { Address = "12 Loopland Parade, Belfast BT6 9EF, UK", PhoneNumber = "07718437432", Name = "Tony Ryan", Latitude = 54.5858078M, Longitude = -5.893081200000001M, Password = "******", TrainingCompleted = "No", WillingToDo = "Shopping", AvailabilityFrom = "Mon 9am", AvailabilityTo = "Fri 5pm", Email = "Email" }, new CareVolunteerEntity { Address = "42 Orby Gardens, Belfast BT5 5HS, UK", PhoneNumber = "07718437432", Name = "Koa Sharp", Latitude = 54.5871322M, Longitude = -5.8904577M, Password = "******", TrainingCompleted = "No", WillingToDo = "Shopping", AvailabilityFrom = "Mon 9am", AvailabilityTo = "Fri 5pm", Email = "Email" }, new CareVolunteerEntity { Address = "6 Balkan St, Belfast BT12 4FG, UK", PhoneNumber = "07718437432", Name = "Nusaybah Cairns", Latitude = 54.5973224M, Longitude = -5.948408800000002M, Password = "******", TrainingCompleted = "No", WillingToDo = "Shopping", AvailabilityFrom = "Mon 9am", AvailabilityTo = "Fri 5pm", Email = "Email" }, new CareVolunteerEntity { Address = "13 Oaklands Antrim BT41 1LS", PhoneNumber = "07718437432", Name = "Myra Baxter", Latitude = 54.714300M, Longitude = -6.191598M, Password = "******", TrainingCompleted = "No", WillingToDo = "Shopping", AvailabilityFrom = "Mon 9am", AvailabilityTo = "Fri 5pm", Email = "Email" }, }; foreach (var careGiver in careVolunteers) { context.CareVolunteers.Add(careGiver); } context.SaveChanges(); }
private static void MapTo(this OrganisationEntity entity, Organisation organisation, ILocationQuery locationQuery) { organisation.Name = entity.displayName; organisation.Address = entity.AddressEntity == null ? null : entity.AddressEntity.Map(locationQuery); }
public static DefaultClient InsertClient(DbContextOptions <DataContext> options, OrganisationEntity organisation, string idNumber = null) { var client = new ClientEntity { Id = Guid.NewGuid(), ClientTypeId = ClientType.CLIENT_TYPE_INDIVIDUAL, FirstName = Guid.NewGuid().ToString(), LastName = Guid.NewGuid().ToString(), IdNumber = idNumber != null ? idNumber : Guid.NewGuid().ToString(), OrganisationId = organisation.Id, Initials = Guid.NewGuid().ToString(), DateOfBirth = DateTime.Now.AddYears(-35), TaxNumber = Guid.NewGuid().ToString() }; using (var context = new DataContext(options)) { context.Client.Add(client); context.SaveChanges(); } return(new DefaultClient() { Organisation = organisation, Client = client }); }
public static void MapTo(this Organisation organisation, OrganisationEntity entity) { entity.displayName = organisation.Name; ((IHaveAddress)organisation).MapTo(entity); }
public static async Task <OrganisationEntity> GetOrganisationEntityByName(string name, string connectionString) { return(await OrganisationEntity.GetByNameAsync(connectionString, name)); }
public async Task GetOrganisations_Sort() { var options = TestHelper.GetDbContext("GetOrganisations_Sort"); //Given var org1 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "A Org 1", ApplicationIds = new List <Guid>() { Application.CLIENT_ID } }; var org2 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "B Org 2", ApplicationIds = new List <Guid>() { Application.CLIENT_ID, Application.DIRECTORY_ID } }; var org3 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "C Org 3", ApplicationIds = new List <Guid>() { Application.CLIENT_ID } }; var org4 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "D Org 4", ApplicationIds = new List <Guid>() { Application.CLIENT_ID, Application.COMPLIANCE_ID } }; var org5 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "E Org 5", ApplicationIds = new List <Guid>() { Application.CLIENT_ID } }; var org6 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "F Org 6", ApplicationIds = new List <Guid>() { Application.CLIENT_ID } }; using (var context = new DataContext(options)) { //Jumbled order context.Organisation.Add(org6); context.Organisation.Add(org1); context.Organisation.Add(org2); context.Organisation.Add(org4); context.Organisation.Add(org5); context.Organisation.Add(org3); context.SaveChanges(); } using (var context = new DataContext(options)) { var service = new OrganisationService(context); //When var scope = TestHelper.GetScopeOptions(Guid.NewGuid()); scope.IgnoreScope = true; var queryOptions = new OrganisationQueryOptions(scope); var actual = await service.GetOrganisations(queryOptions); //Then Assert.Equal(6, actual.TotalItems); var organisations = actual.Items.ToArray(); Assert.Equal(6, organisations.Count()); var actual1 = organisations[0]; Assert.Equal(org1.Id, actual1.Id); Assert.Equal(org1.Name, actual1.Name); Assert.Equal(org1.ApplicationIds, actual1.ApplicationIds); var actual2 = organisations[1]; Assert.Equal(org2.Id, actual2.Id); Assert.Equal(org2.Name, actual2.Name); Assert.Equal(org2.ApplicationIds, actual2.ApplicationIds); var actual6 = organisations[5]; Assert.Equal(org6.Id, actual6.Id); Assert.Equal(org6.Name, actual6.Name); Assert.Equal(org6.ApplicationIds, actual6.ApplicationIds); //Scope check scope = TestHelper.GetScopeOptions(org6.Id); queryOptions = new OrganisationQueryOptions(scope); actual = await service.GetOrganisations(queryOptions); Assert.Equal(1, actual.TotalItems); organisations = actual.Items.ToArray(); actual1 = organisations[0]; Assert.Equal(org6.Id, actual1.Id); Assert.Equal(org6.Name, actual1.Name); Assert.Equal(org6.ApplicationIds, actual1.ApplicationIds); } }
public async Task UpdateOrganisation() { var options = TestHelper.GetDbContext("UpdateOrganisation"); TestHelper.InsertApplications(options); var company1 = TestHelper.InsertCompany(options); var company2 = TestHelper.InsertCompany(options); var config1 = new Config() { CompanyIds = new List <Guid>() { company1.Id }, VATRegistered = false, VATRegistrationDate = null }; var config2 = new Config() { CompanyIds = new List <Guid>() { company1.Id }, VATRegistered = false, VATRegistrationDate = null }; //Given var org1 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "Org 1", Config = config1, ApplicationIds = new List <Guid>() { Application.CLIENT_ID } }; var org2 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "Org 2", Config = config2, ApplicationIds = new List <Guid>() { Application.CLIENT_ID } }; using (var context = new DataContext(options)) { context.Organisation.Add(org1); context.Organisation.Add(org2); context.SaveChanges(); } var user1 = TestHelper.InsertUserDetailed(options, org2); var config2Updated = new Config() { CompanyIds = new List <Guid>() { company2.Id }, VATRegistered = true, VATRegistrationDate = DateTime.Now, }; var organisation = new OrganisationEdit() { Id = org2.Id, Name = "Org 2 Updated", ApplicationIds = new List <Guid>() { Application.CLIENT_ID, Application.COMMISSION_ID }, Config = config2Updated }; using (var context = new DataContext(options)) { var service = new OrganisationService(context); //When var scope = TestHelper.GetScopeOptions(user1); var result = await service.UpdateOrganisation(scope, organisation); //Then Assert.True(result.Success); var actual = await context.Organisation.FindAsync(organisation.Id); Assert.Equal(organisation.Name, actual.Name); Assert.Equal(2, organisation.ApplicationIds.Count()); Assert.Contains(Application.CLIENT_ID, organisation.ApplicationIds); Assert.Contains(Application.COMMISSION_ID, organisation.ApplicationIds); Assert.Equal(organisation.Config.VATRegistered, actual.Config.VATRegistered); Assert.Equal(organisation.Config.VATRegistrationDate, actual.Config.VATRegistrationDate); Assert.Single(actual.Config.CompanyIds); Assert.Equal(organisation.Config.CompanyIds.Single(), actual.Config.CompanyIds.Single()); //Scope check organisation.Id = org1.Id; result = await service.UpdateOrganisation(scope, organisation); //Then Assert.False(result.Success); } }
public async Task GetOrganisation() { var options = TestHelper.GetDbContext("GetOrganisation"); var config1 = new Config() { CompanyIds = new List <Guid>() { Guid.NewGuid() }, VATRegistered = false, VATRegistrationDate = DateTime.Now.AddDays(-10) }; var config2 = new Config() { CompanyIds = new List <Guid>() { Guid.NewGuid() }, VATRegistered = true, VATRegistrationDate = DateTime.Now }; //Given var org1 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "Org 1", Config = config1, ApplicationIds = new List <Guid>() { Application.CLIENT_ID, Application.INVEST_ID } }; var org2 = new OrganisationEntity { Id = Guid.NewGuid(), Name = "Org 2", Config = config2, ApplicationIds = new List <Guid>() { Application.CLIENT_ID, Application.DIRECTORY_ID } }; using (var context = new DataContext(options)) { context.Organisation.Add(org1); context.Organisation.Add(org2); context.SaveChanges(); } using (var context = new DataContext(options)) { var service = new OrganisationService(context); //When var scope = TestHelper.GetScopeOptions(org2.Id); var actual = await service.GetOrganisation(scope, org2.Id); //Then Assert.Equal(org2.Id, actual.Id); Assert.Equal(org2.Name, actual.Name); Assert.Equal(org2.ApplicationIds, actual.ApplicationIds); Assert.Equal(org2.Config.VATRegistered, actual.Config.VATRegistered); Assert.Equal(org2.Config.VATRegistrationDate, actual.Config.VATRegistrationDate); Assert.Single(actual.Config.CompanyIds); Assert.Equal(org2.Config.CompanyIds.Single(), actual.Config.CompanyIds.Single()); //Scope check scope = TestHelper.GetScopeOptions(org1.Id); actual = await service.GetOrganisation(scope, org2.Id); Assert.Null(actual); } }
private static void UpdateOrganisationalEntity(RecruitersDataContext dc, Organisation organisation, OrganisationEntity entity) { if (organisation.IsVerified) { // Make sure there is an organisational unit. var verifiedOrganisation = (VerifiedOrganisation)organisation; if (entity.OrganisationalUnitEntity == null) { entity.OrganisationalUnitEntity = verifiedOrganisation.Map(); } else { dc.CheckDeleteContactDetails(verifiedOrganisation, entity.OrganisationalUnitEntity); verifiedOrganisation.MapTo(entity.OrganisationalUnitEntity); } } else { // Not verified, make sure there is no organisational unit. if (entity.OrganisationalUnitEntity != null) { if (entity.OrganisationalUnitEntity.ContactDetailsEntity != null) { dc.ContactDetailsEntities.DeleteOnSubmit(entity.OrganisationalUnitEntity.ContactDetailsEntity); entity.OrganisationalUnitEntity.ContactDetailsEntity = null; } dc.OrganisationalUnitEntities.DeleteOnSubmit(entity.OrganisationalUnitEntity); entity.OrganisationalUnitEntity = null; } } }
private async Task <OrganisationEntity> GetOrganisationEntityByName(string name) { return(await OrganisationEntity.GetByNameAsync(config.ConnectionString, name)); }