public ActionResult Post([FromBody] WorkOrder viewmodel) { var workOrder = map.Map <WorkOrder, Domain.WorkOrder>(viewmodel); workOrder.Employer = Employer; workOrder.EmployerID = Employer.ID; workOrder.onlineSource = true; Domain.WorkOrder newOrder; try { newOrder = serv.Create(workOrder, Employer.email ?? Employer.name); } catch (MacheteValidationException e) { var res = new HttpResponseMessage(HttpStatusCode.BadRequest) { Content = new StringContent(e.ErrorMessage), ReasonPhrase = "Validation failed on workOrder" }; return(BadRequest(res)); } catch (InvalidOperationException e) { var res = new HttpResponseMessage(HttpStatusCode.InternalServerError) { Content = new StringContent(e.Message), ReasonPhrase = "Invalid operation " }; return(BadRequest(res)); } var result = map.Map <Domain.WorkOrder, WorkOrder>(newOrder); return(new JsonResult(new { data = result })); }
public void Put(int id, [FromBody] WorkOrder order) { var domain = serv.Get(order.id); // TODO employers must only be able to edit their record map.Map <WorkOrder, Domain.WorkOrder>(order, domain); serv.Save(domain, UserEmail); }
public void Post([FromBody] WorkOrder order) { var domain = map.Map <WorkOrder, Domain.WorkOrder>(order); serv.Save(domain, UserEmail); }