public async Task <IHttpActionResult> PutProsumer(int id, ProsumerInfo prosumer) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != prosumer.Id) { return(BadRequest()); } db.Entry(prosumer).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProsumerExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult GetProsumerInfo(int id) { ProsumerInfo prosumerInfo = db.ProsumerInfoes.Find(id); if (prosumerInfo == null) { return(NotFound()); } return(Ok(prosumerInfo)); }
public async Task <IHttpActionResult> GetProsumerInfo(int id) { ProsumerInfo prosumerInfo = await db.ProsumerInfoes.FindAsync(id); if (prosumerInfo == null) { return(NotFound()); } return(Ok(prosumerInfo)); }
public IHttpActionResult PostProsumerInfo(ProsumerInfo prosumerInfo) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.ProsumerInfoes.Add(prosumerInfo); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = prosumerInfo.ProsumerID }, prosumerInfo)); }
public async Task <IHttpActionResult> PostProsumer(ProsumerInfo prosumer) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Prosumers.Add(prosumer); await db.SaveChangesAsync(); return(CreatedAtRoute("DefaultApi", new { id = prosumer.Id }, prosumer)); }
public async Task <IHttpActionResult> DeleteProsumer(int id) { ProsumerInfo prosumer = await db.Prosumers.FindAsync(id); if (prosumer == null) { return(NotFound()); } db.Prosumers.Remove(prosumer); await db.SaveChangesAsync(); return(Ok(prosumer)); }
public IHttpActionResult DeleteProsumerInfo(int id) { ProsumerInfo prosumerInfo = db.ProsumerInfoes.Find(id); if (prosumerInfo == null) { return(NotFound()); } db.Owners.Remove(prosumerInfo.Owner); db.EnergySources.RemoveRange(prosumerInfo.Production.EnergySources); db.Productions.Remove(prosumerInfo.Production); db.Addresses.Remove(prosumerInfo.Address); db.ProsumerInfoes.Remove(prosumerInfo); db.SaveChanges(); return(Ok(prosumerInfo)); }
public IHttpActionResult PutProsumerInfo(int id, ProsumerInfo prosumerInfo) { if (id != prosumerInfo.ProsumerID) { return(BadRequest()); } ProsumerInfo prosumer = db.ProsumerInfoes.Find(id); //For Prosumer prosumer.Type = prosumerInfo.Type; //Prosumer Address prosumer.Address.Street = prosumerInfo.Address.Street; prosumer.Address.City = prosumerInfo.Address.City; prosumer.Address.Country = prosumerInfo.Address.Country; prosumer.Address.ZipCode = prosumerInfo.Address.ZipCode; prosumer.Address.HouseNumber = prosumerInfo.Address.HouseNumber; //Prosumer Owner prosumer.Owner.FirstName = prosumerInfo.Owner.FirstName; prosumer.Owner.MiddleName = prosumerInfo.Owner.MiddleName; prosumer.Owner.LastName = prosumerInfo.Owner.LastName; prosumer.Owner.Email = prosumerInfo.Owner.Email; prosumer.Owner.PhoneNumber = prosumerInfo.Owner.PhoneNumber; //Prosumer Production prosumer.Production.AverageProduction = prosumerInfo.Production.AverageProduction; prosumer.Production.AverageConsumer = prosumerInfo.Production.AverageConsumer; prosumer.Production.Balance = prosumerInfo.Production.Balance; for (int i = 0; i < prosumer.Production.EnergySources.Count; i++) { prosumer.Production.EnergySources[i].Source = prosumerInfo.Production.EnergySources[i].Source; } //Prosumer Production Energysources if (prosumer.Production.EnergySources.Count != prosumerInfo.Production.EnergySources.Count) { for (int i = prosumer.Production.EnergySources.Count; i < prosumerInfo.Production.EnergySources.Count; i++) { prosumer.Production.EnergySources.Add(new EnergySource() { Source = prosumerInfo.Production.EnergySources[i].Source }); } } try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ProsumerInfoExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }