public IHttpActionResult PostProductNew(AssignedProductData productnew) { if (!ModelState.IsValid) { return BadRequest(ModelState); } var e = User.Identity.Name; ProductOwner po = db.ProductOwner.FirstOrDefault(d => d.Email == e); ProductNew pn = new ProductNew() { ProductName = productnew.ProductName, ProductOwner_ID = po.ID }; db.ProductNew.Add(pn); db.SaveChanges(); return CreatedAtRoute("DefaultApi", new { id = productnew.ProductID }, productnew); }
// PUT api/productNew/5 public IHttpActionResult PutProductNew(int id, ProductNew productnew) { if (!ModelState.IsValid) { return BadRequest(ModelState); } if (id != productnew.ProductID) { return BadRequest(); } var e = User.Identity.Name; ProductOwner po = db.ProductOwner.FirstOrDefault(d => d.Email == e); productnew.ProductOwner_ID = po.ID; db.Entry(productnew).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ProductNewExists(id)) { return NotFound(); } else { throw; } } return StatusCode(HttpStatusCode.NoContent); }
private List<Update> PopulateAssignedUpdateData(ProductNew pn) { var allUpdates = db.Update; var ownerupdates = new HashSet<int>(pn.Updates.Select(c => c.UpdateID)); var viewModel = new List<Update>(); foreach (var update in allUpdates) { if (ownerupdates.Contains(update.UpdateID)) { viewModel.Add(new Update { UpdateID = update.UpdateID, UpdateIntro = update.UpdateIntro, UpdateDetail=update.UpdateDetail // Assigned = ownerupdates.Contains(product.ProductID) }); } } return viewModel; }