删除 src/main/java/com/bonus/autoweb/base/DutyClock.java
This commit is contained in:
parent
f258b7cb9e
commit
49888165f5
|
|
@ -1,158 +0,0 @@
|
|||
package com.bonus.autoweb.base;
|
||||
|
||||
import com.bonus.autoweb.DateTimeUtils;
|
||||
import org.openqa.selenium.By;
|
||||
import org.openqa.selenium.WebDriver;
|
||||
import org.openqa.selenium.WebElement;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.slf4j.Logger;
|
||||
|
||||
|
||||
/**
|
||||
* 值班打卡
|
||||
*/
|
||||
public class DutyClock {
|
||||
private Logger log = LoggerFactory.getLogger(DutyClock.class);
|
||||
|
||||
private WebDriver webDriver;
|
||||
|
||||
public DutyClock(WebDriver webDriver) {
|
||||
this.webDriver = webDriver;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void openDutyClock() throws InterruptedException {
|
||||
Thread.sleep(1000*4);
|
||||
//定位值班打卡并点击
|
||||
webDriver.findElement(By.id("tab-2")).click();
|
||||
log.info("定位值班打卡并点击----------");
|
||||
Thread.sleep(300);
|
||||
}
|
||||
|
||||
/**
|
||||
* 值班打卡操作
|
||||
*
|
||||
* @param classes 班次,,1早班 2晚班
|
||||
* @param type 打卡类型 1 签到 2签退
|
||||
*/
|
||||
public void dutyClockOper(int classes, int type) throws InterruptedException {
|
||||
openDutyClock();
|
||||
// JavascriptExecutor jsExecutor = (JavascriptExecutor) webDriver;
|
||||
// boolean pageLoaded = false;
|
||||
//
|
||||
// do {
|
||||
// pageLoaded = (Boolean) jsExecutor.executeScript("return document.readyState").equals("complete");
|
||||
// } while (!pageLoaded);
|
||||
Thread.sleep(5000);
|
||||
//标签位置
|
||||
String xpaht;
|
||||
if (classes == 1) {
|
||||
if (type == 1) {
|
||||
//早班签到
|
||||
xpaht = "//*[@id=\"pane-2\"]/div/div[3]/div[1]/div[1]/div[2]/button[1]";
|
||||
} else {
|
||||
//早班签退
|
||||
xpaht = "//*[@id=\"pane-2\"]/div/div[3]/div[1]/div[1]/div[2]/button[2]";
|
||||
}
|
||||
} else {
|
||||
if (type == 1) {
|
||||
//晚班签到
|
||||
xpaht = "//*[@id=\"pane-2\"]/div/div[3]/div[2]/div[1]/div[2]/button[1]";
|
||||
} else {
|
||||
//晚班签退
|
||||
xpaht = "//*[@id=\"pane-2\"]/div/div[3]/div[2]/div[1]/div[2]/button[2]";
|
||||
}
|
||||
}
|
||||
Thread.sleep(1000*4);
|
||||
webDriver.findElement(By.xpath(xpaht)).click();
|
||||
log.info("打卡签到----------");
|
||||
Thread.sleep(1000*5);
|
||||
|
||||
|
||||
//点击弹出框确认
|
||||
webDriver.findElement(By.xpath("/html/body/div[2]/div/div[2]/div/div[2]/div[1]")).click();
|
||||
log.info("点击弹出框确认----------");
|
||||
Thread.sleep(800);
|
||||
}
|
||||
|
||||
/**
|
||||
* 选择上个晚班签退
|
||||
*/
|
||||
public void changeDay() throws Exception {
|
||||
Thread.sleep(3000);
|
||||
//判断当前日期是不是每月第一天的日期,true
|
||||
boolean tf = false;
|
||||
int tr = 1;
|
||||
int td = 1;
|
||||
String xpath;
|
||||
if (!DateTimeUtils.isOneDay()) {
|
||||
//不是本月第一天
|
||||
String currentDay = DateTimeUtils.getCurrentDay();
|
||||
int weekNum = DateTimeUtils.getWeekNum(currentDay);
|
||||
int dayNum = DateTimeUtils.getWeekOfDate(currentDay);
|
||||
/*if (dayNum == 1) {
|
||||
tr = weekNum - 1;
|
||||
td = 7;
|
||||
} else {
|
||||
tr = weekNum;
|
||||
td = dayNum - 1;
|
||||
}*/
|
||||
if (dayNum == 1) {
|
||||
if(DateTimeUtils.getMonthOneDayIs0()){//第一天是0
|
||||
tr = weekNum;
|
||||
}else{
|
||||
tr = weekNum-1;
|
||||
if (weekNum == 1){
|
||||
tr = 5;
|
||||
}
|
||||
}
|
||||
td = 7;
|
||||
}else {
|
||||
if(DateTimeUtils.getMonthOneDayIs0()){//第一天是0
|
||||
tr = weekNum+1;
|
||||
}else{
|
||||
tr = weekNum;
|
||||
}
|
||||
td = dayNum - 1;
|
||||
}
|
||||
xpath = "//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[2]/table/tbody/tr[" + tr + "]" + "/td[" + td + "]";
|
||||
} else {
|
||||
//点击上月按钮,切换至上月
|
||||
webDriver.findElement(By.xpath("//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[1]/div[2]/div/button[1]")).click();
|
||||
log.info("点击上月按钮,切换至上月----------");
|
||||
Thread.sleep(300);
|
||||
|
||||
//获取上月最后一天日期
|
||||
String mothDay=DateTimeUtils.getBeforeLastMonthdate();
|
||||
//判断上个月最后一天的位置
|
||||
tr = DateTimeUtils.getWeekNum(mothDay);
|
||||
td = DateTimeUtils.getWeekOfDate(mothDay);
|
||||
|
||||
xpath = "//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[2]/table/tbody/tr[" + tr + "]" + "/td[" + td + "]";
|
||||
// String dayNum = mothDay.substring(8, 10);
|
||||
// WebElement spanElement = webDriver.findElement(By.xpath("//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[2]/table/tbody/tr[" + tr + "]" + "/td[" + td + "]/div/div/div[1]/span"));
|
||||
// if (dayNum.equals(spanElement.getText())) {
|
||||
// xpath = "//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[2]/table/tbody/tr[" + (tr + 1) + "]" + "/td[" + td + "]/div";
|
||||
// }
|
||||
}
|
||||
//选择前一天的日期
|
||||
webDriver.findElement(By.xpath(xpath)).click();
|
||||
log.info("选择前一天的日期----------");
|
||||
Thread.sleep(300);
|
||||
openDutyClock();
|
||||
Thread.sleep(3000);
|
||||
//进行晚班签退操作
|
||||
log.info("进行晚班签退操作----------");
|
||||
dutyClockOper(2,2);
|
||||
|
||||
Thread.sleep(300);
|
||||
|
||||
//将日期选择回当日
|
||||
webDriver.findElement(By.xpath("//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[1]/div[2]/div/button[2]")).click();
|
||||
log.info("将日期选择回当日----------");
|
||||
Thread.sleep(300);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue