public void TestCreateMoreParty() { using (UnitOfWork unitwork = new UnitOfWork(store, dbContextFactory)) { IRepository<Post, Guid> postRepository = new Repository<Post, Guid>(store); IRepository<Employee, Guid> employeeRepository = new Repository<Employee, Guid>(store); IRepository<PartyHierarchy, Guid> partyHierarchyRepository = new Repository<PartyHierarchy, Guid>(store); Employee employee = new Employee() { Name = "Bob", }; Post post = new Post() { Name = "總經理室副主管", }; Post parentPost = postRepository.Query(q => q.Name == "總經理室主管").First(); employeeRepository.SaveOrUpdate(employee); postRepository.SaveOrUpdate(post); PartyService partyService = new PartyService(partyHierarchyRepository); partyService.AddAccountability(parentPost, post); unitwork.SaveChanges(); partyService.AddEmployeeToPost(post, employee); unitwork.SaveChanges(); } }
public void TestAddParty() { using (UnitOfWork unitwork = new UnitOfWork(store, dbContextFactory)) { IRepository<Post, Guid> postRepository = new Repository<Post, Guid>(store); IRepository<PartyHierarchy, Guid> partyHireRepository = new Repository<PartyHierarchy, Guid>(store); Post post1 = new Post() { Name = "總經理室主管" }; Post post2 = new Post() { Name = "總經理室副主管" }; Post post3 = new Post() { Name = "總經理室秘書" }; Post post4 = new Post() { Name = "人資部主管" }; Post post5 = new Post() { Name = "人資部副主管" }; Post post6 = new Post() { Name = "企畫課主管" }; Post post7 = new Post() { Name = "企畫課副主管" }; Post post8 = new Post() { Name = "企畫課成員" }; Post post9 = new Post() { Name = "管理課主管" }; Post post10 = new Post() { Name = "管理課副主管" }; Post post11 = new Post() { Name = "管理課成員" }; Post post12 = new Post() { Name = "業務部主管" }; Post post13 = new Post() { Name = "業務部副主管" }; Post post14 = new Post() { Name = "業務一課主管" }; Post post15 = new Post() { Name = "業務一課副主管" }; Post post16 = new Post() { Name = "業務一課成員" }; postRepository.SaveOrUpdate(post1); postRepository.SaveOrUpdate(post2); postRepository.SaveOrUpdate(post3); postRepository.SaveOrUpdate(post4); postRepository.SaveOrUpdate(post5); postRepository.SaveOrUpdate(post6); postRepository.SaveOrUpdate(post7); postRepository.SaveOrUpdate(post8); postRepository.SaveOrUpdate(post9); postRepository.SaveOrUpdate(post10); postRepository.SaveOrUpdate(post11); postRepository.SaveOrUpdate(post12); postRepository.SaveOrUpdate(post13); postRepository.SaveOrUpdate(post14); postRepository.SaveOrUpdate(post15); postRepository.SaveOrUpdate(post16); unitwork.SaveChanges(); PartyService service = new PartyService(partyHireRepository); service.AddAccountability(post1, post2); unitwork.SaveChanges(); service.AddAccountability(post1, post3); unitwork.SaveChanges(); service.AddAccountability(post1, post4); unitwork.SaveChanges(); service.AddAccountability(post1, post12); unitwork.SaveChanges(); service.AddAccountability(post4, post5); unitwork.SaveChanges(); service.AddAccountability(post4, post6); unitwork.SaveChanges(); service.AddAccountability(post4, post9); unitwork.SaveChanges(); service.AddAccountability(post6, post7); unitwork.SaveChanges(); service.AddAccountability(post6, post8); unitwork.SaveChanges(); service.AddAccountability(post9, post10); unitwork.SaveChanges(); service.AddAccountability(post9, post11); unitwork.SaveChanges(); service.AddAccountability(post12, post13); unitwork.SaveChanges(); service.AddAccountability(post12, post14); unitwork.SaveChanges(); service.AddAccountability(post14, post15); unitwork.SaveChanges(); service.AddAccountability(post14, post16); unitwork.SaveChanges(); } }