public ActionResult Edit(Trip tripId, int pageNumber) { if (null == tripId) { return new NoSuchTripResult(); } AddMinMaxDates(tripId); ViewBag.Title = String.Format("Edit GEN-6 page {1} for trip {0}", tripId.ToString(), pageNumber); ViewBag.TripNumber = tripId.SpcTripNumber ?? "This Trip"; var pollutionEvent = FindByTripAndPageNumber(tripId, pageNumber); return View(pollutionEvent); }
public ActionResult Add(Trip tripId) { if (null == tripId) { return new NoSuchTripResult(); } AddMinMaxDates(tripId); ViewBag.Title = String.Format("Edit GEN-6 event for trip {0}", tripId.ToString()); ViewBag.TripNumber = tripId.SpcTripNumber ?? "This Trip"; var pevent = new PollutionEvent(); pevent.Trip = tripId; return View(pevent); }
public ActionResult Edit(Trip tripId, CrewViewModel cvm) { if (!ModelState.IsValid) { if (IsApiRequest) { return ModelErrorsResponse(); } ViewBag.Title = String.Format("Edit crew list for {0}", tripId.ToString()); return View(cvm); } using (var xa = MvcApplication.CurrentSession.BeginTransaction()) { IRepository<Crew> repo = TubsDataService.GetRepository<Crew>(MvcApplication.CurrentSession); // Deletes first cvm.Deleted.ToList().ForEach(id => repo.DeleteById(id)); // AsCrewList strips out any crew marked _destroy or that don't have details var crewlist = cvm.AsCrewList(); crewlist.ToList().ForEach(c => { c.SetAuditTrail(User.Identity.Name, DateTime.Now); c.Trip = tripId; repo.Save(c); }); // Flush to database xa.Commit(); } if (IsApiRequest) { using (var repo = TubsDataService.GetRepository<Trip>(false)) { var trip = repo.FindById(tripId.Id) as PurseSeineTrip; cvm = Mapper.Map<PurseSeineTrip, CrewViewModel>(trip); } return GettableJsonNetData(cvm); } return RedirectToAction("Index", "Crew", new { tripId = tripId.Id }); }
/// <summary> /// Return all trip positions as KML. /// </summary> /// <param name="tripId">Current trip</param> /// /// <param name="extension">File extension</param> /// <returns>KML document with all trip positions.</returns> public ActionResult AllData(Trip tripId, string extension) { if (null == tripId) { return InvalidTripResponse(); } if (!IsKml(extension)) return new HttpNotFoundResult(); // Exclude any pushpins that won't display nicely var pushpins = tripId.Pushpins.Where(p => p.CanDisplay()).ToList(); // Sort by date (assumes all timestamps have the same base frame of reference for date) // which occasionally is not true. pushpins.Sort( delegate(Pushpin p1, Pushpin p2) { return Comparer<DateTime?>.Default.Compare(p1.Timestamp, p2.Timestamp); }); var tripDoc = KmlBuilder.Build(tripId.Pushpins); tripDoc.name = "All Trip Positions"; tripDoc.description = String.Format( "Positions for trip {0} generated on {1} via URL: [{2}]", tripId.ToString(), DateTime.Now.ToShortDateString(), this.HttpContext.Request.RawUrl); return new KmlResult() { Document = tripDoc, IsCompressed = IsCompressed(extension) }; }
/// <summary> /// Create KML document representing just the trip track. /// </summary> /// <param name="tripId">Current trip</param> /// <param name="isCompressed">Parameter for requesting compressed data</param> /// <returns>KML document containing trip track.</returns> internal KmlResult TrackKml(Trip tripId, bool isCompressed = false) { // Exclude any pushpins that won't display nicely var pushpins = tripId.Pushpins.Where(p => p.CanDisplay()).ToList(); // Sort by date (assumes all timestamps have the same base frame of reference for date) // which occasionally is not true. pushpins.Sort( delegate(Pushpin p1, Pushpin p2) { return Comparer<DateTime?>.Default.Compare(p1.Timestamp, p2.Timestamp); }); var tripDoc = KmlBuilder.BuildTrack(tripId.Pushpins); tripDoc.name = "Trip Track"; tripDoc.description = String.Format( "Positions for trip {0} generated on {1} via URL: [{2}]", tripId.ToString(), DateTime.Now.ToShortDateString(), this.HttpContext.Request.RawUrl); return new KmlResult() { Document = tripDoc, IsCompressed = isCompressed }; }
/// <summary> /// Create KML document representing just the trip positions. /// </summary> /// <param name="tripId">Current trip</param> /// <param name="isCompressed">Parameter for requesting compressed data</param> /// <returns>KML document containing trip positions.</returns> internal KmlResult PositionsKml(Trip tripId, bool isCompressed = false) { // Exclude any pushpins that won't display nicely var pushpins = tripId.Pushpins.Where(p => p.CanDisplay()).ToList(); // There's no call to sort these positions var tripDoc = KmlBuilder.Build(tripId.Pushpins, false); tripDoc.name = "All Trip Positions"; tripDoc.description = String.Format( "Positions for trip {0} generated on {1} via URL: [{2}]", tripId.ToString(), DateTime.Now.ToShortDateString(), this.HttpContext.Request.RawUrl); return new KmlResult() { Document = tripDoc, IsCompressed = isCompressed }; }
public ActionResult List(Trip tripId) { if (null == tripId) { return new NoSuchTripResult(); } ViewBag.Title = String.Format("GEN-6 events for trip {0}", tripId.ToString()); ViewBag.TripNumber = tripId.SpcTripNumber ?? "This Trip"; return View(tripId.PollutionEvents ?? new List<PollutionEvent>()); }
private ActionResult Load(Trip tripId, string titleFormat) { ViewBag.Title = String.Format(titleFormat, tripId.ToString()); return View(CurrentAction, tripId); }
public ActionResult PositionAudit(Trip tripId) { IList<PositionAuditViewModel> auditResults = new List<PositionAuditViewModel>(tripId.Pushpins.Count); var pushpins = tripId.Pushpins.ToList(); pushpins.Sort( delegate(Pushpin p1, Pushpin p2) { return Comparer<DateTime?>.Default.Compare(p1.Timestamp, p2.Timestamp); }); PositionAuditViewModel previous = PositionAuditViewModel.FromPushpin(pushpins.FirstOrDefault()); foreach (var pin in pushpins.Skip(1)) { var current = PositionAuditViewModel.FromPushpin(pin); auditResults.Add(PositionAuditViewModel.Diff(previous, current)); previous = current; } ViewBag.Title = String.Format("Position Audit for {0}", tripId.ToString()); ViewBag.TripNumber = tripId.SpcTripNumber ?? "This Trip"; return View(auditResults); }
public ActionResult Details(Trip tripId) { // ViewBag means nothing for an API request if (!IsApiRequest) { AddTripNavbar(tripId); ViewBag.Title = tripId.ToString(); ViewBag.BaseDownloadName = string.Format( "{0}_{1}_", tripId.Observer.StaffCode.NullSafeTrim(), tripId.TripNumber.NullSafeTrim()); } var vm = Mapper.Map<Trip, TripSummaryViewModel>(tripId); if (IsApiRequest) return GettableJsonNetData(vm); return View(vm); }
public ActionResult List(Trip tripId) { var repo = new TubsRepository<SeaDay>(MvcApplication.CurrentSession); // Push the projection into a List so that it's not the NHibernate collection implementation var days = repo.FilterBy(d => d.Trip.Id == tripId.Id).ToList<SeaDay>(); ViewBag.Title = String.Format("Sea days for {0}", tripId.ToString()); ViewBag.TripNumber = tripId.SpcTripNumber ?? "This Trip"; return View(days); }
public ActionResult List(Trip tripId) { var trip = tripId as LongLineTrip; var repo = TubsDataService.GetRepository<LongLineSet>(MvcApplication.CurrentSession); var sets = TubsDataService.GetRepository<LongLineSet>(MvcApplication.CurrentSession) .FilterBy(s => s.Trip.Id == tripId.Id) .OrderBy(s => s.SetNumber); ViewBag.Title = String.Format("Sets for {0}", tripId.ToString()); ViewBag.TripNumber = tripId.SpcTripNumber ?? "This Trip"; return View(sets); }