public async Task <IActionResult> Putparkingslot(int id, [FromBody] parkingslot parkingslot) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != parkingslot.sl) { return(BadRequest("Id is not valid")); } db.Entry(parkingslot).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!parkingslotExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode((int)HttpStatusCode.NoContent)); }
public async Task <IActionResult> GetParkingslotsById(int id) { parkingslot parkingslot = await db.Parkingslots.FindAsync(id); if (parkingslot == null) { return(NotFound("Id is not valid")); } return(Ok(parkingslot)); }
public async Task <IActionResult> Deleteparkingslot(int id) { parkingslot parkingslot = await db.Parkingslots.FindAsync(id); if (parkingslot == null) { return(NotFound("Id is not valid")); } db.Parkingslots.Remove(parkingslot); await db.SaveChangesAsync(); return(Ok(parkingslot)); }
public async Task <IActionResult> Postparkingslot(parkingslot parkingslot) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } parkingslot p = db.Parkingslots.Where(x => x.floor == parkingslot.floor && x.section == parkingslot.section && x.slot == parkingslot.slot).FirstOrDefault(); if (p == null) { db.Parkingslots.Add(parkingslot); await db.SaveChangesAsync(); // return Ok(parkingslot); return(CreatedAtAction("GetParkingslotsById", new { id = parkingslot.sl }, parkingslot)); } else { return(BadRequest("This slot is already present in database")); } }
public async Task <IActionResult> Postdetails(details details) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } parkingslot p1 = db.Parkingslots.Where(x => x.availability == Availability.Available).FirstOrDefault(); if (p1 == null) { return(BadRequest("There is no available slot to park the vehicle")); } else { details.date = details.date; p1.availability = Availability.Occupied; details.Slot = p1.sl; db.Details.Add(details); try { await db.SaveChangesAsync(); } catch (DbUpdateException) { if (detailsExists(details.vehicleNo)) { return(Conflict("This vehicle is already parked")); } else { throw; } } return(CreatedAtAction("Getdetails", new { id = details.vehicleNo }, details)); } }
// [ResponseType(typeof(void))] public async Task <IActionResult> Putdetails(string id, [FromBody] details details) { // details details = await db.Details.FindAsync(id); if (!ModelState.IsValid) { return(BadRequest(ModelState)); //update details } if (id != details.vehicleNo) { return(BadRequest("Id is not valid")); } if (details.outTime < details.inTime) { return(BadRequest("out time cannot be smaller than in time")); } string v; DateTime date; double outTime; if (details.outTime != null) { details.cost = (details.outTime - details.inTime) * 3; parkingslot p = db.Parkingslots.Where(x => x.sl == details.Slot).FirstOrDefault(); p.availability = Availability.Available; backup b = new backup(); b.name = details.name; b.contactNumber = details.contactNumber; b.vehicleNo = details.vehicleNo; b.date = details.date; // b.floor = details.serialno.floor; // b.slot = details.serialno.slot; // b.section = details.serialno.section; b.slot = Convert.ToInt32(details.Slot); b.inTime = details.inTime; b.outTime = Convert.ToDouble(details.outTime); b.cost = Convert.ToDouble(details.cost); db.Backups.Add(b); v = b.vehicleNo; date = b.date.Date; outTime = b.outTime; db.Entry(details).State = EntityState.Modified; try { await db.SaveChangesAsync(); db.Details.Remove(details); await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!detailsExists(id)) { return(NotFound()); } else { throw; } } return(CreatedAtAction("GetBackups", new { controller = "backups", id = v }, details)); } else { db.Entry(details).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!detailsExists(id)) { return(NotFound("Id is not valid")); } else { throw; } } return(CreatedAtAction("Getdetails", new { controller = "details", id = id }, details)); } }