package cz.moneta.test.dsl.ufo.operations.ufoOperations;

import cz.moneta.test.harness.support.web.*;

import static cz.moneta.test.dsl.ufo.operations.ufoOperations.EXE705_S002_VerificationDataPage.PAGE_LABEL_DIV;

@Wait(PAGE_LABEL_DIV)
public interface EXE705_S002_VerificationDataPage extends WebFlow<EXE705_S002_VerificationDataPage> {

    String PAGE_LABEL_DIV = "EXE705el3";
    String ACCOUNT_NUMBER_PAYER_INPUT = "EXE705_S002_E003";
    String ACCOUNT_NUMBER_RECIPIENT_INPUT = "EXE705_S002_E005";
    String ACCOUNT_NUMBER_RECIPIENT_BANK_CODE_INPUT = "EXE705_S002_E006";
    String AMOUNT_INPUT = "EXE705_S002_E007";
    String SAVE_WITH_OPTIONAL_SYMBOLS_BUTTON = "EXE705_S002_B003";
    String SAVE_WITH_CONSTANT_SYMBOL_BUTTON = "EXE705_S002_B002";
    String DUE_DATE_INPUT = "EXE705_S002_U001";
    String VARIABLE_SYMBOL_INPUT = "EXE705_S002_E008";
    String CONSTANT_SYMBOL_INPUT = "EXE705_S002_E009";
    String SPECIFIC_SYMBOL_INPUT = "EXE705_S002_E010";

    @TypeInto(value = ACCOUNT_NUMBER_PAYER_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillAccountNumberPayer(String numberAccountPayer);

    @TypeInto(value = ACCOUNT_NUMBER_RECIPIENT_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillAccountNumberRecipient(String accountNumberRecipient);

    @TypeInto(value = ACCOUNT_NUMBER_RECIPIENT_BANK_CODE_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillAccountNumberRecipientBankCode(String accountNumberRecipientBankCode);

    @TypeInto(value = AMOUNT_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillAmount(String amount);

    @TypeInto(value = DUE_DATE_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillDueDate(String date);

    @TypeInto(value = VARIABLE_SYMBOL_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillVariableSymbol(String variableSymbol);

    @TypeInto(value = CONSTANT_SYMBOL_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillConstantSymbol(String constantSymbol);

    @TypeInto(value = SPECIFIC_SYMBOL_INPUT, clear = true)
    EXE705_S002_VerificationDataPage fillSpecificSymbol(String specificSymbol);

    @Click(SAVE_WITH_OPTIONAL_SYMBOLS_BUTTON)
    EXE705_S001_PaymentRecordsToApprovePage clickSaveWithOptionalSymbols();

    @Click(SAVE_WITH_CONSTANT_SYMBOL_BUTTON)
    EXE705_S001_PaymentRecordsToApprovePage clickSaveWithConstantSymbol();
}