// POST: api/Employments public async Task <ViewEmployments> PostEmployments(ViewEmployments employments) { var employmentToAdd = db.Employments.Add(factory.CreateEmploymentsModelFromDb(employments)).Entity; await db.SaveChangesAsync(); return(factory.CreateEmploymentsViewModel(employmentToAdd)); }
public async Task <IActionResult> PostEmployments([FromBody] ViewEmployments employments) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var postEmployments = await employmentsManager.PostEmployments(employments); return(CreatedAtAction("GetEmployments", postEmployments)); }
public async Task <IActionResult> PutEmployments([FromRoute] int id, [FromBody] ViewEmployments employments) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!employmentsManager.EmploymentsExists(id)) { return(NotFound()); } return(Ok(await employmentsManager.PutEmployments(id, employments))); }
//View products time of put public void EmploymentPutMaker(ViewEmployments employments, Employments employmentsInDb) { employmentsInDb.Price = employments.Price; employmentsInDb.EmploymentName = employments.EmploymentName; employmentsInDb.CustomerId = employments.CustomerId; employmentsInDb.Customer = employments.Customer; //employments.GuId = employmentsInDb.GuId; employmentsInDb.Schedules = (ICollection <Schedules>)employments.ViewSchedules; for (var i = 0; i < employmentsInDb.Schedules.Count; i++) { CreateViewSchedules(employmentsInDb.Schedules.ElementAt(i)); } }
// PUT: api/Employments/5 public async Task <ViewEmployments> PutEmployments(int id, ViewEmployments employments) { //TODO:Correct this schedul put //var productsModelFromDb = factory.CreateEmploymentsModelFromDb(employments); var employmentsInDb = await db.Employments.Include(x => x.Schedules).SingleOrDefaultAsync(x => x.EmploymentId == id); db.Employments.Attach(employmentsInDb); factory.EmploymentPutMaker(employments, employmentsInDb); db.SaveChanges(); return(employments); }
//Employments to View public ViewEmployments CreateEmploymentsViewModel(Employments requestEmployments) { var empl = new ViewEmployments { Customer = requestEmployments.Customer, EmploymentName = requestEmployments.EmploymentName, CustomerId = requestEmployments.CustomerId, MakingTime = requestEmployments.MakingTime, Price = requestEmployments.Price, GuId = requestEmployments.GuId }; foreach (var schedule in requestEmployments.Schedules) { var viewSchedules = CreateViewSchedules(schedule); empl.ViewSchedules.Add(viewSchedules); } return(empl); }
//View to Employments public Employments CreateEmploymentsModelFromDb(ViewEmployments virweEmployments) { var employments = new Employments { Customer = virweEmployments.Customer, EmploymentName = virweEmployments.EmploymentName, CustomerId = virweEmployments.CustomerId, Price = virweEmployments.Price, MakingTime = virweEmployments.MakingTime, GuId = Guid.NewGuid() }; foreach (var employmentsViewSchedule in virweEmployments.ViewSchedules) { var dbSchedules = CreateDbSchedules(employmentsViewSchedule); employments.Schedules.Add(dbSchedules); } return(employments); }