diff --git a/src/main/java/com/essa/pageObject/DocumentaryManage/ConvertTailPage.java b/src/main/java/com/essa/pageObject/DocumentaryManage/ConvertTailPage.java new file mode 100644 index 0000000..db33de5 --- /dev/null +++ b/src/main/java/com/essa/pageObject/DocumentaryManage/ConvertTailPage.java @@ -0,0 +1,51 @@ +package com.essa.pageObject.DocumentaryManage; + +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import com.essa.framework.BasePage; + +/** + * 转在途尾货页面 + * @author Administrator + * + */ +public class ConvertTailPage extends BasePage { + + public ConvertTailPage(WebDriver driver) { + super(driver); + } + /* + * 元素定位 + */ + @FindBy (xpath = "//*[@name='tailDeliveryDay']") + WebElement tailDeliveryDay;//尾货货期 + + @FindBy (xpath ="//*[@name='moveOutQuantity']") + WebElement moveOutQuantity;//转出箱数 + + @FindBy (xpath ="//button[text()='保存']") + WebElement save;//保存 + + @FindBy (xpath ="//button[text()='确定']") + WebElement confirm;//保存 + + /* + * 页面方法 + */ + /** + * 对sku转在途尾货 + * @return PO单看板页面 + */ + public POBoardPage convertTail() { + dynamicWait(By.xpath("//*[@name='tailDeliveryDay']")); + sendKeys(tailDeliveryDay, "7"); + sendKeys(moveOutQuantity, "2"); + click(save); + dynamicWait(By.xpath("//button[text()='确定']")); + click(confirm); + return new POBoardPage(driver); + } +} diff --git a/src/main/java/com/essa/pageObject/DocumentaryManage/POBoardPage.java b/src/main/java/com/essa/pageObject/DocumentaryManage/POBoardPage.java new file mode 100644 index 0000000..04de8e8 --- /dev/null +++ b/src/main/java/com/essa/pageObject/DocumentaryManage/POBoardPage.java @@ -0,0 +1,121 @@ +package com.essa.pageObject.DocumentaryManage; + +import com.essa.framework.Model; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; + +import com.essa.framework.BasePage; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import java.util.Date; + +public class POBoardPage extends BasePage { + + public POBoardPage(WebDriver driver) { + super(driver); + } + /* + * 元素定位 + */ + @FindBy (xpath = "//*[text()='订单任务看板']") + WebElement taskBoard;//订单任务看板 + + @FindBy (xpath = "//*[@ng-model='keyword']") + WebElement keyword;//关键字查询输入框 + + @FindBy (xpath ="//*[@ng-model='keyword']/../span/button") + WebElement search;//查询按钮 + + @FindBy (xpath = "//*[@id='detailView']/div/div[3]/div[1]/div/div/table/tbody/tr[1]/td/div[2]/div[1]/input") + WebElement firstCheckbox;//第一个复选框 + + @FindBy (xpath ="//button[contains(text(),'转在途尾货')]") + WebElement toTail;//转在途尾货按钮 + + // 通知收货 + @FindBy (xpath = "//button[contains(text(),'通知收货')]") + WebElement noticeReceive; + + //收货日期 + @FindBy (xpath = "//*[contains(text(),'收货日期')]") ///label[@class='control-label col-sm-8'] + WebElement reveiveDate; + + // 收货日期输入框 + @FindBy (xpath = " //div[@class='col-sm-16']//input[@type='text']") + WebElement inputReceiveDate; + + // 确定 + @FindBy (xpath = "//button[contains(text(),'确定')]") + WebElement submit; + + // 通知装柜 + @FindBy(xpath = "//button[contains(text(),'通知装柜')]") + WebElement noticeLoad; + + // 装柜日期空白处 + @FindBy(xpath = " //label[@class='control-label col-md-8']") + WebElement loadDate; + + // 装柜日期输入框 + @FindBy (xpath = "//input[@name='newDate']") + WebElement inutLoadDate; + + + /* + * 页面方法 + */ + /** + * 转在途尾货 + * @return 转在途尾货页面 + */ + public ConvertTailPage toTail() { + dynamicLoad(By.xpath("//*[style='display: block;']"));//等待页面加载完成 + click(taskBoard); + dynamicLoad(By.xpath("//*[style='display: block;']")); + sendKeys(keyword, Model.getSkuNo()); + click(search); + dynamicLoad(By.xpath("//*[style='display: block;']")); + click(firstCheckbox); + click(toTail); + return new ConvertTailPage(driver); + } + + /** + * PO通知收货和通知装柜 + */ + // 通知收货 + public POBoardPage noticeReceive(){ + click(noticeReceive); + jsExecutorRemoveAttribute(inputReceiveDate,"readonly"); + String date = getDateTimeByFormat(new Date(),"MM/dd/yyyy"); + sendKeys(inputReceiveDate,date); + click(reveiveDate); + click(submit); + return new POBoardPage(driver); + } + + public boolean isNoticeReceSucceed(){ + forceWait(2000); + return isVisibility(By.xpath("//*[contains(text(),'收货中')]")); + } + + //通知装柜 + public POBoardPage noticeLoad(){ + click(noticeLoad); + jsExecutorRemoveAttribute(inutLoadDate,"readonly"); + String date = getDateTimeByFormat(new Date(),"MM/dd/yyyy"); + sendKeys(inutLoadDate,date); + click(loadDate); + forceWait(3000); + click(submit); + forceWait(2000); + return new POBoardPage(driver); + } + + public boolean isNoticeLoadSucceed(){ + forceWait(2000); + return isVisibility(By.xpath("//*[contains(text(),'装柜中')]")); + } + +} diff --git a/src/main/java/com/essa/pageObject/DocumentaryManage/PODocumentaryListPage.java b/src/main/java/com/essa/pageObject/DocumentaryManage/PODocumentaryListPage.java new file mode 100644 index 0000000..73cf69a --- /dev/null +++ b/src/main/java/com/essa/pageObject/DocumentaryManage/PODocumentaryListPage.java @@ -0,0 +1,75 @@ +package com.essa.pageObject.DocumentaryManage; + +import com.essa.framework.Model; +import org.openqa.selenium.By; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.FindBy; + +import com.essa.framework.BasePage; + +/** + * @author Administrator + *PO跟单任务列表页面 + */ +public class PODocumentaryListPage extends BasePage { + + public PODocumentaryListPage(WebDriver driver) { + super(driver); + } + + /* + * 元素定位 + */ + @FindBy (xpath = "//*[contains(text(),'高级查询')]") + WebElement advancedQuery;//高级查询 + + @FindBy (xpath = "//*[text()='PO单号:']/../div[1]/input") + WebElement OrderNo;//PO单号 + + @FindBy (xpath = "//*[text()='查询']") + WebElement search;//查询按钮 + + @FindBy (xpath = "//*[@id='listView']/div/table/tbody/tr[1]/td/div/div[1]/div/ul/li[1]/a") + WebElement detail;//搜索结果中的一个查看详情 + + // 关键字查询 + @FindBy (xpath = "//*[contains(@placeholder,'请输入PO单号、客户编号等关键字查询')]") + WebElement keySearch; + + // 放大镜查询按钮 + @FindBy (xpath = "//*[contains(@ng-click,'search()')]") + WebElement magnifierSearch; + + // 查看详情 + @FindBy (xpath = "//*[contains(text(),'查看详情')]") + WebElement followDetail; + + /* + * 页面方法 + */ + public POBoardPage todetail() { + mywait(detail); + click(advancedQuery); + sendKeys(OrderNo, Model.getPoNum()); + click(search); + dynamicLoad(By.xpath("//*[style='display: block;']")); + click(detail); + return new POBoardPage(driver); + } + + /** + * 进入PO跟单详情 + * @return + */ + public PODocumentaryListPage toPoFollowDetail(){ + sendKeys(keySearch, Model.getPoNum()); + click(magnifierSearch); + forceWait(8000); + dynamicWait(By.xpath("//div[@class='row xxrow-header-bg row-border-bottom no-margin padding-horizontal-5']")); + click(followDetail); + forceWait(8000); + dynamicWait(By.xpath("//div[@class='panel-body']")); + return new PODocumentaryListPage(driver); + } +} diff --git a/src/main/java/com/essa/pageObject/HomePage.java b/src/main/java/com/essa/pageObject/HomePage.java index dc79f7c..f96c1c8 100644 --- a/src/main/java/com/essa/pageObject/HomePage.java +++ b/src/main/java/com/essa/pageObject/HomePage.java @@ -12,7 +12,7 @@ import com.essa.pageObject.GoodsManage.AuditOriginalGoodsPage; import com.essa.pageObject.GoodsManage.GoodsBankPage; import com.essa.pageObject.GoodsManage.GoodsRelesePage; import com.essa.pageObject.GoodsManage.MarketGoodsRelesePage; -import com.essa.pageObject.PODocumentary.PODocumentaryListPage; +import com.essa.pageObject.DocumentaryManage.PODocumentaryListPage; import com.essa.pageObject.StorageManage.GoodsReceiveTaskPage; import com.essa.pageObject.StorageManage.NoticeReceivePage; import com.essa.pageObject.buyPlaneManage.SkuCategoryManagerCongfigPage; diff --git a/src/main/java/com/essa/pageObject/PODocumentary/ConvertTailPage.java b/src/main/java/com/essa/pageObject/PODocumentary/ConvertTailPage.java deleted file mode 100644 index dd0778d..0000000 --- a/src/main/java/com/essa/pageObject/PODocumentary/ConvertTailPage.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.essa.pageObject.PODocumentary; - -import org.openqa.selenium.By; -import org.openqa.selenium.WebDriver; -import org.openqa.selenium.WebElement; -import org.openqa.selenium.support.FindBy; - -import com.essa.framework.BasePage; - -/** - * 转在途尾货页面 - * @author Administrator - * - */ -public class ConvertTailPage extends BasePage { - - public ConvertTailPage(WebDriver driver) { - super(driver); - } - /* - * 元素定位 - */ - @FindBy (xpath = "//*[@name='tailDeliveryDay']") - WebElement tailDeliveryDay;//尾货货期 - - @FindBy (xpath ="//*[@name='moveOutQuantity']") - WebElement moveOutQuantity;//转出箱数 - - @FindBy (xpath ="//button[text()='保存']") - WebElement save;//保存 - - @FindBy (xpath ="//button[text()='确定']") - WebElement confirm;//保存 - - /* - * 页面方法 - */ - /** - * 对sku转在途尾货 - * @return PO单看板页面 - */ - public POBoardPage convertTail() { - dynamicWait(By.xpath("//*[@name='tailDeliveryDay']")); - sendKeys(tailDeliveryDay, "7"); - sendKeys(moveOutQuantity, "2"); - click(save); - dynamicWait(By.xpath("//button[text()='确定']")); - click(confirm); - return new POBoardPage(driver); - } -} diff --git a/src/main/java/com/essa/pageObject/PODocumentary/POBoardPage.java b/src/main/java/com/essa/pageObject/PODocumentary/POBoardPage.java deleted file mode 100644 index b078555..0000000 --- a/src/main/java/com/essa/pageObject/PODocumentary/POBoardPage.java +++ /dev/null @@ -1,121 +0,0 @@ -package com.essa.pageObject.PODocumentary; - -import com.essa.framework.Model; -import org.openqa.selenium.By; -import org.openqa.selenium.WebDriver; - -import com.essa.framework.BasePage; -import org.openqa.selenium.WebElement; -import org.openqa.selenium.support.FindBy; - -import java.util.Date; - -public class POBoardPage extends BasePage { - - public POBoardPage(WebDriver driver) { - super(driver); - } - /* - * 元素定位 - */ - @FindBy (xpath = "//*[text()='订单任务看板']") - WebElement taskBoard;//订单任务看板 - - @FindBy (xpath = "//*[@ng-model='keyword']") - WebElement keyword;//关键字查询输入框 - - @FindBy (xpath ="//*[@ng-model='keyword']/../span/button") - WebElement search;//查询按钮 - - @FindBy (xpath = "//*[@id='detailView']/div/div[3]/div[1]/div/div/table/tbody/tr[1]/td/div[2]/div[1]/input") - WebElement firstCheckbox;//第一个复选框 - - @FindBy (xpath ="//button[contains(text(),'转在途尾货')]") - WebElement toTail;//转在途尾货按钮 - - // 通知收货 - @FindBy (xpath = "//button[contains(text(),'通知收货')]") - WebElement noticeReceive; - - //收货日期 - @FindBy (xpath = "//*[contains(text(),'收货日期')]") ///label[@class='control-label col-sm-8'] - WebElement reveiveDate; - - // 收货日期输入框 - @FindBy (xpath = " //div[@class='col-sm-16']//input[@type='text']") - WebElement inputReceiveDate; - - // 确定 - @FindBy (xpath = "//button[contains(text(),'确定')]") - WebElement submit; - - // 通知装柜 - @FindBy(xpath = "//button[contains(text(),'通知装柜')]") - WebElement noticeLoad; - - // 装柜日期空白处 - @FindBy(xpath = " //label[@class='control-label col-md-8']") - WebElement loadDate; - - // 装柜日期输入框 - @FindBy (xpath = "//input[@name='newDate']") - WebElement inutLoadDate; - - - /* - * 页面方法 - */ - /** - * 转在途尾货 - * @return 转在途尾货页面 - */ - public ConvertTailPage toTail() { - dynamicLoad(By.xpath("//*[style='display: block;']"));//等待页面加载完成 - click(taskBoard); - dynamicLoad(By.xpath("//*[style='display: block;']")); - sendKeys(keyword, Model.getSkuNo()); - click(search); - dynamicLoad(By.xpath("//*[style='display: block;']")); - click(firstCheckbox); - click(toTail); - return new ConvertTailPage(driver); - } - - /** - * PO通知收货和通知装柜 - */ - // 通知收货 - public POBoardPage noticeReceive(){ - click(noticeReceive); - jsExecutorRemoveAttribute(inputReceiveDate,"readonly"); - String date = getDateTimeByFormat(new Date(),"MM/dd/yyyy"); - sendKeys(inputReceiveDate,date); - click(reveiveDate); - click(submit); - return new POBoardPage(driver); - } - - public boolean isNoticeReceSucceed(){ - forceWait(2000); - return isVisibility(By.xpath("//*[contains(text(),'收货中')]")); - } - - //通知装柜 - public POBoardPage noticeLoad(){ - click(noticeLoad); - jsExecutorRemoveAttribute(inutLoadDate,"readonly"); - String date = getDateTimeByFormat(new Date(),"MM/dd/yyyy"); - sendKeys(inutLoadDate,date); - click(loadDate); - forceWait(3000); - click(submit); - forceWait(2000); - return new POBoardPage(driver); - } - - public boolean isNoticeLoadSucceed(){ - forceWait(2000); - return isVisibility(By.xpath("//*[contains(text(),'装柜中')]")); - } - -} diff --git a/src/main/java/com/essa/pageObject/PODocumentary/PODocumentaryListPage.java b/src/main/java/com/essa/pageObject/PODocumentary/PODocumentaryListPage.java deleted file mode 100644 index 31313e6..0000000 --- a/src/main/java/com/essa/pageObject/PODocumentary/PODocumentaryListPage.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.essa.pageObject.PODocumentary; - -import com.essa.framework.Model; -import org.openqa.selenium.By; -import org.openqa.selenium.WebDriver; -import org.openqa.selenium.WebElement; -import org.openqa.selenium.support.FindBy; - -import com.essa.framework.BasePage; - -/** - * @author Administrator - *PO跟单任务列表页面 - */ -public class PODocumentaryListPage extends BasePage { - - public PODocumentaryListPage(WebDriver driver) { - super(driver); - } - - /* - * 元素定位 - */ - @FindBy (xpath = "//*[contains(text(),'高级查询')]") - WebElement advancedQuery;//高级查询 - - @FindBy (xpath = "//*[text()='PO单号:']/../div[1]/input") - WebElement OrderNo;//PO单号 - - @FindBy (xpath = "//*[text()='查询']") - WebElement search;//查询按钮 - - @FindBy (xpath = "//*[@id='listView']/div/table/tbody/tr[1]/td/div/div[1]/div/ul/li[1]/a") - WebElement detail;//搜索结果中的一个查看详情 - - // 关键字查询 - @FindBy (xpath = "//*[contains(@placeholder,'请输入PO单号、客户编号等关键字查询')]") - WebElement keySearch; - - // 放大镜查询按钮 - @FindBy (xpath = "//*[contains(@ng-click,'search()')]") - WebElement magnifierSearch; - - // 查看详情 - @FindBy (xpath = "//*[contains(text(),'查看详情')]") - WebElement followDetail; - - /* - * 页面方法 - */ - public POBoardPage todetail() { - mywait(detail); - click(advancedQuery); - sendKeys(OrderNo, Model.getPoNum()); - click(search); - dynamicLoad(By.xpath("//*[style='display: block;']")); - click(detail); - return new POBoardPage(driver); - } - - /** - * 进入PO跟单详情 - * @return - */ - public PODocumentaryListPage toPoFollowDetail(){ - sendKeys(keySearch, Model.getPoNum()); - click(magnifierSearch); - forceWait(8000); - dynamicWait(By.xpath("//div[@class='row xxrow-header-bg row-border-bottom no-margin padding-horizontal-5']")); - click(followDetail); - forceWait(8000); - dynamicWait(By.xpath("//div[@class='panel-body']")); - return new PODocumentaryListPage(driver); - } -} diff --git a/src/main/java/com/essa/testSuite/TestNoticeReceiveAndLoad.java b/src/main/java/com/essa/testSuite/TestNoticeReceiveAndLoad.java index 134a408..7ee5976 100644 --- a/src/main/java/com/essa/testSuite/TestNoticeReceiveAndLoad.java +++ b/src/main/java/com/essa/testSuite/TestNoticeReceiveAndLoad.java @@ -2,8 +2,8 @@ package com.essa.testSuite; import com.essa.pageObject.BaseTest; import com.essa.pageObject.HomePage; -import com.essa.pageObject.PODocumentary.POBoardPage; -import com.essa.pageObject.PODocumentary.PODocumentaryListPage; +import com.essa.pageObject.DocumentaryManage.POBoardPage; +import com.essa.pageObject.DocumentaryManage.PODocumentaryListPage; import org.openqa.selenium.WebDriver; import org.openqa.selenium.support.PageFactory; import org.testng.annotations.AfterClass; diff --git a/src/main/java/com/essa/testSuite/TestTail.java b/src/main/java/com/essa/testSuite/TestTail.java index ac830d6..5127462 100644 --- a/src/main/java/com/essa/testSuite/TestTail.java +++ b/src/main/java/com/essa/testSuite/TestTail.java @@ -8,9 +8,9 @@ import org.testng.annotations.Test; import com.essa.pageObject.BaseTest; import com.essa.pageObject.HomePage; -import com.essa.pageObject.PODocumentary.ConvertTailPage; -import com.essa.pageObject.PODocumentary.POBoardPage; -import com.essa.pageObject.PODocumentary.PODocumentaryListPage; +import com.essa.pageObject.DocumentaryManage.ConvertTailPage; +import com.essa.pageObject.DocumentaryManage.POBoardPage; +import com.essa.pageObject.DocumentaryManage.PODocumentaryListPage; import com.essa.pageObject.StorageManage.GoodsReceiveTaskPage; import com.essa.pageObject.StorageManage.NoticeReceivePage; import com.essa.pageObject.StorageManage.ReceiveTaskDealPage; -- libgit2 0.21.2