public async Task <IActionResult> RentProperty(int id, int userId) { var rent = await _repo.GetRent(userId, id); if (rent != null) { return(BadRequest("You already rent this property")); } if (await _repo.GetUser(userId) == null) { return(NotFound()); } rent = new Models.Rent { UserId = userId, PropertyId = id }; _repo.Add <Models.Rent>(rent); if (await _repo.SaveAll()) { return(Ok()); } return(BadRequest("Failed to rent property")); }
public ActionResult Delete(int id) { Models.Rent rent = null; try { rent = db.Rents.Where(c => c.Id == id).First(); db.Rents.Remove(rent); db.SaveChanges(); } catch { } JsonResult data = Json(rent); return(data); }
public ActionResult Insert(int premiseId, int organizationId, DateTime arrivalDate, DateTime dateOfDeparture) { Models.Rent rent = new Models.Rent { PremiseId = premiseId, OrganizationId = organizationId, ArrivalDate = arrivalDate, DateOfDeparture = dateOfDeparture, Organization = db.Organizations.Where(p => p.Id == organizationId).First(), Premise = db.Premises.Where(p => p.Id == premiseId).First() }; db.Rents.Add(rent); db.SaveChanges(); JsonResult data = Json(rent); return(data); }
public ActionResult Update(int id, int premiseId, int organizationId, DateTime arrivalDate, DateTime dateOfDeparture) { Models.Rent rent = null; try { rent = db.Rents.Where(c => c.Id == id).First(); rent.PremiseId = premiseId; rent.OrganizationId = organizationId; rent.ArrivalDate = arrivalDate; rent.DateOfDeparture = dateOfDeparture; rent.Organization = db.Organizations.Where(p => p.Id == organizationId).First(); rent.Premise = db.Premises.Where(p => p.Id == premiseId).First(); db.SaveChanges(); } catch { } JsonResult data = Json(rent); return(data); }
public static void Initialize(ApplicationContext db) { db.Database.EnsureCreated(); if (db.Organizations.Any()) { return; } Random rand = new Random(); int organizationsLength = 30; int buildingsLength = 30; int premisesLength = 200; int rentOfPremisesLength = 4000; int invoicesLength = 10000; string voc = "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm"; for (int i = 0; i < organizationsLength; i++) { Organization organization = new Organization { Name = GetRandomString(voc, 20), Mail = GetRandomString(voc, 20) }; db.Organizations.Add(organization); } db.SaveChanges(); for (int i = 0; i < buildingsLength; i++) { Building building = new Building { Name = GetRandomString(voc, 20), Mail = GetRandomString(voc, 20), Characteristic = GetRandomString(voc, 20), NumberOfStoreys = rand.Next(1, 16) }; db.Buildings.Add(building); } db.SaveChanges(); for (int i = 0; i < premisesLength; i++) { Premise premise = new Premise { BuildingNumber = rand.Next(1, buildingsLength - 1), Area = rand.Next(20, 300), FloorPlan = GetRandomString(voc, 20), Photos = GetRandomString(voc, 20) }; db.Premises.Add(premise); } db.SaveChanges(); for (int i = 0; i < rentOfPremisesLength; i++) { Models.Rent rent = new Models.Rent { OrganizationId = rand.Next(1, organizationsLength), PremiseId = rand.Next(1, premisesLength), ArrivalDate = new DateTime(2000, 1, 1).AddDays(rand.Next(0, 6000)), DateOfDeparture = new DateTime(2018, 1, 1).AddDays(rand.Next(0, 1000)) }; db.Rents.Add(rent); } db.SaveChanges(); for (int i = 0; i < invoicesLength; i++) { Invoice invoice = new Invoice { Mounth = rand.Next(1, 12), RentId = rand.Next(1, rentOfPremisesLength), DateOfPayment = new DateTime(2000, 1, 1).AddMonths(rand.Next(1, 240)), Bailee = GetRandomString(voc, 20), Total = rand.Next(1000, 30000) }; db.Invoices.Add(invoice); } db.SaveChanges(); }