package com.brilliance.isc.swift.objmtconvert.model.mt9xx.mt9XXAbsCreator;

import com.brilliance.isc.swift.objmtconvert.annotation.FieldDescription;
import com.brilliance.isc.swift.objmtconvert.annotation.Status;
import com.brilliance.isc.swift.objmtconvert.annotation.TagName;
import com.brilliance.isc.swift.objmtconvert.annotation.TagRegex;
import com.brilliance.isc.swift.objmtconvert.model.AbsMTCreator;
import com.brilliance.isc.swift.objmtconvert.result.MtResult;

import java.util.List;

/**
 * @author hedonghao
 * @date 2023/2/24
 */
public class MT935AbsCreator extends AbsMTCreator {
    @Status("O")
    @TagName("23")
    @FieldDescription("Further Identification")
    @TagRegex("16x")
    //23
    private String furtherIdentification;
    @Status("O")
    @TagName("25")
    @FieldDescription("Account Identification")
    @TagRegex("35x")
    //25
    private String accountIdentification;
    @Status("M")
    @TagName("30")
    @FieldDescription("Effective Date of New Rate")
    @TagRegex("6!n")
    //30
    private String effectiveDateOfNewRate;
    @Status("M")
    @TagName("37H")
    @FieldDescription("New Interest Rate")
    @TagRegex("1!a[N]12d")
    //37H
    private List<String> newInterestRate;

    public String getFurtherIdentification() {
        return furtherIdentification;
    }

    public void setFurtherIdentification(String furtherIdentification) {
        this.furtherIdentification = furtherIdentification;
    }

    public String getAccountIdentification() {
        return accountIdentification;
    }

    public void setAccountIdentification(String accountIdentification) {
        this.accountIdentification = accountIdentification;
    }

    public String getEffectiveDateOfNewRate() {
        return effectiveDateOfNewRate;
    }

    public void setEffectiveDateOfNewRate(String effectiveDateOfNewRate) {
        this.effectiveDateOfNewRate = effectiveDateOfNewRate;
    }

    public List<String> getNewInterestRate() {
        return newInterestRate;
    }

    public void setNewInterestRate(List<String> newInterestRate) {
        this.newInterestRate = newInterestRate;
    }

    public MT935AbsCreator(String jsonData) throws Exception {
        super(jsonData);
    }

    public MT935AbsCreator() {
        super();
    }


    public MtResult unpack() {
        return null;
    }


}
