private static void insertTrafficCitation(TrafficCitation citation) { var citationDoc = new TrafficCitationDoc { Id = citation.id, CitationTimeDate = citation.CitationTimeDate.ToString(Function.DateFormatForPart(DateOutputPart.ISO)), FirstName = citation.FirstName, LastName = citation.LastName, DOB = citation.DOB, HomeAddress = citation.HomeAddress, CitationStreetAddress = citation.CitationStreetAddress, CitationCity = citation.CitationCity, CitationPosX = (float)citation.CitationPosX, CitationPosY = (float)citation.CitationPosY, CitationPosZ = (float)citation.CitationPosZ, VehicleType = citation.VehicleType, VehicleModel = citation.VehicleModel, VehicleTag = citation.VehicleTag, VehicleColor = citation.VehicleColor, CitationReason = citation.CitationReason, CitationAmount = citation.CitationAmount, Details = citation.Details, IsArrestable = citation.IsArrestable }; Globals.Store.citationCollection.Insert(citationDoc); }
public static void ShowTrafficCitationCreate(TrafficCitation citation, ComputerPlusEntity entity = null, TrafficCitationView.TrafficCitationActionEvent callbackDelegate = null) { TrafficCitation mCitation = null; if (citation == null && entity == null) { mCitation = Globals.PendingTrafficCitation != null ? Globals.PendingTrafficCitation : new TrafficCitation(); } else if (citation == null && entity.Validate()) { Function.Log("Creating Traffic Citation for ped in vehicle"); mCitation = TrafficCitation.CreateForPedInVehicle(entity); Globals.PendingTrafficCitation = mCitation; Function.Log("Created Traffic Citation for ped " + mCitation.FirstName); } else if (citation != null && citation == Globals.PendingTrafficCitation && !citation.FullName.Equals(entity.FullName)) { if (entity.Validate()) { mCitation = TrafficCitation.CreateForPedInVehicle(entity); } else { mCitation = new TrafficCitation(); } Globals.PendingTrafficCitation = mCitation; } else { mCitation = citation; } Globals.Navigation.Push(new TrafficCitationCreateContainer(mCitation, TrafficCitationView.ViewTypes.CREATE, callbackDelegate)); }
private void RenderTrafficCitationListBoxRow(TrafficCitation citation, ListBoxRow row) { var dateString = citation.CitationTimeDate.ToLocalTimeString(DateOutputPart.DATE); row.Text = String.Format("{0}: {1}", dateString, citation.CitationReason); row.SetToolTipText(String.Format("Fine {0}", citation.CitationAmount)); }
private void ChangeTrafficCitationDetailView(object sender, TrafficCitation citation) { if (trafficCitationView != null && citation != null) { trafficCitationView.ChangeCitation(citation); } }
private static TrafficCitation convertCitationDoc(TrafficCitationDoc citationDoc) { var citation = new TrafficCitation(); citation.id = citationDoc.Id; citation.CitationTimeDate = DateTime.ParseExact(citationDoc.CitationTimeDate, Function.DateFormatForPart(DateOutputPart.ISO), CultureInfo.CurrentCulture, DateTimeStyles.AssumeUniversal); citation.FirstName = citationDoc.FirstName; citation.LastName = citationDoc.LastName; citation.DOB = citationDoc.DOB; citation.HomeAddress = citationDoc.HomeAddress; citation.CitationStreetAddress = citationDoc.CitationStreetAddress; citation.CitationCity = citationDoc.CitationCity; var posX = citationDoc.CitationPosX; var posY = citationDoc.CitationPosY; var posZ = citationDoc.CitationPosZ; citation.CitationPos = new Vector3(posX, posY, posZ); citation.VehicleType = citationDoc.VehicleType == null ? String.Empty : citationDoc.VehicleType; citation.VehicleModel = citationDoc.VehicleModel == null ? String.Empty : citationDoc.VehicleModel; citation.VehicleTag = citationDoc.VehicleTag == null ? String.Empty : citationDoc.VehicleTag; citation.VehicleColor = citationDoc.VehicleColor == null ? String.Empty : citationDoc.VehicleColor; citation.CitationReason = citationDoc.CitationReason; citation.CitationAmount = citationDoc.CitationAmount; citation.Details = citationDoc.Details == null ? String.Empty : citationDoc.Details; citation.IsArrestable = citationDoc.IsArrestable; return(citation); }
public static async Task <TrafficCitation> SaveTrafficCitationAsync(TrafficCitation citation) { try { if (citation.IsNew) { citation.id = Guid.NewGuid(); await Globals.Store.Connection().InsertWithChildrenAsync(citation, true); } else { await Globals.Store.Connection().UpdateWithChildrenAsync(citation); } if (Globals.PendingTrafficCitation != null && Globals.PendingTrafficCitation == citation) { Globals.PendingTrafficCitation = null; } return(citation); } catch (Exception e) { Function.LogCatch(e.ToString()); throw e; } }
private static void updateTrafficCitation(TrafficCitation citation) { var citationDoc = Globals.Store.citationCollection.FindOne(x => x.Id == citation.id); citationDoc.CitationTimeDate = citation.CitationTimeDate.ToString(Function.DateFormatForPart(DateOutputPart.ISO)); citationDoc.FirstName = citation.FirstName; citationDoc.LastName = citation.LastName; citationDoc.DOB = citation.DOB; citationDoc.HomeAddress = citation.HomeAddress; citationDoc.CitationStreetAddress = citation.CitationStreetAddress; citationDoc.CitationCity = citation.CitationCity; citationDoc.CitationPosX = (float)citation.CitationPosX; citationDoc.CitationPosY = (float)citation.CitationPosY; citationDoc.CitationPosZ = (float)citation.CitationPosZ; citationDoc.VehicleType = citation.VehicleType; citationDoc.VehicleModel = citation.VehicleModel; citationDoc.VehicleTag = citation.VehicleTag; citationDoc.VehicleColor = citation.VehicleColor; citationDoc.CitationReason = citation.CitationReason; citationDoc.CitationAmount = citation.CitationAmount; citationDoc.Details = citation.Details; citationDoc.IsArrestable = citation.IsArrestable; Globals.Store.citationCollection.Update(citationDoc); }
private static void updateTrafficCitation(TrafficCitation citation) { string pedHash = citation.FirstName + citation.LastName + citation.DOB; List <TrafficCitationDoc> citationDocs; if (Globals.Store.trafficCitationDict.TryGetValue(pedHash, out citationDocs)) { TrafficCitationDoc citationDoc = citationDocs.Find(x => x.Id == citation.id); if (citationDoc != null) { citationDoc.CitationTimeDate = citation.CitationTimeDate.ToString(Function.DateFormatForPart(DateOutputPart.ISO)); citationDoc.FirstName = citation.FirstName; citationDoc.LastName = citation.LastName; citationDoc.DOB = citation.DOB; citationDoc.HomeAddress = citation.HomeAddress; citationDoc.CitationStreetAddress = citation.CitationStreetAddress; citationDoc.CitationCity = citation.CitationCity; citationDoc.CitationPosX = (float)citation.CitationPosX; citationDoc.CitationPosY = (float)citation.CitationPosY; citationDoc.CitationPosZ = (float)citation.CitationPosZ; citationDoc.VehicleType = citation.VehicleType; citationDoc.VehicleModel = citation.VehicleModel; citationDoc.VehicleTag = citation.VehicleTag; citationDoc.VehicleColor = citation.VehicleColor; citationDoc.CitationReason = citation.CitationReason; citationDoc.CitationAmount = citation.CitationAmount; citationDoc.Details = citation.Details; citationDoc.IsArrestable = citation.IsArrestable; } } }
private void ButtonClicked(Base sender, ClickedEventArgs arguments) { if (sender == btn_finish.Component || sender == btn_finish_new.Component) { Function.LogDebug("ButtonClicked"); if (labeled_vehicle_type.Component.SelectedItem.UserData is String && String.IsNullOrEmpty(labeled_vehicle_type.Component.SelectedItem.UserData as String)) { OnValidationError(sender, new Dictionary <string, string>() { { "Vehicle Type", "Cannot be Select One" } }); NotifyForEvent(TrafficCitationSaveResult.SAVE_ERROR); return; } UpdateCitationFromFields(); Dictionary <String, String> failReasons; if (!Citation.Validate(out failReasons)) { OnValidationError(sender, failReasons); NotifyForEvent(TrafficCitationSaveResult.SAVE_ERROR); } else { try { Citation = ComputerReportsController.SaveTrafficCitation(Citation); //if (Globals.PendingTrafficCitation == Citation) Globals.PendingTrafficCitation = null; NotifyForEvent(TrafficCitationSaveResult.SAVE); if (sender == btn_finish_new.Component) { Globals.PendingTrafficCitation = TrafficCitation.CloneFromCitation(Citation); ChangeCitation(Globals.PendingTrafficCitation); new MessageBox(this, "Saved citation. Creating new"); BindNeeded = true; BindDataFromCitation(); } else { if (this.Container != null) { this.Container.Close(); } } } catch (Exception e) { NotifyForEvent(TrafficCitationSaveResult.SAVE_FAILED); new MessageBox(this, String.Format("Failed to save citation.. {0}", e.Message), "Failure saving"); } } } }
public void ChangeCitation(TrafficCitation citation, bool readOnly = false) { Function.LogDebug("ChangeCitation from " + Citation.Id() + " to " + citation.Id()); Citation = citation; BindNeeded = true; if (!citation.IsNew) { PopulateCitationCategories(null); } labeled_available_citation_reasons.Component.UnselectAll(); BindDataFromCitation(); }
private static TrafficCitation generateRandomCitation(ComputerPlusEntity entity) { TrafficCitation newCitation = TrafficCitation.CreateForPedInVehicle(entity); newCitation.VehicleType = "N/A"; int randomSeconds = Globals.Random.Next(SECONDS_IN_A_DAY * 7, SECONDS_IN_A_DAY * 1200) * -1; newCitation.CitationTimeDate = DateTime.Now.ToUniversalTime().AddSeconds(randomSeconds); newCitation.CitationPos = Rage.World.GetRandomPositionOnStreet(); newCitation.CitationStreetAddress = Rage.World.GetStreetName(newCitation.CitationPos); newCitation.CitationCity = Functions.GetZoneAtPosition(newCitation.CitationPos).RealAreaName; newCitation.Citation = ComputerPedController.GetRandomCitation(); return(SaveTrafficCitation(newCitation)); }
private void OpenReport(object sender, TrafficCitation citation) { if (citation != null) { if (OnTrafficCitationSelected == null) { ComputerReportsController.ShowTrafficCitationView(citation); } else { OnTrafficCitationSelected(this, citation); } } }
internal static void AddTrafficCitationsInHandForPed(Rage.Ped ped, TrafficCitation citation) { if (ped) { if (TicketsInPosession.ContainsKey(ped)) { TicketsInPosession[ped].Add(citation); } else { TicketsInPosession.Add(ped, new List <TrafficCitation>() { citation }); } } }
public TrafficCitationView(Base parent, TrafficCitation citation, ViewTypes viewType = ViewTypes.CREATE, TrafficCitationActionEvent actionCallback = null) : base(parent) { Citation = citation; ViewType = viewType; ReadOnly = ViewType != ViewTypes.CREATE; if (actionCallback != null) { OnTrafficCitationAction += actionCallback; } if (ViewType == ViewTypes.CREATE && (citation.CitationTimeDate == null || citation.CitationTimeDate == DateTime.MinValue)) { citation.CitationTimeDate = DateTime.Now; } else { Function.Log(String.Format("Citation time is {0}", citation.CitationTimeDate.ToString())); } BindNeeded = true; InitializeLayout(); }
public static TrafficCitation SaveTrafficCitation(TrafficCitation citation) { try { if (citation.IsNew) { citation.id = Guid.NewGuid(); insertTrafficCitation(citation); } else { updateTrafficCitation(citation); } } catch (Exception e) { Function.LogCatch(e.ToString()); } if (Globals.PendingTrafficCitation != null && Globals.PendingTrafficCitation == citation) { Globals.PendingTrafficCitation = null; } return(citation); }
private static void insertTrafficCitation(TrafficCitation citation) { var citationDoc = new TrafficCitationDoc { Id = citation.id, CitationTimeDate = citation.CitationTimeDate.ToString(Function.DateFormatForPart(DateOutputPart.ISO)), FirstName = citation.FirstName, LastName = citation.LastName, DOB = citation.DOB, HomeAddress = citation.HomeAddress, CitationStreetAddress = citation.CitationStreetAddress, CitationCity = citation.CitationCity, CitationPosX = (float)citation.CitationPosX, CitationPosY = (float)citation.CitationPosY, CitationPosZ = (float)citation.CitationPosZ, VehicleType = citation.VehicleType, VehicleModel = citation.VehicleModel, VehicleTag = citation.VehicleTag, VehicleColor = citation.VehicleColor, CitationReason = citation.CitationReason, CitationAmount = citation.CitationAmount, Details = citation.Details, IsArrestable = citation.IsArrestable }; string pedHash = citation.FirstName + citation.LastName + citation.DOB; List <TrafficCitationDoc> citationDocs; if (!Globals.Store.trafficCitationDict.TryGetValue(pedHash, out citationDocs)) { citationDocs = new List <TrafficCitationDoc>(); Globals.Store.trafficCitationDict.Add(pedHash, citationDocs); Function.Log("Adding Citation for ped hash=" + pedHash); } citationDocs.Add(citationDoc); }
internal static void DefaultRowRender(TrafficCitation citation, ListBoxRow row) { row.Text = String.Format("{0} {1} {2} {3}", citation.ShortId(), citation.CitationDate, citation.CitationTime, citation.FullName); }
internal TrafficCitationCreateContainer(TrafficCitation citation, TrafficCitationView.ViewTypes viewType = TrafficCitationView.ViewTypes.CREATE, TrafficCitationView.TrafficCitationActionEvent actionCallback = null) : base("Traffic Citation", TrafficCitationView.DefaultWidth, TrafficCitationView.DefaultHeight) { Citation = citation; ViewType = viewType; Callback = actionCallback; }
public void DefaultOnRowSelect(object sender, TrafficCitation selected) { }
public void ChangeCitation(TrafficCitation citation) { Citation = citation; trafficCitationCreate.ChangeCitation(Citation); }
public TrafficCitationView(Base parent, TrafficCitation citation, ViewTypes viewType = ViewTypes.CREATE, TrafficCitationActionEvent actionCallback = null) : this(null, parent, citation, viewType, actionCallback) { }
private void PedCreateTrafficCitationActions(object sender, TrafficCitationView.TrafficCitationSaveResult action, TrafficCitation citation) { if (action != TrafficCitationView.TrafficCitationSaveResult.SAVE) { return; } Globals.AddTrafficCitationsInHandForPed(DetailedEntity.Entity.Ped, citation); if (!DetailedEntity.TrafficCitations.Contains(citation)) { DetailedEntity.TrafficCitations.Add(citation); } AddTrafficCitationsTab(); }
public static void ShowTrafficCitationView(TrafficCitation citation) { Globals.Navigation.Push(new TrafficCitationCreateContainer(citation, TrafficCitationView.ViewTypes.VIEW)); //Switch to view }