diff --git a/IWRS/download_shipment_details.py b/IWRS/download_shipment_details.py new file mode 100644 index 0000000..dc73308 --- /dev/null +++ b/IWRS/download_shipment_details.py @@ -0,0 +1,86 @@ +from playwright.sync_api import sync_playwright +import os + +# ── CONFIG ────────────────────────────────────────────────────────────────── +BASE_URL = "https://janssen.4gclinical.com" + +EMAIL = "vbuzalka@its.jnj.com" +PASSWORD = "Vlado123++-+" + +# STUDY = "42847922MDD3003" +STUDY = "77242113UCO3001" + +OUTPUT_DIR = f"xls_shipment_details_{STUDY}" +# ──────────────────────────────────────────────────────────────────────────── + +os.makedirs(OUTPUT_DIR, exist_ok=True) + + +def download_shipment_details(): + with sync_playwright() as p: + browser = p.chromium.launch(headless=False) + context = browser.new_context(accept_downloads=True) + page = context.new_page() + + # Prihlaseni + page.goto(BASE_URL) + page.wait_for_load_state("networkidle") + page.get_by_label("Email *").fill(EMAIL) + page.get_by_label("Password *").fill(PASSWORD) + page.locator('#login__submit').click() + page.wait_for_load_state("networkidle") + + # Vyber studie + page.get_by_label("Study *").click() + page.get_by_role("option", name=STUDY).click() + page.get_by_role("button", name="SELECT").click() + page.wait_for_load_state("networkidle") + + # Naviguj na Shipment Details Report + page.goto(f"{BASE_URL}/report/shipment_details_report") + page.wait_for_load_state("networkidle", timeout=15000) + + # Precti dostupne shipments z dropdownu + page.locator('input[placeholder="search"], input[type="text"]').first.click() + page.wait_for_timeout(1000) + shipments = [s.strip() for s in page.locator('mat-option').all_inner_texts() + if s.strip() and s.strip() != "No results found"] + print(f"Nalezeno {len(shipments)} shipmentu: {shipments}") + page.keyboard.press("Escape") + page.wait_for_timeout(500) + + if not shipments: + print("Zadne shipments nenalezeny — konec.") + browser.close() + return + + for shipment in shipments: + safe_name = shipment.replace("/", "-").replace("\\", "-").replace(" ", "_") + filename = os.path.join(OUTPUT_DIR, f"shipment_details_{safe_name}.xlsx") + if os.path.exists(filename): + print(f"[{shipment}] Preskakuji — soubor jiz existuje.") + continue + print(f"[{shipment}] Stahuji...") + + input_field = page.locator('input[placeholder="search"], input[type="text"]').first + input_field.click() + input_field.fill(shipment) + page.wait_for_timeout(500) + page.locator('mat-option').first.dispatch_event('click') + + page.wait_for_load_state("networkidle", timeout=30000) + + with page.expect_download(timeout=30000) as dl: + page.get_by_role("button", name="Download XLS").click() + + dl.value.save_as(filename) + print(f"[{shipment}] Ulozeno -> {filename}") + + page.get_by_role("button", name="Clear").click() + page.wait_for_load_state("networkidle", timeout=15000) + + browser.close() + print("\nHotovo!") + + +download_shipment_details() diff --git a/IWRS/download_shipments_report.py b/IWRS/download_shipments_report.py new file mode 100644 index 0000000..2138757 --- /dev/null +++ b/IWRS/download_shipments_report.py @@ -0,0 +1,55 @@ +from playwright.sync_api import sync_playwright +import os + +# ── CONFIG ────────────────────────────────────────────────────────────────── +BASE_URL = "https://janssen.4gclinical.com" + +EMAIL = "vbuzalka@its.jnj.com" +PASSWORD = "Vlado123++-+" + +# STUDY = "42847922MDD3003" +STUDY = "77242113UCO3001" + +OUTPUT_DIR = f"xls_shipments_{STUDY}" +# ──────────────────────────────────────────────────────────────────────────── + +os.makedirs(OUTPUT_DIR, exist_ok=True) + + +def download_shipments(): + with sync_playwright() as p: + browser = p.chromium.launch(headless=False) + context = browser.new_context(accept_downloads=True) + page = context.new_page() + + # Prihlaseni + page.goto(BASE_URL) + page.wait_for_load_state("networkidle") + page.get_by_label("Email *").fill(EMAIL) + page.get_by_label("Password *").fill(PASSWORD) + page.locator('#login__submit').click() + page.wait_for_load_state("networkidle") + + # Vyber studie + page.get_by_label("Study *").click() + page.get_by_role("option", name=STUDY).click() + page.get_by_role("button", name="SELECT").click() + page.wait_for_load_state("networkidle") + + # Naviguj na Shipments Report + page.goto(f"{BASE_URL}/report/shipments_report") + page.wait_for_load_state("networkidle", timeout=15000) + + # Stahni report + filename = os.path.join(OUTPUT_DIR, f"shipments_report_{STUDY}.xlsx") + with page.expect_download(timeout=30000) as dl: + page.get_by_role("button", name="Download XLS").click() + + dl.value.save_as(filename) + print(f"Ulozeno -> {filename}") + + browser.close() + print("Hotovo!") + + +download_shipments() diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10001.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10001.xlsx index f33c99b..d1390f0 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10001.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10001.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10003.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10003.xlsx index 8672d78..3a8d3ac 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10003.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10003.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10006.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10006.xlsx index f524b72..a5aeafe 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10006.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10006.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10009.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10009.xlsx index a471042..ac82d44 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10009.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10009.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10010.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10010.xlsx index ac9d62b..94ae3dc 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10010.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10010.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10012.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10012.xlsx index 22e6d6c..88c3fbb 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10012.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10012.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10013.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10013.xlsx index 813e5c7..f594c82 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10013.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10013.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10015.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10015.xlsx index 067fdd3..17ef9fa 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10015.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10015.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10016.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10016.xlsx index 7888ee4..0995a57 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10016.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10016.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10020.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10020.xlsx index 49f4296..8e8a71a 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10020.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10020.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10021.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10021.xlsx index 88e3538..d45ccd9 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10021.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10021.xlsx differ diff --git a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10022.xlsx b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10022.xlsx index c948bf7..c1397e0 100644 Binary files a/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10022.xlsx and b/IWRS/xls_reports_77242113UCO3001/onsite_inventory_detail_DD5-CZ10022.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100177.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100177.xlsx new file mode 100644 index 0000000..86d984f Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100177.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100222.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100222.xlsx new file mode 100644 index 0000000..b5030df Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100222.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100354.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100354.xlsx new file mode 100644 index 0000000..a7c3bad Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100354.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100382.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100382.xlsx new file mode 100644 index 0000000..a05ffb3 Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100382.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100411.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100411.xlsx new file mode 100644 index 0000000..ad71785 Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100411.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100421.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100421.xlsx new file mode 100644 index 0000000..bff354f Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100421.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100498.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100498.xlsx new file mode 100644 index 0000000..a48fdfd Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100498.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100510.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100510.xlsx new file mode 100644 index 0000000..f15d02d Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100510.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100587.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100587.xlsx new file mode 100644 index 0000000..ceaab6f Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100587.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100593.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100593.xlsx new file mode 100644 index 0000000..143ba96 Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100593.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100616.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100616.xlsx new file mode 100644 index 0000000..35ba35a Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100616.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100678.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100678.xlsx new file mode 100644 index 0000000..7f60ec7 Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100678.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100717.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100717.xlsx new file mode 100644 index 0000000..168f5ea Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100717.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100728.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100728.xlsx new file mode 100644 index 0000000..a6cae5d Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100728.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100733.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100733.xlsx new file mode 100644 index 0000000..e786dce Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100733.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100740.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100740.xlsx new file mode 100644 index 0000000..f00249a Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100740.xlsx differ diff --git a/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100776.xlsx b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100776.xlsx new file mode 100644 index 0000000..794af0c Binary files /dev/null and b/IWRS/xls_shipment_details_77242113UCO3001/shipment_details_100776.xlsx differ diff --git a/IWRS/xls_shipments_77242113UCO3001/shipments_report_77242113UCO3001.xlsx b/IWRS/xls_shipments_77242113UCO3001/shipments_report_77242113UCO3001.xlsx new file mode 100644 index 0000000..50949b3 Binary files /dev/null and b/IWRS/xls_shipments_77242113UCO3001/shipments_report_77242113UCO3001.xlsx differ