public object[] CarregarObjetos() { object[] result = new object[5]; result[0] = new Ncm() { NumeroNcm = txtNcm.Text }; result[1] = new Due() { }; result[2] = new Memorandos() { CodStrutura = "2", NumeroMemorando = txtMemorando.Text, NumeroDespacho = txtDespacho.Text, Cnpj = txtCnpj.Text, CnpjEce = txtCnpjEce.Text, DataSalva = DateTime.Now }; result[3] = new NroDe() { NumeroAnexo = "", NumeroRe = "" }; result[4] = new NroNf() { NumeroNf = "" }; return(result); }
public async Task ExecuteSaveExpenseCommand() { if (IsBusy) { return; } if (currentExpense == null) { currentExpense = new Expense(); } currentExpense.Billable = Billable; currentExpense.Category = Category; currentExpense.Due = Due.ToUniversalTime(); currentExpense.Name = Name; currentExpense.Notes = Notes; currentExpense.Total = Total; try { await expenseService.SaveExpense(currentExpense); ServiceContainer.Resolve <ExpensesViewModel>().NeedsUpdate = true; } catch (Exception) { Debug.WriteLine("Unable to save expense."); } finally { IsBusy = false; } }
public static User GetFakeUserWithData() { User user = new Model.User("test", "*****@*****.**", "test"); user.Categories.Add(new Category("Transport")); user.Categories.Add(new Category("Ecole")); user.Categories.Add(new Category("Alimentation")); user.Categories.Add(new Category("Maison")); user.Categories.Add(new Category("Vetement")); for (int i = 0; i < 5; i++) { Model.Account account = new Model.Account($"Compte{i}", 1000); Due fakeDue = new Due($"Echeance{i}", (i % 2 == 0) ? operationType.Credit : operationType.Debit, i, paymentType.Cash, i * 2000, user.Categories.ElementAt(i % 5)); for (int j = 0; j < 30; j++) { Operation fakeOperation = new Operation($"Operation{j}", (j % 2 == 0) ? operationType.Credit : operationType.Debit, DateTime.Now, paymentType.Cash, 3000, user.Categories.ElementAt(i % 5)); account.Operations.Add(fakeOperation); } account.Dues.Add(fakeDue); user.Accounts.Add(account); } return(user); }
public override Bill GetModel() { return(new Bill { AccountId = Account?.Id, Due = Due.GetModel(), Id = Id, Name = Name, Payment = Payment, }); }
//Display Todo information public void DisplayTodo() { String Marker, Time; if (Complete) { Marker = "Complete"; } else { Marker = "Pending"; } // if complete display complete, else display pending if (HasDue) { Time = Due.ToShortDateString(); } else { Time = ""; // if there is a due date display it, otherwise display nothing } if (Priority == Priority.medium) { Console.ForegroundColor = ConsoleColor.DarkYellow; // if priority is set to medium, set text color to dark yellow } else if (Priority == Priority.high) { Console.ForegroundColor = ConsoleColor.Red; //if priority is set to high set text color to red } Console.Write($"------------------------------------------------------------------------------\n" + $"{Id}. [ {Marker} ] {Title} \n" + $"{Description}\n" + $"Due: {Time} "); if (PastDue)// if past due is true say so { Console.Write("Todo is past due!"); } else if (NearDue) //if near due is true say so { Console.Write("Todo is nearly due!"); } Console.Write("\n" + "Priority: "); if (Priority != Priority.none)// if priority is not none display it { Console.Write($"{Priority}\n"); } else { Console.Write("\n"); } Console.Write("------------------------------------------------------------------------------\n"); Console.ResetColor(); }
public void Start() { if (PackTimer is null) { PackTimer = new Timer(x => { Due?.Invoke(); if (Repeat is { } && --Repeat <= 0) { Dispose(); } }, null, TimeSpan.Zero, Interval);
private void ExtrapolateTimes() { if (Due == null && DTStart != null && Duration != default(TimeSpan)) { Due = DTStart.Add(Duration); } else if (Duration == default(TimeSpan) && DTStart != null && Due != null) { Duration = Due.Subtract(DTStart); } else if (DTStart == null && Duration != default(TimeSpan) && Due != null) { DTStart = Due.Subtract(Duration); } }
public JsonValue ToJson(JsonSerializer serializer) { var json = new JsonObject(); Id.Serialize(json, serializer, "id"); Board.SerializeId(json, "idBoard"); Closed.Serialize(json, serializer, "closed"); Desc.Serialize(json, serializer, "desc"); Due.Serialize(json, serializer, "due", ForceDueDate); List.SerializeId(json, "idList"); Name.Serialize(json, serializer, "name"); Pos.Serialize(json, serializer, "pos"); Subscribed.Serialize(json, serializer, "subscribed"); CardSource.SerializeId(json, "idCardSource"); UrlSource.Serialize(json, serializer, "urlSource"); return(json); }
public Schedule GetPlanSchedule(string planID) { Schedule sked = null; try { using (SqlConnection conn = new SqlConnection(connString)) using (SqlCommand comm = new SqlCommand("usp_GetPlanBreakdown", conn)) { comm.CommandType = CommandType.StoredProcedure; comm.Parameters.Clear(); comm.Parameters.Add(new SqlParameter("@Plan_ID", planID)); conn.Open(); using (SqlDataReader dr = comm.ExecuteReader()) { if (dr.HasRows) { sked = new Schedule(); } while (dr.Read()) { Due d = new Due(); d.Date = Convert.ToDateTime(dr["Due Date"]); d.Percent = Convert.ToDecimal(dr["Percentage"]); sked.Add(d); } } } } catch (Exception ex) { log.Error(ex); throw; } return(sked); }
public Schedule GetAssessmentSchedule(string assessmentNo, Transaction_Type sopType) { Schedule sked = new Schedule(); try { using (SqlConnection conn = new SqlConnection(connString)) using (SqlCommand comm = new SqlCommand("usp_GetAssessmentScheduleByDocID", conn)) { comm.CommandType = CommandType.StoredProcedure; comm.Parameters.Clear(); comm.Parameters.Add(new SqlParameter("@AssessmentNo", assessmentNo)); comm.Parameters.Add(new SqlParameter("@SOPType", (int)sopType)); conn.Open(); using (SqlDataReader dr = comm.ExecuteReader()) { while (dr.Read()) { Due due = new Due(); due.Date = Convert.ToDateTime(dr["Due Date"]); due.Amount = Convert.ToDecimal(dr["Amount"]); sked.Add(due); } } } } catch (Exception ex) { sked = null; log.Error(ex); throw; } return(sked); }
public async Task ExecuteSaveExpenseCommand() { if (IsBusy) { return; } CanNavigate = false; if (currentExpense == null) { currentExpense = new Expense(); } currentExpense.Billable = Billable; currentExpense.Category = Category; currentExpense.Due = Due.ToUniversalTime(); currentExpense.Name = Name; currentExpense.Notes = Notes; currentExpense.Total = Total; try { IsBusy = true; await expenseService.SaveExpenseAsync(currentExpense); await expenseService.SyncExpensesAsync(); ServiceContainer.Resolve <ExpensesViewModel>().NeedsUpdate = true; CanNavigate = true; } catch (Exception ex) { } finally { IsBusy = false; } }
public JsonValue ToJson(JsonSerializer serializer) { var json = new JsonObject(); Id.Serialize(json, serializer, "id"); Board.SerializeId(json, "idBoard"); Closed.Serialize(json, serializer, "closed"); Desc.Serialize(json, serializer, "desc"); Due.Serialize(json, serializer, "due", ForceDueDate); DueComplete.Serialize(json, serializer, "dueComplete"); List.SerializeId(json, "idList"); Name.Serialize(json, serializer, "name"); Pos.Serialize(json, serializer, "pos"); Subscribed.Serialize(json, serializer, "subscribed"); CardSource.SerializeId(json, "idCardSource"); UrlSource.Serialize(json, serializer, "urlSource"); IdMembers.Serialize(json, serializer, "idMembers"); IdLabels.Serialize(json, serializer, "idLabels"); if (KeepFromSource != CardCopyKeepFromSourceOptions.None) { KeepFromSource.Serialize(json, serializer, "keepFromSource"); } return(json); }
public string FTP_LyonNV(string Address, string ownername, string parcelNumber, string searchType, string orderNumber, string directParcel) { GlobalClass.global_orderNo = orderNumber; HttpContext.Current.Session["orderNo"] = orderNumber; GlobalClass.global_parcelNo = parcelNumber; string StartTime = "", AssessmentTime = "", TaxTime = "", CitytaxTime = "", LastEndTime = ""; string Parcel_number = "", Tax_Authority = "", Year = "", Assmentresult1 = "", Assmentresult2 = "", Assmentresult3 = "", parcelhref = "", MailingAddress = ""; //request.UseDefaultCredentials = true; var driverService = PhantomJSDriverService.CreateDefaultService(); driverService.HideCommandPromptWindow = true; using (driver = new PhantomJSDriver()) { //RDP Site StartTime = DateTime.Now.ToString("HH:mm:ss"); try { driver.Navigate().GoToUrl("http://www.lyon-county.org/16/Clerk-Treasurer"); IWebElement Tax_Authority1 = driver.FindElement(By.XPath("//*[@id='cc63f54a4a-d572-4950-b6b6-883bceeb6c73']/div[1]/div/div/div/div/ol/li")); Tax_Authority = gc.Between(Tax_Authority1.Text, "Physical Address", "Fax:"); gc.CreatePdf_WOP(orderNumber, "tax Authority", driver, "NV", "Lyon"); } catch { } try { driver.Navigate().GoToUrl("http://www1.lyon-county.org:403/cgi-bin/asw100"); if (searchType == "titleflex") { //string address = houseno + " " + direction + " " + streetname + " " + streettype; gc.TitleFlexSearch(orderNumber, "", "", Address.Trim(), "NV", "Lyon"); if ((HttpContext.Current.Session["TitleFlex_Search"] != null && HttpContext.Current.Session["TitleFlex_Search"].ToString() == "Yes")) { driver.Quit(); return("MultiParcel"); } else if (HttpContext.Current.Session["titleparcel"].ToString() == "") { HttpContext.Current.Session["Nodata_LyonNV"] = "Yes"; driver.Quit(); return("No Data Found"); } parcelNumber = HttpContext.Current.Session["titleparcel"].ToString(); searchType = "parcel"; } if (searchType == "address") { driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr/td/table/tbody/tr[7]/td[4]/div/input")).SendKeys(Address); driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr/td/table/tbody/tr[10]/td[5]/div/input")).Click(); Thread.Sleep(2000); try { int max = 0; gc.CreatePdf_WOP(orderNumber, "Address", driver, "NV", "Lyon"); IWebElement Addressclicktable = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr[3]/td/table/tbody")); IList <IWebElement> Addressclickrow = Addressclicktable.FindElements(By.TagName("tr")); IList <IWebElement> Addressclickid; foreach (IWebElement Addresemulti in Addressclickrow) { Addressclickid = Addresemulti.FindElements(By.TagName("td")); if (!Addresemulti.Text.Contains("Search Results") && !Addresemulti.Text.Contains("Parcel #") && Addressclickrow.Count < 26 && Addressclickid.Count != 0 && Addresemulti.Text.Trim() != "") { IWebElement parcelclick = Addressclickid[0].FindElement(By.TagName("a")); parcelhref = parcelclick.GetAttribute("href"); string multiparcelresult = Addressclickid[1].Text + "~" + Addressclickid[2].Text; gc.insert_date(orderNumber, Addressclickid[0].Text, 973, multiparcelresult, 1, DateTime.Now); max++; } } if (max == 1) { driver.Navigate().GoToUrl(parcelhref); Thread.Sleep(2000); } if (max > 1 && max < 26) { HttpContext.Current.Session["multiparcel_Lyon"] = "Yes"; driver.Quit(); return("MultiParcel"); } if (max > 25) { HttpContext.Current.Session["multiParcel_Lyon_Multicount"] = "Maximum"; driver.Quit(); return("Maximum"); } } catch { } } if (searchType == "parcel") { driver.FindElement(By.XPath("//*[@id='asw100parcels']/input[1]")).SendKeys(parcelNumber.Replace("-", "")); driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr/td/table/tbody/tr[10]/td[5]/div/input")).Click(); Thread.Sleep(2000); gc.CreatePdf_WOP(orderNumber, "Parcel", driver, "NV", "Lyon"); try { IWebElement Addressclicktable = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr[3]/td/table/tbody")); IList <IWebElement> Addressclickrow = Addressclicktable.FindElements(By.TagName("tr")); IList <IWebElement> Addressclickid; foreach (IWebElement Addresemulti in Addressclickrow) { Addressclickid = Addresemulti.FindElements(By.TagName("td")); if (Addressclickrow.Count == 4 && !Addresemulti.Text.Contains("Search Results") && !Addresemulti.Text.Contains("Parcel #") && Addressclickid.Count != 0) { IWebElement parcelclick = Addressclickid[0].FindElement(By.TagName("a")); parcelhref = parcelclick.GetAttribute("href"); driver.Navigate().GoToUrl(parcelhref); Thread.Sleep(2000); break; } } } catch { } } if (searchType == "ownername") { driver.FindElement(By.XPath("//*[@id='asw100name']/input")).SendKeys(ownername); driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr/td/table/tbody/tr[10]/td[5]/div/input")).Click(); Thread.Sleep(2000); try { int max = 0; gc.CreatePdf_WOP(orderNumber, "Address", driver, "NV", "Lyon"); IWebElement Addressclicktable = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr[3]/td/table/tbody")); IList <IWebElement> Addressclickrow = Addressclicktable.FindElements(By.TagName("tr")); IList <IWebElement> Addressclickid; foreach (IWebElement Addresemulti in Addressclickrow) { Addressclickid = Addresemulti.FindElements(By.TagName("td")); if (!Addresemulti.Text.Contains("Search Results") && !Addresemulti.Text.Contains("Parcel #") && Addressclickrow.Count < 26 && Addressclickid.Count != 0 && Addresemulti.Text.Trim() != "") { IWebElement parcelclick = Addressclickid[0].FindElement(By.TagName("a")); parcelhref = parcelclick.GetAttribute("href"); string multiparcelresult = Addressclickid[1].Text + "~" + Addressclickid[2].Text; gc.insert_date(orderNumber, Addressclickid[0].Text, 973, multiparcelresult, 1, DateTime.Now); max++; } } if (max == 1) { driver.Navigate().GoToUrl(parcelhref); Thread.Sleep(2000); } if (max > 1 && max < 26) { HttpContext.Current.Session["multiparcel_Lyon"] = "Yes"; driver.Quit(); return("MultiParcel"); } if (max > 25) { HttpContext.Current.Session["multiParcel_Lyon_Multicount"] = "Maximum"; driver.Quit(); return("Maximum"); } } catch { } } try { IWebElement INodata = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr[3]/td/table")); if (INodata.Text.Contains("No results found")) { HttpContext.Current.Session["Nodata_LyonNV"] = "Yes"; driver.Quit(); return("No Data Found"); } } catch { } //property detail gc.CreatePdf_WOP(orderNumber, "After click", driver, "NV", "Lyon"); IWebElement parcelnumweb = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table[2]/tbody/tr[1]/td/div")); Parcel_number = GlobalClass.After(parcelnumweb.Text.Replace("-", ""), "Parcel #").Trim(); IWebElement propertydetaillist = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table[2]/tbody/tr[3]/td[1]/table/tbody")); string PropertyLocation = gc.Between(propertydetaillist.Text, "Property Location", "Town"); string Town = gc.Between(propertydetaillist.Text, "Town", "District"); string District = gc.Between(propertydetaillist.Text, "District", "Subdivision"); IWebElement ownershipdetail = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table[2]/tbody/tr[3]/td[2]/table/tbody")); string AssessedOwnerName = gc.Between(ownershipdetail.Text, "Assessed Owner Name", "Mailing Address"); if (ownershipdetail.Text.Contains("Add'l Owners")) { MailingAddress = gc.Between(ownershipdetail.Text, "Add'l Owners", "Legal Owner Name"); } if (!ownershipdetail.Text.Contains("Add'l Owners")) { MailingAddress = gc.Between(ownershipdetail.Text, "Mailing Address", "Legal Owner Name"); } string LegalOwnerName = gc.Between(ownershipdetail.Text, "Legal Owner Name", "Vesting Doc #"); try { Year = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table[2]/tbody/tr[4]/td[2]/table/tbody/tr[9]/td[2]/div")).Text; } catch { } string Propertyresult = PropertyLocation + "~" + Town + "~" + District + "~" + AssessedOwnerName + "~" + MailingAddress + "~" + LegalOwnerName + "~" + Year; gc.insert_date(orderNumber, Parcel_number, 930, Propertyresult, 1, DateTime.Now); AssessmentTime = DateTime.Now.ToString("HH:mm:ss"); string taxassment1 = "", taxassment2 = "", taxassment3 = ""; IWebElement assmentdetailtable = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table[2]/tbody/tr[5]/td[1]/table/tbody")); IList <IWebElement> assmentdetailrow = assmentdetailtable.FindElements(By.TagName("tr")); IList <IWebElement> assmentdetailid; foreach (IWebElement assmentdetail in assmentdetailrow) { assmentdetailid = assmentdetail.FindElements(By.TagName("td")); if (assmentdetailid.Count != 0 && !assmentdetail.Text.Contains("Increased") && !assmentdetail.Text.Contains("Assessed Valuation") && assmentdetail.Text.Trim() != "" && !assmentdetail.Text.Contains("Taxable Values")) { Assmentresult1 += assmentdetailid[1].Text + "~"; Assmentresult2 += assmentdetailid[2].Text + "~"; Assmentresult3 += assmentdetailid[3].Text + "~"; } if (assmentdetail.Text.Contains("Increased")) { break; } } IWebElement Taxabledetailtable = driver.FindElement(By.XPath("//*[@id='body']/form[2]/table[2]/tbody/tr[5]/td[2]/table/tbody")); IList <IWebElement> taxdetailrow = Taxabledetailtable.FindElements(By.TagName("tr")); IList <IWebElement> Taxdetailid; foreach (IWebElement taxdetail in taxdetailrow) { Taxdetailid = taxdetail.FindElements(By.TagName("td")); if (Taxdetailid.Count != 0 && !taxdetail.Text.Contains("Increased") && !taxdetail.Text.Contains("Taxable Valuation") && taxdetail.Text.Trim() != "" && !taxdetail.Text.Contains("Taxable Values")) { taxassment1 += Taxdetailid[1].Text + "~"; taxassment2 += Taxdetailid[2].Text + "~"; taxassment3 += Taxdetailid[3].Text + "~"; } if (taxdetail.Text.Contains("Increased")) { break; } } gc.insert_date(orderNumber, Parcel_number, 934, Assmentresult1 + taxassment1.Remove(taxassment1.Length - 1), 1, DateTime.Now); gc.insert_date(orderNumber, Parcel_number, 934, Assmentresult2 + taxassment2.Remove(taxassment2.Length - 1), 1, DateTime.Now); gc.insert_date(orderNumber, Parcel_number, 934, Assmentresult3 + taxassment3.Remove(taxassment3.Length - 1), 1, DateTime.Now); //tax Information TaxTime = DateTime.Now.ToString("HH:mm:ss"); driver.Navigate().GoToUrl("http://www1.lyon-county.org:403/cgi-bin/tcw100"); driver.FindElement(By.XPath("//*[@id='body']/form[2]/table/tbody/tr/td/table/tbody/tr[3]/td[2]/div/input")).SendKeys(Parcel_number.Trim()); gc.CreatePdf(orderNumber, Parcel_number, "Tax Before click", driver, "NV", "Lyon"); driver.FindElement(By.XPath("//*[@id='tcw100search']/input")).Click(); Thread.Sleep(2000); gc.CreatePdf(orderNumber, Parcel_number, "Tax After click", driver, "NV", "Lyon"); IWebElement Taxparcelclicktable = driver.FindElement(By.XPath("//*[@id='body']/form[3]/table/tbody")); IList <IWebElement> Taxparcelclickrow = Taxparcelclicktable.FindElements(By.TagName("tr")); IList <IWebElement> Taxparcelid; foreach (IWebElement Taxparcel in Taxparcelclickrow) { Taxparcelid = Taxparcel.FindElements(By.TagName("td")); if (Taxparcelid.Count != 0 && !Taxparcel.Text.Contains("Search Results") && !Taxparcel.Text.Contains("Search Results") && !Taxparcel.Text.Contains("Parcel #")) { IWebElement taxelement = Taxparcelid[0].FindElement(By.TagName("a")); string taxhfrf = taxelement.GetAttribute("href"); driver.Navigate().GoToUrl(taxhfrf); Thread.Sleep(2000); break; } } IWebElement Taxelement = driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/table[1]/tbody/tr[1]/td[4]")); string[] taxinfoarray = Taxelement.Text.Split('\r', '\n'); string Tax_year = taxinfoarray[0]; string roll = taxinfoarray[2]; string TaxService = taxinfoarray[6]; string LandUseCode = taxinfoarray[8]; string Taxinformation = Tax_year + "~" + roll + "~" + TaxService + "~" + LandUseCode + "~" + Tax_Authority; gc.insert_date(orderNumber, Parcel_number, 941, Taxinformation, 1, DateTime.Now); gc.CreatePdf(orderNumber, Parcel_number, "Tax Information", driver, "NV", "Lyon"); string type = ""; IWebElement taxinfotable = driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/table[2]/tbody")); IList <IWebElement> taxinforow = taxinfotable.FindElements(By.TagName("tr")); IList <IWebElement> taxinfoid; foreach (IWebElement taxinfo in taxinforow) { taxinfoid = taxinfo.FindElements(By.TagName("td")); if (taxinfoid.Count != 0) { if (taxinfo.Text.Trim().Contains("Outstanding Taxes:") || taxinfo.Text.Contains("Current Year")) { type = taxinfoid[0].Text.Trim(); } if (type == "Outstanding Taxes:" && !taxinfo.Text.Contains("Prior Year") && taxinfo.Text.Trim() != "" && !taxinfo.Text.Contains("Outstanding Taxes:")) { string Taxuinforesult = taxinfoid[0].Text + "~" + taxinfoid[1].Text + "~" + taxinfoid[2].Text + "~" + taxinfoid[3].Text + "~" + taxinfoid[4].Text + "~" + taxinfoid[5].Text; gc.insert_date(orderNumber, Parcel_number, 945, Taxuinforesult, 1, DateTime.Now); } if (type == "Current Year" && !taxinfo.Text.Contains("Current Year") && taxinfo.Text.Trim() != "") { string taxinforesult = taxinfoid[0].Text + "~" + taxinfoid[1].Text + "~" + taxinfoid[2].Text + "~" + taxinfoid[3].Text + "~" + taxinfoid[4].Text + "~" + taxinfoid[5].Text; gc.insert_date(orderNumber, Parcel_number, 944, taxinforesult, 1, DateTime.Now); } } } //Additional Information string additional1 = "", additional2 = "", additional3 = "", additional4 = "", additional5 = ""; IWebElement addinformationtable = driver.FindElement(By.XPath("//*[@id='body']/table[3]/tbody/tr[2]/td/table/tbody")); IList <IWebElement> addinformationrow = addinformationtable.FindElements(By.TagName("tr")); IList <IWebElement> addinformationid; foreach (IWebElement addinformation in addinformationrow) { addinformationid = addinformation.FindElements(By.TagName("td")); if (addinformationid.Count != 0 && addinformation.Text.Trim() != "") { additional1 += addinformationid[1].Text.Trim() + "~"; additional2 += addinformationid[2].Text.Trim() + "~"; additional3 += addinformationid[3].Text.Trim() + "~"; additional4 += addinformationid[4].Text.Trim() + "~"; additional5 += addinformationid[5].Text.Trim() + "~"; //gc.insert_date(orderNumber, Parcel_number, 947, addinformationresult, 1, DateTime.Now); } } gc.insert_date(orderNumber, Parcel_number, 947, additional1.Remove(additional1.Length - 1, 1), 1, DateTime.Now); gc.insert_date(orderNumber, Parcel_number, 947, additional2.Remove(additional2.Length - 1, 1), 1, DateTime.Now); gc.insert_date(orderNumber, Parcel_number, 947, additional3.Remove(additional3.Length - 1, 1), 1, DateTime.Now); gc.insert_date(orderNumber, Parcel_number, 947, additional4.Remove(additional4.Length - 1, 1), 1, DateTime.Now); gc.insert_date(orderNumber, Parcel_number, 947, additional5.Remove(additional5.Length - 1, 1), 1, DateTime.Now); //current tax history // int firsttime = 0; for (int i = 1; i <= 3; i++) { try { driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/table[2]/tbody/tr[12]/td[2]/form/input[1]")).Click(); } catch { } Thread.Sleep(2000); string allmosttop = driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/form/table[2]/tbody/tr[1]/td")).Text; //if (allmosttop.Trim() == "Already at bottom of list.") //{ // firsttime++; //} gc.CreatePdf(orderNumber, Parcel_number, "Tax History" + i, driver, "NV", "Lyon"); if (allmosttop.Trim() != "Already at top of list.") //|| firsttime == 1 { //gc.CreatePdf(orderNumber, Parcel_number, "Tax History" + i, driver, "NV", "Lyon"); IWebElement taxhistorytable = driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/table[2]/tbody")); IList <IWebElement> taxhistoryrow = taxhistorytable.FindElements(By.TagName("tr")); IList <IWebElement> taxhistoryid; foreach (IWebElement taxhistory in taxhistoryrow) { taxhistoryid = taxhistory.FindElements(By.TagName("td")); if (taxhistoryid.Count != 0 && !taxhistory.Text.Contains("Date") && !taxhistory.Text.Trim().Contains("More...")) { string taxhistoryresult = taxhistoryid[0].Text.Trim() + "~" + taxhistoryid[1].Text + "~" + taxhistoryid[2].Text + "~" + taxhistoryid[3].Text + "~" + taxhistoryid[4].Text + "~" + taxhistoryid[5].Text; gc.insert_date(orderNumber, Parcel_number, 968, taxhistoryresult.Replace("\r\n", ""), 1, DateTime.Now); } } driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/form/table[1]/tbody/tr/td[1]/div/input")).Click(); Thread.Sleep(2000); } } //Special Assessment History int p = 0; //int spelcialfirst = 0; for (int j = 1; j <= 3; j++) { try { if (p == 0) { driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/table[1]/tbody/tr[5]/td[4]/div/input")).Click(); Thread.Sleep(2000); p++; } } catch { } IWebElement allmost = driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/form/table[2]/tbody/tr[1]/td/div")); string topbottamlist = allmost.Text.Trim(); //if (topbottamlist == "Already at bottom of list.") //{ // spelcialfirst++; //} gc.CreatePdf(orderNumber, Parcel_number, "Special Assessment History" + j, driver, "NV", "Lyon"); if (topbottamlist != "Already at top of list.") //|| spelcialfirst == 1 { //gc.CreatePdf(orderNumber, Parcel_number, "Special Assessment History" + j, driver, "NV", "Lyon"); IWebElement SpecialAssessmentstable = driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/table[2]/tbody")); IList <IWebElement> specialassmentrow = SpecialAssessmentstable.FindElements(By.TagName("tr")); IList <IWebElement> specialassmentid; foreach (IWebElement specialassment in specialassmentrow) { specialassmentid = specialassment.FindElements(By.TagName("td")); if (specialassmentid.Count != 0 && !specialassment.Text.Contains("Special Assessment") && !specialassment.Text.Trim().Contains("More...")) { string splicialassmentresult = specialassmentid[0].Text + "~" + specialassmentid[1].Text + "~" + specialassmentid[2].Text + "~" + specialassmentid[3].Text + "~" + specialassmentid[4].Text + "~" + specialassmentid[5].Text; gc.insert_date(orderNumber, Parcel_number, 974, splicialassmentresult, 1, DateTime.Now); } } driver.FindElement(By.XPath("//*[@id='body']/table[2]/tbody/tr[2]/td/form/table[1]/tbody/tr/td[1]/div/input")).Click(); Thread.Sleep(2000); } } string strAMGParcelId = "", strAMGDistrict = "", strAMGName = "", strAMGStatus = "", strAMGUnbilled = "", strAMGParcelDetails = "", strLegal = "", strOriginalassess = "", strPayOff = "", strAMGAddressDetail = "", strAmgTaxAuthority = "", strType = "", strPrinicipal = "", strInterest = "" , strPenality = "", strOther = "", strTotalDue = "", strBreakParcel = "", strBreakDistrict = "", strBreakdown = ""; try { driver.Navigate().GoToUrl("https://amgnv.com/"); driver.FindElement(By.XPath("/html/body/table[3]/tbody/tr/td[6]/table/tbody/tr[2]/td[2]/p/table[2]/tbody/tr/td/table/tbody/tr[2]/td[1]/form/center/b/input")).SendKeys(Parcel_number); gc.CreatePdf(orderNumber, Parcel_number, "Special Assessment", driver, "NV", "Lyon"); driver.FindElement(By.XPath("/html/body/table[3]/tbody/tr/td[6]/table/tbody/tr[2]/td[2]/p/table[2]/tbody/tr/td/table/tbody/tr[2]/td[1]/form/center/b/font/font/input")).SendKeys(Keys.Enter); Thread.Sleep(4000); gc.CreatePdf(orderNumber, Parcel_number, "Special Assessment Result", driver, "NV", "Lyon"); IWebElement IAMGParcelSearch = driver.FindElement(By.XPath("/html/body/table[3]/tbody/tr/td[6]/table/tbody/tr[2]/td[2]/p/font[1]/table/tbody/tr[2]/td[4]/div/font/a")); string stramgParcel = IAMGParcelSearch.GetAttribute("href"); driver.Navigate().GoToUrl(stramgParcel); gc.CreatePdf(orderNumber, Parcel_number, "AMG Result", driver, "NV", "Lyon"); IWebElement IParcelTable = driver.FindElement(By.XPath("/html/body/table[3]/tbody/tr/td[6]/table/tbody/tr[2]/td[2]/table[3]/tbody")); IList <IWebElement> IParcelRow = IParcelTable.FindElements(By.TagName("tr")); IList <IWebElement> IParcelTD; foreach (IWebElement parcel in IParcelRow) { IParcelTD = parcel.FindElements(By.TagName("td")); if (IParcelTD.Count != 0 && !parcel.Text.Contains("Parcel #") && !parcel.Text.Contains("Amounts updated")) { try { strAMGParcelId = IParcelTD[0].Text; strAMGDistrict = IParcelTD[1].Text; strAMGName = IParcelTD[2].Text; strAMGStatus = IParcelTD[3].Text; strAMGUnbilled = IParcelTD[4].Text; } catch { } strAMGParcelDetails = strAMGDistrict + "~" + strAMGName + "~" + strAMGStatus + "~" + strAMGUnbilled; } } IWebElement IAMGAddressTable = driver.FindElement(By.XPath("/html/body/table[3]/tbody/tr/td[6]/table/tbody/tr[2]/td[2]/table[4]/tbody")); IList <IWebElement> IAMGAddressRow = IAMGAddressTable.FindElements(By.TagName("tr")); IList <IWebElement> IAMGAddressTd; foreach (IWebElement address in IAMGAddressRow) { IAMGAddressTd = address.FindElements(By.TagName("td")); if (IAMGAddressTd.Count != 0 && !address.Text.Contains("Situs & Legal Description")) { try { strLegal += IAMGAddressTd[0].Text + " "; strOriginalassess = IAMGAddressTd[1].Text; strPayOff = IAMGAddressTd[2].Text; IAmg = IAMGAddressTd[2].FindElement(By.TagName("a")); } catch { } strAMGAddressDetail = strLegal + "~" + strOriginalassess + "~" + strPayOff; } } if (strAMGParcelDetails.Trim() != "" && strAMGAddressDetail != "") { try { strAmgTaxAuthority = driver.FindElement(By.XPath("/html/body/table[3]/tbody/tr/td[6]/table/tbody/tr[2]/td[2]/table[8]/tbody/tr[2]/td[2]/table/tbody/tr/td[2]")).Text; } catch { } gc.insert_date(orderNumber, Parcel_number, 970, strAMGParcelDetails + "~" + strAMGAddressDetail + "~" + strAmgTaxAuthority, 1, DateTime.Now); } IWebElement IAMGDuePayTable = driver.FindElement(By.XPath("/html/body/table[3]/tbody/tr/td[6]/table/tbody/tr[2]/td[2]/table[6]/tbody")); IList <IWebElement> IAMGDuePayRow = IAMGDuePayTable.FindElements(By.TagName("tr")); IList <IWebElement> IAMGDuePayTd; foreach (IWebElement Due in IAMGDuePayRow) { IAMGDuePayTd = Due.FindElements(By.TagName("td")); if (IAMGDuePayTd.Count != 0 && !Due.Text.Contains("Principal") && !Due.Text.Contains("Current Due and Payoff Amounts are valid ") && !Due.Text.Contains("* Penalties are added monthly until the Total Due is paid in full.") && !Due.Text.Contains("**Estimated installments") && !Due.Text.Contains("*** Payoff value")) { try { strType = IAMGDuePayTd[0].Text; strPrinicipal = IAMGDuePayTd[1].Text; strInterest = IAMGDuePayTd[2].Text; strPenality = IAMGDuePayTd[3].Text; strOther = IAMGDuePayTd[4].Text; strTotalDue = IAMGDuePayTd[5].Text; } catch { } strAMGAddressDetail = strType + "~" + strPrinicipal + "~" + strInterest + "~" + strPenality + "~" + strOther + "~" + strTotalDue; gc.insert_date(orderNumber, Parcel_number, 971, strAMGAddressDetail, 1, DateTime.Now); } } try { IAmg.SendKeys(Keys.Enter); string strURL = driver.CurrentWindowHandle; string strURLLast = driver.WindowHandles.Last(); driver.SwitchTo().Window(strURLLast); gc.CreatePdf(orderNumber, Parcel_number, "BreakDown Result", driver, "NV", "Lyon"); strBreakParcel = driver.FindElement(By.XPath("/html/body/center/table[1]/tbody/tr/td/table/tbody/tr[2]/td[1]")).Text; strBreakDistrict = driver.FindElement(By.XPath("/html/body/center/table[1]/tbody/tr/td/table/tbody/tr[2]/td[2]")).Text; IWebElement IBreakDownTable = driver.FindElement(By.XPath("/html/body/center/table[2]/tbody/tr/td/table/tbody")); IList <IWebElement> IBreakDownRow = IBreakDownTable.FindElements(By.TagName("tr")); IList <IWebElement> IBreakDownTD; foreach (IWebElement Break in IBreakDownRow) { IBreakDownTD = Break.FindElements(By.TagName("td")); if (IBreakDownTD.Count != 0 && !Break.Text.Contains("REAL PROPERTY ASSESSED VALUE")) { try { strBreakdown += IBreakDownTD[1].Text + "~"; } catch { } } } if (strBreakdown.Length != 0) { string strstrBreakdownDetails = strBreakdown.Remove(strBreakdown.Length - 1); gc.insert_date(orderNumber, Parcel_number, 972, strBreakDistrict + "~" + strstrBreakdownDetails, 1, DateTime.Now); } } catch { } } catch { } LastEndTime = DateTime.Now.ToString("HH:mm:ss"); gc.insert_TakenTime(orderNumber, "NV", "Lyon", StartTime, AssessmentTime, TaxTime, CitytaxTime, LastEndTime); driver.Quit(); gc.mergpdf(orderNumber, "NV", "Lyon"); return("Data Inserted Successfully"); } catch (Exception ex) { driver.Quit(); GlobalClass.LogError(ex, orderNumber); throw ex; } } }
protected virtual void OnDue() { Due?.Invoke(this, EventArgs.Empty); }
public string FTP_YorkSC(string streetNo, string streetName, string direction, string streetType, string accountNo, string parcelNumber, string ownerName, string searchType, string orderNumber) { GlobalClass.global_orderNo = orderNumber; HttpContext.Current.Session["orderNo"] = orderNumber; GlobalClass.global_parcelNo = parcelNumber; IJavaScriptExecutor js = driver as IJavaScriptExecutor; string strmulti = "", Taxy = ""; string StartTime = "", AssessmentTime = "", TaxTime = "", CitytaxTime = "", LastEndTime = "", accountnumber = ""; var driverService = PhantomJSDriverService.CreateDefaultService(); driverService.HideCommandPromptWindow = true; //driver = new PhantomJSDriver(); //driver = new ChromeDriver(); using (driver = new PhantomJSDriver()) //ChromeDriver { try { StartTime = DateTime.Now.ToString("HH:mm:ss"); driver.Navigate().GoToUrl("https://qpublic.schneidercorp.com/Application.aspx?App=YorkCountySC&Layer=Parcels&PageType=Search"); try { driver.FindElement(By.XPath("//*[@id='appBody']/div[4]/div/div/div[3]/a[1]")).SendKeys(Keys.Enter); Thread.Sleep(2000); } catch { } try { driver.FindElement(By.XPath("//*[@id='appBody']/div[5]/div/div/div[3]/a")).SendKeys(Keys.Enter); Thread.Sleep(2000); } catch { } //Thread.Sleep(3000); if (searchType == "titleflex") { string address = streetNo + " " + direction + " " + streetName + " " + streetType + " " + accountNo; gc.TitleFlexSearch(orderNumber, "", "", address.Trim(), "SC", "York"); if (HttpContext.Current.Session["TitleFlex_Search"] != null && HttpContext.Current.Session["TitleFlex_Search"].Equals("Yes")) { driver.Quit(); return("MultiParcel"); } else if (HttpContext.Current.Session["titleparcel"].ToString() == "") { HttpContext.Current.Session["Nodata_YorkSC"] = "Yes"; driver.Quit(); return("No Data Found"); } parcelNumber = HttpContext.Current.Session["titleparcel"].ToString(); searchType = "parcel"; } if (searchType == "address") { driver.FindElement(By.Id("ctlBodyPane_ctl01_ctl01_txtAddress")).SendKeys(streetNo + " " + streetName); gc.CreatePdf_WOP(orderNumber, "Address Search Before", driver, "SC", "York"); driver.FindElement(By.Id("ctlBodyPane_ctl01_ctl01_btnSearch")).SendKeys(Keys.Enter); Thread.Sleep(2000); gc.CreatePdf_WOP(orderNumber, "Address Search After", driver, "SC", "York"); try { strmulti = GlobalClass.Before(driver.FindElement(By.Id("ctlBodyPane_ctl00_txtResultCount")).Text.Trim(), " Results"); if (Convert.ToInt32(strmulti) > 25) { HttpContext.Current.Session["multiParcel_YorkSC_Maximum"] = "Maximum"; return("Maximum"); } IWebElement Imultitable = driver.FindElement(By.XPath("//*[@id='ctlBodyPane_ctl00_ctl01_gvwParcelResults']/tbody")); IList <IWebElement> ImutiRow = Imultitable.FindElements(By.TagName("tr")); IList <IWebElement> ImultiTD; foreach (IWebElement multi in ImutiRow) { ImultiTD = multi.FindElements(By.TagName("td")); if (ImultiTD.Count != 0 && !multi.Text.Contains("Address")) { string strmultiDetails = ImultiTD[2].Text + "~" + ImultiTD[3].Text; gc.insert_date(orderNumber, ImultiTD[1].Text, 1541, strmultiDetails, 1, DateTime.Now); } } HttpContext.Current.Session["multiParcel_YorkSC"] = "Yes"; driver.Quit(); return("MultiParcel"); } catch { } try { //No Data Found string nodata = driver.FindElement(By.Id("ctlBodyPane_noDataList_pnlNoResults")).Text; if (nodata.Contains("No results match your search criteria.")) { HttpContext.Current.Session["Nodata_YorkSC"] = "Yes"; driver.Quit(); return("No Data Found"); } } catch { } } if (searchType == "parcel") { driver.FindElement(By.Id("ctlBodyPane_ctl02_ctl01_txtParcelID")).SendKeys(parcelNumber); gc.CreatePdf(orderNumber, parcelNumber, "Parcel Before Search", driver, "SC", "York"); driver.FindElement(By.Id("ctlBodyPane_ctl02_ctl01_btnSearch")).SendKeys(Keys.Enter); Thread.Sleep(2000); gc.CreatePdf(orderNumber, parcelNumber, "Parcel Aftere Pdf", driver, "SC", "York"); try { //No Data Found string nodata = driver.FindElement(By.Id("ctlBodyPane_noDataList_pnlNoResults")).Text; if (nodata.Contains("No results match your search criteria.")) { HttpContext.Current.Session["Nodata_YorkSC"] = "Yes"; driver.Quit(); return("No Data Found"); } } catch { } } else if (searchType == "ownername") { driver.FindElement(By.Id("ctlBodyPane_ctl00_ctl01_txtName")).SendKeys(ownerName); gc.CreatePdf_WOP(orderNumber, "OwnerName Search Before", driver, "SC", "York"); driver.FindElement(By.Id("ctlBodyPane_ctl00_ctl01_btnSearch")).SendKeys(Keys.Enter); Thread.Sleep(2000); gc.CreatePdf_WOP(orderNumber, "OwnerName Search After", driver, "SC", "York"); try { strmulti = GlobalClass.Before(driver.FindElement(By.Id("ctlBodyPane_ctl00_txtResultCount")).Text.Trim(), " Results"); if (Convert.ToInt32(strmulti) > 25) { HttpContext.Current.Session["multiParcel_Paulding_Maximum"] = "Maximum"; return("Maximum"); } IWebElement Imultitable = driver.FindElement(By.XPath("//*[@id='ctlBodyPane_ctl00_ctl01_gvwParcelResults']/tbody")); IList <IWebElement> ImutiRow = Imultitable.FindElements(By.TagName("tr")); IList <IWebElement> ImultiTD; foreach (IWebElement multi in ImutiRow) { ImultiTD = multi.FindElements(By.TagName("td")); if (ImultiTD.Count != 0 && !multi.Text.Contains("Address")) { string strmultiDetails = ImultiTD[2].Text + "~" + ImultiTD[3].Text; gc.insert_date(orderNumber, ImultiTD[1].Text, 1541, strmultiDetails, 1, DateTime.Now); } } HttpContext.Current.Session["multiParcel_YorkSC"] = "Yes"; driver.Quit(); return("MultiParcel"); } catch { } try { //No Data Found string nodata = driver.FindElement(By.Id("ctlBodyPane_noDataList_pnlNoResults")).Text; if (nodata.Contains("No results match your search criteria.")) { HttpContext.Current.Session["Nodata_YorkSC"] = "Yes"; driver.Quit(); return("No Data Found"); } } catch { } } //Property Details string Owner = "", ParcelNumber = "", Propertyaddress = "", Mailingaddress = "", LegalDescription = "", Classcode = ""; try { string bulktext1 = driver.FindElement(By.XPath("//*[@id='ctlBodyPane_ctl01_mSection']/div")).Text.Trim(); string[] Propdata1 = bulktext1.Split('\r'); if (Propdata1.Count() == 4) { Owner = Propdata1[0].Replace("\r\n", "").Trim() + "&" + Propdata1[1].Replace("\r\n", "").Trim(); Mailingaddress = Propdata1[2].Replace("\r\n", "").Trim() + Propdata1[3].Replace("\r\n", "").Trim(); } if (Propdata1.Count() == 3) { Owner = Propdata1[0].Replace("\r\n", "").Trim(); Mailingaddress = Propdata1[1].Replace("\r\n", "").Trim() + Propdata1[2].Replace("\r\n", "").Trim(); } if (Propdata1.Count() == 2) { Mailingaddress = Propdata1[1].Replace("\r\n", "").Trim() + Propdata1[2].Replace("\r\n", "").Trim(); } } catch { } ParcelNumber = driver.FindElement(By.Id("ctlBodyPane_ctl00_ctl01_lblParcelNumber")).Text.Trim(); gc.CreatePdf(orderNumber, ParcelNumber, "Property Details and Assessment Details Pdf", driver, "SC", "York"); Propertyaddress = driver.FindElement(By.Id("ctlBodyPane_ctl00_ctl01_lblLocationAddr")).Text.Trim(); LegalDescription = driver.FindElement(By.Id("ctlBodyPane_ctl00_ctl01_lblDescription")).Text.Trim(); Classcode = driver.FindElement(By.Id("ctlBodyPane_ctl00_ctl01_lblClass")).Text.Trim(); string PropertyDetails = Owner.Trim() + "~" + Propertyaddress.Trim() + "~" + Mailingaddress.Trim() + "~" + LegalDescription.Trim() + "~" + Classcode.Trim(); gc.insert_date(orderNumber, ParcelNumber, 1539, PropertyDetails, 1, DateTime.Now); //Assessment Details string AssessmentYear = ""; try { AssessmentYear = driver.FindElement(By.XPath("//*[@id='ctlBodyPane_ctl11_ctl01_grdValuation']/thead/tr/th[3]")).Text.Trim(); } catch { } // gc.CreatePdf(orderNumber, ParcelNumber, "Assessment Details ", driver, "GA", "Paulding"); try { string AssessmentTitle = "", AssessmentValue = ""; IWebElement tbcurasses12 = driver.FindElement(By.Id("ctlBodyPane_ctl02_mSection")); IList <IWebElement> TRcurasses2 = tbcurasses12.FindElements(By.TagName("tr")); IList <IWebElement> TDmulti12; foreach (IWebElement row in TRcurasses2) { TDmulti12 = row.FindElements(By.TagName("td")); if (TDmulti12.Count != 0 && !row.Text.Contains("Value Information")) { AssessmentTitle += TDmulti12[0].Text + "~"; AssessmentValue += TDmulti12[1].Text + "~"; } } db.ExecuteQuery("update data_field_master set Data_Fields_Text='" + "Year" + "~" + AssessmentTitle.Remove(AssessmentTitle.Length - 1, 1) + "' where Id = '" + 1540 + "'"); gc.insert_date(orderNumber, ParcelNumber, 1540, AssessmentYear + "~" + AssessmentValue.Remove(AssessmentValue.Length - 1, 1), 1, DateTime.Now); } catch { } //Tax Authority string Taxauthority = "", Taxauthority1 = ""; try { driver.Navigate().GoToUrl("https://www.yorkcountygov.com/Directory.aspx?did=28"); Taxauthority1 = driver.FindElement(By.Id("CityDirectoryLeftMargin")).Text.Trim(); Taxauthority = gc.Between(Taxauthority1.Replace("\r\n", " "), "Mailing Address:", "Fax:").Trim(); gc.CreatePdf(orderNumber, ParcelNumber, "Tax Authority Details", driver, "SC", "York"); } catch { } //Tax Information Details driver.Navigate().GoToUrl("https://onlinetaxes.yorkcountygov.com/taxes#/"); Thread.Sleep(2000); gc.CreatePdf(orderNumber, ParcelNumber, "Tax main page", driver, "SC", "York"); try {//*[@id="cc5f8c90dc-b4cb-431b-90ee-10648f8df655"]/div/div/p[3]/button[1] //*[@id="cc5f8c90dc-b4cb-431b-90ee-10648f8df655"]/div/div/p[3]/button[1] driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/p[3]/button[1]")).SendKeys(Keys.Enter); Thread.Sleep(2000); gc.CreatePdf(orderNumber, ParcelNumber, "Tax accept click", driver, "SC", "York"); } catch { } try { driver.FindElement(By.XPath("/html/body/div[1]/div/div/div[3]/button[2]")).SendKeys(Keys.Enter); Thread.Sleep(2000); } catch { } ////*[@id="searchBox"] //try { //driver.Navigate().GoToUrl("https://onlinetaxes.yorkcountygov.com/taxes#/WildfireSearch"); //Thread.Sleep(3000); //}catch { } driver.FindElement(By.Id("searchBox")).SendKeys(ParcelNumber); //driver.FindElement(By.XPath("//*[@id='searchBox']")).SendKeys(ParcelNumber); Thread.Sleep(4000); try { //*[@id="searchForm"]/div[1]/div/span/button driver.FindElement(By.XPath("//*[@id='searchForm']/div[1]/div/span/button")).SendKeys(Keys.Enter); } catch { } Thread.Sleep(2000); gc.CreatePdf(orderNumber, ParcelNumber, "Payment Details Pdf", driver, "SC", "York"); //Tax History Details Table string TaxHistorydetails = "", TaxOwnerName = "", TaxYear = "", Receipt = "", Descripton = "", Type = "", Status = "", PaidDate = ""; try { IWebElement PaymentTB = driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/div[4]/div[2]/table")); //Working on div[3]/div[2] Previously IList <IWebElement> PaymentTR = PaymentTB.FindElements(By.TagName("tr")); IList <IWebElement> PaymentTD; foreach (IWebElement Payment in PaymentTR) { PaymentTD = Payment.FindElements(By.TagName("td")); if (PaymentTD.Count != 0 && !Payment.Text.Contains("Owner Name")) { TaxOwnerName = PaymentTD[0].Text; TaxYear = PaymentTD[1].Text; Receipt = PaymentTD[2].Text; Descripton = PaymentTD[3].Text; Type = PaymentTD[4].Text; Status = PaymentTD[5].Text; PaidDate = PaymentTD[6].Text; TaxHistorydetails = TaxOwnerName + "~" + TaxYear + "~" + Receipt + "~" + Descripton + "~" + Type + "~" + Status + "~" + PaidDate + "~" + Taxauthority; gc.insert_date(orderNumber, ParcelNumber, 1547, TaxHistorydetails, 1, DateTime.Now); } } } catch { } //Tax Information Details// //***********************=========***********************// string name = "", Taxyear = "", bill_no = "", amount = "", Del_details = "", delinaccount = "", delinparcelid = ""; //int p = 0; for (int i = 1; i < 4; i++) { try { IWebElement Receipttable1 = driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/div[4]/div[2]/table/tbody/tr[" + i + "]/td[9]/button")); //Working on div[3]/div[2] Previously Receipttable1.Click(); Thread.Sleep(5000); ////View Delinquent Details try { IWebElement DeliquentTB = driver.FindElement(By.XPath("/html/body/div[1]/div/div/div[1]/table/tbody")); IList <IWebElement> DeliquentTR = DeliquentTB.FindElements(By.TagName("tr")); IList <IWebElement> DeliquentTD; foreach (IWebElement Deliquent in DeliquentTR) { DeliquentTD = Deliquent.FindElements(By.TagName("td")); if (DeliquentTD.Count != 0) { name = DeliquentTD[0].Text.Trim(); bill_no = DeliquentTD[1].Text.Trim(); Taxyear = DeliquentTD[2].Text.Trim(); amount = DeliquentTD[6].Text.Trim(); Del_details = name + "~" + Taxyear + "~" + bill_no + "~" + amount; gc.CreatePdf(orderNumber, ParcelNumber, "Deliquent Details" + i, driver, "SC", "York"); gc.insert_date(orderNumber, ParcelNumber, 1443, Del_details, 1, DateTime.Now); name = ""; Taxyear = ""; bill_no = ""; amount = ""; delinaccount = ""; delinparcelid = ""; } } } catch { } try { IWebElement DeliquentfootTB = driver.FindElement(By.XPath("/html/body/div[1]/div/div/div[1]/table/tfoot")); IList <IWebElement> DeliquentfootTR = DeliquentfootTB.FindElements(By.TagName("tr")); IList <IWebElement> DeliquentfootTD; foreach (IWebElement Deliquentfoot in DeliquentfootTR) { DeliquentfootTD = Deliquentfoot.FindElements(By.TagName("th")); if (DeliquentfootTD.Count != 0) { string bill_no1 = DeliquentfootTD[0].Text; string amount1 = DeliquentfootTD[2].Text; string Del_details1 = "" + "~" + "" + "~" + bill_no1 + "~" + amount1; gc.insert_date(orderNumber, ParcelNumber, 1443, Del_details1, 1, DateTime.Now); } } gc.CreatePdf(orderNumber, ParcelNumber, "Delinquent" + i, driver, "SC", "York"); } catch { } try { driver.FindElement(By.XPath("/html/body/div[1]/div/div/div[2]/button[2]")).Click(); Thread.Sleep(2000); } catch { } string Parcelid = "", Taxinfownername1 = "", PayStatus = "", Paypaiddate = "", Effectivedate = "", Paidamount = "", BillType = "", BillTaxYearinfo = "", Billreceipt = "", Duedate = "", Basetaxamt = "", Penalty = "", Costs = "", Totaldue = "", Credit = "", Fees = ""; //Tax Information details1 IWebElement TaxTB2 = driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/div/div/div[1]/div[2]")); IList <IWebElement> TaxTR2 = TaxTB2.FindElements(By.TagName("div")); IList <IWebElement> TaxTD2; foreach (IWebElement Tax2 in TaxTR2) { if (Tax2.Text.Contains("Property Information")) { Parcelid = gc.Between(Tax2.Text, "Parcel Number", "District").Trim(); } if (Tax2.Text.Contains("Bill Information")) { BillType = gc.Between(Tax2.Text, "Record Type", "Tax Year").Trim(); BillTaxYearinfo = gc.Between(Tax2.Text, "Tax Year", "Receipt").Trim(); Billreceipt = gc.Between(Tax2.Text, "Receipt", "Due Date").Trim(); Duedate = GlobalClass.After(Tax2.Text, "Due Date").Trim(); } } //Tax information details //Owner information and Payment Information IWebElement TaxTB1 = driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/div/div/div[1]/div[1]")); IList <IWebElement> TaxTR1 = TaxTB1.FindElements(By.TagName("div")); IList <IWebElement> TaxTD; foreach (IWebElement Tax1 in TaxTR1) { if (Tax1.Text.Contains("Owner Information")) { Taxinfownername1 = GlobalClass.After(Tax1.Text, "Owner Information").Trim(); string[] Taxinfownernamesplit = Taxinfownername1.Split('\r'); TaxOwnerName = Taxinfownernamesplit[0] + " " + Taxinfownernamesplit[2].Trim(); } if (Tax1.Text.Contains("Payment Information")) { PayStatus = gc.Between(Tax1.Text, "Status", "Last Payment Date").Trim(); Paypaiddate = gc.Between(Tax1.Text, "Last Payment Date", "Postmark Date").Trim(); Effectivedate = gc.Between(Tax1.Text, "Postmark Date", "Amount Paid").Trim(); Paidamount = GlobalClass.After(Tax1.Text, "Amount Paid").Trim(); } //} } string Taxinformationdetails2 = TaxOwnerName.Trim() + "~" + PayStatus.Trim() + "~" + Paypaiddate.Trim() + "~" + Effectivedate.Trim() + "~" + Paidamount.Trim() + "~" + BillType.Trim() + "~" + BillTaxYearinfo.Trim() + "~" + Billreceipt.Trim() + "~" + Duedate.Trim(); gc.insert_date(orderNumber, Parcelid, 1545, Taxinformationdetails2, 1, DateTime.Now); gc.CreatePdf(orderNumber, ParcelNumber, "Payment Details Pdf" + BillTaxYearinfo, driver, "SC", "York"); //Property Infor and Bill Infor and Taxes string Basetax = "", Credit1 = "", Fees1 = "", Penalty1 = "", Costs1 = "", Totaldue11 = ""; IWebElement TaxTB3 = driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/div/div/div[1]/div[2]/div[3]/table/tbody")); IList <IWebElement> TaxTR3 = TaxTB3.FindElements(By.TagName("tr")); IList <IWebElement> TaxTD3; foreach (IWebElement Tax2 in TaxTR3) { //TaxTR3 = Tax2.FindElements(By.TagName("tr")); TaxTD3 = Tax2.FindElements(By.TagName("td")); if (TaxTD3.Count == 2 && Tax2.Text.Trim() != "" && Tax2.Text.Trim().Contains("Base Taxes")) { Basetax = TaxTD3[1].Text.Trim(); } if (TaxTD3.Count == 2 && Tax2.Text.Trim() != "" && Tax2.Text.Trim().Contains("Credit")) { Credit1 = TaxTD3[1].Text.Trim(); } if (TaxTD3.Count == 2 && Tax2.Text.Trim() != "" && Tax2.Text.Trim().Contains("Fees")) { Fees1 = TaxTD3[1].Text.Trim(); } if (TaxTD3.Count == 2 && Tax2.Text.Trim() != "" && Tax2.Text.Trim().Contains("Penalty")) { Penalty1 = TaxTD3[1].Text.Trim(); } if (TaxTD3.Count == 2 && Tax2.Text.Trim() != "" && Tax2.Text.Trim().Contains("Costs")) { Costs1 = TaxTD3[1].Text.Trim(); } if (TaxTD3.Count == 2 && Tax2.Text.Trim() != "" && Tax2.Text.Trim().Contains("Total Due")) { Totaldue11 = TaxTD3[1].Text.Trim(); } }//Penalty1="", Costs1="",Totaldue11="" //db.ExecuteQuery("update data_field_master set Data_Fields_Text='" + Title.Remove(Value.Length - 1, 1) + "' where Id = '" + 1445 + "'"); string Taxinformationdetails = BillTaxYearinfo.Trim() + "~" + Basetax.Trim() + "~" + Credit1.Trim() + "~" + Fees1.Trim() + "~" + Penalty1.Trim() + "~" + Costs1.Trim() + "~" + Totaldue11.Trim(); gc.insert_date(orderNumber, ParcelNumber, 1445, Taxinformationdetails, 1, DateTime.Now); //***Due Date Details** string Ifpaidby = "", Penaltydue = "", Amountdue = ""; IWebElement DueTB = driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/div/div/div[1]/div[3]/div[2]/table")); IList <IWebElement> DueTR = DueTB.FindElements(By.TagName("tr")); IList <IWebElement> DueTH = DueTB.FindElements(By.TagName("th")); IList <IWebElement> DueTD; foreach (IWebElement Due in DueTR) { try { DueTD = Due.FindElements(By.TagName("td")); DueTH = Due.FindElements(By.TagName("th")); if (DueTH.Count != 0) { Penaltydue = DueTH[1].Text; Amountdue = DueTH[2].Text; db.ExecuteQuery("update data_field_master set Data_Fields_Text='" + "Tax Year~If Paid by~" + Penaltydue + "~" + Amountdue + "' where Id = '" + 1546 + "'"); } if (DueTD.Count != 0) { Ifpaidby = DueTD[0].Text; Penaltydue = DueTD[1].Text; Amountdue = DueTD[2].Text; string Duedatedetails = BillTaxYearinfo + "~" + Ifpaidby + "~" + Penaltydue + "~" + Amountdue; gc.insert_date(orderNumber, Parcelid, 1546, Duedatedetails, 1, DateTime.Now); } } catch { } } //Tax Bill Download try { driver.FindElement(By.XPath("//*[@id='cc5f8c90dc-b4cb-431b-90ee-10648f8df655']/div/div/div/ul/li[2]/a/div")).Click(); Thread.Sleep(5000); gc.CreatePdf(orderNumber, ParcelNumber, "Tax Bill Details" + BillTaxYearinfo, driver, "SC", "York"); //Thread.Sleep(5000); } catch { } driver.Navigate().Back(); } catch { } } TaxTime = DateTime.Now.ToString("HH:mm:ss"); CitytaxTime = DateTime.Now.ToString("HH:mm:ss"); LastEndTime = DateTime.Now.ToString("HH:mm:ss"); gc.insert_TakenTime(orderNumber, "SC", "York", StartTime, AssessmentTime, TaxTime, CitytaxTime, LastEndTime); driver.Quit(); gc.mergpdf(orderNumber, "SC", "York"); return("Data Inserted Successfully"); } catch (Exception ex) { driver.Quit(); GlobalClass.LogError(ex, orderNumber); throw ex; } } }
public string FTP_TXHays(string streetno, string direction, string streetname, string city, string streettype, string unitnumber, string ownernm, string parcelNumber, string searchType, string orderNumber, string directParcel) { GlobalClass.global_orderNo = orderNumber; HttpContext.Current.Session["orderNo"] = orderNumber; GlobalClass.global_parcelNo = parcelNumber; string StartTime = "", AssessmentTime = "", TaxTime = "", CitytaxTime = "", LastEndTime = ""; var driverService = PhantomJSDriverService.CreateDefaultService(); driverService.HideCommandPromptWindow = true; //driver = new PhantomJSDriver(); //driver = new ChromeDriver(); using (driver = new PhantomJSDriver()) //ChromeDriver { try { StartTime = DateTime.Now.ToString("HH:mm:ss"); if (searchType == "titleflex") { string titleaddress = streetno + " " + streetname + " " + streettype + " " + unitnumber; gc.TitleFlexSearch(orderNumber, "", "", titleaddress, "TX", "Hays"); if ((HttpContext.Current.Session["TitleFlex_Search"] != null && HttpContext.Current.Session["TitleFlex_Search"].ToString() == "Yes")) { driver.Quit(); return("MultiParcel"); } else if (HttpContext.Current.Session["titleparcel"].ToString() == "") { HttpContext.Current.Session["Nodata_TXHays"] = "Yes"; driver.Quit(); return("No Data Found"); } parcelNumber = HttpContext.Current.Session["titleparcel"].ToString(); searchType = "parcel"; } if (searchType == "address") { driver.Navigate().GoToUrl("http://esearch.hayscad.com/"); Thread.Sleep(2000); IJavaScriptExecutor js2 = driver as IJavaScriptExecutor; IWebElement ParcelLinkSearch1 = driver.FindElement(By.XPath("//*[@id='home-page-tabs']/li[3]/a")); js2.ExecuteScript("arguments[0].click();", ParcelLinkSearch1); Thread.Sleep(2000); driver.FindElement(By.XPath("//*[@id='StreetNumber']")).SendKeys(streetno); driver.FindElement(By.XPath("//*[@id='StreetName']")).SendKeys(streetname); driver.FindElement(By.XPath("//*[@id='index-search']/div[4]/div/div/button")).SendKeys(Keys.Enter); Thread.Sleep(5000); aaa = driver.FindElement(By.XPath("//*[@id='page-header']")).Text; parcel = gc.Between(aaa, "Page 1 of 1 - ", " (").Trim(); if (parcel == "Total: 1") { gc.CreatePdf_WOP(orderNumber, "Owner", driver, "TX", "Hays"); var chDriver = new ChromeDriver(); chDriver.Navigate().GoToUrl(driver.Url); Thread.Sleep(4000); IWebElement Multiaddresstable = chDriver.FindElement(By.XPath("//*[@id='grid']/div[2]/table/tbody")); IList <IWebElement> multiaddressrow = Multiaddresstable.FindElements(By.TagName("tr")); IList <IWebElement> Multiaddressid; foreach (IWebElement Multiaddress in multiaddressrow) { Multiaddressid = Multiaddress.FindElements(By.TagName("td")); if (Multiaddressid.Count != 0) { parcel = Multiaddressid[1].Text; } } gc.CreatePdf_WOP(orderNumber, "Owner Address search1", driver, "TX", "Hays"); //ByVisibleElement(chDriver.FindElement(By.Id("DownloadResults"))); gc.CreatePdf_WOP(orderNumber, "Owner Address search2", driver, "TX", "Hays"); driver.Navigate().GoToUrl("http://esearch.hayscad.com/Property/View/" + parcel + ""); Thread.Sleep(2000); gc.CreatePdf_WOP(orderNumber, "Owner Address search1", driver, "TX", "Hays"); chDriver.Quit(); } else { try { var chDriver = new ChromeDriver(); chDriver.Navigate().GoToUrl(driver.Url); Thread.Sleep(4000); IWebElement MultiAddressTB = chDriver.FindElement(By.XPath("//*[@id='grid']/div[2]/table/tbody")); IList <IWebElement> MultiAddressTR = MultiAddressTB.FindElements(By.TagName("tr")); IList <IWebElement> MultiAddressTD; gc.CreatePdf_WOP(orderNumber, "Multi Address search", driver, "TX", "Hays"); int AddressmaxCheck = 0; foreach (IWebElement MultiAddress in MultiAddressTR) { if (AddressmaxCheck <= 25) { MultiAddressTD = MultiAddress.FindElements(By.TagName("td")); if (MultiAddressTD.Count != 0 && !MultiAddress.Text.Contains("Mobile Home")) { Parcelno = MultiAddressTD[1].Text; Multi_Type = MultiAddressTD[5].Text; Owner = MultiAddressTD[6].Text; Property_Address = MultiAddressTD[7].Text; MultiAddress_details = Multi_Type + "~" + Owner + "~" + Property_Address; gc.insert_date(orderNumber, Parcelno, 1002, MultiAddress_details, 1, DateTime.Now); } AddressmaxCheck++; } } if (MultiAddressTR.Count > 25) { HttpContext.Current.Session["multiParcel_TXHays_Multicount"] = "Maximum"; } else { HttpContext.Current.Session["multiParcel_TXHays"] = "Yes"; } chDriver.Quit(); return("MultiParcel"); } catch { } } } if (searchType == "parcel") { driver.Navigate().GoToUrl("http://esearch.hayscad.com/"); Thread.Sleep(2000); IJavaScriptExecutor js1 = driver as IJavaScriptExecutor; IWebElement ParcelLinkSearch = driver.FindElement(By.XPath("//*[@id='home-page-tabs']/li[4]/a")); js1.ExecuteScript("arguments[0].click();", ParcelLinkSearch); Thread.Sleep(2000); driver.FindElement(By.Id("PropertyId")).SendKeys(parcelNumber); gc.CreatePdf(orderNumber, parcelNumber, "ParcelSearch", driver, "TX", "Hays"); driver.FindElement(By.XPath("//*[@id='index-search']/div[4]/div/div/button")).SendKeys(Keys.Enter); Thread.Sleep(2000); driver.FindElement(By.XPath("//*[@id='grid']/div[2]/table/tbody/tr/td[2]")).Click(); Thread.Sleep(5000); gc.CreatePdf(orderNumber, parcelNumber, "ParcelSearch1", driver, "TX", "Hays"); } if (searchType == "ownername") { driver.Navigate().GoToUrl("http://esearch.hayscad.com/"); Thread.Sleep(2000); IJavaScriptExecutor js3 = driver as IJavaScriptExecutor; IWebElement ParcelLinkSearch2 = driver.FindElement(By.XPath("//*[@id='home-page-tabs']/li[2]/a")); js3.ExecuteScript("arguments[0].click();", ParcelLinkSearch2); Thread.Sleep(2000); driver.FindElement(By.Id("OwnerName")).SendKeys(ownernm); gc.CreatePdf_WOP(orderNumber, "Owner search", driver, "TX", "Hays"); driver.FindElement(By.XPath("//*[@id='index-search']/div[4]/div/div/button")).SendKeys(Keys.Enter); Thread.Sleep(2000); aaa = driver.FindElement(By.XPath("//*[@id='page-header']")).Text; parcel = gc.Between(aaa, "Page 1 of 1 - ", " (").Trim(); if (parcel == "Total: 1") { gc.CreatePdf_WOP(orderNumber, "Owner", driver, "TX", "Hays"); var chDriver = new ChromeDriver(); chDriver.Navigate().GoToUrl(driver.Url); Thread.Sleep(4000); IWebElement Multiaddresstable = chDriver.FindElement(By.XPath("//*[@id='grid']/div[2]/table/tbody")); IList <IWebElement> multiaddressrow = Multiaddresstable.FindElements(By.TagName("tr")); IList <IWebElement> Multiaddressid; foreach (IWebElement Multiaddress in multiaddressrow) { Multiaddressid = Multiaddress.FindElements(By.TagName("td")); if (Multiaddressid.Count != 0) { parcel = Multiaddressid[1].Text; } } gc.CreatePdf_WOP(orderNumber, "Owner search1", driver, "TX", "Hays"); //ByVisibleElement(chDriver.FindElement(By.Id("DownloadResults"))); gc.CreatePdf_WOP(orderNumber, "Owner Search2", driver, "TX", "Hays"); driver.Navigate().GoToUrl("http://esearch.hayscad.com/Property/View/" + parcel + ""); Thread.Sleep(2000); gc.CreatePdf_WOP(orderNumber, "Owner search3", driver, "TX", "Hays"); chDriver.Quit(); } else { try { var chDriver = new ChromeDriver(); chDriver.Navigate().GoToUrl(driver.Url); Thread.Sleep(4000); IWebElement MultiAddressTB = chDriver.FindElement(By.XPath("//*[@id='grid']/div[2]/table/tbody")); IList <IWebElement> MultiAddressTR = MultiAddressTB.FindElements(By.TagName("tr")); IList <IWebElement> MultiAddressTD; gc.CreatePdf_WOP(orderNumber, "Multi Address search", driver, "TX", "Hays"); int AddressmaxCheck = 0; foreach (IWebElement MultiAddress in MultiAddressTR) { if (AddressmaxCheck <= 25) { MultiAddressTD = MultiAddress.FindElements(By.TagName("td")); if (MultiAddressTD.Count != 0 && !MultiAddress.Text.Contains("Mobile Home")) { Parcelno = MultiAddressTD[1].Text; Multi_Type = MultiAddressTD[5].Text; Owner = MultiAddressTD[6].Text; Property_Address = MultiAddressTD[7].Text; MultiAddress_details = Multi_Type + "~" + Owner + "~" + Property_Address; gc.insert_date(orderNumber, Parcelno, 1002, MultiAddress_details, 1, DateTime.Now); } AddressmaxCheck++; } } if (MultiAddressTR.Count > 25) { HttpContext.Current.Session["multiParcel_TXHays_Multicount"] = "Maximum"; } else { HttpContext.Current.Session["multiParcel_TXHays"] = "Yes"; } chDriver.Quit(); return("MultiParcel"); } catch { } } } try { IWebElement INodata = driver.FindElement(By.Id("results-page")); if (INodata.Text.Contains("Page 1 of 0 - Total: 0")) { HttpContext.Current.Session["Nodata_TXHays"] = "Yes"; driver.Quit(); return("No Data Found"); } } catch { } //Property Details try { IList <IWebElement> tables1 = driver.FindElements(By.XPath("//*[@id='detail-page']/div/div[1]/div/table")); int count1 = tables1.Count; foreach (IWebElement tab1 in tables1) { if (tab1.Text.Contains("Account")) { IList <IWebElement> ProTR = tab1.FindElements(By.TagName("tr")); IList <IWebElement> ProTD; IList <IWebElement> ProTH; foreach (IWebElement Pro in ProTR) { ProTD = Pro.FindElements(By.TagName("td")); ProTH = Pro.FindElements(By.TagName("th")); if (!Pro.Text.Contains("Account") && !Pro.Text.Contains("Location") && !Pro.Text.Contains("% Ownership:") && !Pro.Text.Contains("Agent Code:")) { Parcel = ProTH[0].Text; if (Parcel.Contains("Property ID:")) { Parcel_ID = ProTD[0].Text; } Legal = ProTH[0].Text; if (Legal.Contains("Legal Description:")) { Legal_Desp = ProTD[0].Text; } Graphic = ProTH[0].Text; if (Graphic.Contains("Geographic ID:")) { Graphic_Id = ProTD[0].Text; } Tap = ProTH[0].Text; if (Tap.Contains("Type:")) { Type = ProTD[0].Text; } Adds = ProTH[0].Text; if (Adds.Contains("Address:")) { Pro_Addrs = ProTD[0].Text; } Maps = ProTH[0].Text; if (Maps.Contains("Map ID:")) { Map = ProTD[0].Text; } Nighber = ProTH[0].Text; if (Nighber.Contains("Neighborhood CD:")) { Nighberhood = ProTD[0].Text; } Own_Id = ProTH[0].Text; if (Own_Id.Contains("Owner ID:")) { Owner_Id = ProTD[0].Text; } Nam = ProTH[0].Text; if (Nam.Contains("Name:")) { Name = ProTD[0].Text; } Mailing_Addrs = ProTH[0].Text; if (Mailing_Addrs.Contains("Mailing Address:")) { Mailing_Address = ProTD[0].Text; } Exmp = ProTH[0].Text; if (Exmp.Contains("Exemptions:")) { Excemptions = ProTD[0].Text; } } } try { Year_Built = driver.FindElement(By.XPath("//*[@id='detail-page']/div[5]/div[2]/table[1]/tbody/tr[2]/td[4]")).Text; Acres = driver.FindElement(By.XPath("//*[@id='detail-page']/div[6]/div[2]/table/tbody/tr[2]/td[3]")).Text; } catch { } Property_Details = Legal_Desp + "~" + Graphic_Id + "~" + Type + "~" + Pro_Addrs + "~" + Map + "~" + Nighberhood + "~" + Owner_Id + "~" + Name + "~" + Mailing_Address + "~" + Excemptions + "~" + Acres + "~" + Year_Built; gc.CreatePdf(orderNumber, Parcel_ID, "Property Details", driver, "TX", "Hays"); gc.insert_date(orderNumber, Parcel_ID, 1003, Property_Details, 1, DateTime.Now); } } } catch { } //Values Details try { IList <IWebElement> tables2 = driver.FindElements(By.XPath("//*[@id='detail-page']/div/div[2]/div/table")); int count2 = tables2.Count; foreach (IWebElement tab2 in tables2) { if (tab2.Text.Contains("Improvement Homesite Value:")) { IList <IWebElement> AssemntTR = tab2.FindElements(By.TagName("tr")); IList <IWebElement> AssemntTD; IList <IWebElement> AssemntTH; foreach (IWebElement Assemnt in AssemntTR) { AssemntTD = Assemnt.FindElements(By.TagName("td")); AssemntTH = Assemnt.FindElements(By.TagName("th")); if (Assemnt.Text != " ") { Imp_Home = AssemntTH[0].Text; if (Imp_Home.Contains("Improvement Homesite Value:")) { Imp_Homesite = AssemntTD[0].Text; } Imp_NonHome = AssemntTH[0].Text; if (Imp_NonHome.Contains("Improvement Non-Homesite Value:")) { Imp_NonHomesite = AssemntTD[0].Text; } Land = AssemntTH[0].Text; if (Land.Contains("Land Homesite Value:")) { Land_Homesite = AssemntTD[0].Text; } Non_Land = AssemntTH[0].Text; if (Non_Land.Contains("Land Non-Homesite Value:")) { Land_NonHomesite = AssemntTD[0].Text; } Agricutr = AssemntTH[0].Text; if (Agricutr.Contains("Agricultural Market Valuation:")) { Agri_Markt = AssemntTD[0].Text; } Mrkt = AssemntTH[0].Text; if (Mrkt.Contains("Market Value:")) { Mrkt_Value = AssemntTD[0].Text; } Ag_Value = AssemntTH[0].Text; if (Ag_Value.Contains("Ag Use Value:")) { AgUse_Value = AssemntTD[0].Text; } App_Value = AssemntTH[0].Text; if (App_Value.Contains("Appraised Value:")) { Appraised_Value = AssemntTD[0].Text; } Home_Cap = AssemntTH[0].Text; if (Home_Cap.Contains("Homestead Cap Loss:")) { Homested_Cap = AssemntTD[0].Text; } Assd_Value = AssemntTH[0].Text; if (Assd_Value.Contains("Assessed Value:")) { Assessed_Value = AssemntTD[0].Text; } } } Assessment_Details = Imp_Homesite + "~" + Imp_NonHomesite + "~" + Land_Homesite + "~" + Land_NonHomesite + "~" + Agri_Markt + "~" + Mrkt_Value + "~" + AgUse_Value + "~" + Appraised_Value + "~" + Homested_Cap + "~" + Assessed_Value; gc.insert_date(orderNumber, Parcel_ID, 1006, Assessment_Details, 1, DateTime.Now); } } } catch { } AssessmentTime = DateTime.Now.ToString("HH:mm:ss"); //Jurisdiction Details try { IWebElement JurisdictionTB = driver.FindElement(By.XPath("//*[@id='detail-page']/div[4]/div[2]/table/tbody")); IList <IWebElement> JurisdictionTR = JurisdictionTB.FindElements(By.TagName("tr")); IList <IWebElement> JurisdictionTD; foreach (IWebElement Jurisdiction in JurisdictionTR) { JurisdictionTD = Jurisdiction.FindElements(By.TagName("td")); if (JurisdictionTD.Count != 0 && !Jurisdiction.Text.Contains("Entity")) { Entity = JurisdictionTD[0].Text; Desp = JurisdictionTD[1].Text; Mrket_Value = JurisdictionTD[2].Text; Txble_Value = JurisdictionTD[3].Text; Jurisdiction_details = Entity + "~" + Desp + "~" + Mrket_Value + "~" + Txble_Value; gc.insert_date(orderNumber, Parcel_ID, 1007, Jurisdiction_details, 1, DateTime.Now); } } } catch { } //RollValue Details try { IList <IWebElement> tables4 = driver.FindElements(By.XPath("//*[@id='detail-page']/div/div[2]/table")); int count4 = tables4.Count; foreach (IWebElement tab4 in tables4) { if (tab4.Text.Contains("HS Cap Loss")) { IList <IWebElement> RollValueTR = tab4.FindElements(By.TagName("tr")); IList <IWebElement> RollValueTD; foreach (IWebElement RollValue in RollValueTR) { RollValueTD = RollValue.FindElements(By.TagName("td")); if (RollValueTD.Count != 0 && !RollValue.Text.Contains("Year")) { Year = RollValueTD[0].Text; Improv = RollValueTD[1].Text; lnd_Mrkt = RollValueTD[2].Text; Ag_Valution = RollValueTD[3].Text; Appraised = RollValueTD[4].Text; HS_Cap = RollValueTD[5].Text; Pro_Assed = RollValueTD[6].Text; RollValue_details = Year + "~" + Improv + "~" + lnd_Mrkt + "~" + Ag_Valution + "~" + Appraised + "~" + HS_Cap + "~" + Pro_Assed; gc.insert_date(orderNumber, Parcel_ID, 1008, RollValue_details, 1, DateTime.Now); } } } } } catch { } //Tax Details driver.Navigate().GoToUrl("https://hayscountytax.com/taxes.html#/WildfireSearch"); Thread.Sleep(2000); try { driver.FindElement(By.Id("btnAccept")).Click(); Thread.Sleep(2000); } catch { } try { driver.FindElement(By.XPath("/html/body/div[1]/div/div/div[3]/button[1]")).Click(); Thread.Sleep(2000); } catch { } driver.FindElement(By.Id("searchBox")).SendKeys(Parcel_ID); Thread.Sleep(5000); //TaxPayment Details try { IWebElement TaxPaymentTB = null; try { TaxPaymentTB = driver.FindElement(By.XPath("//*[@id='avalon']/div/div[3]/div[2]/table/tbody")); } catch { } try { if (TaxPaymentTB == null) { TaxPaymentTB = driver.FindElement(By.XPath("//*[@id='avalon']/div/div[4]/div[2]/table/tbody")); } } catch { } IList <IWebElement> TaxPaymentTR = TaxPaymentTB.FindElements(By.TagName("tr")); IList <IWebElement> TaxPaymentTD; foreach (IWebElement TaxPayment in TaxPaymentTR) { TaxPaymentTD = TaxPayment.FindElements(By.TagName("td")); if (TaxPaymentTD.Count != 0) { Owners = TaxPaymentTD[0].Text; year = TaxPaymentTD[1].Text; Quiref_Id = TaxPaymentTD[2].Text; Situs_Address = TaxPaymentTD[3].Text; Status = TaxPaymentTD[4].Text; Payment_details = Owners + "~" + year + "~" + Quiref_Id + "~" + Situs_Address + "~" + Status; gc.CreatePdf(orderNumber, Parcel_ID, "Tax Payment Details", driver, "TX", "Hays"); gc.insert_date(orderNumber, Parcel_ID, 1009, Payment_details, 1, DateTime.Now); } } } catch { } //Tax Info Details int p1 = 0, p2 = 0, p3 = 0; List <string> strTaxRealestate = new List <string>(); List <IWebElement> strTaxRealestate1 = new List <IWebElement>(); IWebElement ITaxReal1 = null; try { ITaxReal1 = driver.FindElement(By.XPath("//*[@id='avalon']/div/div[3]/div[2]/table/tbody")); } catch { } try { if (ITaxReal1 == null) { ITaxReal1 = driver.FindElement(By.XPath("//*[@id='avalon']/div/div[4]/div[2]/table/tbody")); } } catch { } IList <IWebElement> ITaxRealRow1 = ITaxReal1.FindElements(By.TagName("tr")); IList <IWebElement> ITaxRealTd1; foreach (IWebElement row in ITaxRealRow1) { ITaxRealTd1 = row.FindElements(By.TagName("td")); if (row.Text.Contains("Unpaid")) { p1++; p2++; } if (row.Text.Contains("Paid") && p2 < 3) { p3++; p2++; } } int p4 = p1 + p3; for (int p5 = 1; p5 <= p4; p5++) { try { try { driver.FindElement(By.XPath("//*[@id='avalon']/div/div[3]/div[2]/table/tbody/tr[" + p5 + "]/td[7]/button")).Click(); } catch { } try { driver.FindElement(By.XPath("//*[@id='avalon']/div/div[4]/div[2]/table/tbody/tr[" + p5 + "]/td[7]/button")).Click(); } catch { } Thread.Sleep(6000); IWebElement TaxTB = driver.FindElement(By.XPath("//*[@id='avalon']/div/div/div/div[1]/div[1]/div[1]/table/tbody")); IList <IWebElement> TaxTR = TaxTB.FindElements(By.TagName("tr")); IList <IWebElement> TaxTD; foreach (IWebElement Tax in TaxTR) { TaxTD = Tax.FindElements(By.TagName("td")); if (TaxTD.Count != 0) { Own_Nm = TaxTD[0].Text; if (Own_Nm.Contains("Owner Name")) { Tax_Owner = TaxTD[1].Text; } Tx_year = TaxTD[0].Text; if (Tx_year.Contains("Tax Year")) { Taxy_Year = TaxTD[1].Text; } Sta = TaxTD[0].Text; if (Sta.Contains("Status")) { taxy_sta = TaxTD[1].Text; } Ba_Tx = TaxTD[0].Text; if (Ba_Tx.Contains("Base Tax")) { Taxy_Base = TaxTD[1].Text; } Tl_Pay = TaxTD[0].Text; if (Tl_Pay.Contains("Total Payments")) { Tl_Taxy = TaxTD[1].Text; } Due = TaxTD[0].Text; if (Due.Contains("Total Due")) { TaxyTl_Due = TaxTD[1].Text; } } } gc.CreatePdf(orderNumber, Parcel_ID, "Tax Overview Details" + Taxy_Year, driver, "TX", "Hays"); IWebElement TaxTB1 = driver.FindElement(By.XPath("//*[@id='avalon']/div/div/div/div[1]/div[1]/div[2]/table/tbody")); IList <IWebElement> TaxTR1 = TaxTB1.FindElements(By.TagName("tr")); IList <IWebElement> TaxTD1; foreach (IWebElement Tax1 in TaxTR1) { TaxTD1 = Tax1.FindElements(By.TagName("td")); if (TaxTD1.Count != 0) { Own_Addr = TaxTD1[0].Text; if (Own_Addr.Contains("Owner Address")) { Tax_OwnerAddress = TaxTD1[1].Text; } Tx_Parcel = TaxTD1[0].Text; if (Tx_Parcel.Contains("Parcel ID")) { Taxy_Parcel = TaxTD1[1].Text; } Quick = TaxTD1[0].Text; if (Quick.Contains("Quick Reference ID")) { taxy_QuickID = TaxTD1[1].Text; } Lega = TaxTD1[0].Text; if (Lega.Contains("Legal Description")) { Taxy_LglDes = TaxTD1[1].Text; } } } if (TaxyTl_Due == "Please call tax office for total due") { TaxSale_Comments = "You must call the Collector's Office."; } Tax_Deatils = Taxy_Year + "~" + Tax_OwnerAddress + "~" + Taxy_Parcel + "~" + taxy_QuickID + "~" + Taxy_LglDes + "~" + Tax_Owner + "~" + taxy_sta + "~" + Taxy_Base + "~" + Tl_Taxy + "~" + TaxyTl_Due + "~" + TaxSale_Comments; gc.insert_date(orderNumber, Parcel_ID, 1011, Tax_Deatils, 1, DateTime.Now); //Tax Breakdown try { IWebElement BreakdownTB = driver.FindElement(By.XPath("//*[@id='avalon']/div/div/div/div[1]/div[2]/div/table/tbody")); IList <IWebElement> BreakdownTR = BreakdownTB.FindElements(By.TagName("tr")); IList <IWebElement> BreakdownTD; foreach (IWebElement Breakdown in BreakdownTR) { BreakdownTD = Breakdown.FindElements(By.TagName("td")); if (BreakdownTD.Count != 0) { Jurisdiction = BreakdownTD[0].Text; T_Year = BreakdownTD[1].Text; Base_Tax = BreakdownTD[2].Text; tax_Penalty = BreakdownTD[3].Text; Tax_Inst = BreakdownTD[4].Text; attroney_Fee = BreakdownTD[5].Text; Payments = BreakdownTD[6].Text; Balnce = BreakdownTD[7].Text; Breakdown_details = Jurisdiction + "~" + T_Year + "~" + Base_Tax + "~" + tax_Penalty + "~" + Tax_Inst + "~" + attroney_Fee + "~" + Payments + "~" + Balnce; gc.insert_date(orderNumber, Parcel_ID, 1010, Breakdown_details, 1, DateTime.Now); } } } catch { } //Tax Bill try { driver.FindElement(By.XPath("//*[@id='avalon']/div/div/ul/li[2]/a")).Click(); Thread.Sleep(5000); gc.CreatePdf(orderNumber, Parcel_ID, "Tax Bill Details" + Taxy_Year, driver, "TX", "Hays"); } catch { } try { driver.FindElement(By.XPath("//*[@id='avalon']/div/div/ul/li[3]/a")).Click(); Thread.Sleep(4000); gc.CreatePdf(orderNumber, Parcel_ID, "Tax Receipt Details" + Taxy_Year, driver, "TX", "Hays"); } catch { } try { driver.FindElement(By.XPath("//*[@id='avalon']/div/div/ul/li[4]/a")).Click(); Thread.Sleep(4000); gc.CreatePdf(orderNumber, Parcel_ID, "Tax Summary Details" + Taxy_Year, driver, "TX", "Hays"); } catch { } driver.Navigate().Back(); Thread.Sleep(3000); } catch { } } //Tax Authority driver.Navigate().GoToUrl("https://hayscountytax.com/#/contact"); Thread.Sleep(2000); try { Taxing = "712 S Stagecoach Trail San Marcos, Texas 78666"; Phone = "Phone: (512) 393-5545"; Fax = "Fax: (512) 393-5547"; gc.CreatePdf(orderNumber, Parcel_ID, "Tax Authority Details", driver, "TX", "Hays"); Taxing_Authority = Taxing + " " + Phone + " " + Fax; Taxauthority_Details = Taxing_Authority; gc.insert_date(orderNumber, Parcel_ID, 1012, Taxauthority_Details, 1, DateTime.Now); } catch { } TaxTime = DateTime.Now.ToString("HH:mm:ss"); LastEndTime = DateTime.Now.ToString("HH:mm:ss"); gc.insert_TakenTime(orderNumber, "TX", "Hays", StartTime, AssessmentTime, TaxTime, CitytaxTime, LastEndTime); driver.Quit(); gc.mergpdf(orderNumber, "TX", "Hays"); return("Data Inserted Successfully"); } catch (Exception ex) { driver.Quit(); GlobalClass.LogError(ex, orderNumber); throw; } } }