diff --git a/src/main/java/com/bonus/autoweb/GetBasicData.java b/src/main/java/com/bonus/autoweb/GetBasicData.java index 2064364..36adfa3 100644 --- a/src/main/java/com/bonus/autoweb/GetBasicData.java +++ b/src/main/java/com/bonus/autoweb/GetBasicData.java @@ -1077,7 +1077,7 @@ public class GetBasicData { // String projectName = "通信"; //执行计划 // try { - executePlan(type, company, ""); + executePlan(type, company, "", code); // }catch (Exception e){ // while (true){ // WebElement webElement = webDriver.findElement(By.xpath("/html/body/div/div/div/div[2]/div[1]/section/div/section/section/div/div[3]/table/tbody/tr[1]/td[9]/div")); @@ -1088,12 +1088,14 @@ public class GetBasicData { // } } - private void executePlan(String type, String company, String projectName) throws InterruptedException { - Thread.sleep(2000); + private void executePlan(String type, String company, String projectName,int code) throws InterruptedException { + Thread.sleep(5000); + webDriver.findElement(By.xpath("//*[@id=\"pane-sec\"]/section/header/form/div[1]/div[8]/div/div/button[2]")).click(); + Thread.sleep(10000); String checkContent = resolveGarbledCode("E:\\bns\\config\\检查计划评价.txt"); String[] checkContentArrayArray = checkContent.split("检查评价:"); //勾选计划 - webDriver.findElement(By.xpath("/html/body/div[1]/section/div[1]/div[2]/div[2]/section/main/section/main/div/div[3]/table/tbody/tr[1]")).click(); + webDriver.findElement(By.xpath("//*[@id=\"pane-sec\"]/section/main/section/main/div/div[3]/table/tbody/tr[1]")).click(); Thread.sleep(800); //点击执行按钮--打开选择被检查对象 webDriver.findElement(By.xpath("/html/body/div[1]/section/div[1]/div[2]/div[2]/section/main/section/header/button[4]")).click(); @@ -1215,31 +1217,19 @@ public class GetBasicData { webDriver.findElement(By.xpath("/html/body/div[3]/div/div[2]/section/header/form/div/div[4]/div/div[2]")).click(); log.info("点击选择被检查单位型选择框-----------"); Thread.sleep(1000); - webDriver.findElement(By.xpath("/html/body/div[6]/div[1]/div/div/div[1]/div[2]/div["+code+"]/div/span[2]")).click(); +// webDriver.findElement(By.xpath("/html/body/div[6]/div[1]/div/div/div[1]/div[2]/div["+code+"]/div/span[2]")).click(); + webDriver.findElement(By.xpath("/html/body/div[3]/div/div[2]/section/header/form/div/div[4]/div/div[2]")).click(); log.info("选择被检查单位----------"); Thread.sleep(500); //选择被检查对象 - webDriver.findElement(By.xpath("/html/body/div[3]/div/div[2]/section/header/form/div/div[5]/div/div[2]")).click(); - Thread.sleep(3000); - if("通信测试".equals(type)){ - webDriver.findElement(By.xpath("/html/body/div[7]/div/div[2]/section/main/div[1]/div[3]/table/tbody/tr[1]/td[1]/div/label")).click(); - Thread.sleep(500); - webDriver.findElement(By.xpath("/html/body/div[7]/div/div[2]/section/main/div[1]/div[3]/table/tbody/tr[2" + - "]/td[1]/div/label")).click(); - Thread.sleep(1000); - webDriver.findElement(By.xpath("/html/body/div[7]/div/div[2]/section/footer/button[2]")).click(); - }else { - for (int i = 1; i < 9; i++) { - webDriver.findElement(By.xpath("/html/body/div[7]/div/div[2]/section/main/div[1]/div[3]/table" + - "/tbody/tr["+i+"]/td[1]/div/label")).click(); - Thread.sleep(1000); - } - Thread.sleep(3000); - webDriver.findElement(By.xpath("/html/body/div[7]/div/div[2]/section/footer[2]/button[2]")).click(); - } + webDriver.findElement(By.xpath("/html/body/div[6]/div[1]/div/div/div[1]/div[1]/span[2]")).click(); Thread.sleep(2000); //提交 - webDriver.findElement(By.xpath("/html/body/div[2]/div/div[2]/section/div/button[3]")).click(); + try { + webDriver.findElement(By.xpath("/html/body/div[4]/div/div[2]/section/div/button[3]")).click(); + } catch (Exception e) { + webDriver.findElement(By.xpath("/html/body/div[3]/div/div[2]/section/div/button[3]")).click(); + } Thread.sleep(3000); } } diff --git a/src/main/java/com/bonus/autoweb/TestMain.java b/src/main/java/com/bonus/autoweb/TestMain.java index 6ca4846..df926d4 100644 --- a/src/main/java/com/bonus/autoweb/TestMain.java +++ b/src/main/java/com/bonus/autoweb/TestMain.java @@ -38,22 +38,22 @@ public class TestMain { // testqd(); // testjjb(); // testGetData(); - testAccounters(); +// testAccounters(); // testDailrb(); // testRCCL(); // testLog(); -// new Thread(new Runnable() { -// @SneakyThrows -// @Override -// public void run() { -// try { -// new TestMain().autoJob(); -// } catch (Exception e) { -// e.printStackTrace(); -// log.error("错误信息", e); -// } -// } -// }).start(); + new Thread(new Runnable() { + @SneakyThrows + @Override + public void run() { + try { + new TestMain().autoJob(); + } catch (Exception e) { + e.printStackTrace(); + log.error("错误信息", e); + } + } + }).start(); } private static void testAccounters() { diff --git a/src/main/java/com/bonus/autoweb/base/DataConfig.java b/src/main/java/com/bonus/autoweb/base/DataConfig.java index 54771d6..4b41b66 100644 --- a/src/main/java/com/bonus/autoweb/base/DataConfig.java +++ b/src/main/java/com/bonus/autoweb/base/DataConfig.java @@ -4,7 +4,7 @@ public class DataConfig { /** * url 网站地址 */ - protected static final String URL = "http://20.50.16.10/ecs/#/yjtsgz"; + protected static final String URL = "http://xydyjzh.ah.sgcc.com.cn"; /** * 驱动名称 */ diff --git a/src/main/java/com/bonus/autoweb/base/DutyDailyCheck.java b/src/main/java/com/bonus/autoweb/base/DutyDailyCheck.java index 3a5143c..63fe953 100644 --- a/src/main/java/com/bonus/autoweb/base/DutyDailyCheck.java +++ b/src/main/java/com/bonus/autoweb/base/DutyDailyCheck.java @@ -37,9 +37,9 @@ public class DutyDailyCheck { String checkXpath; //早报 if(type ==1){ - checkXpath="//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[1]/td[5]/div/p[2]"; + checkXpath="//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[1]/td[5]/div/div/p[2]"; }else{ - checkXpath="//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[2]/td[5]/div/p[2]"; + checkXpath="//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[2]/td[5]/div/div/p[2]"; } //点击审核按钮 diff --git a/src/main/java/com/bonus/autoweb/base/DutyDailyOp.java b/src/main/java/com/bonus/autoweb/base/DutyDailyOp.java index ea32a1d..8833365 100644 --- a/src/main/java/com/bonus/autoweb/base/DutyDailyOp.java +++ b/src/main/java/com/bonus/autoweb/base/DutyDailyOp.java @@ -49,9 +49,9 @@ public class DutyDailyOp { Thread.sleep(500); //早报编辑标签定位 - String zaoBxPath = "//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[1]/td[5]/div/p[1]"; + String zaoBxPath = "//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[1]/td[5]/div/div/p[1]"; //晚报编辑标签定位 - String wanBxpath = "//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[2]/td[5]/div/p[1]"; + String wanBxpath = "//*[@id=\"pane-4\"]/div/div[3]/div/div/div[3]/table/tbody/tr[2]/td[5]/div/div/p[1]"; if (type == 1) { webDriver.findElement(By.xpath(zaoBxPath)).click(); } else { diff --git a/src/main/java/com/bonus/autoweb/base/DutyLogIOp.java b/src/main/java/com/bonus/autoweb/base/DutyLogIOp.java index 5eb525f..9826a61 100644 --- a/src/main/java/com/bonus/autoweb/base/DutyLogIOp.java +++ b/src/main/java/com/bonus/autoweb/base/DutyLogIOp.java @@ -16,6 +16,7 @@ import java.io.FileInputStream; import java.io.InputStreamReader; import java.nio.charset.Charset; import java.text.ParseException; +import java.util.Calendar; import org.slf4j.Logger; @@ -125,15 +126,17 @@ public class DutyLogIOp { //获取上月最后一天日期 String mothDay = DateTimeUtils.getBeforeLastMonthdate(); - //判断上个月最后一天的位置 - tr = DateTimeUtils.getWeekNum(mothDay); - td = DateTimeUtils.getWeekOfDate(mothDay); + // 判断上个月最后一天的位置 + int weekNum = DateTimeUtils.getWeekNum(mothDay); + int dayNum = DateTimeUtils.getWeekOfDate(mothDay); + // 获取上月最后一天在日历中的位置 + if (isFirstDayOfLastMonthSunday()) { + tr = weekNum + 1; + } else { + tr = weekNum; + } + td = dayNum; xpath = "//*[@id=\"app\"]/div/section/main/div/div[1]/div[1]/div[3]/div[2]/table/tbody/tr[" + tr + "]" + "/td[" + td + "]/div"; -// 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"; -// } } //选择前一天的日期 @@ -144,6 +147,14 @@ public class DutyLogIOp { log.info("选择前一天的日期----------"); Thread.sleep(500); } + public static boolean isFirstDayOfLastMonthSunday() { + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.MONTH, -1); // Move to the previous month + calendar.set(Calendar.DAY_OF_MONTH, 1); // Set to the first day of the month + + int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); + return dayOfWeek == Calendar.SUNDAY; + } /** * 内容填写