def select_ams_refund_payment(date, price, description, reference_number=None): sc.get_m6_coordinates() sites_dictionary = read_pickle_file('sites.p') deposit_options_dictionary = read_pickle_file('deposit_options.p') site = take_screenshot(1517, 1036, 146, 17) if (description == 'ams' and sites_dictionary[site] in ['A1', 'A3']) or \ (description == 'ir' and sites_dictionary[site] in ['A2', 'A3', 'Northstar', 'Breckenridge']) or \ (description == 'sol' and sites_dictionary[site] in ['Northstar', 'Breckenridge']): button = 'payment' else: button = 'insert' if description == 'ams': pyautogui.click(m6[button]) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) x, y = m8['title'] for i in range(9): refund_option = take_screenshot(x + 32, y + 91, 135, 11) try: if deposit_options_dictionary[refund_option] == 'ams cc refund': pyautogui.click(x + 75, y + 91) break elif i == 8: sys.exit("Couldn't find correct option.") else: y += 13 except KeyError: y += 13 if i == 8: sys.exit("Couldn't find correct option.") elif description == 'ir': pyautogui.click(m6[button]) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) if button == 'payment': pyautogui.click(m8['transaction_code_scroll_bar']) x, y = m8['title'] for i in range(9): refund_option = take_screenshot(x + 32, y + 91, 135, 11) try: if deposit_options_dictionary[refund_option] == 'ir cc refund': pyautogui.click(x + 75, y + 91) break elif i == 8: sys.exit("Couldn't find correct option.") else: y += 13 except KeyError: y += 13 if i == 8: sys.exit("Couldn't find correct option.") elif description == 'sol': pyautogui.click(m6[button]) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) if button == 'payment' or sites_dictionary[site] in ['Cabo', 'A2', 'A3']: pyautogui.click(m8['transaction_code_scroll_bar']) pyautogui.click(m8['transaction_code_scroll_bar']) x, y = m8['title'] for i in range(9): refund_option = take_screenshot(x + 32, y + 91, 135, 11) try: if deposit_options_dictionary[refund_option] == 'sol cc refund': pyautogui.click(x + 75, y + 91) break elif i == 8: sys.exit("Couldn't find correct option.") else: y += 13 except KeyError: y += 13 if i == 8: sys.exit("Couldn't find correct option.") elif description == 'ih': button = 'insert' pyautogui.click(m6[button]) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) x, y = m8['title'] for i in range(9): refund_option = take_screenshot(x + 32, y + 91, 135, 11) try: if deposit_options_dictionary[refund_option] == 'ir cc refund': pyautogui.click(x + 75, y + 91) pyautogui.click(m8['description']) keyboard.send('ctrl + z') keyboard.write('IH REFUND') break elif i == 8: sys.exit("Couldn't find correct option.") else: y += 13 except KeyError: y += 13 if i == 8: sys.exit("Couldn't find correct option.") if button == 'insert': pyautogui.doubleClick(m8['amount']) keyboard.write(price) """attempts = 0 change_description_name = 0 image = None global transaction_code if description == 'ams': if transaction_code > 4: transaction_code = 0 if transaction_code == 0 or transaction_code == 1: pyautogui.click(m6['payment']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_credit_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_credit_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 1 else: transaction_code = 0 pyautogui.click(m8['cancel']) if transaction_code == 0 or transaction_code == 2: attempts = 0 pyautogui.click(m6['payment']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_cc_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_cc_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 2 else: transaction_code = 0 pyautogui.click(m8['cancel']) if transaction_code == 0 or transaction_code == 3: attempts = 0 pyautogui.click(m6['insert']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_cc_ref.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_cc_ref.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 3 else: transaction_code = 0 pyautogui.click(m8['cancel']) if transaction_code == 0 or transaction_code == 4: pyautogui.click(m6['insert']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) attempts = 0 image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_credit_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_credit_refund.png', region=(136, 652, 392, 247)) if image is not None: transaction_code = 4 else: transaction_code = 0 sys.exit("Couldn't find correct choice") elif description == 'ir': if (0 < transaction_code < 5) or transaction_code > 6: transaction_code = 0 if transaction_code == 0 or transaction_code == 5: attempts = 0 pyautogui.click(m6['insert']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 5 else: transaction_code = 0 pyautogui.click(m8['cancel']) if transaction_code == 0 or transaction_code == 6: attempts = 0 pyautogui.click(m6['payment']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) pyautogui.click(m8['transaction_code_scroll_bar']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_cc_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_cc_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 6 else: # Selecting IH Credit Refund and changing it to IR Credit Refund transaction_code = 0 pyautogui.click(m8['cancel']) attempts = 0 pyautogui.click(m6['insert']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ih_credit_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ih_credit_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: change_description_name = 1 else: transaction_code = 0 sys.exit("Couldn't find correct choice") elif description == 'sol': if 0 < transaction_code < 7: transaction_code = 0 if transaction_code == 0 or transaction_code == 7: attempts = 0 pyautogui.click(m6['insert']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) pyautogui.click(m8['transaction_code_scroll_bar']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\sol_cc_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\sol_cc_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 7 else: transaction_code = 0 pyautogui.click(m8['cancel']) if transaction_code == 0 or transaction_code == 8: attempts = 0 pyautogui.click(m6['insert']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) pyautogui.click(m8['transaction_code_scroll_bar']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\sol_credit_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\sol_credit_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 8 else: transaction_code = 0 pyautogui.click(m8['cancel']) if transaction_code == 0 or transaction_code == 9: attempts = 0 pyautogui.click(m6['payment']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) pyautogui.click(m8['transaction_code_scroll_bar']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\sol_credit_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\sol_credit_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 9 else: transaction_code = 0 sys.exit("Couldn't find correct choice") pyautogui.click(image) if change_description_name == 1: pyautogui.click(m8['description']) keyboard.send('ctrl + z') keyboard.write('IR CREDIT CARD REFUND') pyautogui.doubleClick(m8['amount']) keyboard.write(price) if (2 < transaction_code < 6) or (6 < transaction_code < 9): pyautogui.doubleClick(m8['amount']) keyboard.write(price)""" pyautogui.doubleClick(m8['reference']) if reference_number is None: keyboard.send('ctrl + v') else: keyboard.write(reference_number) pyautogui.doubleClick(m8['date']) keyboard.write(date) keyboard.send('tab') pyautogui.click(m8['ok']) time.sleep(0.3) pyautogui.click(880, 565) # Clicking yes to the warning that appears pyautogui.click(m6['ok']) image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_menu.png', region=(514, 245, 889, 566)) while image is None: image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_menu.png', region=(514, 245, 889, 566)) x, y = image pyautogui.click(x + 265, y + 475) image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_date.png', region=(514, 245, 889, 566)) while image is None: image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_date.png', region=(514, 245, 889, 566)) x, y = image pyautogui.click(x - 20, y + 425)
def select_ir_refund_payment(date, price, reference_number=None): sc.get_m6_coordinates() image = None pyautogui.click(m6['insert']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) attempts = 0 global transaction_code if transaction_code == 0 or transaction_code == 1: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 1 else: transaction_code = 0 if transaction_code == 0 or transaction_code == 2: attempts = 0 pyautogui.click(m8['cancel']) pyautogui.click(m6['payment']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) pyautogui.click(m8['transaction_code_scroll_bar']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_cc_refund.png', region=(136, 652, 392, 247)) while image is None and attempts <= 2: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ir_cc_refund.png', region=(136, 652, 392, 247)) attempts += 1 if image is not None: transaction_code = 2 else: transaction_code = 0 sys.exit("Couldn't find correct choice") pyautogui.click(image) if transaction_code == 1: pyautogui.doubleClick(m8['amount']) keyboard.write(price) pyautogui.doubleClick(m8['reference']) if reference_number is None: keyboard.send('ctrl + v') else: keyboard.write(reference_number) pyautogui.doubleClick(m8['date']) keyboard.write(date) keyboard.send('tab') pyautogui.click(m8['ok']) time.sleep(0.3) pyautogui.click(880, 565) # Clicking yes to the warning that appears now = datetime.datetime.now() now_str = now.strftime("%Y-%m-%d-%H-%M-%S") outfile = pyautogui.screenshot( 'C:\\Users\\Jared.Abrahams\\work\\deposit_screenshots\\ImageFile{}.png'.format(now_str)) pyautogui.click(m6['ok']) image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_menu.png', region=(514, 245, 889, 566)) while image is None: image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_menu.png', region=(514, 245, 889, 566)) x, y = image pyautogui.click(x + 265, y + 475) image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_date.png', region=(514, 245, 889, 566)) while image is None: image = pyautogui.locateCenterOnScreen('C:\\Users\\Jared.Abrahams\\Screenshots\\sc_tour_date.png', region=(514, 245, 889, 566)) x, y = image pyautogui.click(x - 20, y + 425)
def apply_to_mv(deposit_df): pyautogui.click(m3['tour_packages']) pyautogui.click(m3['deposit_1']) pyautogui.click(m3['change_deposit']) deposit_item_amount = count_items_in_deposit() sc.get_m6_coordinates() x, y = m6['deposit_1'] y = y + 13 * (deposit_item_amount - 1) pyautogui.click(x, y) keyboard.send('alt + v') sc.get_m7_coordinates() pyautogui.doubleClick(m7['reference']) keyboard.press_and_release('ctrl + c') time.sleep(0.5) old_reference = clipboard.paste() old_reference = old_reference.upper() if old_reference[0] != 'D': sys.exit("Wrong Reference") new_reference = old_reference.replace("D-", "U-") clipboard.copy(str(new_reference)) pyautogui.click(m7['cancel']) sc.get_m6_coordinates() pyautogui.click(m6['description']) keyboard.send('ctrl + z') keyboard.send('ctrl + c') r = Tk() old_description = r.selection_get(selection="CLIPBOARD") if 'AMS' in old_description: keyboard.write('AMS/Minivac') pyautogui.click(m6['payment']) sc.get_m8_coordinates() pyautogui.click(m8['transaction_code']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\apply_to_mv.png', region=(136, 652, 392, 247)) while image is None: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\apply_to_mv.png', region=(136, 652, 392, 247)) pyautogui.click(image) pyautogui.click(m8['reference']) keyboard.write('APPLY TO MV') pyautogui.click(m8['ok']) time.sleep(0.3) pyautogui.click(880, 565) pyautogui.click(m6['payment']) sc.get_m8_coordinates() time.sleep(0.3) pyautogui.click(m8['transaction_code']) image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_credit_payment.png', region=(136, 652, 392, 247)) while image is None: image = pyautogui.locateCenterOnScreen( 'C:\\Users\\Jared.Abrahams\\Screenshots\\ams_credit_payment.png', region=(136, 652, 392, 247)) pyautogui.click(image) pyautogui.doubleClick(m8['amount']) keyboard.write(deposit_df.Price[0]) pyautogui.click(m8['reference']) keyboard.write(new_reference) cf.pause('Ok?') pyautogui.click(m8['ok']) sc.get_m6_coordinates() pyautogui.click(m6['ok']) print('Applied Refundable Deposit to Minivac') deposit_df.Deposit_Type[0] = 'Non_Refundable'