unit BodyCobClasses;

interface
  {$IFDEF UNICODE}
uses xSuperObject, xSuperJSON;

Type

  TCalendar = record
    [Alias('expiracao')]
    expiration: Integer;
  end;

  TDebtor = record
    [Alias('cpf')]  cpf: string;
    [Alias('nome')] name: string;
  end;

  TValor = record
    [Alias('original')]
    original: string;
  end;
 {$ENDIF}

  TBodyCobClasses = class
  private
    FCalendar  : TCalendar;
    FDebtor    : TDebtor;
    FValue     : TValue;
    FKey       : String;
    FSolicitacaoPagador: String;

    procedure SetCalendar(const Value: TCalendar);
    procedure SetDebtor(const Value: TDebtor);
    procedure SetValue(const Value: TValor);
    procedure SetKey(const Value: String);
    procedure SetSolicitacaoPagador(const Value: String);
  public
    [Alias('chave')]
    property Chave: String read FChave write SetChave;
    [Alias('solicitacaoPagador')]
    property SolicitacaoPagador: String read FSolicitacaoPagador write SetSolicitacaoPagador;
    [Alias('calendario')]
    property Calendario: TCalendar read FCalendar write SetCalendar;
    [Alias('devedor')]
    property Debtor: TDebtor read FDebtor write SetDebtor;
    [Alias('valor')]
    property Value: TValor read FValue write SetValue;
  constructor Create;
  end;

implementation

{ TBodyCobClasses }

constructor TBodyCobClasses.Create;
begin
  inherited;
end;

procedure TBodyCobClasses.SetCalendar(const Value: TCalendar);
begin
  FCalendar := Value;
end;

procedure TBodyCobClasses.SetChave(const Value: String);
begin
  FChave := Value;
end;

procedure TBodyCobClasses.SetDevedor(const Value: TDevedor);
begin
  FDevedor := Value;
end;

procedure TBodyCobClasses.SetSolicitacaoPagador(const Value: String);
begin
  FSolicitacaoPagador := Value;
end;

procedure TBodyCobClasses.SetValor(const Value: TValor);
begin
  FValor := Value;
end;

end.
