public IHttpActionResult DeleteMunition(string id) { Munition munition = db.Munitions.Find(id); if (munition == null) { return(NotFound()); } if (db.MunitionsInventory.Any(x => x.metaDataID == munition.MunitionID)) { return(BadRequest("This specification cannot be deleted -- there are inventory items that use this specification.")); } db.Munitions.Remove(munition); db.SaveChanges(); munition.DeleteFiles(munition.GetType().GetProperties().Where(p => properties.Contains(p.Name)).ToArray(), "Munition"); return(Ok(munition)); }
public IHttpActionResult GetMunition(string id) { Munition munition = db.Munitions.Find(id); if (munition == null) { return(NotFound()); } munition.AddUrl(munition.GetType().GetProperties().Where(p => properties.Contains(p.Name)).ToArray(), this.Request); //object uploadUrl; //Request.Properties.TryGetValue("uploadUrl", out uploadUrl); //munition.MunitionWireframe = uploadUrl + munition.MunitionWireframe; //munition.MunitionPhoto = uploadUrl + munition.MunitionPhoto; //munition.Munition3D = uploadUrl + munition.Munition3D; //munition.MunitionIcon = uploadUrl + munition.MunitionIcon; //munition.MunitionDatasheet = uploadUrl + munition.MunitionDatasheet; return(Ok(munition)); }
public async Task <IHttpActionResult> PutMunition(string id) { Munition munition = await UpdateDataWithFile(); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != munition.MunitionID) { return(BadRequest()); } if (munition.MunitionName == null || munition.MunitionName.Trim() == "") { return(BadRequest("Invalid Munition Name: " + munition.MunitionName)); } if (!IsValidMunitionRole(munition.MunitionRole)) { return(BadRequest("Invalid Munition Role: " + munition.MunitionRole)); } if (!IsValidMOS(munition.MunitionMOS1)) { return(BadRequest("Invalid MOS: " + munition.MunitionMOS1)); } if (!IsValidMOS(munition.MunitionMOS2)) { return(BadRequest("Invalid MOS: " + munition.MunitionMOS2)); } if (!IsValidMOS(munition.MunitionMOS3)) { return(BadRequest("Invalid MOS: " + munition.MunitionMOS3)); } munition.RemoveUrl(munition.GetType().GetProperties().Where(p => properties.Contains(p.Name)).ToArray(), this.Request); munition.LastUpdate = DateTime.Now; db.Entry(munition).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!MunitionExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }