Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
test
autotest-airtest-web-sc-airtest
Commits
b525b340
Commit
b525b340
authored
Nov 16, 2023
by
齐 振鋆
Browse files
手术【配货、借出】维护
parent
05cafa5e
Changes
9
Hide whitespace changes
Inline
Side-by-side
cases/UI/GuKeYiTiHua/debug/test_debug.py
View file @
b525b340
...
@@ -3,14 +3,12 @@
...
@@ -3,14 +3,12 @@
# 日期:2023/3/14
# 日期:2023/3/14
# 描述:
# 描述:
import
logging
import
os
import
os
from
datetime
import
datetime
from
datetime
import
datetime
import
pytest
import
allure
import
allure
import
logging
import
pytest
from
ddt
import
ddt
,
file_data
from
ddt
import
ddt
,
file_data
from
cases.UI.GuKeYiTiHua
import
PROJECTNAME
from
cases.UI.GuKeYiTiHua
import
PROJECTNAME
...
@@ -26,11 +24,10 @@ from component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.orthopedic_take import Orth
...
@@ -26,11 +24,10 @@ from component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.orthopedic_take import Orth
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.surgery_back
import
SurgeryBack
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.surgery_back
import
SurgeryBack
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_borrow
import
ApolegamyBorrow
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_borrow
import
ApolegamyBorrow
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_take
import
ApolegamyTake
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_take
import
ApolegamyTake
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.orthopedic_lend
import
OrthopedicLend
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.out_ledger
import
OutLedger
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.out_ledger
import
OutLedger
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.sugery_lend
import
OrthopedicLend
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_distribute
import
SurgeryDistribute
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_distribute
import
SurgeryDistribute
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_require
import
SurgeryRequire
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_require
import
SurgeryRequire
from
page.GuKeYiTiHua.DBQuery.db_query
import
DBQuery
from
page.GuKeYiTiHua.DBQuery.db_query
import
DBQuery
from
page.GuKeYiTiHua.Public.common
import
CommonElement
from
page.GuKeYiTiHua.Public.common
import
CommonElement
from
unit.public.DataDic
import
DataDic
from
unit.public.DataDic
import
DataDic
...
...
cases/UI/GuKeYiTiHua/purchase/test_purchase_op.py
View file @
b525b340
...
@@ -2,26 +2,18 @@
...
@@ -2,26 +2,18 @@
# 作者:齐振鋆
# 作者:齐振鋆
# 日期:2023/2/22
# 日期:2023/2/22
# 描述: 采购OP
# 描述: 采购OP
import
logging
import
os
import
os
from
datetime
import
datetime
from
datetime
import
datetime
from
time
import
sleep
import
pytest
import
allure
import
allure
import
logging
import
pytest
from
ddt
import
ddt
,
file_data
from
ddt
import
ddt
,
file_data
from
component.GuKeYiTiHua.StorageManage.StorageIn.warehouse_accept
import
WarehouseVerify
from
component.GuKeYiTiHua.StorageManage.StorageIn.warehouse_accept
import
WarehouseVerify
from
component.GuKeYiTiHua.StorageManage.StorageIn.warehouse_take
import
WarehouseTake
from
component.GuKeYiTiHua.StorageManage.StorageIn.warehouse_take
import
WarehouseTake
from
component.GuKeYiTiHua.StorageManage.StorageIn.warehouse_up
import
WarehouseUp
from
component.GuKeYiTiHua.StorageManage.StorageIn.warehouse_up
import
WarehouseUp
from
component.GuKeYiTiHua.StorageManage.StorageInfo.serial_storage
import
SerialStorage
from
component.GuKeYiTiHua.StorageManage.StorageInfo.serial_storage
import
SerialStorage
from
component.GuKeYiTiHua.StorageManage.StorageOut.warehouse_check
import
WarehouseCheck
from
component.GuKeYiTiHua.StorageManage.StorageOut.warehouse_delivery
import
WarehouseDelivery
from
component.GuKeYiTiHua.StorageManage.StorageOut.warehouse_pick
import
WarehousePick
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.orthopedic_lend
import
OrthopedicLend
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_distribute
import
SurgeryDistribute
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_require
import
SurgeryRequire
from
component.GuKeYiTiHua.purchaseManage.purchaseIn.purchase_op
import
PurchaseOP
from
component.GuKeYiTiHua.purchaseManage.purchaseIn.purchase_op
import
PurchaseOP
from
page.GuKeYiTiHua.DBQuery.db_query
import
DBQuery
from
page.GuKeYiTiHua.DBQuery.db_query
import
DBQuery
from
page.GuKeYiTiHua.Public.common
import
CommonElement
from
page.GuKeYiTiHua.Public.common
import
CommonElement
...
...
cases/UI/GuKeYiTiHua/surgery/test_surgery_follow.py
View file @
b525b340
...
@@ -21,8 +21,8 @@ from component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.orthopedic_take import Orth
...
@@ -21,8 +21,8 @@ from component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.orthopedic_take import Orth
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.surgery_back
import
SurgeryBack
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryBack.surgery_back
import
SurgeryBack
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_borrow
import
ApolegamyBorrow
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_borrow
import
ApolegamyBorrow
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_take
import
ApolegamyTake
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.apolegamy_take
import
ApolegamyTake
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.orthopedic_lend
import
OrthopedicLend
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.out_ledger
import
OutLedger
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.out_ledger
import
OutLedger
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.sugery_lend
import
OrthopedicLend
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_distribute
import
SurgeryDistribute
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_distribute
import
SurgeryDistribute
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_require
import
SurgeryRequire
from
component.GuKeYiTiHua.SurgeryFollow.SurgeryLend.surgery_require
import
SurgeryRequire
from
page.GuKeYiTiHua.DBQuery.db_query
import
DBQuery
from
page.GuKeYiTiHua.DBQuery.db_query
import
DBQuery
...
...
component/GuKeYiTiHua/SurgeryFollow/SurgeryLend/
orthopedic
_lend.py
→
component/GuKeYiTiHua/SurgeryFollow/SurgeryLend/
sugery
_lend.py
View file @
b525b340
...
@@ -2,23 +2,21 @@
...
@@ -2,23 +2,21 @@
# 作者:齐振鋆
# 作者:齐振鋆
# 日期:2023/2/14
# 日期:2023/2/14
# 描述: 骨科仓借出单
# 描述: 骨科仓借出单
import
allure
import
logging
import
logging
from
random
import
randint
from
random
import
randint
from
time
import
sleep
from
time
import
sleep
from
selenium.common.exceptions
import
TimeoutException
import
allure
from
component.GuKeYiTiHua.SurgeryFollow
import
first_menu
from
component.GuKeYiTiHua
import
iframe
,
menu
,
list_page
,
button
,
order_detail_main
,
order_detail_table
,
\
from
component.GuKeYiTiHua
import
iframe
,
menu
,
list_page
,
button
,
order_detail_main
,
order_detail_table
,
\
modal
,
em
,
dbq
modal
,
em
,
dbq
from
unit.public.YamlUtil
import
UtilYaml
from
component.GuKeYiTiHua.SurgeryFollow
import
first_menu
log
=
logging
.
getLogger
(
__name__
)
log
=
logging
.
getLogger
(
__name__
)
class
OrthopedicLend
(
object
):
class
OrthopedicLend
(
object
):
third_menu
=
'
骨科仓
借出单'
third_menu
=
'
手术
借出单'
def
__init__
(
self
):
def
__init__
(
self
):
self
.
dbq
=
dbq
self
.
dbq
=
dbq
...
@@ -47,72 +45,91 @@ class OrthopedicLend(object):
...
@@ -47,72 +45,91 @@ class OrthopedicLend(object):
@
allure
.
step
(
'新建:{}'
.
format
(
third_menu
))
@
allure
.
step
(
'新建:{}'
.
format
(
third_menu
))
def
orthopedic_lend_create
(
self
,
order_code
=
None
):
def
orthopedic_lend_create
(
self
,
order_code
=
None
):
test_data_info
=
self
.
menu
.
dd
.
get_value
(
'test_data_info'
)
test_data_info
=
self
.
menu
.
dd
.
get_value
(
'test_data_info'
)
log
.
info
(
'
骨科仓
借出单创建'
)
log
.
info
(
'
手术
借出单创建'
)
self
.
iframe
.
out_frame
()
self
.
iframe
.
out_frame
()
self
.
iframe
.
to_main_iframe
()
self
.
iframe
.
to_main_iframe
()
if
order_code
is
None
:
if
order_code
is
None
:
self
.
button
.
new
()
self
.
button
.
new
()
jc_code
=
''
while
jc_code
.
startswith
(
'JC'
)
is
False
:
sleep
(
1
)
jc_code
=
self
.
order_detail_main
.
get_element_text
(
'借出单号 '
)
self
.
order_detail_main
.
save_order_code
(
'jc_code'
,
jc_code
)
# 客户&配销客户
self
.
order_detail_main
.
some_click_item
(
'客户名称 '
)
customer_code
=
test_data_info
[
'customer'
]
self
.
modal
.
search_and_choose_items
(
title
=
'选择客户'
,
text
=
customer_code
)
self
.
order_detail_main
.
some_click_item
(
'配销客户名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择配销客户'
,
text
=
customer_code
)
# 选择业务员
self
.
order_detail_main
.
some_click_item
(
'业务员名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'根据公司编码选择员工信息'
,
text
=
test_data_info
[
'salesman'
])
# 仓库
lend_warehouse_code
=
test_data_info
[
'warehouse_lend'
]
borrow_warehouse_code
=
test_data_info
[
'warehouse_borrow'
]
return_warehouse_code
=
test_data_info
[
'warehouse_return'
]
self
.
order_detail_main
.
some_click_item
(
'借出仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借出仓库'
,
text
=
lend_warehouse_code
)
self
.
order_detail_main
.
some_click_item
(
'借入仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借入仓库'
,
text
=
borrow_warehouse_code
)
if
lend_warehouse_code
!=
return_warehouse_code
:
self
.
order_detail_main
.
some_click_item
(
'还回仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择还回仓库'
,
text
=
return_warehouse_code
)
self
.
order_detail_main
.
drop_choose_item
(
'手术类型 '
,
'翻修手术'
)
self
.
order_detail_main
.
drop_choose_item
(
'手术种类 '
,
'踝关节'
)
# 手术日期
date_str
=
self
.
menu
.
tu
.
get_date_str
(
1
)
self
.
order_detail_main
.
date_input_item
(
'手术日期 '
,
date_str
)
self
.
order_detail_main
.
text_input_item
(
'手术医生 '
,
'齐振鋆'
)
log
.
info
(
'添加商品'
)
self
.
button
.
click_button
(
button_name
=
'商品信息'
)
goods
=
test_data_info
[
'goods'
]
goods_code_list
=
[]
for
good
in
goods
:
goods_code_list
.
append
(
good
)
self
.
modal
.
search_and_choose_items
(
placeholder
=
'模糊检索:商品编码,商品名称,规格型号,厂家物料编码,存储条件'
,
text
=
goods_code_list
)
sleep
(
3
*
len
(
goods
))
self
.
order_detail_table
.
get_cell_text
(
'商品名称'
,
goods_code_list
[
0
])
min_num
=
self
.
menu
.
dd
.
get_value
(
'minNum'
)
for
good
in
goods
:
good_number
=
randint
(
min_num
,
5
)
if
self
.
dbq
.
get_serial_flag
(
lend_warehouse_code
,
good
)
!=
'Y'
else
randint
(
min_num
,
2
)
self
.
order_detail_table
.
input_text
(
'数量'
,
good
,
good_number
)
self
.
button
.
click_button
(
button_name
=
'自动配货'
)
else
:
else
:
self
.
orthopedic_lend_search
(
order_code
=
order_code
)
self
.
orthopedic_lend_search
(
order_code
=
order_code
)
self
.
list_page
.
open_order
(
'借出单号'
)
self
.
list_page
.
open_order
(
'借出单号'
)
self
.
em
.
check_message
()
self
.
order_detail_main
.
save_order_code
(
'jc_code'
,
order_code
)
self
.
order_detail_main
.
choose_tap
(
'主体信息'
)
# self.em.check_message()
# self.order_detail_main.choose_tap('主体信息')废弃
# 公司
# 公司
self
.
order_detail_main
.
some_click_item
(
'公司名称 '
)
# self.order_detail_main.some_click_item('公司名称 ')
company_code
=
test_data_info
[
'company'
]
# company_code = test_data_info['company']
self
.
modal
.
search_and_choose_items
(
placeholder
=
'模糊检索:公司名称,公司编码'
,
text
=
company_code
)
# self.modal.search_and_choose_items(placeholder='模糊检索:公司名称,公司编码', text=company_code)
try
:
# try:
self
.
button
.
click_button
(
"//*[contains(string(), '提示')]/ancestor::div[@class='el-message-box']"
,
'确定'
)
# self.button.click_button("//*[contains(string(), '提示')]/ancestor::div[@class='el-message-box']", '确定')
except
TimeoutException
:
# except TimeoutException:
pass
# pass
self
.
order_detail_main
.
drop_choose_item
(
'手术类型 '
,
'翻修手术'
)
self
.
order_detail_main
.
drop_choose_item
(
'手术种类 '
,
'踝关节'
)
# self.order_detail_main.choose_tap('合同信息')
self
.
order_detail_main
.
some_click_item
(
'业务员名称 '
)
# self.order_detail_main.some_click_item('合同号 ')
self
.
modal
.
search_and_choose_items
(
title
=
'根据公司编码选择员工信息'
,
text
=
test_data_info
[
'salesman'
])
# self.modal.search_and_choose_items(title='选择合同协议', text=test_data_info['agreement'])
# 手术日期
date_str
=
self
.
menu
.
tu
.
get_date_str
(
1
)
self
.
order_detail_main
.
date_input_item
(
'手术日期 '
,
date_str
)
self
.
order_detail_main
.
text_input_item
(
'手术医生 '
,
'张三丰主任医师'
)
self
.
order_detail_main
.
choose_tap
(
'仓库信息'
)
lend_warehouse_code
=
test_data_info
[
'warehouse_lend'
]
borrow_warehouse_code
=
test_data_info
[
'warehouse_borrow'
]
return_warehouse_code
=
test_data_info
[
'warehouse_return'
]
self
.
order_detail_main
.
some_click_item
(
'借出仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借出仓库'
,
text
=
lend_warehouse_code
)
self
.
order_detail_main
.
some_click_item
(
'借入仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借入仓库'
,
text
=
borrow_warehouse_code
)
if
lend_warehouse_code
!=
return_warehouse_code
:
self
.
order_detail_main
.
some_click_item
(
'还回仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择还回仓库'
,
text
=
return_warehouse_code
)
self
.
order_detail_main
.
choose_tap
(
'合同信息'
)
self
.
order_detail_main
.
some_click_item
(
'合同号 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择合同协议'
,
text
=
test_data_info
[
'agreement'
])
# 保存获得请领单号
# 保存获得请领单号
self
.
order_detail_main
.
choose_tap
(
'主体信息'
)
# self.order_detail_main.choose_tap('主体信息')
self
.
button
.
save
()
# self.button.save()
log
.
info
(
'获取请领单号&存储'
)
self
.
order_detail_main
.
text_input_item
(
'联系人 '
,
'无可救药'
)
jc_code
=
''
self
.
order_detail_main
.
text_input_item
(
'联系电话 '
,
'13444444444'
)
while
jc_code
.
startswith
(
'JC'
)
is
False
:
sleep
(
1
)
jc_code
=
self
.
order_detail_main
.
get_element_text
(
'借出单号 '
)
log
.
info
(
'借出单号:【{}】'
.
format
(
jc_code
))
self
.
menu
.
dd
.
set_value
(
'jc_code'
,
jc_code
)
UtilYaml
(
self
.
menu
.
dd
.
get_value
(
'extract_path'
)).
write_yaml
({
'jc_code'
:
jc_code
})
log
.
info
(
'添加商品'
)
self
.
button
.
click_button
(
button_name
=
'商品信息'
)
goods
=
test_data_info
[
'goods'
]
goods_code_list
=
[]
for
good
in
goods
:
goods_code_list
.
append
(
good
)
self
.
modal
.
search_and_choose_items
(
placeholder
=
'模糊检索:商品编码,商品名称,规格型号,厂家物料编码,存储条件'
,
text
=
goods_code_list
)
sleep
(
3
*
len
(
goods
))
self
.
order_detail_table
.
get_cell_text
(
'商品名称'
,
goods_code_list
[
0
])
min_num
=
self
.
menu
.
dd
.
get_value
(
'minNum'
)
for
good
in
goods
:
good_number
=
randint
(
min_num
,
5
)
if
self
.
dbq
.
get_serial_flag
(
lend_warehouse_code
,
good
)
!=
'Y'
else
randint
(
min_num
,
2
)
self
.
order_detail_table
.
input_text
(
'数量'
,
good
,
good_number
)
self
.
button
.
submit
()
self
.
button
.
submit
()
self
.
list_page
.
edit_iframe_is_show
()
self
.
list_page
.
edit_iframe_is_show
()
...
@@ -123,14 +140,16 @@ class OrthopedicLend(object):
...
@@ -123,14 +140,16 @@ class OrthopedicLend(object):
self
.
order_detail_main
.
choose_tap
(
'主体信息'
)
self
.
order_detail_main
.
choose_tap
(
'主体信息'
)
log
.
info
(
'获取借出单号&保存'
)
log
.
info
(
'获取借出单号&保存'
)
jc_code
=
self
.
order_detail_main
.
get_element_text
(
'借出单号 '
)
jc_code
=
self
.
order_detail_main
.
get_element_text
(
'借出单号 '
)
self
.
menu
.
dd
.
set_value
(
'jc_code'
,
jc_code
)
if
follow
==
'N'
else
self
.
menu
.
dd
.
set_value
(
'new_jc_code'
,
jc_code
)
self
.
order_detail_main
.
save_order_code
(
'jc_code'
,
log
.
info
(
'借出单号:【{}】'
.
format
(
jc_code
))
jc_code
)
if
follow
==
'N'
else
self
.
order_detail_main
.
save_order_code
(
UtilYaml
(
self
.
menu
.
dd
.
get_value
(
'extract_path'
)).
write_yaml
({
'jc_code'
:
jc_code
})
'new_jc_code'
,
jc_code
)
self
.
order_detail_main
.
drop_choose_item
(
'手术种类 '
,
'髋关节'
)
self
.
order_detail_main
.
drop_choose_item
(
'手术种类 '
,
'髋关节'
)
self
.
order_detail_main
.
text_input_item
(
'手术医生 '
,
'张三丰主任医师'
)
self
.
order_detail_main
.
text_input_item
(
'手术医生 '
,
'张三丰主任医师'
)
self
.
order_detail_main
.
choose_tap
(
'其他信息'
)
self
.
order_detail_main
.
choose_tap
(
'其他信息'
)
self
.
order_detail_main
.
text_input_item
(
'联系人 '
,
'高启强'
)
self
.
order_detail_main
.
text_input_item
(
'联系人 '
,
'高启强'
)
self
.
order_detail_main
.
text_input_item
(
'联系电话 '
,
'13333333333'
)
self
.
order_detail_main
.
text_input_item
(
'联系电话 '
,
'13333333333'
)
self
.
button
.
submit
()
self
.
button
.
submit
()
self
.
list_page
.
edit_iframe_is_show
()
self
.
list_page
.
edit_iframe_is_show
()
...
...
component/GuKeYiTiHua/SurgeryFollow/SurgeryLend/surgery_distribute.py
View file @
b525b340
...
@@ -3,18 +3,18 @@
...
@@ -3,18 +3,18 @@
# 日期:2023/2/14
# 日期:2023/2/14
# 描述: 手术请领配货单
# 描述: 手术请领配货单
import
logging
import
logging
import
allure
import
allure
from
random
import
randint
from
component.GuKeYiTiHua.SurgeryFollow
import
first_menu
from
component.GuKeYiTiHua
import
iframe
,
menu
,
list_page
,
button
,
order_detail_main
,
order_detail_table
,
\
from
component.GuKeYiTiHua
import
iframe
,
menu
,
list_page
,
button
,
order_detail_main
,
order_detail_table
,
\
modal
modal
from
component.GuKeYiTiHua.SurgeryFollow
import
first_menu
log
=
logging
.
getLogger
(
__name__
)
log
=
logging
.
getLogger
(
__name__
)
class
SurgeryDistribute
(
object
):
class
SurgeryDistribute
(
object
):
third_menu
=
'手术
请领
配货单'
third_menu
=
'手术配货单'
def
__init__
(
self
):
def
__init__
(
self
):
self
.
iframe
=
iframe
self
.
iframe
=
iframe
...
@@ -40,12 +40,12 @@ class SurgeryDistribute(object):
...
@@ -40,12 +40,12 @@ class SurgeryDistribute(object):
log
.
info
(
'手术请领单配货'
)
log
.
info
(
'手术请领单配货'
)
self
.
list_page
.
open_order
(
order_code
=
order_code
)
self
.
list_page
.
open_order
(
order_code
=
order_code
)
self
.
order_detail_main
.
choose_tap
(
'主体信息'
)
#
self.order_detail_main.choose_tap('主体信息')
废弃
self
.
order_detail_main
.
some_click_item
(
'业务员名称 '
)
self
.
order_detail_main
.
some_click_item
(
'业务员名称 '
)
salesman_code
=
test_data_info
[
'salesman'
]
salesman_code
=
test_data_info
[
'salesman'
]
self
.
modal
.
search_and_choose_items
(
title
=
'选择员工信息'
,
text
=
salesman_code
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择员工信息'
,
text
=
salesman_code
)
self
.
order_detail_main
.
choose_tap
(
'仓库信息'
)
#
self.order_detail_main.choose_tap('仓库信息')
废弃
lend_warehouse_code
=
test_data_info
[
'warehouse_lend'
]
lend_warehouse_code
=
test_data_info
[
'warehouse_lend'
]
self
.
order_detail_main
.
some_click_item
(
'借出仓库名称 '
)
self
.
order_detail_main
.
some_click_item
(
'借出仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借出仓库信息'
,
text
=
lend_warehouse_code
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借出仓库信息'
,
text
=
lend_warehouse_code
)
...
@@ -53,10 +53,12 @@ class SurgeryDistribute(object):
...
@@ -53,10 +53,12 @@ class SurgeryDistribute(object):
self
.
order_detail_main
.
some_click_item
(
'借入仓库名称 '
)
self
.
order_detail_main
.
some_click_item
(
'借入仓库名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借入仓库信息'
,
text
=
borrow_warehouse_code
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择借入仓库信息'
,
text
=
borrow_warehouse_code
)
goods
=
test_data_info
[
'goods'
]
# goods = test_data_info['goods']
for
good
in
goods
:
# for good in goods:
not_distribute_number
=
int
(
self
.
order_detail_table
.
get_cell_text
(
'未分配数量'
,
good
))
# not_distribute_number = int(self.order_detail_table.get_cell_text('未分配数量', good))
distribute_number
=
randint
(
self
.
menu
.
dd
.
get_value
(
'minNum'
),
not_distribute_number
)
# distribute_number = randint(self.menu.dd.get_value('minNum'), not_distribute_number)
self
.
order_detail_table
.
input_text
(
'分配数量'
,
good
,
distribute_number
)
# self.order_detail_table.input_text('分配数量', good, distribute_number)
# 自动配货
self
.
button
.
click_button
(
button_name
=
'自动配货'
)
self
.
button
.
submit
()
self
.
button
.
submit
()
self
.
list_page
.
edit_iframe_is_show
()
self
.
list_page
.
edit_iframe_is_show
()
component/GuKeYiTiHua/SurgeryFollow/SurgeryLend/surgery_require.py
View file @
b525b340
...
@@ -11,7 +11,6 @@ import allure
...
@@ -11,7 +11,6 @@ import allure
from
component.GuKeYiTiHua
import
iframe
,
menu
,
list_page
,
button
,
order_detail_main
,
order_detail_table
,
\
from
component.GuKeYiTiHua
import
iframe
,
menu
,
list_page
,
button
,
order_detail_main
,
order_detail_table
,
\
modal
,
dbq
modal
,
dbq
from
component.GuKeYiTiHua.SurgeryFollow
import
first_menu
from
component.GuKeYiTiHua.SurgeryFollow
import
first_menu
from
unit.public.YamlUtil
import
UtilYaml
log
=
logging
.
getLogger
(
__name__
)
log
=
logging
.
getLogger
(
__name__
)
...
@@ -56,8 +55,7 @@ class SurgeryRequire(object):
...
@@ -56,8 +55,7 @@ class SurgeryRequire(object):
self
.
list_page
.
open_order
(
order_code
=
order_code
)
self
.
list_page
.
open_order
(
order_code
=
order_code
)
ql_code
=
order_code
ql_code
=
order_code
self
.
menu
.
dd
.
set_value
(
'ql_code'
,
ql_code
)
self
.
order_detail_main
.
save_order_code
(
'ql_code'
,
ql_code
)
UtilYaml
(
self
.
menu
.
dd
.
get_value
(
'extract_path'
)).
write_yaml
({
'ql_code'
:
ql_code
})
# self.order_detail_main.choose_tap('主体信息') 已作废
# self.order_detail_main.choose_tap('主体信息') 已作废
# 公司
# 公司
...
@@ -70,6 +68,9 @@ class SurgeryRequire(object):
...
@@ -70,6 +68,9 @@ class SurgeryRequire(object):
self
.
modal
.
search_and_choose_items
(
title
=
'选择客户'
,
text
=
customer_code
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择客户'
,
text
=
customer_code
)
self
.
order_detail_main
.
some_click_item
(
'配销客户名称 '
)
self
.
order_detail_main
.
some_click_item
(
'配销客户名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择配销客户'
,
text
=
customer_code
)
self
.
modal
.
search_and_choose_items
(
title
=
'选择配销客户'
,
text
=
customer_code
)
# 选择业务员
self
.
order_detail_main
.
some_click_item
(
'业务员名称 '
)
self
.
modal
.
search_and_choose_items
(
title
=
'根据公司编码选择员工信息'
,
text
=
test_data_info
[
'salesman'
])
# 手术类型
# 手术类型
self
.
order_detail_main
.
drop_choose_item
(
'手术类型 '
,
'翻修髋'
)
self
.
order_detail_main
.
drop_choose_item
(
'手术类型 '
,
'翻修髋'
)
...
@@ -98,7 +99,7 @@ class SurgeryRequire(object):
...
@@ -98,7 +99,7 @@ class SurgeryRequire(object):
self
.
order_detail_table
.
get_cell_text
(
'商品名称'
,
goods
[
0
])
self
.
order_detail_table
.
get_cell_text
(
'商品名称'
,
goods
[
0
])
min_num
=
self
.
menu
.
dd
.
get_value
(
'minNum'
)
min_num
=
self
.
menu
.
dd
.
get_value
(
'minNum'
)
for
good
in
goods
:
for
good
in
goods
:
good_number
=
randint
(
min_num
,
8
)
if
self
.
dbq
.
get_serial_flag
(
test_data_info
[
'warehouse_lend'
],
good_number
=
randint
(
min_num
,
5
)
if
self
.
dbq
.
get_serial_flag
(
test_data_info
[
'warehouse_lend'
],
good
)
!=
'Y'
else
randint
(
min_num
,
2
)
good
)
!=
'Y'
else
randint
(
min_num
,
2
)
self
.
order_detail_table
.
input_text
(
'数量'
,
good
,
good_number
)
self
.
order_detail_table
.
input_text
(
'数量'
,
good
,
good_number
)
self
.
button
.
submit
()
self
.
button
.
submit
()
...
...
page/GuKeYiTiHua/Public/OrderListPage.py
View file @
b525b340
...
@@ -4,10 +4,11 @@
...
@@ -4,10 +4,11 @@
# 描述:
# 描述:
import
logging
import
logging
import
re
import
re
from
time
import
sleep
import
allure
import
allure
import
pytest
import
pytest
from
time
import
sleep
from
page.GuKeYiTiHua.Public.errorMsg
import
ErrorMessage
from
page.GuKeYiTiHua.Public.errorMsg
import
ErrorMessage
from
page.GuKeYiTiHua.Public.iFrame
import
IframeElement
from
page.GuKeYiTiHua.Public.iFrame
import
IframeElement
from
page.GuKeYiTiHua.Public.table
import
Table
from
page.GuKeYiTiHua.Public.table
import
Table
...
@@ -71,7 +72,7 @@ class OrderList(BasePage):
...
@@ -71,7 +72,7 @@ class OrderList(BasePage):
col_id
=
self
.
table
.
get_col_id
(
field_name
)
col_id
=
self
.
table
.
get_col_id
(
field_name
)
return
self
.
get_ele_text
(
"//td[@colid='{}' and not(contains(@class, 'fixed--hidden'))][{}]"
.
format
(
col_id
,
row
))
return
self
.
get_ele_text
(
"//td[@colid='{}' and not(contains(@class, 'fixed--hidden'))][{}]"
.
format
(
col_id
,
row
))
def
open_order
(
self
,
column
=
None
,
row
=
1
,
order_code
=
None
):
def
open_order
(
self
,
order_code
=
None
,
row
=
1
,
column
=
2
):
"""
"""
param tag: link列名
param tag: link列名
param index: 行
param index: 行
...
@@ -84,7 +85,7 @@ class OrderList(BasePage):
...
@@ -84,7 +85,7 @@ class OrderList(BasePage):
"(//td[@colid='{}' and not(contains(@class, 'fixed--hidden'))])[{}]//span"
.
format
(
tag_colid
,
row
))
"(//td[@colid='{}' and not(contains(@class, 'fixed--hidden'))])[{}]//span"
.
format
(
tag_colid
,
row
))
else
:
else
:
log
.
info
(
"打开单据【{}】"
.
format
(
order_code
))
log
.
info
(
"打开单据【{}】"
.
format
(
order_code
))
self
.
click
(
"
(
//td[contains(
@class, 'dw-click-cell')]//*[text
()
=
'{
}'])[{}]"
.
format
(
order_code
,
row
)
)
self
.
click
(
f
"//td[contains(
string
()
,
'
{
order_code
}
')][
{
row
}
]/../td[
{
column
}
]//span"
)
self
.
iframe
.
to_edit_iframe
()
self
.
iframe
.
to_edit_iframe
()
self
.
em
.
check_message
()
self
.
em
.
check_message
()
...
...
page/GuKeYiTiHua/Public/orderDetailPage.py
View file @
b525b340
...
@@ -10,6 +10,7 @@ import pytest
...
@@ -10,6 +10,7 @@ import pytest
from
page.GuKeYiTiHua.Public.errorMsg
import
ErrorMessage
from
page.GuKeYiTiHua.Public.errorMsg
import
ErrorMessage
from
page.GuKeYiTiHua.Public.table
import
Table
from
page.GuKeYiTiHua.Public.table
import
Table
from
unit.public.UI.BasePage
import
BasePage
from
unit.public.UI.BasePage
import
BasePage
from
unit.public.YamlUtil
import
UtilYaml
log
=
logging
.
getLogger
(
__name__
)
log
=
logging
.
getLogger
(
__name__
)
...
@@ -17,6 +18,11 @@ log = logging.getLogger(__name__)
...
@@ -17,6 +18,11 @@ log = logging.getLogger(__name__)
class
OrderDetailMain
(
BasePage
):
class
OrderDetailMain
(
BasePage
):
em
=
ErrorMessage
()
em
=
ErrorMessage
()
def
save_order_code
(
self
,
key
,
value
):
"""保存单号"""
self
.
dd
.
set_value
(
key
,
value
)
UtilYaml
(
self
.
dd
.
get_value
(
'extract_path'
)).
write_yaml
({
key
:
value
})
def
choose_tap
(
self
,
tap_name
):
def
choose_tap
(
self
,
tap_name
):
"""
"""
主单信息tap页
主单信息tap页
...
...
pytest.ini
View file @
b525b340
...
@@ -4,7 +4,7 @@ python_classes = Test*
...
@@ -4,7 +4,7 @@ python_classes = Test*
python_functions
=
test
python_functions
=
test
log_cli
=
1
log_cli
=
1
log_cli_level
=
DEBUG
log_cli_level
=
INFO
log_cli_format
=
%(asctime)s [%(levelname)s] %(message)s (%(filename)s:%(lineno)s)
log_cli_format
=
%(asctime)s [%(levelname)s] %(message)s (%(filename)s:%(lineno)s)
log_cli_date_format
=
%Y-%m-%d %H:%M:%S
log_cli_date_format
=
%Y-%m-%d %H:%M:%S
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment