|
@@ -110,7 +110,6 @@ namespace wispro.sp.utility
|
|
|
});
|
|
|
}
|
|
|
|
|
|
-
|
|
|
static ReadOnlyCollection<IWebElement> waitGetElementsByName(WebDriverWait wait, string name, IWebElement parentElement = null)
|
|
|
{
|
|
|
return wait.Until((d) =>
|
|
@@ -417,10 +416,12 @@ namespace wispro.sp.utility
|
|
|
Login(driver, wait);
|
|
|
|
|
|
//点击顶部菜单栏中的报表管理菜单
|
|
|
- driver.FindElement(By.Name("970d33d5-c728-41b8-a060-4330610706b9")).Click();
|
|
|
+ waitGetElementById(wait, "970d33d5-c728-41b8-a060-4330610706b9").Click();
|
|
|
+ //driver.FindElement(By.Name("970d33d5-c728-41b8-a060-4330610706b9")).Click();
|
|
|
|
|
|
//点击左侧 自定义报表 菜单
|
|
|
- driver.FindElement(By.Name("642fa96f-1e1f-46fd-aaa4-cb461ee8df5b")).Click();
|
|
|
+ waitGetElementByName(wait, "642fa96f-1e1f-46fd-aaa4-cb461ee8df5b").Click();
|
|
|
+ //driver.FindElement(By.Name("642fa96f-1e1f-46fd-aaa4-cb461ee8df5b")).Click();
|
|
|
|
|
|
//切换到自定义报表Frame
|
|
|
driver.SwitchTo().Frame(1);
|
|
@@ -430,26 +431,12 @@ namespace wispro.sp.utility
|
|
|
|
|
|
//切换到弹出的导出报表窗口,点击导出按钮
|
|
|
driver.SwitchTo().DefaultContent();
|
|
|
- var ihg_export = driver.FindElement(By.Name("ihg_export"));
|
|
|
+ var ihg_export = waitGetElementByName(wait, "ihg_export"); //driver.FindElement(By.Name("ihg_export"));
|
|
|
driver.SwitchTo().Frame(ihg_export);
|
|
|
- driver.FindElement(By.Id("btnSubmit")).Click();
|
|
|
-
|
|
|
- string strFilePath = System.IO.Path.Combine(strFileSavePath, filename);
|
|
|
+ waitGetElementById(wait, "btnSubmit").Click();
|
|
|
+ //driver.FindElement(By.Id("btnSubmit")).Click();
|
|
|
|
|
|
-
|
|
|
- while (true)
|
|
|
- {
|
|
|
-
|
|
|
- System.IO.FileInfo file = new System.IO.FileInfo(strFilePath);
|
|
|
- if (!file.Exists || file.Length == 0)
|
|
|
- {
|
|
|
- System.Threading.Thread.Sleep(5000);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
+ WaitForFileDownload(strFileSavePath, filename, TimeSpan.FromMinutes(5));
|
|
|
}
|
|
|
catch (Exception ex)
|
|
|
{
|
|
@@ -511,9 +498,6 @@ namespace wispro.sp.utility
|
|
|
try
|
|
|
{
|
|
|
|
|
|
- driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(20);
|
|
|
- driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(100);
|
|
|
- //driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(100);
|
|
|
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
|
|
|
|
|
|
Log($"{DateTime.Now}\tIWebDriver配置");
|
|
@@ -521,14 +505,16 @@ namespace wispro.sp.utility
|
|
|
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(50);
|
|
|
driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(500);
|
|
|
|
|
|
+ Login(driver, wait);
|
|
|
//点击顶部菜单栏中的报表管理菜单
|
|
|
Log($"{DateTime.Now}\t点击顶部菜单栏中的报表管理菜单");
|
|
|
- var reportMenu = driver.FindElement(By.Name("970d33d5-c728-41b8-a060-4330610706b9"));
|
|
|
+ var reportMenu = waitGetElementByName(wait, "970d33d5-c728-41b8-a060-4330610706b9");
|
|
|
+ //driver.FindElement(By.Name("970d33d5-c728-41b8-a060-4330610706b9"));
|
|
|
driver.ExecuteJavaScript("arguments[0].click();", reportMenu);
|
|
|
|
|
|
//点击左侧 自定义报表 菜单
|
|
|
Log($"{DateTime.Now}\t点击左侧 自定义报表 菜单");
|
|
|
- var customerReportMenu = driver.FindElement(By.Name("642fa96f-1e1f-46fd-aaa4-cb461ee8df5b"));
|
|
|
+ var customerReportMenu = waitGetElementByName(wait, "642fa96f-1e1f-46fd-aaa4-cb461ee8df5b");
|
|
|
driver.ExecuteJavaScript("arguments[0].click();", customerReportMenu);
|
|
|
|
|
|
//切换到自定义报表Frame
|
|
@@ -536,43 +522,52 @@ namespace wispro.sp.utility
|
|
|
driver.SwitchTo().Frame(1);
|
|
|
|
|
|
Log($"{DateTime.Now}\t开始搜索报告");
|
|
|
- var inputSearch = driver.FindElement(By.Id("customizedList_TxtSheetSearchKey"));
|
|
|
+ var inputSearch = waitGetElementById(wait,"customizedList_TxtSheetSearchKey");
|
|
|
|
|
|
Log($"{DateTime.Now}\t在搜索框中输入报告名称");
|
|
|
inputSearch.SendKeys(ReportName);
|
|
|
|
|
|
Log($"{DateTime.Now}\t点击搜索按钮");
|
|
|
- var btnSearch = driver.FindElement(By.ClassName("btn-search"));
|
|
|
+ var btnSearch = waitGetElementByClassName(wait,"btn-search");
|
|
|
btnSearch.Click();
|
|
|
|
|
|
Log($"{DateTime.Now}\t选中报告");
|
|
|
- var reportRecord = driver.FindElement(By.XPath($"//td[contains(text(),'{ReportName}')]"));
|
|
|
+ var reportRecord = wait.Until((d) =>
|
|
|
+ {
|
|
|
+ try
|
|
|
+ {
|
|
|
+ return d.FindElement(By.XPath($"//td[contains(text(),'{ReportName}')]"));
|
|
|
+ }
|
|
|
+ catch
|
|
|
+ {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ });
|
|
|
reportRecord.Click();
|
|
|
|
|
|
- System.Threading.Thread.Sleep(1000);
|
|
|
-
|
|
|
if (isModifyDate)
|
|
|
{
|
|
|
Log($"{DateTime.Now}\t点击编辑");
|
|
|
- var btnEdit = driver.FindElement(By.ClassName("edit"));
|
|
|
+ var btnEdit = waitGetElementByClassName(wait,"edit");
|
|
|
btnEdit.Click();
|
|
|
- System.Threading.Thread.Sleep(500);
|
|
|
|
|
|
Log($"{DateTime.Now}\t清除以选择的处理事项完成日条件");
|
|
|
|
|
|
try
|
|
|
{
|
|
|
- var doItemFinished = driver.FindElement(By.XPath("//span[contains(@objcvalue,'_date') and contains(@id,'ST;')]"));
|
|
|
+ var doItemFinished = wait.Until((d) => {
|
|
|
+ return d.FindElement(By.XPath("//span[contains(@objcvalue,'_date') and contains(@id,'ST;')]"));
|
|
|
+ });
|
|
|
doItemFinished.Click();
|
|
|
- System.Threading.Thread.Sleep(500);
|
|
|
}
|
|
|
catch { }
|
|
|
|
|
|
Log($"{DateTime.Now}\t输入处理事项完成日期:开始日期");
|
|
|
- var startDate = driver.FindElement(By.XPath("//input[contains(@id,'dt_s_')]"));
|
|
|
+ var startDate = wait.Until((d) => {
|
|
|
+ return d.FindElement(By.XPath("//input[contains(@id,'dt_s_')]"));
|
|
|
+ });
|
|
|
|
|
|
startDate.Click();
|
|
|
- System.Threading.Thread.Sleep(500);
|
|
|
|
|
|
startDate.SendKeys(new DateTime(DateTime.Now.AddMonths(-1).Year, DateTime.Now.AddMonths(-1).Month, 1).ToString("yyyy-MM-dd"));
|
|
|
|
|
@@ -590,27 +585,46 @@ namespace wispro.sp.utility
|
|
|
}
|
|
|
|
|
|
});
|
|
|
- //var endDate = driver.FindElement(By.XPath("//input[contains(@id,'dt_e_')]"));//.Id("dt_e_4F8FE88D-9040-45F1-9723-45699BCD4CAF"));
|
|
|
- System.Threading.Thread.Sleep(20000);
|
|
|
- //driver.ExecuteJavaScript("arguments[0].click();", endDate);
|
|
|
+
|
|
|
endDate.Click();
|
|
|
- System.Threading.Thread.Sleep(500);
|
|
|
endDate.SendKeys(new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).AddDays(-1).ToString("yyyy-MM-dd"));
|
|
|
|
|
|
Log($"{DateTime.Now}\t添加处理事项检索条件");
|
|
|
- var addDate = driver.FindElement(By.XPath("//a[contains(@onclick,'ReportSub.ConditionDTSelect')]"));
|
|
|
+ var addDate = wait.Until((d) =>
|
|
|
+ {
|
|
|
+ try
|
|
|
+ {
|
|
|
+ return d.FindElement(By.XPath("//a[contains(@onclick,'ReportSub.ConditionDTSelect')]"));
|
|
|
+ }
|
|
|
+ catch
|
|
|
+ {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
addDate.Click();
|
|
|
- System.Threading.Thread.Sleep(500);
|
|
|
+ //System.Threading.Thread.Sleep(500);
|
|
|
|
|
|
Log($"{DateTime.Now}\t保存检索条件");
|
|
|
- var btnSave = driver.FindElement(By.Id("save"));
|
|
|
+ var btnSave = waitGetElementById(wait, "save"); // driver.FindElement(By.Id("save"));
|
|
|
btnSave.Click();
|
|
|
- System.Threading.Thread.Sleep(3000);
|
|
|
+ //System.Threading.Thread.Sleep(3000);
|
|
|
|
|
|
}
|
|
|
|
|
|
Log($"{DateTime.Now}\t点击导出Excel链接");
|
|
|
- var linkExport = driver.FindElement(By.XPath("//a[contains(@onclick,'-') and @class='tbexcel']"));
|
|
|
+ var linkExport = wait.Until((d) =>
|
|
|
+ {
|
|
|
+ try
|
|
|
+ {
|
|
|
+ return d.FindElement(By.XPath("//a[contains(@onclick,'-') and @class='tbexcel']"));
|
|
|
+ }
|
|
|
+ catch
|
|
|
+ {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
linkExport.Click();
|
|
|
|
|
|
|
|
@@ -619,15 +633,15 @@ namespace wispro.sp.utility
|
|
|
driver.SwitchTo().DefaultContent();
|
|
|
var ihg_export = driver.FindElement(By.Name("ihg_export"));
|
|
|
driver.SwitchTo().Frame(ihg_export);
|
|
|
- driver.FindElement(By.Id("btnSubmit")).Click();
|
|
|
+ waitGetElementById(wait, "btnSubmit").Click();
|
|
|
|
|
|
//切换到弹出的下载报表界面,点击下载按钮
|
|
|
Log($"{DateTime.Now}\t切换到弹出的下载报表界面,点击下载按钮");
|
|
|
- System.Threading.Thread.Sleep(3000);
|
|
|
+ //System.Threading.Thread.Sleep(3000);
|
|
|
driver.SwitchTo().DefaultContent();
|
|
|
- var frameDownload = driver.FindElement(By.Name("DownloadList"));
|
|
|
+ var frameDownload = waitGetElementByName(wait,"DownloadList");
|
|
|
driver.SwitchTo().Frame(frameDownload);
|
|
|
- var firstTr = driver.FindElement(By.TagName("tr"));
|
|
|
+ var firstTr = waitGetElementByTagName(wait,"tr");
|
|
|
var tdStatus = firstTr.FindElement(By.XPath("//td")).FindElement(By.XPath("following-sibling::td[4]"));
|
|
|
string strStatus = tdStatus.Text;
|
|
|
while (strStatus.Trim() != "导出成功!")
|
|
@@ -638,44 +652,24 @@ namespace wispro.sp.utility
|
|
|
}
|
|
|
|
|
|
System.Threading.Thread.Sleep(5000);
|
|
|
- firstTr = driver.FindElement(By.TagName("tr"));
|
|
|
+ firstTr = waitGetElementByTagName(wait, "tr");
|
|
|
tdStatus = firstTr.FindElement(By.XPath("//td")).FindElement(By.XPath("following-sibling::td[4]"));
|
|
|
strStatus = tdStatus.Text;
|
|
|
}
|
|
|
|
|
|
Log($"{DateTime.Now}\t点击下载按钮下载文档");
|
|
|
- firstTr = driver.FindElement(By.TagName("tr"));
|
|
|
+ firstTr = waitGetElementByTagName(wait, "tr");
|
|
|
firstTr.FindElement(By.XPath("//td/a[@title='下载']")).Click();
|
|
|
//System.Threading.Thread.Sleep(5000);
|
|
|
//btnDownload.Click();
|
|
|
|
|
|
string strFilePath = System.IO.Path.Combine(strFileSavePath, $"{ReportName.Trim()}.xlsx");
|
|
|
-
|
|
|
- int iwaiting = 0;
|
|
|
- while (true)
|
|
|
- {
|
|
|
-
|
|
|
- System.IO.FileInfo file = new System.IO.FileInfo(strFilePath.Replace("~", "_"));
|
|
|
- if (!file.Exists || file.Length == 0)
|
|
|
- {
|
|
|
- System.Threading.Thread.Sleep(5000);
|
|
|
-
|
|
|
- iwaiting += 5000;
|
|
|
-
|
|
|
- if (iwaiting > 360000)
|
|
|
- {
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
+ WaitForFileDownload(strFileSavePath, $"{ReportName.Trim()}.xlsx", TimeSpan.FromMinutes(5));
|
|
|
+
|
|
|
//删除下载记录
|
|
|
Log($"{DateTime.Now}\t删除下载记录");
|
|
|
- firstTr = driver.FindElement(By.TagName("tr"));
|
|
|
+ firstTr = waitGetElementByTagName(wait, "tr");// driver.FindElement(By.TagName("tr"));
|
|
|
+
|
|
|
firstTr.FindElement(By.XPath("//td/a[@title='删除']")).Click();
|
|
|
|
|
|
//System.IO.FileInfo file = new System.IO.FileInfo(strFilePath.Replace("~", "_"));
|
|
@@ -712,68 +706,45 @@ namespace wispro.sp.utility
|
|
|
public static dynamic GetCaseInfo(string caseNo)
|
|
|
{
|
|
|
dynamic retObject = new ExpandoObject();
|
|
|
-
|
|
|
retObject.CaseNo = caseNo.Trim();
|
|
|
|
|
|
using (IWebDriver driver = CreateChromeDriver())
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
+ WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
|
|
|
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5);
|
|
|
driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(100);
|
|
|
|
|
|
- //进入登录界面
|
|
|
- driver.Navigate().GoToUrl(ConfigHelper.GetSectionValue("IPEasySetting:IPEasyWeb"));
|
|
|
-
|
|
|
- //输入用户名和密码
|
|
|
-
|
|
|
- driver.FindElement(By.Id("txtUser")).SendKeys(Account);
|
|
|
- driver.FindElement(By.Id("txtPwd")).SendKeys(Password);
|
|
|
-
|
|
|
- //点击登录按钮
|
|
|
- driver.FindElement(By.Id("btnLogin")).Click();
|
|
|
-
|
|
|
- //关闭提示遮罩层
|
|
|
- driver.FindElement(By.Id("jpwClose")).Click();
|
|
|
-
|
|
|
- try
|
|
|
- {
|
|
|
- var okBtn = driver.FindElement(By.ClassName("ui_state_highlight"));
|
|
|
- if (okBtn != null && okBtn.TagName == "input")
|
|
|
- {
|
|
|
- okBtn.Click();
|
|
|
- }
|
|
|
- }
|
|
|
- catch { }
|
|
|
-
|
|
|
+ Login(driver, wait);
|
|
|
|
|
|
//点击顶部菜单栏中的案件管理菜单
|
|
|
- driver.FindElement(By.Name("71A7CC35-F597-40E1-9FEF-BE622A3A3B63")).Click();
|
|
|
+ waitGetElementByName(wait, "71A7CC35-F597-40E1-9FEF-BE622A3A3B63").Click();
|
|
|
|
|
|
//点击左侧 查询 菜单
|
|
|
- driver.FindElement(By.Name("c3266ab3-521a-4815-8aaf-7dd0bc5a76af")).Click();
|
|
|
+ waitGetElementByName(wait, "c3266ab3-521a-4815-8aaf-7dd0bc5a76af").Click();
|
|
|
|
|
|
//切换到自定义报表Frame
|
|
|
driver.SwitchTo().Frame(1);
|
|
|
|
|
|
- var inputSearch = driver.FindElement(By.Id("case_volume"));
|
|
|
+ var inputSearch = waitGetElementById(wait,"case_volume");
|
|
|
inputSearch.SendKeys(caseNo.Trim());
|
|
|
|
|
|
- var btnSearch = driver.FindElement(By.Id("btn_Search"));
|
|
|
+ var btnSearch = waitGetElementById(wait, "btn_Search");
|
|
|
btnSearch.Click();
|
|
|
|
|
|
- var caseLink = driver.FindElement(By.XPath($"//a[contains(text(),'{caseNo}')]"));
|
|
|
+ var caseLink = wait.Until((d) => {
|
|
|
+ return d.FindElement(By.XPath($"//a[contains(text(),'{caseNo}')]"));
|
|
|
+ });
|
|
|
caseLink.Click();
|
|
|
|
|
|
driver.SwitchTo().ParentFrame().SwitchTo().Frame(2);
|
|
|
|
|
|
- WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
|
|
|
//等待页面上ID属性值为submitButton的元素加载完成
|
|
|
IWebElement myElement = wait.Until((d) =>
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
- driver.SwitchTo().ParentFrame().SwitchTo().Frame(2);
|
|
|
return d.FindElement(By.Id("libase"));
|
|
|
}
|
|
|
catch {
|
|
@@ -792,7 +763,6 @@ namespace wispro.sp.utility
|
|
|
retObject.CaseState = GetSelectText(driver.FindElement(By.Id("p_case_info__case_status_id")));
|
|
|
retObject.ApplicationType = GetSelectText(driver.FindElement(By.Id("p_case_info__apply_type_id")));
|
|
|
|
|
|
-
|
|
|
retObject.CaseType = driver.FindElement(By.Id("p_case_info__case_type_id")).GetAttribute("value"); //案件类型
|
|
|
retObject.EntrustingDate = driver.FindElement(By.Id("p_case_info__charge_date")).GetAttribute("value"); //委案日期
|
|
|
retObject.CaseMemo = driver.FindElement(By.Id("p_case_info__remark")).GetAttribute("value"); //案件备注
|
|
@@ -830,50 +800,24 @@ namespace wispro.sp.utility
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
+ WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
|
|
|
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(20);
|
|
|
driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(100);
|
|
|
- //driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(100);
|
|
|
- WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
|
|
|
-
|
|
|
- //进入登录界面
|
|
|
- driver.Navigate().GoToUrl(ConfigHelper.GetSectionValue("IPEasySetting:IPEasyWeb"));
|
|
|
-
|
|
|
- //输入用户名和密码
|
|
|
-
|
|
|
- driver.FindElement(By.Id("txtUser")).SendKeys(Account);
|
|
|
- driver.FindElement(By.Id("txtPwd")).SendKeys(Password);
|
|
|
-
|
|
|
- //点击登录按钮
|
|
|
- driver.FindElement(By.Id("btnLogin")).Click();
|
|
|
-
|
|
|
- //关闭提示遮罩层
|
|
|
- driver.FindElement(By.Id("jpwClose")).Click();
|
|
|
-
|
|
|
- //try
|
|
|
- //{
|
|
|
- // var okBtn = driver.FindElement(By.ClassName("ui_state_highlight"));
|
|
|
- // if (okBtn != null && okBtn.TagName == "input")
|
|
|
- // {
|
|
|
- // okBtn.Click();
|
|
|
- // }
|
|
|
- //}
|
|
|
- //catch { }
|
|
|
+
|
|
|
+ Login(driver,wait);
|
|
|
|
|
|
//点击顶部菜单栏中的案件管理菜单
|
|
|
- driver.FindElement(By.Name("71A7CC35-F597-40E1-9FEF-BE622A3A3B63")).Click();
|
|
|
- System.Threading.Thread.Sleep(500);
|
|
|
+ waitGetElementByName(wait,"71A7CC35-F597-40E1-9FEF-BE622A3A3B63").Click();
|
|
|
|
|
|
//点击左侧 查询 菜单
|
|
|
- driver.FindElement(By.Name("c3266ab3-521a-4815-8aaf-7dd0bc5a76af")).Click();
|
|
|
+ waitGetElementByName(wait, "c3266ab3-521a-4815-8aaf-7dd0bc5a76af").Click();
|
|
|
|
|
|
-
|
|
|
- //System.Threading.Thread.Sleep(500);
|
|
|
+ driver.SwitchTo().Frame(1);
|
|
|
var inputSearch = wait.Until((d) =>
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
//切换到自定义报表Frame
|
|
|
- d.SwitchTo().Frame(1);
|
|
|
return d.FindElement(By.Id("case_volume"));
|
|
|
}
|
|
|
catch
|
|
@@ -882,13 +826,9 @@ namespace wispro.sp.utility
|
|
|
}
|
|
|
|
|
|
});
|
|
|
- //切换到自定义报表Frame
|
|
|
- //driver.SwitchTo().Frame(1);
|
|
|
-
|
|
|
- //var inputSearch = driver.FindElement(By.Id("case_volume"));
|
|
|
inputSearch.SendKeys(caseNo.Trim());
|
|
|
|
|
|
- var btnSearch = driver.FindElement(By.Id("btn_Search"));
|
|
|
+ var btnSearch = waitGetElementById(wait,"btn_Search");
|
|
|
btnSearch.Click();
|
|
|
|
|
|
var caseLink = wait.Until((d) =>
|
|
@@ -903,21 +843,21 @@ namespace wispro.sp.utility
|
|
|
}
|
|
|
|
|
|
});
|
|
|
- //System.Threading.Thread.Sleep(500);
|
|
|
-
|
|
|
- //var caseLink = driver.FindElement(By.XPath($"//a[normalize-space()='{caseNo.Trim()}']"));
|
|
|
+ caseLink = driver.FindElement(By.XPath($"//a[normalize-space()='{caseNo.Trim()}']"));
|
|
|
caseLink.Click();
|
|
|
- System.Threading.Thread.Sleep(500);
|
|
|
|
|
|
driver.SwitchTo().ParentFrame().SwitchTo().Frame(2);
|
|
|
IWebElement temDoItemLink = null;
|
|
|
string temFinishedDate = "";
|
|
|
foreach (string doItemName in doItemNames)
|
|
|
{
|
|
|
- var DoItemLinks = driver.FindElements(By.XPath($"//td[@colname='ctrl_proc'][normalize-space()='{doItemName}']"));
|
|
|
+ var DoItemLinks = wait.Until((d) =>
|
|
|
+ {
|
|
|
+ return d.FindElements(By.XPath($"//td[@colname='ctrl_proc'][normalize-space()='{doItemName}']"));
|
|
|
+ });
|
|
|
+
|
|
|
if (DoItemLinks.Count > 0)
|
|
|
{
|
|
|
-
|
|
|
var DoItemLink = DoItemLinks[DoItemLinks.Count - 1];
|
|
|
|
|
|
if (string.IsNullOrEmpty(temFinishedDate))
|
|
@@ -935,9 +875,6 @@ namespace wispro.sp.utility
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- //new WebDriverWait(driver, TimeSpan.FromSeconds(20)).Until(ExpectedConditions.ElementToBeClickable(DoItemLink)).Click();
|
|
|
-
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -956,7 +893,6 @@ namespace wispro.sp.utility
|
|
|
retObject.DoItem = temDoItemLink.Text;
|
|
|
|
|
|
//temDoItemLink = DoItemLink;
|
|
|
- System.Threading.Thread.Sleep(4000);
|
|
|
temDoItemLink.Click();
|
|
|
}
|
|
|
else
|
|
@@ -1000,7 +936,7 @@ namespace wispro.sp.utility
|
|
|
}
|
|
|
|
|
|
});
|
|
|
- //System.Threading.Thread.Sleep(500);
|
|
|
+
|
|
|
retObject.CaseName = p_case_info__case_name.GetAttribute("value"); //案件名称
|
|
|
retObject.CustomerName = driver.FindElement(By.Id("p_case_info__customer_id")).GetAttribute("value"); //客户名称
|
|
|
retObject.BusinessType = driver.FindElement(By.Id("p_case_info__business_type_id")).GetAttribute("value"); //业务类型
|