public IHttpActionResult DeleteProductMeasurementType(int id, int UILoginUserID, string UILoginPassword, int SiteID) { if (!Global.CheckUserIDAndPasswordWithSiteID(db, UILoginUserID, UILoginPassword, SiteID, "DeleteProductMeasurementType")) { return(BadRequest()); } ProductMeasurementType productMeasurementType = db.ProductMeasurementTypes.Find(id); if (productMeasurementType == null) { return(NotFound()); } if (productMeasurementType.SiteID != SiteID) { return(BadRequest()); } User user = db.Users.Find(UILoginUserID); if (user == null) { return(BadRequest()); } if (!user.IsRootUser && !user.IsSiteAdmin && productMeasurementType.EntryByUserID != user.ID) { return(BadRequest()); } db.ProductMeasurementTypes.Remove(productMeasurementType); db.SaveChanges(); return(Ok(productMeasurementType)); }
public IHttpActionResult PutProductMeasurementType(int id, ProductMeasurementType productMeasurementType) { if (!Global.CheckUserIDAndPasswordWithSiteID(db, productMeasurementType.UILoginUserID, productMeasurementType.UILoginPassword, productMeasurementType.SiteID, "PutProductMeasurementType")) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != productMeasurementType.ID) { return(BadRequest()); } ProductMeasurementType pmt = db.ProductMeasurementTypes.AsNoTracking().SingleOrDefault(p => p.ID == id); if (pmt == null) { return(NotFound()); } if (pmt.SiteID != productMeasurementType.SiteID) { return(BadRequest()); } User user = db.Users.Find(productMeasurementType.UILoginUserID); if (!user.IsRootUser && !user.IsSiteAdmin && pmt.EntryByUserID != user.ID) { return(BadRequest()); } db.Entry(productMeasurementType).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ProductMeasurementTypeExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PostProductMeasurementType(ProductMeasurementType productMeasurementType) { if (!Global.CheckUserIDAndPasswordWithSiteID(db, productMeasurementType.UILoginUserID, productMeasurementType.UILoginPassword, productMeasurementType.SiteID, "PostProductMeasurementType")) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.ProductMeasurementTypes.Add(productMeasurementType); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = productMeasurementType.ID }, productMeasurementType)); }