IndexPage.java
3.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
package com.buyer.pageObject;
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;
import com.essa.framework.Model;
/**
* 采购商首页
* @author Administrator
*
*/
public class IndexPage extends BasePage {
public IndexPage(WebDriver driver) {
super(driver);
}
/*
* 元素定位
*/
//登录-sign in
@FindBy (xpath ="//*[@id='SignIn']/a")
WebElement signIn;
//注册-register
@FindBy (xpath ="//*[@class='u-login']/a")
WebElement register;
//关键字输入框
@FindBy (xpath ="//*[@class='search-tx']/input")
WebElement searchText;
//查询按钮
@FindBy (xpath ="//*[@class='btn btn-primary search-btn']")
WebElement searchButton;
//绑定手机弹窗-关闭按钮
@FindBy (xpath ="//*[contains(@class,'layui-layer-close1')]")
WebElement closed;
//右上角购物车
@FindBy (xpath ="//*[@id='miniCart']")
WebElement minicart;
/*
* 页面方法
*/
/**
* 进入登录页面
* @return BuyerLoginPage
*/
public BuyerLoginPage toLoginPage() {
click(signIn);
return new BuyerLoginPage(driver);
}
/**
* 进入注册页面
* @return RegisterPage
*/
public RegisterPage toRegisterPage() {
click(register);
return new RegisterPage(driver);
}
/**
* 进入购物车
* @return ShoppingCartPage
*/
public ShoppingCartPage toShoppingCartPage() {
if (isVisibility(By.xpath("//*[@id='bind-phone']"))) {
forceWait(1000);
click(closed);
}
click(minicart);
return new ShoppingCartPage(driver);
}
/**
* 关键字搜索商品
* @return KeywordResultPage
*/
public KeywordResultPage keywordSearch() {
//判断是否绑定手机
if (isVisibility(By.xpath("//*[@id='bind-phone']"))) {
click(closed);
}
//如果是非活动
// if (Model.getIsactivity()==0 &&(Model.getSkuNo().equals("选填,勿填活动商品")||Model.getSkuNo().equals(""))) {
if (Model.getIsactivity()==0 &&(("选填,勿填活动商品").equals(Model.getSkuNo())||("").equals(Model.getSkuNo()))) {
//判断是否自定义输入商品编号
String sql = "SELECT s.id,s.`no` from prd_category c LEFT JOIN prd_goods g on c.id = g.category_id LEFT JOIN prd_goods_sku s on s.goods_id = g.id where find_in_set(5,REPLACE(c.path,'.',',')) AND s.`no` > 200120000\n" +
"AND s.id NOT IN (SELECT g.sku_id FROM sale_group_buy g) AND s.id NOT IN (SELECT t.sku_id FROM sale_shopping_cart t) AND s.src = 1 AND s.`status` = 2 AND s.is_stop_product = 0 AND s.is_delete = 0 \n" +
"AND g.is_category_error = 0 AND G.is_attribute_error = 0 AND G.is_option_error = 0 AND G.is_spec_error = 0 limit 1;";
Model.setSkuNo(DBSqlSearch(sql, "no"));
}else if (Model.getIsactivity()==1 &&(("选填,勿填非活动商品").equals(Model.getSkuNo())||("").equals(Model.getSkuNo()))) {
//活动商品
String sql = "SELECT s.id,s.`no` from prd_category c LEFT JOIN prd_goods g on c.id = g.category_id LEFT JOIN prd_goods_sku s on s.goods_id = g.id LEFT JOIN sale_group_buy a on a.sku_id = s.id \n" +
"where s.`no` > 200000000 AND s.id NOT IN (SELECT t.sku_id FROM sale_shopping_cart t) AND a.`status` = 20 and s.src = 1 AND g.is_category_error = 0 AND G.is_attribute_error = 0 AND G.is_option_error = 0 AND G.is_spec_error = 0 limit 1;";
Model.setSkuNo(DBSqlSearch(sql, "no"));
}
// System.out.println(Model.getSkuNo());
sendKeys(searchText, Model.getSkuNo());
click(searchButton);
return new KeywordResultPage(driver);
}
/**
* 断言是否注册成功,根据是否有绑定手机号的弹窗来判断
* @return boolean
*/
public boolean isSucceed() {
return isVisibility(By.xpath("//*[contains(@class,'layui-layer-close1')]"));
}
}