public IHttpActionResult DeleteProductTypeCategory(int id, int UILoginUserID, string UILoginPassword, int SiteID) { if (!Global.CheckUserIDAndPasswordWithSiteID(db, UILoginUserID, UILoginPassword, SiteID, "DeleteProductTypeCategory")) { return(BadRequest()); } ProductTypeCategory productTypeCategory = db.ProductTypeCategories.Find(id); if (productTypeCategory == null) { return(NotFound()); } if (SiteID != productTypeCategory.SiteID) { return(BadRequest()); } User user = db.Users.Find(UILoginUserID); if (user == null) { return(BadRequest()); } if (!user.IsRootUser && !user.IsSiteAdmin && productTypeCategory.EntryByUserID != user.ID) { return(BadRequest()); } db.ProductTypeCategories.Remove(productTypeCategory); db.SaveChanges(); return(Ok(productTypeCategory)); }
public IHttpActionResult PutProductTypeCategory(int id, ProductTypeCategory productTypeCategory) { if (!Global.CheckUserIDAndPasswordWithSiteID(db, productTypeCategory.UILoginUserID, productTypeCategory.UILoginPassword, productTypeCategory.SiteID, "PutProductTypeCategory")) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != productTypeCategory.ID) { return(BadRequest()); } ProductTypeCategory ptc = db.ProductTypeCategories.AsNoTracking().SingleOrDefault(p => p.ID == id); if (ptc == null) { return(NotFound()); } User user = db.Users.Find(productTypeCategory.UILoginUserID); if (!user.IsRootUser && !user.IsSiteAdmin && ptc.EntryByUserID != user.ID) { return(BadRequest()); } if (ptc.SiteID != productTypeCategory.SiteID) { return(BadRequest()); } db.Entry(productTypeCategory).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ProductTypeCategoryExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PostProductTypeCategory(ProductTypeCategory productTypeCategory) { if (!Global.CheckUserIDAndPasswordWithSiteID(db, productTypeCategory.UILoginUserID, productTypeCategory.UILoginPassword, productTypeCategory.SiteID, "PostProductTypeCategory")) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.ProductTypeCategories.Add(productTypeCategory); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = productTypeCategory.ID }, productTypeCategory)); }