示例#1
0
        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();
            }
        }
示例#2
0
        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();
            }
        }