package cz.moneta.test.system.ods;

import cz.moneta.test.dsl.Harness;
import cz.moneta.test.harness.annotations.TestCase;
import cz.moneta.test.harness.annotations.TestScenario;
import org.jooq.Record;
import org.jooq.Result;

@TestScenario(name = "Fetches card information from ODS")
public class OdsCardInfo {

    @TestCase(name = "Fetches card information from ODS")
    public void get_card_info(Harness harness) {

        Result<Record> cardInfo = harness.tasks().ods()
                .getCardInfo("0001022637");

        harness.log("INST_PT_KEY: {}", cardInfo.getValue(0, "INST_PT_KEY"));
        harness.log("ACC_NUM: {}", cardInfo.getValue(0, "ACC_NUM"));
        harness.log("PRODUKT: {}", cardInfo.getValue(0, "PRODUKT"));
        harness.log("POS_ID: {}", cardInfo.getValue(0, "POS_ID"));
        harness.log("CONTR_BLOCK_CODE_1: {}", cardInfo.getValue(0, "CONTR_BLOCK_CODE_1"));
        harness.log("CONTR_BLOCK_CODE_2: {}", cardInfo.getValue(0, "CONTR_BLOCK_CODE_2"));
        harness.log("EMP_FLAG: {}", cardInfo.getValue(0, "EMP_FLAG"));
        harness.log("CARD_NUM: {}", cardInfo.getValue(0, "CARD_NUM"));
        harness.log("CARD_VARIANT: {}", cardInfo.getValue(0, "CARD_VARIANT"));
        harness.log("CARD_COBRAND: {}", cardInfo.getValue(0, "CARD_COBRAND"));
        harness.log("CARD_BRAND: {}", cardInfo.getValue(0, "CARD_BRAND"));
        harness.log("DESIGN_CARD_TP_ID: {}", cardInfo.getValue(0, "DESIGN_CARD_TP_ID"));
        harness.log("AUTH_LMT_AMT_ATM: {}", cardInfo.getValue(0, "AUTH_LMT_AMT_ATM"));
        harness.log("AUTH_LMT_AMT_POS: {}", cardInfo.getValue(0, "AUTH_LMT_AMT_POS"));
        harness.log("EXPR_DATE: {}", cardInfo.getValue(0, "EXPR_DATE"));
        harness.log("LMT_TYPE: {}", cardInfo.getValue(0, "LMT_TYPE"));
        harness.log("CARD_BLOCK_CODE: {}", cardInfo.getValue(0, "CARD_BLOCK_CODE"));
        harness.log("CARD_BLOCK_DATE: {}", cardInfo.getValue(0, "CARD_BLOCK_DATE"));
        harness.log("CARD_TECHNOLOGY: {}", cardInfo.getValue(0, "CARD_TECHNOLOGY"));
        harness.log("AUTH_LMT_AMT_OTC: {}", cardInfo.getValue(0, "AUTH_LMT_AMT_OTC"));
        harness.log("FACILITY_LMT_AMT: {}", cardInfo.getValue(0, "FACILITY_LMT_AMT"));
        harness.log("SYS_PROD_TP_ID: {}", cardInfo.getValue(0, "SYS_PROD_TP_ID"));
        harness.log("CONTR_NUM: {}", cardInfo.getValue(0, "CONTR_NUM"));
        harness.log("SIGN_DATE: {}", cardInfo.getValue(0, "SIGN_DATE"));
        harness.log("CARD_PCT_ID: {}", cardInfo.getValue(0, "CARD_PCT_ID"));
        harness.log("VAR_PROD_TP_ID: {}", cardInfo.getValue(0, "VAR_PROD_TP_ID"));
        harness.log("SUPLEMENTARY_CARD_FLAG: {}", cardInfo.getValue(0, "SUPLEMENTARY_CARD_FLAG"));
        harness.log("CURR_ID: {}", cardInfo.getValue(0, "CURR_ID"));
        harness.log("ACC_STAT: {}", cardInfo.getValue(0, "ACC_STAT"));


    }
}
