Example #1
0
        public async Task UpdateAsync(long id, NewCompanyRequest model)
        {
            var company = await GetByIdAsync(id);

            ExceptionFuncs.IsNull(company, "Company does not exist.", HttpStatusCode.UnprocessableEntity);

            UpdateCompanyModel(company, model);

            await UpdateAsync(company);

            await SaveChangesAsync();
        }
Example #2
0
 private void UpdateCompanyModel(Company company, NewCompanyRequest model)
 {
     company.Name           = model.Name;
     company.FoundationYear = (short)model.FoundationYear;
     company.Employees      = model.Employees
                              .Select(s => new Employee
     {
         FirstName = s.FirstName,
         BirthDate = s.BirthDate,
         JobTitle  = s.JobTitle,
         LastName  = s.LastName
     }).ToList();
 }
Example #3
0
        public async Task <NewCompanyResponse> AddAsync(NewCompanyRequest model)
        {
            var result = await AddAsync(new Company
            {
                Name           = model.Name,
                FoundationYear = (short)model.FoundationYear,
                Employees      = model.Employees
                                 .Select(s => new Employee
                {
                    JobTitle  = s.JobTitle,
                    BirthDate = s.BirthDate,
                    FirstName = s.FirstName,
                    LastName  = s.LastName
                }).ToList()
            });

            await SaveChangesAsync();

            return(new NewCompanyResponse
            {
                Id = result.Entity.Id
            });
        }
Example #4
0
        public async Task <IActionResult> UpdateAsync(long id, [FromBody] NewCompanyRequest request)
        {
            await _companyRepository.UpdateAsync(id, request);

            return(Ok());
        }
Example #5
0
        public async Task <IActionResult> CreateAsync([FromBody] NewCompanyRequest model)
        {
            var company = await _companyRepository.AddAsync(model);

            return(StatusCode((int)HttpStatusCode.Created, company));
        }