// GET: VirtualWorkTimes/Create public async Task <IActionResult> Create() { var storeId = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value); var employeeId = await _context.TblEmployees.Where(x => x.StoreId == storeId).Select(e => e.Id).FirstOrDefaultAsync(); var vwt = new TableVirtualWorkTime { EmployeeId = employeeId, TimeSlot = 15 }; return(View(vwt)); }
public async Task <IActionResult> Create([Bind("Id,Weekday,TimeFrom,TimeTo,TimeSlot,EmployeeId")] TableVirtualWorkTime tableVirtualWorkTime) { if (ModelState.IsValid) { if (tableVirtualWorkTime.TimeSlot < 5) { tableVirtualWorkTime.TimeSlot = 5; } _context.Add(tableVirtualWorkTime); await _context.SaveChangesAsync(); return(RedirectToAction("Employees", "Stores")); } return(View(tableVirtualWorkTime)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Weekday,TimeFrom,TimeTo,TimeSlot,EmployeeId")] TableVirtualWorkTime tableVirtualWorkTime) { if (id != tableVirtualWorkTime.Id) { return(NotFound()); } if (ModelState.IsValid) { try { var storeId = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value); var employeeId = await _context.TblEmployees.Where(x => x.StoreId == storeId).Select(e => e.Id).FirstOrDefaultAsync(); if (tableVirtualWorkTime.EmployeeId != employeeId) { return(Forbid()); } if (tableVirtualWorkTime.TimeSlot < 5) { tableVirtualWorkTime.TimeSlot = 5; } _context.Update(tableVirtualWorkTime); await _context.SaveChangesAsync(); TempData["message"] = "Daten erfolgreich gespeichert"; return(RedirectToAction("Employees", "Stores")); } catch (DbUpdateConcurrencyException) { ViewData["message"] = "Daten konnten nicht erfolgreich gespeichert werden"; } } return(View(tableVirtualWorkTime)); }