Core2021

package NewBiz;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Set;
import java.util.concurrent.TimeUnit;

import org.apache.commons.io.FileUtils;
import org.apache.log4j.PropertyConfigurator;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.NoAlertPresentException;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebDriverException;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.support.ui.Select;

import BusinessOperation.InputInfo.NoScanInfoInput;
import CS.CSCommon;
import Data.DBOperation;
import Data.ExcelOperation;
import Data.IdCardGenerator;
import Data.TextOperation;
import common.IeCommon;
import common.InsuranceInfo;
import common.Login;
import common.MenuOperation36;
import common.PrepareOperation;
import common.WindowOperation;
import config.PublicData;

public class Core2021{
public static WebDriver getDriver() {
WebDriver driver = null;
try{
Runtime.getRuntime().exec("taskkill /f /im iexplore.exe");
PublicData pData = new PublicData();
System.setProperty("webdriver.ie.driver",pData.IEDriverAddress);
DesiredCapabilities ieCapabilities = DesiredCapabilities.internetExplorer();
ieCapabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
driver = new InternetExplorerDriver(ieCapabilities);
}catch(Exception e){
e.printStackTrace();
}
return driver;
}

public static void currentPoint(WebDriver driver) {
System.out.println(driver.getCurrentUrl());
System.out.println(driver.getTitle());
System.out.println(driver.getPageSource());
}

public static void goToWindowShaoMiao(WebDriver driver) {
try{
Set<String> handles = driver.getWindowHandles();
Iterator<String> it = handles.iterator();
while(it.hasNext()){
String handle = it.next();
WebDriver window = driver.switchTo().window(handle);
String title = window.getTitle();
String url = driver.getCurrentUrl();
System.out.println("---------goToWindowShaoMiao title: "+ title);
System.out.println("---------goToWindowShaoMiao url: "+ url);
if(driver.getCurrentUrl().indexOf("ContInputScanMain.jsp")!=-1){
break;
}
}
}catch(Exception e){
e.printStackTrace();
}
driver.switchTo().defaultContent();
driver.switchTo().frame("fraInterface");
}

public static void goToWindowMain(WebDriver driver,String title) {
try{
Set<String> handles = driver.getWindowHandles();
Iterator<String> it = handles.iterator();
while(it.hasNext()){
String handle = it.next();
WebDriver window = driver.switchTo().window(handle);
String title_2 = window.getTitle();
String url_2 = driver.getCurrentUrl();
//System.out.println("---------GetPointWindow1 title_2: "+ title_2);
//System.out.println("---------GetPointWindow1 url_2: "+ url_2);
if(url_2.indexOf(title)!=-1){
break;
}
}
}catch(Exception e){
e.printStackTrace();
}
}

public static void goToWindowTax(WebDriver driver) {
try{
Set<String> handles = driver.getWindowHandles();
Iterator<String> it = handles.iterator();
while(it.hasNext()){
String handle = it.next();
WebDriver window = driver.switchTo().window(handle);
String title = window.getTitle();
String url = driver.getCurrentUrl();
System.out.println("---------GetPointWindow1 title: "+ title);
System.out.println("---------GetPointWindow1 url: "+ url);
if(driver.getCurrentUrl().indexOf("TaxName")!=-1 && driver.getCurrentUrl().indexOf("PerTaxResidentInputScanMain.jsp")!=-1){
break;
}
}
}catch(Exception e){
e.printStackTrace();
}
driver.switchTo().defaultContent();
driver.switchTo().frame("fraInterface");
}

public static void doSelectBy(WebDriver driver,WebElement e,String value) {
try{
Actions action = new Actions(driver);
action.doubleClick(e).perform();
Thread.sleep(1000);
Select cs = new Select(driver.findElement(By.name("codeselect")));
List<WebElement> list= cs.getOptions();
for(int m=0;m<list.size();m++){
String tmp = list.get(m).getAttribute("value");
System.out.println(tmp);
if(tmp.equals(value)) {
list.get(m).click();
break;
}
}
}catch(Exception e1){
e1.printStackTrace();
}
}

public static void main2(String[] args) throws Exception {
//login
DBOperation.setUser();
WebDriver driver = getDriver();
driver.get("http://10.163.91.33:7132/lis/");
//driver.get("http://10.163.84.73:8080/umsso/login?service=http://10.163.91.33:7132/lis/&systemId=100101");
driver.switchTo().defaultContent();
driver.switchTo().frame("fraInterface");
driver.findElement(By.name("UserCode")).sendKeys("001");
driver.findElement(By.name("password_PWD")).sendKeys("qweasd123");
System.out.println(driver.findElement(By.name("submit2")).getAttribute("value"));
IeCommon.IEclick(driver, driver.findElement(By.name("submit2")));
Thread.sleep(2000);

//menu
goToWindowMain(driver,"核心业务系统");
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.switchTo().frame("fraMenu");
driver.findElement(By.linkText("承保处理")).click();
driver.findElements(By.linkText("个人保单")).get(1).click();
driver.findElement(By.linkText("新单录入")).click();

//luru
driver.switchTo().defaultContent();
driver.switchTo().frame("fraInterface");
driver.findElement(By.xpath("//*[@id='SelfGrpGridExChange0']/tbody/tr/td[1]/input[2]")).click();
Thread.sleep(2000);
goToWindowShaoMiao(driver);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
goToWindowShaoMiao(driver);
//product
System.out.println("---------product 1");
try{
driver.findElement(By.xpath("//*[@id='divInputContButton']/input[1]")).click();//险种录入
}catch(Exception e2){
IeCommon.IEclick(driver, driver.findElement(By.xpath("//*[@id='divInputContButton']/input[1]")));//险种录入
}
Thread.sleep(2000);
DBOperation.checkRiskCode("UL001");
driver.findElement(By.name("RiskCode")).sendKeys("UL001");
driver.findElement(By.name("RiskCode")).sendKeys(Keys.chord(Keys.ENTER));
Thread.sleep(2000);
driver.findElement(By.name("back")).click();//进入险种界面
Thread.sleep(2000);
driver.findElement(By.name("Prem")).sendKeys("1000000");
Thread.sleep(2000);
IeCommon.IEclick(driver, driver.findElement(By.xpath("//*[@id='inputButton']/table/tbody/tr/td[3]/input")));//保存
Thread.sleep(6000);
System.out.println("---------product 2");
dealPotentialAlert(driver,true);
goToWindowXinxi(driver);
Thread.sleep(3000);
System.out.println("---------product 3");
goToWindowShaoMiao(driver);
try{
driver.findElement(By.xpath("//*[@id='riskbutton1']")).click();//上一步
}catch(Exception e){
IeCommon.IEclick(driver, driver.findElement(By.xpath("//*[@id='riskbutton1']")));//上一步
}
Thread.sleep(6000);
/*
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(scrFile, new File("e:/1/"+System.currentTimeMillis()+ ".png"));
*/
System.out.println("---------product 4");
goToWindowShaoMiao(driver);
driver.findElement(By.xpath("//*[@id='riskbutton2']")).click();//录入完毕
Thread.sleep(6000);
System.out.println("---------product 5");
goToWindowXinxi(driver);
}


public static void main(String[] args) throws Exception {
//login
DBOperation.setUser();
WebDriver driver = getDriver();
driver.get("http://10.163.91.33:7132/lis/");
//driver.get("http://10.163.84.73:8080/umsso/login?service=http://10.163.91.33:7132/lis/&systemId=100101");
driver.switchTo().defaultContent();
driver.switchTo().frame("fraInterface");
driver.findElement(By.name("UserCode")).sendKeys("001");
driver.findElement(By.name("password_PWD")).sendKeys("qweasd123");
System.out.println(driver.findElement(By.name("submit2")).getAttribute("value"));
IeCommon.IEclick(driver, driver.findElement(By.name("submit2")));
Thread.sleep(2000);

//menu
goToWindowMain(driver,"核心业务系统");
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.switchTo().frame("fraMenu");
driver.findElement(By.linkText("承保处理")).click();
driver.findElements(By.linkText("个人保单")).get(1).click();
driver.findElement(By.linkText("新单录入")).click();

//luru
driver.switchTo().defaultContent();
driver.switchTo().frame("fraInterface");
String apply_code_tmp = DBOperation.PolicyOperationGedanTest2017_2(DBOperation.DBURL,DBOperation.DBUSER,DBOperation.PASSWORD,"86");
System.out.println("------------XinDanInput apply_code:"+apply_code_tmp);
driver.findElement(By.name("PrtNo")).sendKeys(apply_code_tmp);//投保单号
driver.findElement(By.xpath("/html/body/form/input[1]")).click();//查询
driver.findElement(By.xpath("//*[@id='GrpGridExChange0']/tbody/tr/td[1]/input[2]")).click();//选择
driver.findElement(By.xpath("//*[@id='riskbutton']")).click();//申请
Thread.sleep(3000);
goToWindowShaoMiao(driver);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
goToWindowShaoMiao(driver);
System.out.println("------------1:");
//if(!"02".equals(driver.findElement(By.name("SaleChnl")).getAttribute("value"))){
if(true){
//合同信息
doSelectBy(driver, driver.findElement(By.name("SaleChnl")), "02");
doSelectBy(driver, driver.findElement(By.name("SellType")), "01");
/*
driver.findElement(By.name("SaleChnl")).sendKeys("02");
driver.findElement(By.name("SaleChnl")).sendKeys(Keys.chord(Keys.ENTER));
driver.findElement(By.name("SellType")).sendKeys("01");
driver.findElement(By.name("SellType")).sendKeys(Keys.chord(Keys.ENTER));
*/
driver.findElement(By.name("AgentCode")).sendKeys("P000167782");
driver.findElement(By.name("AgentCode")).sendKeys(Keys.chord(Keys.ENTER));
driver.findElement(By.name("PolAppntDate")).sendKeys("2020-06-01");
driver.findElement(By.name("SignName")).sendKeys("AAA");
Thread.sleep(2000);

//业务员告知
driver.findElement(By.xpath("//*[@id='AgentImpartGrid4r0']")).sendKeys("是");
driver.findElement(By.xpath("//*[@id='AgentImpartGrid4r1']")).clear();
driver.findElement(By.xpath("//*[@id='AgentImpartGrid4r1']")).sendKeys("2/其他");
driver.findElement(By.xpath("//*[@id='AgentImpartGrid4r2']")).sendKeys("否");
driver.findElement(By.xpath("//*[@id='AgentImpartGrid4r3']")).sendKeys("是");
driver.findElement(By.xpath("//*[@id='AgentImpartGrid4r4']")).sendKeys("否");
driver.findElement(By.xpath("//*[@id='AgentImpartGrid4r5']")).sendKeys("是");

//投保人信息
driver.findElement(By.xpath("//*[@id='AppntName']")).sendKeys("朱艳华");
driver.findElement(By.xpath("//*[@id='AppntIDNo']")).click();
driver.findElement(By.xpath("//*[@id='AppntName']")).sendKeys("朱艳华");
driver.findElement(By.xpath("//*[@id='AppntIDNo']")).click();
doSelectBy(driver, driver.findElement(By.xpath("//input[@id='AppntIDType']")), "0");
driver.findElement(By.xpath("//*[@id='AppntIDNo']")).sendKeys("420684198105150027");
driver.findElement(By.xpath("//*[@id='AppntSex']")).click();
driver.findElement(By.xpath("//*[@id='AppntIDNo']")).sendKeys("420684198105150027");
driver.findElement(By.xpath("//*[@id='AppntSex']")).click();
driver.findElement(By.name("AppntOccupationCode")).sendKeys("0101001");

//缴费
driver.findElement(By.name("AppntBankCode")).sendKeys("104");
driver.findElement(By.name("AppntBankCode")).sendKeys(Keys.chord(Keys.ENTER));
driver.findElement(By.name("AutoPayFlag")).sendKeys("1");
driver.findElement(By.name("AutoPayFlag")).sendKeys(Keys.chord(Keys.ENTER));
driver.findElement(By.name("AppntBankAccNo")).sendKeys("6225887800680387");
driver.findElement(By.name("SecAppntBankAccNo")).click();
driver.findElement(By.name("AppntBankAccNo")).sendKeys("6225887800680387");
driver.findElement(By.name("AppntBankAccNo")).clear();
driver.findElement(By.name("AppntBankAccNo")).sendKeys("6225887800680387");
Thread.sleep(2000);

//投保人告知
String heightw = "165/60";
String income= "20/1";
driver.findElement(By.id("AppntImpartGrid4r0")).clear();
driver.findElement(By.id("AppntImpartGrid4r0")).sendKeys(heightw);
driver.findElement(By.id("AppntImpartGrid4r1")).clear();
driver.findElement(By.id("AppntImpartGrid4r1")).sendKeys(income);
driver.findElement(By.xpath("//*[@id='Appnt10a']")).click();
driver.findElement(By.xpath("//*[@id='Appnt10b']")).click();
driver.findElement(By.xpath("//*[@id='Appnt10c']")).click();
driver.findElement(By.xpath("//*[@id='AppntImpartGrid4r2']")).clear();
driver.findElement(By.xpath("//*[@id='AppntImpartGrid4r2']")).sendKeys("否");
driver.findElement(By.xpath("//*[@id='AppntImpartGrid4r3']")).clear();
driver.findElement(By.xpath("//*[@id='AppntImpartGrid4r3']")).sendKeys("否");
driver.findElement(By.xpath("//*[@id='AppntImpartGrid4r4']")).clear();
driver.findElement(By.xpath("//*[@id='AppntImpartGrid4r4']")).sendKeys("否");

//保存
System.out.println("---------保存 1");
driver.findElement(By.name("addbutton")).click();//保存
Thread.sleep(6000);
dealPotentialAlert(driver,true);
System.out.println("---------保存 2");
Thread.sleep(3000);
goToWindowXinxi(driver);
Thread.sleep(2000);
System.out.println("---------保存 3");

//个税声明
System.out.println("---------个税声明 1");
goToWindowShaoMiao(driver);
IeCommon.IEclick(driver, driver.findElement(By.xpath("//input[@value='投保人个人税收居民身份声明']")));
Thread.sleep(2000);
System.out.println("---------个税声明 2");
goToWindowTax(driver);
doSelectBy(driver, driver.findElement(By.name("TaxResidentType")), "1");
Thread.sleep(2000);
driver.findElement(By.name("AppntInsRelationFlag")).click();//投保人与被保人为同一人
Thread.sleep(2000);
driver.findElement(By.name("addbutton")).click();//保存
Thread.sleep(4000);
System.out.println("---------个税声明 3");
goToWindowXinxi(driver);
Thread.sleep(2000);
System.out.println("---------个税声明 4");
try{
//goToWindowTax(driver);
Set<String> handles = driver.getWindowHandles();
Iterator<String> it = handles.iterator();
while(it.hasNext()){
String handle = it.next();
WebDriver window = driver.switchTo().window(handle);
String title = window.getTitle();
String url = driver.getCurrentUrl();
System.out.println("---------aa title: "+ title);
System.out.println("---------aa url: "+ url);
if(driver.getCurrentUrl().indexOf("TaxName")!=-1 && driver.getCurrentUrl().indexOf("PerTaxResidentInputScanMain.jsp")!=-1){
driver.close();
System.out.println("---------driver.close()");
break;
}
}
}catch(Exception e){
e.printStackTrace();
}
System.out.println("---------个税声明 4");
}
//被保人
System.out.println("---------被保人 1");
goToWindowShaoMiao(driver);
IeCommon.IEclick(driver, driver.findElement(By.name("SamePersonFlag")));
Thread.sleep(4000);
System.out.println("---------被保人 2");
goToWindowXinxi(driver);
Thread.sleep(2000);
System.out.println("---------被保人 3");

//受益人
System.out.println("---------受益人 1");
goToWindowShaoMiao(driver);
IeCommon.IEclick(driver,driver.findElement(By.name("InsuredGridSel")));
Thread.sleep(2000);
System.out.println("---------受益人 2");
goToWindowXinxi(driver);
Thread.sleep(2000);
System.out.println("---------受益人3");
goToWindowShaoMiao(driver);
driver.findElement(By.name("LowedFlag")).click();
Thread.sleep(2000);
driver.findElement(By.xpath("//input[@value='添加受益人']")).click();
Thread.sleep(2000);
System.out.println("--------受益人 4");
goToWindowXinxi(driver);
Thread.sleep(2000);
System.out.println("--------受益人 5");

//product
System.out.println("---------product 1");
goToWindowShaoMiao(driver);
try{
driver.findElement(By.xpath("//*[@id='divInputContButton']/input[1]")).click();//险种录入
}catch(Exception e2){
IeCommon.IEclick(driver, driver.findElement(By.xpath("//*[@id='divInputContButton']/input[1]")));//险种录入
}
Thread.sleep(2000);
DBOperation.checkRiskCode("UL001");
driver.findElement(By.name("RiskCode")).sendKeys("UL001");
driver.findElement(By.name("RiskCode")).sendKeys(Keys.chord(Keys.ENTER));
Thread.sleep(2000);
driver.findElement(By.name("back")).click();//进入险种界面
Thread.sleep(2000);
driver.findElement(By.name("Prem")).sendKeys("1000000");
Thread.sleep(2000);
IeCommon.IEclick(driver, driver.findElement(By.xpath("//*[@id='inputButton']/table/tbody/tr/td[3]/input")));//保存
Thread.sleep(6000);
System.out.println("---------product 2");
dealPotentialAlert(driver,true);
goToWindowXinxi(driver);
Thread.sleep(2000);
System.out.println("---------product 3");
goToWindowShaoMiao(driver);
try{
driver.findElement(By.xpath("//*[@id='riskbutton1']")).click();//上一步
}catch(Exception e){
IeCommon.IEclick(driver, driver.findElement(By.xpath("//*[@id='riskbutton1']")));//上一步
}
Thread.sleep(6000);
/*
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(scrFile, new File("e:/1/"+System.currentTimeMillis()+ ".png"));
*/
System.out.println("---------product 4");
goToWindowShaoMiao(driver);
driver.findElement(By.xpath("//*[@id='riskbutton2']")).click();//录入完毕
Thread.sleep(6000);
System.out.println("---------product 5");
dealPotentialAlert(driver,true);
Thread.sleep(3000);
goToWindowXinxi(driver);
}


public static void dealPotentialAlert(WebDriver driver, boolean option) {
try{
for(int i=0 ;i<3;i++){
Alert alert = driver.switchTo().alert();
System.out.println("------------alert:"+alert);
if (alert == null) {
}else{
System.out.println("------------alert.getText():"+alert.getText());
alert.accept();
break;
}
}
}catch(Exception e){
e.printStackTrace();
}
}

public static void goToWindowXinxi(WebDriver driver) {
try{
Set<String> handles = driver.getWindowHandles();
Iterator<String> it = handles.iterator();
while(it.hasNext()){
String handle = it.next();
WebDriver window = driver.switchTo().window(handle);
String title = window.getTitle();
String url = driver.getCurrentUrl();
System.out.println("---------GetPointWindowXinxi title: "+ title);
System.out.println("---------GetPointWindowXinxi url: "+ url);
if(url.indexOf("成功")!=-1){
//System.out.println("---------GetPointWindowXinxi getPageSource: "+ driver.getPageSource());
IeCommon.IEclick(driver,driver.findElement(By.id("butSubmit")));
System.out.println("---------GetPointWindowXinxi 确定 click");
Thread.sleep(2000);
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}

posted @ 2020-07-21 14:38  zhuyanhua4833  阅读(124)  评论(0)    收藏  举报