test_pur_product.py 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. from datetime import datetime
  2. from playwright.sync_api import expect
  3. from common.condition_row import ConditionRow
  4. from pages.locator.body_page_locator import BodyPageLocator
  5. from tests.test_case.pur.test_data.data_pur_product import DataPurProduct
  6. import pytest
  7. TODAY = datetime.now().strftime('%Y-%m-%d')
  8. wwdddjbh = "SUB00002415" # 委外订单 单据编号
  9. # 执行时间:4min 首次运行,选择物料加载超时。加等待。
  10. @pytest.fixture(scope="module", autouse=True)
  11. def setup_teardown(orcl_helper):
  12. print(orcl_helper.execute_update(DataPurProduct.CREATE_SUBREQORDER_TEST_DATA)) # 单据编号=SUB00002415
  13. yield
  14. # def test_subreqorder(page, home_page, head_page, body_page):
  15. # """
  16. # 【委外成品采购】新增委外订单
  17. # """
  18. # home_page.change_org("鲁泰纺织")
  19. # home_page.close_all_opening_bills()
  20. # home_page.search_bill("委外订单")
  21. #
  22. # body_page.set_value(1, "物料编码", "P01C24-04904")
  23. # # body_page.get_value()
  24. # loc = page.locator(BodyPageLocator.FIELD_VALUE_ARGS_LOC % ("物料编码", 0, 1)) # 行号(从0开始),重名时第几个(从1开始)
  25. # expect(loc).to_contain_text("P01C24-04904", timeout=60000) # 等待 默认5000ms
  26. #
  27. # body_page.set_value(1, "数量", "5")
  28. # body_page.set_value(1, "供应商", "滨州市鑫笑服饰有限公司")
  29. # body_page.set_value(1, "衬衣订单号", "41324033")
  30. # body_page.set_value(1, "计划跟踪号", "20250102")
  31. # body_page.set_value(1, "尺码", "均码")
  32. # body_page.set_value(1, "销售类别", "外销")
  33. #
  34. # body_page.set_value(2, "物料编码", "P01C24-04906")
  35. # loc = page.locator(BodyPageLocator.FIELD_VALUE_ARGS_LOC % ("物料编码", 1, 1))
  36. # expect(loc).to_contain_text("P01C24-04906") # 等待
  37. #
  38. # body_page._activate_field(1, "数量")
  39. # body_page.click_button("批量填充")
  40. # body_page._activate_field(1, "供应商")
  41. # body_page.click_button("批量填充")
  42. # body_page._activate_field(1, "衬衣订单号")
  43. # body_page.click_button("批量填充")
  44. # body_page._activate_field(1, "计划跟踪号")
  45. # body_page.click_button("批量填充")
  46. # body_page.set_value(2, "尺码", "均码") # 尺码批量填充无效,只能set
  47. # body_page._activate_field(1, "销售类别")
  48. # body_page.click_button("批量填充")
  49. #
  50. # head_page.click_button("保存")
  51. # head_page.click_button("提交")
  52. # head_page.click_button("审核")
  53. #
  54. # global wwdddjbh
  55. # wwdddjbh = head_page.get_value("单据编号")
  56. # assert wwdddjbh != ""
  57. def test_purchaseorder(page, home_page, list_page, filter_page, head_page, body_page, push_page):
  58. """
  59. 【委外成品采购】委外订单 下推 采购订单(标准委外订单)
  60. """
  61. home_page.search_bill("委外订单列表")
  62. list_page.click_button("过滤")
  63. global wwdddjbh
  64. cond1 = ConditionRow(1, "单据头-单据编号", wwdddjbh)
  65. filter_page.filter(cond1)
  66. list_page.wait_list_loaded()
  67. list_page.check_line_by_rows(1, 2)
  68. list_page.click_button("下推")
  69. push_page.push_draw_bill("采购订单")
  70. head_page.set_value("采购部门", "制衣计划调度科")
  71. head_page.set_value("采购组", "委外采购组")
  72. head_page.set_value("采购员", "蒙顺德")
  73. head_page.set_value("采购合同交期", TODAY)
  74. head_page.set_value("是否保税", "否")
  75. body_page.set_value(1, "含税单价", "27")
  76. body_page.set_value(1, "需求部门", "制衣计划调度科")
  77. body_page.set_value(1, "物料来源", "自备")
  78. body_page._activate_field(1, "含税单价")
  79. body_page.click_button("批量填充")
  80. body_page._activate_field(1, "需求部门")
  81. body_page.click_button("批量填充")
  82. body_page._activate_field(1, "物料来源")
  83. body_page.click_button("批量填充")
  84. assert body_page.get_row_count() == "2"
  85. assert body_page.get_value(1, "采购数量") != ""
  86. assert body_page.get_value(2, "采购数量") != ""
  87. head_page.click_button("保存")
  88. head_page.click_button("提交")
  89. head_page.click_button("审核")
  90. def test_instock(page, home_page, head_page, body_page, push_page):
  91. """
  92. 【委外成品采购】采购订单 下推 采购入库单(委外入库单)
  93. """
  94. head_page.click_button("下推")
  95. push_page.push_draw_bill("采购入库单")
  96. head_page.set_value("收料部门", "仓储管理部")
  97. head_page.set_value("仓管员", "翟丽芹")
  98. body_page.set_value(1, "仓库", "成品仓库(国外)")
  99. body_page.set_value(1, "成品仓库仓位", "1311")
  100. body_page._activate_field(1, "仓库")
  101. body_page.click_button("批量填充")
  102. body_page._activate_field(1, "成品仓库仓位")
  103. body_page.click_button("批量填充")
  104. head_page.click_button("保存")
  105. head_page.click_button("提交")
  106. head_page.click_button("审核")
  107. # expect(page.locator("//span[text()='普通']").first).to_be_visible(timeout=30000)
  108. msg = head_page.get_multi_error_message()
  109. assert "采购入库单,审核成功" in msg
  110. assert "应付单,审核成功" in msg