コード例 #1
0
        public IHttpActionResult PutPayloadInventory(string id, PayloadInventory payloadInventory)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != payloadInventory.id)
            {
                return(BadRequest());
            }

            db.Entry(payloadInventory).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PayloadInventoryExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
コード例 #2
0
        public IHttpActionResult GetPayloadInventory(string id)
        {
            PayloadInventory payloadInventory = db.PayloadInventory.Find(id);

            if (payloadInventory == null)
            {
                return(NotFound());
            }

            return(Ok(payloadInventory));
        }
コード例 #3
0
        public IHttpActionResult DeletePayloadInventory(string id)
        {
            PayloadInventory payloadInventory = db.PayloadInventory.Find(id);

            if (payloadInventory == null)
            {
                return(NotFound());
            }

            db.PayloadInventory.Remove(payloadInventory);
            db.SaveChanges();

            return(Ok(payloadInventory));
        }
コード例 #4
0
        public IHttpActionResult PostPayloadInventory(PayloadInventory payloadInventory)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            payloadInventory.id               = Guid.NewGuid().ToString();
            payloadInventory.lastUpdate       = DateTime.Now;
            payloadInventory.lastUpdateUserId = "000";

            db.PayloadInventory.Add(payloadInventory);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (PayloadInventoryExists(payloadInventory.id))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            db.PayloadStatus.Add(new PayloadStatu
            {
                PayloadInventoryID = payloadInventory.id,
                StatusCode         = (int)AssetStatuses.FLIGHT_READY,
                ETIC             = DateTime.Now.Add(new TimeSpan(90, 0, 0, 0)),
                lastUpdate       = DateTime.Now,
                lastUpdateUserId = "1"
            });

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                throw;
            }

            return(CreatedAtRoute("DefaultApi", new { id = payloadInventory.id }, payloadInventory));
        }
コード例 #5
0
        public IHttpActionResult PutPayloadInventory(string id, PayloadInventory payloadInventory)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != payloadInventory.id)
            {
                return(BadRequest());
            }

            if (!db.Payloads.Any(x => x.PayloadID == payloadInventory.metaDataID))
            {
                return(BadRequest("Invalid Payload Specification ID (metaDataID)"));
            }

            if (!db.Locations.Any(x => x.LocationID == payloadInventory.locationID))
            {
                return(BadRequest("Invalid Location ID"));
            }

            if (!db.Units.Any(x => x.id == payloadInventory.owningUnit))
            {
                return(BadRequest("Invalid Owning Unit ID"));
            }

            if (payloadInventory.serialNumber != null && payloadInventory.serialNumber.Length > 50)
            {
                return(BadRequest("Serial Number is too long"));
            }

            if (payloadInventory.branch != null)
            {
                if (!db.BranchOfServices.Any(x => x.id == payloadInventory.branch))
                {
                    return(BadRequest("Invalid Branch"));
                }
            }

            if (payloadInventory.COCOM != null)
            {
                if (!db.COCOMs.Any(x => x.id == payloadInventory.COCOM))
                {
                    return(BadRequest("Invalid COCOM"));
                }
            }

            payloadInventory.lastUpdate       = DateTime.Now;
            payloadInventory.lastUpdateUserId = "000";

            db.Entry(payloadInventory).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PayloadInventoryExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
コード例 #6
0
        public IHttpActionResult PostPayloadInventory(PayloadInventory payloadInventory)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (db.Payloads.Where(x => x.PayloadID == payloadInventory.metaDataID).Count() <= 0)
            {
                return(BadRequest("Invalid Payload Specification ID (metaDataID)"));
            }

            if (db.Locations.Where(x => x.LocationID == payloadInventory.locationID).Count() <= 0)
            {
                return(BadRequest("Invalid Location ID"));
            }

            if (db.Units.Where(x => x.id == payloadInventory.owningUnit).Count() <= 0)
            {
                return(BadRequest("Invalid Owning Unit ID"));
            }

            if (payloadInventory.serialNumber != null && payloadInventory.serialNumber.Length > 50)
            {
                return(BadRequest("Serial Number is too long"));
            }

            if (payloadInventory.branch != null)
            {
                if (!db.BranchOfServices.Any(x => x.id == payloadInventory.branch))
                {
                    return(BadRequest("Invalid Branch"));
                }
            }

            if (payloadInventory.COCOM != null)
            {
                if (!db.COCOMs.Any(x => x.id == payloadInventory.COCOM))
                {
                    return(BadRequest("Invalid COCOM"));
                }
            }

            payloadInventory.id               = Guid.NewGuid().ToString();
            payloadInventory.lastUpdate       = DateTime.Now;
            payloadInventory.lastUpdateUserId = "000";

            db.PayloadInventory.Add(payloadInventory);

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                if (PayloadInventoryExists(payloadInventory.id))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            db.PayloadStatus.Add(new PayloadStatu
            {
                PayloadInventoryID = payloadInventory.id,
                StatusCode         = (int)AssetStatuses.FLIGHT_READY,
                ETIC             = 0,
                lastUpdate       = DateTime.Now,
                lastUpdateUserId = "1"
            });

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException)
            {
                throw;
            }

            return(CreatedAtRoute("DefaultApiPost", new { id = payloadInventory.id }, payloadInventory));
        }