public AssociatedPerson GetAssociatedPerson(decimal?parcelNumber, string nameCode) { var rpasc = _context.AsmtrealPropertyAssociatedPersons.Where(t => ((parcelNumber == null) || (parcelNumber == 0) || (t.ParcelNumber == parcelNumber)) && ((nameCode == null) || (t.NameCode == nameCode))).FirstOrDefault(); var nnamejoinedRpasc = _context.AsmtmasterNameAddress.FirstOrDefault(t => rpasc != null && t.NameCode == rpasc.NameCode); var rpmas = _context.AsmtrealPropertyAssessedValueMaster.Where(t => t.ParcelNumber == parcelNumber).FirstOrDefault(); var taxPayerNName = _context.AsmtmasterNameAddress.Where(t => t.NameCode == rpmas.TaxpayerCode).FirstOrDefault(); var ownerNName = _context.AsmtmasterNameAddress.Where(t => t.NameCode == rpmas.TaxpayerCode).FirstOrDefault(); var aplnd = _context.AsmtlandUseCodes.Where(t => t.LandUseCode == rpmas.LandUseCode).FirstOrDefault(); var rpzon = _context.AsmtzoneDescriptions.Where(t => t.ZoneCode == rpmas.ZoneCode).FirstOrDefault(); var aptxc = _context.AsmttaxCodeArea.Where(t => t.TaxCodeArea == rpmas.TaxCodeArea).FirstOrDefault(); var lineValues = from RPASC in _context.AsmtrealPropertyAssociatedPersons join NNAME in _context.AsmtmasterNameAddress on RPASC.NameCode equals NNAME.NameCode where ((parcelNumber == null) || (parcelNumber == 0) || (RPASC.ParcelNumber == parcelNumber)) && ((nameCode == null) || (RPASC.NameCode == nameCode)) select AssociatedPersonMapper.Map(RPASC, NNAME); lineValues = lineValues?.OrderBy(t => t.AsmtmasterNameAddressNameCode); if (rpasc != null) { var result = new AssociatedPerson(rpasc.Id, rpasc?.ParcelNumber, taxPayerNName?.Name, ownerNName?.Name, rpmas?.Description1, aplnd?.UseCodeShortDesc, rpmas?.Description2, rpmas?.Description3, rpmas?.Description4, rpmas?.Description5 , rpmas?.LienDate, rpmas?.AffidavitNumber, rpzon?.ZoneCodeDesc, aptxc?.TaxCodeDesc, rpmas?.FirePatrolAcres , rpmas?.UnimprovedLandAcres, rpmas?.ImprovedLandAcers, rpmas?.FmimprovedLandValue, rpmas?.BuildingValue , rpmas?.AffidavitTaxYear, lineValues.ToList() , nnamejoinedRpasc?.AddressLine1, nnamejoinedRpasc?.City, nnamejoinedRpasc?.State , nnamejoinedRpasc?.Zip, rpasc?.ChangeId, rpasc?.ChangeDate, rpasc.NameCode, nnamejoinedRpasc?.Name, rpasc.Comment); return(result); } return(null); }
private void ExtractPeople(Profile profile, HtmlNode document) { profile.AssociatedPeople = new List <AssociatedPerson>(); var peopleNodes = document.QuerySelectorAll("#aux .insights .browse-map .profile-card"); foreach (var personNode in peopleNodes) { var person = new AssociatedPerson { Name = GetDataBySelector(personNode, ".item-title>a"), Title = GetDataBySelector(personNode, ".headline"), ProfileUrl = GetAttributeValueBySelector(personNode, ".item-title>a", "href") }; profile.AssociatedPeople.Add(person); } }
/// <summary>Populate person metadata.</summary> /// <param name="metadata">The metadata.</param> /// <param name="person">The person.</param> private void PopulatePersonMetadata(IEntityMetadata metadata, AssociatedPerson person) { var code = this.GetPersonEntityCode(person); metadata.EntityType = EntityType.Infrastructure.User; var name = string.Empty; if (!string.IsNullOrEmpty(person.GivenName?.FirstOrDefault())) { name += person.GivenName.First(); } if (!string.IsNullOrEmpty(person.MiddleName?.FirstOrDefault())) { name += " " + person.MiddleName.First(); } if (!string.IsNullOrEmpty(person.FamilyName?.FirstOrDefault())) { name += " " + person.FamilyName.First(); } metadata.Name = name; metadata.OriginEntityCode = code; metadata.Codes.Add(code); metadata.Properties[PermIdVocabularies.Person.PersonUrl] = person.PersonUrl?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.HonorificPrefix] = person.HonorificPrefix?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.GivenName] = person.GivenName?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.MiddleName] = person.MiddleName?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.FamilyName] = person.FamilyName?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.HasReportedTitlePerson] = person.HasReportedTitlePerson?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.PositionUrl] = person.PositionUrl?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.PositionType] = person.PositionType?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.PositionRank] = person.PositionRank?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.PositionStartDate] = person.PositionStartDate?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.PreferredName] = person.PreferredName?.FirstOrDefault().PrintIfAvailable(); metadata.Properties[PermIdVocabularies.Person.EntityType] = person.EntityType?.FirstOrDefault().PrintIfAvailable(); // Set Url if (!string.IsNullOrEmpty(person.PersonUrl?.FirstOrDefault())) { metadata.Uri = new Uri(string.Format("https://permid.org/1-{0}", person.PersonUrl.First())); } }
/// <summary>Gets person entity code.</summary> /// <param name="person">The person.</param> /// <returns>The person entity code.</returns> private EntityCode GetPersonEntityCode(AssociatedPerson person) { return(new EntityCode(EntityType.Infrastructure.User, this.GetCodeOrigin(), person.PersonUrl.First())); }
private void AddNewSubjectProc() { var nameIsTaken = false; var colorIsTaken = false; if (SubjectModel.Name.Length > 14) { MessageBox.Show("Maximum character length is 14 characters"); return; } foreach (var v in AssociatedPerson.Subjects) { if (v.Name == SubjectModel.Name) { MessageBox.Show("Subject name is already taken"); return; } if (v.Color != SubjectModel.Color) { continue; } MessageBox.Show("Color is already taken"); return; } if (SubjectModel.StartTime >= SubjectModel.EndTime) { MessageBox.Show("Invalid times; Start time cannot be greater than end time"); return; } bool isTooWhite = true; var brightness = (int)Math.Sqrt( SubjectModel.Color.R * SubjectModel.Color.R * .241 + SubjectModel.Color.G * SubjectModel.Color.G * .691 + SubjectModel.Color.B * SubjectModel.Color.B * .068); isTooWhite = brightness > 240 ? true : false; if (SubjectModel.Color == Colors.Transparent || SubjectModel.Color == Colors.White || isTooWhite) { MessageBox.Show("Invalid color value"); return; } List <Subject> Subjects = new List <Subject>(); bool conflict = false; for (int x = 0; x < 7; x++) { if (DaysChecked[x]) { var subjectModel = new Subject(); switch (x) { case 0: subjectModel.DayOfTheWeek = ViewModel.DaysOfTheWeek.Sunday; break; case 1: subjectModel.DayOfTheWeek = ViewModel.DaysOfTheWeek.Monday; break; case 2: subjectModel.DayOfTheWeek = ViewModel.DaysOfTheWeek.Tuesday; break; case 3: subjectModel.DayOfTheWeek = ViewModel.DaysOfTheWeek.Wednesday; break; case 4: subjectModel.DayOfTheWeek = ViewModel.DaysOfTheWeek.Thursday; break; case 5: subjectModel.DayOfTheWeek = ViewModel.DaysOfTheWeek.Friday; break; case 6: subjectModel.DayOfTheWeek = ViewModel.DaysOfTheWeek.Saturday; break; default: break; } subjectModel.Id = Guid.NewGuid().ToString(); subjectModel.Name = SubjectModel.Name; subjectModel.StartTime = SubjectModel.StartTime; subjectModel.EndTime = SubjectModel.EndTime; subjectModel.Color = SubjectModel.Color; subjectModel.Height = ConvertToMinutes(SubjectModel.EndTime) - ConvertToMinutes(SubjectModel.StartTime); subjectModel.IsTooSmall = subjectModel.Height <= 30; if (conflict == false) { conflict = CheckIfConflict(subjectModel); } Subjects.Add(subjectModel); } } if (conflict == false) { foreach (var v in Subjects) { AssociatedPerson.Subjects.Add(v); _textToSave = $"{v.Id},{v.Name},{v.Color},{v.StartTime},{v.EndTime},{v.DayOfTheWeek}"; SaveSubjectToText(); using (File.Create(Path.Combine(Directory.GetCurrentDirectory(), "Data", AssociatedPerson.Username, "Subject Data", v.Name + " Tests.txt"))); using (File.Create(Path.Combine(Directory.GetCurrentDirectory(), "Data", AssociatedPerson.Username, "Subject Data", v.Name + " Grading System.txt"))); AssociatedPerson.SetGroupedSubjects(); } MessageBox.Show("Subject added"); } else { MessageBox.Show("Invalid times; will cause schedule conflict"); } //SaveTask(); // DaysSelected.Clear(); AddSubjectWindow.Close(); }