import 'package:mohem_flutter_app/models/itg_forms_models/allowed_actions_model.dart';
import 'package:mohem_flutter_app/models/itg_forms_models/field_goups_model.dart';
import 'package:mohem_flutter_app/models/itg_forms_models/wf_history_model.dart';

class ITGRequest {
  List<AllowedActions>? allowedActions;
  List<dynamic>? attachments;
  List<FieldGoups>? fieldGoups;
  Null? grantFields;
  List<WFHistory>? wFHistory;

  ITGRequest({this.allowedActions, this.attachments, this.fieldGoups, this.grantFields, this.wFHistory});

  ITGRequest.fromJson(Map<String, dynamic> json) {
    if (json['AllowedActions'] != null) {
      allowedActions = <AllowedActions>[];
      json['AllowedActions'].forEach((v) {
        allowedActions!.add(new AllowedActions.fromJson(v));
      });
    }
    attachments = json['Attachments'];
    if (json['FieldGoups'] != null) {
      fieldGoups = <FieldGoups>[];
      json['FieldGoups'].forEach((v) {
        fieldGoups!.add(new FieldGoups.fromJson(v));
      });
    }
    grantFields = json['GrantFields'];
    if (json['WFHistory'] != null) {
      wFHistory = <WFHistory>[];
      json['WFHistory'].forEach((v) {
        wFHistory!.add(new WFHistory.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.allowedActions != null) {
      data['AllowedActions'] = this.allowedActions!.map((v) => v.toJson()).toList();
    }
    data['Attachments'] = this.attachments;
    if (this.fieldGoups != null) {
      data['FieldGoups'] = this.fieldGoups!.map((v) => v.toJson()).toList();
    }
    data['GrantFields'] = this.grantFields;
    if (this.wFHistory != null) {
      data['WFHistory'] = this.wFHistory!.map((v) => v.toJson()).toList();
    }
    return data;
  }
}
