class GetPrNotificationBodyList {
  List<PRHeader>? pRHeader;
  List<PRLines>? pRLines;
  String? pCURRENCYCODE;
  String? pINFORMATION;
  String? pQUESTION;

  GetPrNotificationBodyList(
      {this.pRHeader,
        this.pRLines,
        this.pCURRENCYCODE,
        this.pINFORMATION,
        this.pQUESTION});

  GetPrNotificationBodyList.fromJson(Map<String, dynamic> json) {
    if (json['PRHeader'] != null) {
      pRHeader = <PRHeader>[];
      json['PRHeader'].forEach((v) {
        pRHeader!.add(new PRHeader.fromJson(v));
      });
    }
    if (json['PRLines'] != null) {
      pRLines = <PRLines>[];
      json['PRLines'].forEach((v) {
        pRLines!.add(new PRLines.fromJson(v));
      });
    }
    pCURRENCYCODE = json['P_CURRENCY_CODE'];
    pINFORMATION = json['P_INFORMATION'];
    pQUESTION = json['P_QUESTION'];
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.pRHeader != null) {
      data['PRHeader'] = this.pRHeader!.map((v) => v.toJson()).toList();
    }
    if (this.pRLines != null) {
      data['PRLines'] = this.pRLines!.map((v) => v.toJson()).toList();
    }
    data['P_CURRENCY_CODE'] = this.pCURRENCYCODE;
    data['P_INFORMATION'] = this.pINFORMATION;
    data['P_QUESTION'] = this.pQUESTION;
    return data;
  }
}

class PRHeader {
  String? hDRATTRIBUTENAME;
  String? hDRATTRIBUTEVALUE;

  PRHeader({this.hDRATTRIBUTENAME, this.hDRATTRIBUTEVALUE});

  PRHeader.fromJson(Map<String, dynamic> json) {
    hDRATTRIBUTENAME = json['HDR_ATTRIBUTE_NAME'];
    hDRATTRIBUTEVALUE = json['HDR_ATTRIBUTE_VALUE'];
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> data = new Map<String, dynamic>();
    data['HDR_ATTRIBUTE_NAME'] = this.hDRATTRIBUTENAME;
    data['HDR_ATTRIBUTE_VALUE'] = this.hDRATTRIBUTEVALUE;
    return data;
  }
}

class PRLines {
  String? cOSTCENTER;
  String? dESCRIPTION;
  int? fROMROWNUM;
  int? iTEMAMU;
  String? iTEMCODE;
  num? lINEAMOUNT;
  int? lINENUM;
  int? nOOFROWS;
  int? qUANTITY;
  int? rOWNUM;
  int? tOROWNUM;
  num? uNITPRICE;
  String? uOM;

  PRLines(
      {this.cOSTCENTER,
        this.dESCRIPTION,
        this.fROMROWNUM,
        this.iTEMAMU,
        this.iTEMCODE,
        this.lINEAMOUNT,
        this.lINENUM,
        this.nOOFROWS,
        this.qUANTITY,
        this.rOWNUM,
        this.tOROWNUM,
        this.uNITPRICE,
        this.uOM});

  PRLines.fromJson(Map<String, dynamic> json) {
    cOSTCENTER = json['COST_CENTER'];
    dESCRIPTION = json['DESCRIPTION'];
    fROMROWNUM = json['FROM_ROW_NUM'];
    iTEMAMU = json['ITEM_AMU'];
    iTEMCODE = json['ITEM_CODE'];
    lINEAMOUNT = json['LINE_AMOUNT'];
    lINENUM = json['LINE_NUM'];
    nOOFROWS = json['NO_OF_ROWS'];
    qUANTITY = json['QUANTITY'];
    rOWNUM = json['ROW_NUM'];
    tOROWNUM = json['TO_ROW_NUM'];
    uNITPRICE = json['UNIT_PRICE'];
    uOM = json['UOM'];
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> data = new Map<String, dynamic>();
    data['COST_CENTER'] = this.cOSTCENTER;
    data['DESCRIPTION'] = this.dESCRIPTION;
    data['FROM_ROW_NUM'] = this.fROMROWNUM;
    data['ITEM_AMU'] = this.iTEMAMU;
    data['ITEM_CODE'] = this.iTEMCODE;
    data['LINE_AMOUNT'] = this.lINEAMOUNT;
    data['LINE_NUM'] = this.lINENUM;
    data['NO_OF_ROWS'] = this.nOOFROWS;
    data['QUANTITY'] = this.qUANTITY;
    data['ROW_NUM'] = this.rOWNUM;
    data['TO_ROW_NUM'] = this.tOROWNUM;
    data['UNIT_PRICE'] = this.uNITPRICE;
    data['UOM'] = this.uOM;
    return data;
  }
}
