public async Task <bool> JobsiteHasClockedInTimestamp(Jobsite jobsite) { return(await _db.Timestamps .Include(t => t.Jobsite) .AnyAsync( t => t.Jobsite == jobsite && t.ClockedIn == true)); }
public async Task <ICollection <Timestamp> > GetTimestampsForJob(Jobsite jobsite) { return(await _db.Timestamps .Include(t => t.AppUser) .Where(t => t.Jobsite == jobsite) .ToListAsync()); }
public async Task <IActionResult> Create(OrderViewModel model) { if (ModelState.IsValid) { var crane = await _context.Cranes.FirstOrDefaultAsync(x => x.CraneId == model.CraneId); if (crane == null) { return(NotFound()); } var company = new Company { CompanyName = model.CompanyName, Address = model.CompanyAddress.Street + ", " + model.CompanyAddress.City + " " + model.CompanyAddress.State + ", " + model.CompanyAddress.ZipCode }; _context.Add(company); var contact = new Contact { FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, Phone = model.Phone, Company = company }; _context.Add(contact); var jobsite = new Jobsite { JobsiteName = model.JobsiteName, Address = model.JobsiteAddress.Street + ", " + model.JobsiteAddress.City + " " + model.JobsiteAddress.State + ", " + model.JobsiteAddress.ZipCode }; var order = new Order { OrderDate = DateTime.Today, StartDate = model.StartDate, EndDate = model.EndDate, Company = company, Crane = crane, Jobsite = jobsite }; _context.Add(order); _context.Add(jobsite); await _context.SaveChangesAsync(); return(View("Confirmation")); } return(View("Details", model)); }
public ActionResult DeleteConfirmed(int id) { Jobsite jobsite = db.Jobsites.Find(id); db.Jobsites.Remove(jobsite); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "JobSiteID,Address,Town,State,Zip")] Jobsite jobsite) { if (ModelState.IsValid) { db.Entry(jobsite).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(jobsite)); }
public ActionResult Create([Bind(Include = "JobSiteID,Address,Town,State,Zip")] Jobsite jobsite) { if (ModelState.IsValid) { db.Jobsites.Add(jobsite); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(jobsite)); }
public async Task <bool> ClockIn(Jobsite jobsite, AppUser user) { var timestamp = new Timestamp { Jobsite = jobsite, AppUser = user, ClockedIn = true, ClockedInStamp = DateTimeOffset.Now }; _db.Timestamps.Add(timestamp); return(await _db.SaveChangesAsync() > 0); }
public async Task <PagedList <Timestamp> > GetTimestampsForJobByDate(Jobsite jobsite, TimestampParameters timestampParameters) { var query = _db.Timestamps .Include(t => t.AppUser) .Where(t => t.Jobsite == jobsite && t.ClockedInStamp >= timestampParameters.FromDate && t.ClockedInStamp <= timestampParameters.ToDate) .OrderByDescending(t => t.ClockedInStamp); return(await PagedList <Timestamp> .ToPagedList( query, timestampParameters.PageNumber, timestampParameters.PageSize)); }
// GET: Jobsites/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Jobsite jobsite = db.Jobsites.Find(id); if (jobsite == null) { return(HttpNotFound()); } return(View(jobsite)); }
public async Task <bool> AddTimestamp(Jobsite jobsite, AppUser user, DateTimeOffset clockedIn, DateTimeOffset clockedOut) { var timestamp = new Timestamp { Jobsite = jobsite, AppUser = user, ClockedIn = false, ClockedInStamp = clockedIn, ClockedOutStamp = clockedOut }; _db.Timestamps.Add(timestamp); return(await _db.SaveChangesAsync() > 0); }