public ActionResult Create(PrivateTrip PTrip, string searchString = "") { ViewBag.JSDatePattern = MvcApplication.JSDatePattern; ViewBag.SearchString = searchString; PrivateTrip privateTrip = PTrip; if (ModelState.IsValid) { Visa visa = repository.Visas.Where(v => v.EmployeeID == privateTrip.EmployeeID).FirstOrDefault(); if (visa != null) { visa.DaysUsedInPrivateTrips += CountingDaysUsedInPT(privateTrip); visa.EntriesUsedInPrivateTrips++; repository.SaveVisa(visa, visa.EmployeeID); } repository.SavePrivateTrip(privateTrip); //return RedirectToAction("BTMView", "Home", new { tab = 2, searchString = searchString }); List <Employee> emplist = SearchPrivateTripData(repository.Employees.ToList(), searchString); return(View("TableViewPTBTM", emplist)); } PrivateTripViewModel pTripModel = new PrivateTripViewModel(privateTrip); return(View(pTripModel)); }
public PrivateTripViewModel(PrivateTrip privateTrip) { PrivateTripID = privateTrip.PrivateTripID; StartDate = String.Format("{0:d}", privateTrip.StartDate); EndDate = String.Format("{0:d}", privateTrip.EndDate); EmployeeID = privateTrip.EmployeeID; VisaOf = privateTrip.PrivateTripOf; RowVersion = privateTrip.RowVersion; }
public PrivateTrip DeletePrivateTrip(int ptID) { PrivateTrip dbEntry = PrivateTrips.Where(p => p.PrivateTripID == ptID).SingleOrDefault(); if (dbEntry != null) { context.PrivateTrips.Remove(dbEntry); } context.SaveChanges(); return(dbEntry); }
public void PrivateTripEdit() { int beforeEditPrivateTrip = 0; int afterEditPrivateTrip = 0; IWebElement elemToEdit = Browser.FindElementByXPath("//tbody[@id='PTViewBody']/tr").FindElement(By.CssSelector("[href*='/BTM/PrivateTripEdit/8?searchString=']")); Browser.ClickOnWebElement(elemToEdit); Thread.Sleep(Timings.Default_ms * 20); using (var db = new AjourBTForTestContext()) { beforeEditPrivateTrip = db.PrivateTrips.Count(); } IWebElement editStatDatePT = Browser.FindElementByXPath("//*[@id='editStartDatePT'] "); IWebElement editEndDatePT = Browser.FindElementByXPath("//*[@id='editEndDatePT'] "); ((IJavaScriptExecutor)Browser.webDriver).ExecuteScript("document.getElementById('editStartDatePT').removeAttribute('readonly')"); ((IJavaScriptExecutor)Browser.webDriver).ExecuteScript("document.getElementById('editEndDatePT').removeAttribute('readonly')"); Thread.Sleep(Timings.Default_ms * 20); Browser.SendKeysTo(editStatDatePT, "28.07.2014", true); Thread.Sleep(Timings.Default_ms * 20); Browser.SendKeysTo(editEndDatePT, "10.01.2000", true); Thread.Sleep(Timings.Default_ms * 20); IWebElement dateValidationError = Browser.FindElementByXPath("//*[@id='EditPrivateTripForm']/fieldset/table/tbody/tr[2]/td[2]/span/span"); Browser.SendKeysTo(editEndDatePT, "30.07.2014", true); Thread.Sleep(Timings.Default_ms * 20); IWebElement btnSavePrivateTrip = Browser.FindElementByXPath("//*[@id='btnSavePrivateTrip']/span"); Browser.ClickOnWebElement(btnSavePrivateTrip); Thread.Sleep(Timings.Default_ms * 20); using (var db = new AjourBTForTestContext()) { afterEditPrivateTrip = db.PrivateTrips.Count(); PrivateTrip privateTrip = db.PrivateTrips.Where(p => p.PrivateTripID == 8).FirstOrDefault(); Assert.AreEqual(3, (privateTrip.EndDate - privateTrip.StartDate).Days + 1); } empList = Tools.GetAllTableData("//tr[contains(@class,'zebra')]", Browser.webDriver); Assert.AreEqual(afterEditPrivateTrip, beforeEditPrivateTrip); Assert.IsTrue(Browser.FindElementByXPath("//*[@id='PTViewBody']/tr[1]/td[4]").Text.Contains("9")); }
public ActionResult Edit(int id, string searchString = "") { ViewBag.JSDatePattern = MvcApplication.JSDatePattern; ViewBag.SearchString = searchString; PrivateTrip pTrip = repository.PrivateTrips.Where(p => p.PrivateTripID == id).FirstOrDefault(); if (pTrip == null) { return(HttpNotFound()); } else { Employee employee = repository.Employees.Where(e => e.EmployeeID == pTrip.EmployeeID).FirstOrDefault(); ViewBag.EmployeeInformation = employee.LastName + " " + employee.FirstName + " (" + employee.EID + ") from " + employee.Department.DepartmentName; } PrivateTripViewModel privateTripModel = new PrivateTripViewModel(pTrip); return(View(privateTripModel)); }
public void SavePrivateTrip(PrivateTrip pt) { PrivateTrip dbEntry = (from p in PrivateTrips where p.PrivateTripID == pt.PrivateTripID select p).FirstOrDefault(); if (dbEntry != null) { if (!dbEntry.RowVersion.SequenceEqual(pt.RowVersion)) { throw new DbUpdateConcurrencyException(); } dbEntry.StartDate = (pt.StartDate == default(DateTime)) ? dbEntry.StartDate : pt.StartDate; dbEntry.EndDate = (pt.EndDate == default(DateTime)) ? dbEntry.EndDate : pt.EndDate; } else { context.PrivateTrips.Add(pt); } context.SaveChanges(); }
public ActionResult DeleteConfirmed(int id, string searchString = "") { PrivateTrip privateTrip = (from pt in repository.PrivateTrips where pt.PrivateTripID == id select pt).FirstOrDefault(); if (privateTrip != null) { Visa visa = (from v in repository.Visas where v.EmployeeID == privateTrip.EmployeeID select v).FirstOrDefault(); if (visa != null) { visa.DaysUsedInPrivateTrips -= CountingDaysUsedInPT(privateTrip); visa.EntriesUsedInPrivateTrips--; repository.SaveVisa(visa, visa.EmployeeID); } repository.DeletePrivateTrip(id); } ViewBag.SearchString = searchString; ViewBag.JSDatePattern = MvcApplication.JSDatePattern; List <Employee> emplist = SearchPrivateTripData(repository.Employees.ToList(), searchString); return(View("TableViewPTBTM", emplist)); }
public ActionResult Edit(PrivateTrip privateTrip, string searchString = null) { ViewBag.SearchString = searchString; ViewBag.JSDatePattern = MvcApplication.JSDatePattern; string ModelError = ""; try { if (ModelState.IsValid) { Visa visa = repository.Visas.Where(v => v.EmployeeID == privateTrip.EmployeeID).FirstOrDefault(); if (visa != null) { if (visa.DaysUsedInPrivateTrips != null) { int oldDaysUsedInBT = visa.DaysUsedInPrivateTrips.Value; visa.DaysUsedInPrivateTrips -= oldDaysUsedInBT; } visa.DaysUsedInPrivateTrips += CountingDaysUsedInPT(privateTrip); repository.SaveVisa(visa, visa.EmployeeID); } repository.SavePrivateTrip(privateTrip); List <Employee> emplist = SearchPrivateTripData(repository.Employees.ToList(), searchString); return(View("TableViewPTBTM", emplist)); } } catch (DbUpdateConcurrencyException) { ModelError = "The record you attempted to edit " + "was modified by another user after you got the original value. The " + "edit operation was canceled."; } //PrivateTripViewModel privateTripModel = new PrivateTripViewModel(privateTrip); //return View(privateTripModel); return(Json(new { error = ModelError })); }
public ActionResult Delete(int id, string searchString = "") { ViewBag.SearchString = searchString; ViewBag.JSDatePattern = MvcApplication.JSDatePattern; PrivateTrip privateTrip = (from pt in repository.PrivateTrips where pt.PrivateTripID == id select pt).FirstOrDefault(); if (privateTrip == null) { return(HttpNotFound()); } Employee employee = (from e in repository.Employees.AsEnumerable() where e.EmployeeID == privateTrip.EmployeeID select e).FirstOrDefault(); if (employee == null) { return(HttpNotFound()); } ViewBag.EmployeeInformation = "Delete Private trip of " + employee.LastName + " " + employee.FirstName; return(View(privateTrip)); }
public void SavePrivateTrip(PrivateTrip pt) { throw new NotImplementedException(); }
public int CountingDaysUsedInPT(PrivateTrip privateTrip) { //'+1' day for counting last day too return((privateTrip.EndDate - privateTrip.StartDate).Days + 1); }