public EmployeeManagementServiceTest()
 {
     repository.Setup(x => x.GetById(It.IsAny <int>()))
     .Returns((int i) => employeeInMemoryDatabase.Single(emp => emp.EmployeeID == i));
     repository.Setup(x => x.GetAll())
     .Returns(() => employeeInMemoryDatabase);
     repository.Setup(x => x.Insert(It.IsAny <Employee>()))
     .Callback((Employee emp) => employeeInMemoryDatabase.Add(emp));
     repository.Setup(x => x.Update(It.IsAny <Employee>()))
     .Callback((Employee employee) =>
               { var toBeUpdated             = employeeInMemoryDatabase.Single(emp => emp.EmployeeID == employee.EmployeeID);
                 toBeUpdated.EmployeeName    = employee.EmployeeName;
                 toBeUpdated.PhoneNumber     = employee.PhoneNumber;
                 toBeUpdated.Skill           = employee.Skill;
                 toBeUpdated.YearsExperience = employee.YearsExperience; });
     repository.Setup(x => x.Delete(It.IsAny <int>()))
     .Callback((int i) =>
     {
         var tobeDeleted = employeeInMemoryDatabase.Find(emp => emp.EmployeeID == i);
         if (tobeDeleted == null)
         {
             throw new ItemNotFoundException();
         }
         else
         {
             employeeInMemoryDatabase.Remove(tobeDeleted);
         }
     });
     _employeeManagementService = new EmployeeManagementService(repository.Object);
 }
 public EmployeeController(IEmployeeManagementService employeeManagementService)
 {
     _employeeManagementService = employeeManagementService;
 }
예제 #3
0
 public EmployeeManagementController()
 {
     this.employeeService = new EmployeeManagementService();
 }
예제 #4
0
 public EmployeesController(IEmployeeManagementService employeeManagementService)
 {
     this.employeeManagementService = employeeManagementService;
 }
        public async Task <ActionResult <int> > CreateBlogArticleAsync(BlogArticleDTO blogArticle, [FromServices] IEmployeeManagementService employeeManagementService)
        {
            if (blogArticle is null ||
                employeeManagementService is null ||
                !employeeManagementService.TryShowEmployee(blogArticle.EmployeeId, out _))
            {
                return(this.BadRequest());
            }

            return(await this.bloggingService.CreateBlogArticleAsync(blogArticle));
        }
        public async Task <ActionResult <BlogArticleFullResponse> > GetBlogArticle(int blogArticleId, [FromServices] IEmployeeManagementService employeeManagementService)
        {
            if (blogArticleId <= 0 ||
                employeeManagementService is null)
            {
                return(this.BadRequest());
            }

            if (this.bloggingService.TryShowBlogArticle(blogArticleId, out BlogArticle blogArticle))
            {
                employeeManagementService.TryShowEmployee(blogArticle.EmployeeId, out Employee employee);
                return(this.Ok(new BlogArticleFullResponse(blogArticle, employee)));
            }
            else
            {
                return(this.BadRequest());
            }
        }
        public async Task <ActionResult <IEnumerable <BlogArticleShortResponse> > > GetBlogArticlesAsync([FromServices] IEmployeeManagementService employeeManagementService, int offset = 0, int limit = 10)
        {
            if (offset < 0 ||
                limit <= 0 ||
                employeeManagementService is null)
            {
                return(this.BadRequest());
            }

            var blogArticles = await this.bloggingService.ShowBlogArticlesAsync(offset, limit);

            var blogArticleShortResponseList = new List <BlogArticleShortResponse>();

            foreach (var article in blogArticles)
            {
                if (employeeManagementService.TryShowEmployee(article.EmployeeId, out Employee employee))
                {
                    var blogArticleShortResponse = new BlogArticleShortResponse(article, employee);
                    blogArticleShortResponseList.Add(blogArticleShortResponse);
                }
            }

            return(this.Ok(blogArticleShortResponseList));
        }
 public EmployeesController(IEmployeeManagementService employeeManagementService)
 {
     this.employeeManagementService = employeeManagementService ?? throw new ArgumentNullException(nameof(employeeManagementService));
 }