手术借出单.py 16.49 KiB
import datetime
import threading
import time
import traceback
from airtest.core.api import *
from selenium import webdriver
from selenium.webdriver import DesiredCapabilities
from selenium.webdriver.common.keys import Keys
from airtest_selenium.proxy import *
from selenium.webdriver import Chrome, ChromeOptions
from airtest.core.api import *
from airtest_selenium.proxy import *
from mail1 import send_email1
from public.tools import *
# chrome = webdriver.Chrome(chrome_options=opt)
def job():
    print("这是一个需要执行的任务。。。。。")
    create_salesorder()
    print("当前线程的个数:", threading.active_count())
    time.sleep(1)
    print("当前线程的信息:", threading.current_thread())
def create_salesorder(type=1):
    try:
        import time
        pro_path = get_pro_path()
        start = time.clock()
        # caps = DesiredCapabilities().CHROME
        # caps["pageLoadStrategy"] = "normal"  # complete
        # caps["pageLoadStrategy"] = "eager"  #  interactive
        # caps["pageLoadStrategy"] = "none"
        # chrome = webdriver.Chrome(desired_capabilities=caps)
        opt = ChromeOptions()  # 创建 Chrome 参数对象
        # opt.headless = True  # 把 Chrome 设置成无界面模式,windows/Linux 皆可
        opt.headless = False  # 把 Chrome 设置成无界面模式,windows/Linux 皆可
        opt.add_argument('--start-maximized')
        opt.add_argument('--window-size=1280x1024')
        # chrome = Chrome(options=opt) # 创建无界面对象
        # chrome = WebChrome(chrome_options=opt)
        chrome = WebChrome(chrome_options=opt)
        # chrome=webdriver.Chrome()
        chrome.implicitly_wait(20)
        chrome.get("http://10.17.65.200:8088/portal/")
        # chrome.get("http://10.17.65.207:8088/uat/r/w")
        sleep(2)
        chrome.implicitly_wait(30)
        chrome.maximize_window()
        chrome.find_element_by_id('input1').clear()
        chrome.find_element_by_id('input1').send_keys('admin')
        chrome.find_element_by_id('input2').clear()
        chrome.find_element_by_id('input2').send_keys('Gyxc1234')
        chrome.find_element_by_id('input2').send_keys(Keys.ENTER)
        while True:
            try:
                if(chrome.find_element_by_xpath('//span[text()="退出"]').is_displayed()==True):
                    break
            except:
                continue
        # 切换所属公司
        chrome.find_element_by_class_name('changeCom').click()
        sleep(1)
        chrome.find_element_by_xpath('//span[text()="国药集团北京医疗器械有限公司"]/following-sibling::button').click()
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
sleep(1) chrome.find_element_by_xpath('// button[text() = "确定"]').click() sleep(1) # chrome.find_element_by_xpath('//div[text()="销售管理"]').click() # actions = ActionChains(chrome) # actions.move_to_element(chrome.find_element_by_xpath('//div[text()="销售业务"]')).perform() # chrome.find_element_by_xpath('//span[text()="销售订单"]').click() order_link = chrome.find_element_by_xpath('//span[text()="手术借出单"]') chrome.execute_script("arguments[0].click();", order_link) chrome.switch_to.frame(chrome.find_element_by_xpath('(//iframe[@class="metro-main-frame"])[2]')) sleep(2) chrome.find_element_by_xpath('//span[text()="新建"]').click() sleep(2) chrome.switch_to.frame(chrome.find_element_by_xpath('//iframe[contains(@name,"awsui-dialog-iframe")]')) #获取订单号 orderno=chrome.find_element_by_xpath('//div[text() = "借出单号 "]/following-sibling::div/span').text print(orderno) # chrome.switch_to.default_content() sleep(2) # while True: # try: # if chrome.find_element_by_xpath('//div[text()="订单公司名称 "]').is_displayed(): # print(chrome.find_element_by_xpath('//div[text()="订单公司名称 "]').text) # break # except: # continue # print(chrome.find_element_by_xpath('//div[text()="订单公司名称 "]').text) sleep(2) # chrome.find_element_by_xpath( # '//div[text()="公司名称 "]/following-sibling::div/div/div/div/div/div/div/div/span/span/i').click() # chrome.find_element_by_xpath('//input[@placeholder="模糊检索:公司名称,公司编码"]').send_keys('国药集团北京') # chrome.find_element_by_xpath('//input[@placeholder="模糊检索:公司名称,公司编码"]').send_keys(Keys.ENTER) # chrome.find_element_by_xpath('//button[@class="el-button el-button--primary el-button--mini"]').click() # chrome.find_element_by_xpath('(//span[@class="el-radio__inner"])[1]').click() # chrome.find_element_by_xpath('//span[@class="ensureBtn"]/button').click() # chrome.find_element_by_xpath('//button[@class="el-button el-button--primary el-button--mini"]').click() # 业务员名称 chrome.find_element_by_xpath( '//div[text()="业务员名称 "]/following-sibling::div/div/div/div/div/div/div/div/span/span/i').click() chrome.find_element_by_xpath('//input[@placeholder="模糊检索:员工编码,员工名称,部门编码,部门名称"]').send_keys('chenshuheng') chrome.find_element_by_xpath('//input[@placeholder="模糊检索:员工编码,员工名称,部门编码,部门名称"]').send_keys( Keys.ENTER) chrome.find_element_by_xpath( '(//div[text()="chenshuheng"])[3]/ancestor-or-self::td/preceding-sibling::td/div/label/span/span').click() chrome.find_element_by_xpath('(//span[@class="ensureBtn"]/button[1])[1]').click() #手术类型 chrome.find_element_by_xpath('(//input[@placeholder="请选择" and @type="text"])').click() sleep(1) chrome.find_element_by_xpath('//li[text()="初次手术"]').click() sleep(1) #手术种类 chrome.find_element_by_xpath('(//input[@placeholder="请选择" and @type="text"])[2]').click() sleep(1) chrome.find_element_by_xpath('//li[text()="髋关节"]').click() sleep(1) chrome.find_element_by_xpath('//label[text()="手术日期 "]/following-sibling::div/div').click() sleep(1) chrome.find_element_by_xpath('//div[ @class ="el-date-table-cell"] // span[text()="31"]').click() #客户信息页签 chrome.find_element_by_xpath('//div[text()="客户信息"]').click() chrome.find_element_by_xpath('//div[text()="客户名称 "]/following-sibling::div/div/div/div/div/div/div/div/span/span/i').click() chrome.find_element_by_xpath('//input[@placeholder="模糊检索:客户编码,客户名称"]').send_keys('北京大学第三医院') chrome.find_element_by_xpath('//input[@placeholder="模糊检索:客户编码,客户名称"]').send_keys(Keys.ENTER) # chrome.find_element_by_xpath('//span/input[@type="radio" and @value="03105272b49986351ef7eb2930b5454de"]').click()
141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
btn_div= chrome.find_element_by_xpath('//span/input[@type="radio" and @value="083165b4f865526823ef04a27fa9cd7c1"]') chrome.execute_script("arguments[0].click();", btn_div) chrome.find_element_by_xpath('(//button[@class="el-button el-button--primary el-button--default"])[3]').click() #医院名称 chrome.find_element_by_xpath( '//div[text()="医院名称 "]/following-sibling::div/div/div/div/div/div/div/div/span/span/i').click() chrome.find_element_by_xpath('//input[@placeholder="模糊检索:客户编码,客商名称"]').send_keys('北京大学第三医院') chrome.find_element_by_xpath('//input[@placeholder="模糊检索:客户编码,客商名称"]').send_keys(Keys.ENTER) # chrome.find_element_by_xpath('//span/input[@type="radio" and @value="03105272b49986351ef7eb2930b5454de"]').click() btn_div = chrome.find_element_by_xpath( '//span/input[@type="radio" and @value="0c4d395678c596b20aa6c2a2fef3483d4"]') chrome.execute_script("arguments[0].click();", btn_div) chrome.find_element_by_xpath('(//button[@class="el-button el-button--primary el-button--default"])[3]').click() # chrome.find_element_by_xpath('//div[text()="仓库信息"]').click() # chrome.find_element_by_xpath( # '//div[text()="合同号 "]/following-sibling::div/div/div/div/div/div/div/div/span/span/i').click() # chrome.find_element_by_xpath('//input[@placeholder="模糊检索:合同号,合同协议号,对方编码,项目名称,项目编码,业态编码,参考部门,参考部门编码,参考业务员,参考业务员编码,产品线名称,产品线编码,合同类型,合同属性"]').send_keys('38443') # chrome.find_element_by_xpath('//input[@placeholder="模糊检索:合同号,合同协议号,对方编码,项目名称,项目编码,业态编码,参考部门,参考部门编码,参考业务员,参考业务员编码,产品线名称,产品线编码,合同类型,合同属性"]').send_keys(Keys.ENTER) # chrome.find_element_by_xpath('//div[@class="multiple-header string_col" and text()="38443"]/ancestor-or-self::td/preceding-sibling::td/div/label/span/span').click() # chrome.find_element_by_xpath('(//button[@class="el-button el-button--primary el-button--default"])[4]').click() # #业务员名称 # chrome.find_element_by_xpath( # '//div[text()="业务员名称 "]/following-sibling::div/div/div/div/div/div/div/div/span/span/i').click() # chrome.find_element_by_xpath('//input[@placeholder="模糊检索:业务员名称,业务员编码,业务部门名称,业务部门编码,部门类型编码"]').send_keys('杨春刚') # chrome.find_element_by_xpath('//input[@placeholder="模糊检索:业务员名称,业务员编码,业务部门名称,业务部门编码,部门类型编码"]').send_keys(Keys.ENTER) # chrome.find_element_by_xpath('(//div[text()="杨春刚"])[3]/ancestor-or-self::td/preceding-sibling::td/div/label/span/span').click() # chrome.find_element_by_xpath('(//span[@class="ensureBtn"]/button[1])[4]').click() # #其他信息页签 # chrome.find_element_by_xpath('//div[text()="其他信息"]').click() # chrome.find_element_by_xpath('//div[@cid="AWSUI.SwitchButton"]//div/div/div/div/span[1]').click() # 子表信息录入 chrome.find_element_by_xpath('//div[text()="主体信息"]').click() chrome.find_element_by_xpath('//span[text()="添加商品"]').click() chrome.find_element_by_xpath( '//input[@placeholder="模糊检索:商品编码,商品名称,规格型号,厂家物料编码,存储条件"]').send_keys( '10176773') chrome.find_element_by_xpath( '//input[@placeholder="模糊检索:商品编码,商品名称,规格型号,厂家物料编码,存储条件"]').send_keys( Keys.ENTER) sleep(1) chrome.find_element_by_xpath('(//span[@class="el-checkbox__inner"])[4]').click() chrome.find_element_by_xpath('(//div[@class="el-dialog__body"]/div[2]/span/button[1]/span)[4]').click() sleep(3) # 滚动条右拉 # chrome.execute_script("document.getElementsByClassName('vxe-table--footer-wrapper body--wrapper')[0].scrollLeft = 2000"); element=chrome.find_element_by_xpath('//td[@colid="col_89"]') element.click() sleep(2) # element.send_keys("1") # chrome.execute_script("document.getElementsByClassName('awsui-input-number-right')[0].value='1'") chrome.find_element_by_class_name('awsui-input-number-right').send_keys('1') sleep(2) chrome.find_element_by_xpath('//td[@colid="col_90"]').click() #滚动条右拉 # document.getElementsByClassName('vxe-table--footer-wrapper body--wrapper')[0].scrollLeft = 5000 # chrome.execute_script("document.getElementsByClassName('vxe-table--footer-wrapper body--wrapper')[0].scrollLeft = 2000"); # element = chrome.find_element_by_xpath('//td[@colid="col_197"]') # element.click() # sleep(6) # chrome.execute_script("document.getElementsByClassName('awsui-input-number-right')[0].value='8'") # sleep(2) # element = chrome.find_element_by_xpath('//td[@colid="col_198"]') # element.click() # sleep(6) # chrome.execute_script("document.getElementsByClassName('awsui-input-number-right')[0].value='8'") # sleep(2) # lock = threading.Lock()