class TaskListModel {
  String? inventoryId;
  String? inventoryName;
  num? undoneCount;
  List<ExcutivePlatformListOfTaskListModel>? excutivePlatformList;

  TaskListModel({
    this.inventoryId,
    this.inventoryName,
    this.undoneCount,
    this.excutivePlatformList,
  });

  TaskListModel.fromJson(json) {
    Map<String, dynamic> map = Map.from(json ?? {});

    inventoryId = map['inventoryId'];
    inventoryName = map['inventoryName'];
    undoneCount = map['undoneCount'];
    excutivePlatformList = List<ExcutivePlatformListOfTaskListModel>.from(
        (map["excutivePlatformList"] ?? [])
            .map((x) => ExcutivePlatformListOfTaskListModel.fromJson(x)));
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = Map<String, dynamic>();

    json['inventoryId'] = this.inventoryId;
    json['inventoryName'] = this.inventoryName;
    json['undoneCount'] = this.undoneCount;
    json['excutivePlatformList'] =
        List<dynamic>.from((excutivePlatformList ?? []).map((x) => x.toJson()));

    return json;
  }
}

class ExcutivePlatformListOfTaskListModel {
  String? id;
  String? title;
  dynamic content;
  String? status;
  dynamic beLongWeek;
  dynamic iscreatedBy;
  String? createdBy;
  dynamic isnowWeek;
  dynamic isoperator;
  dynamic operator;
  String? createdAt;
  dynamic updatedAt;
  dynamic finishedTime;
  bool? isPublic;
  dynamic isChild;
  String? mailFrom;
  dynamic mailFromIds;
  dynamic accessoryInfos;
  dynamic useTime;
  dynamic fatherContent;
  dynamic fatherTitle;
  dynamic closeTime;
  bool? isTimeOut;
  dynamic score;
  dynamic reviewed;
  dynamic reviewContent;
  dynamic startTime;
  dynamic createdByPhone;
  dynamic operatorPhone;
  dynamic childTaskCount;
  String? inventoryId;
  dynamic inventoryName;
  dynamic parentId;
  String? operatorId;
  dynamic source;
  dynamic relationSourceId;
  dynamic canStartTime;
  dynamic overdueTime;
  dynamic isExistNode;
  bool? seqencing;
  dynamic preset;
  bool? taskMultiStepEnable;
  bool? isMultiStep;
  dynamic supervisorId;
  dynamic supervisorName;
  bool? examine;
  bool? whetherCloseTime;
  num? nodeCount;
  num? notDoneCount;

  ExcutivePlatformListOfTaskListModel(
      {this.id,
      this.title,
      this.content,
      this.status,
      this.beLongWeek,
      this.iscreatedBy,
      this.createdBy,
      this.isnowWeek,
      this.isoperator,
      this.operator,
      this.createdAt,
      this.updatedAt,
      this.finishedTime,
      this.isPublic,
      this.isChild,
      this.mailFrom,
      this.mailFromIds,
      this.accessoryInfos,
      this.useTime,
      this.fatherContent,
      this.fatherTitle,
      this.closeTime,
      this.isTimeOut,
      this.score,
      this.reviewed,
      this.reviewContent,
      this.startTime,
      this.createdByPhone,
      this.operatorPhone,
      this.childTaskCount,
      this.inventoryId,
      this.inventoryName,
      this.parentId,
      this.operatorId,
      this.source,
      this.relationSourceId,
      this.canStartTime,
      this.overdueTime,
      this.isExistNode,
      this.seqencing,
      this.preset,
      this.taskMultiStepEnable,
      this.isMultiStep,
      this.supervisorId,
      this.supervisorName,
      this.examine,
      this.whetherCloseTime,
      this.nodeCount,
      this.notDoneCount});

  ExcutivePlatformListOfTaskListModel.fromJson(json) {
    Map<String, dynamic> map = Map.from(json ?? {});

    id = map['id'];
    title = map['title'];
    content = map['content'];
    status = map['status'];
    beLongWeek = map['beLongWeek'];
    iscreatedBy = map['iscreatedBy'];
    createdBy = map['createdBy'];
    isnowWeek = map['isnowWeek'];
    isoperator = map['isoperator'];
    operator = map['operator'];
    createdAt = map['createdAt'];
    updatedAt = map['updatedAt'];
    finishedTime = map['finishedTime'];
    isPublic = map['isPublic'];
    isChild = map['isChild'];
    mailFrom = map['mailFrom'];
    mailFromIds = map['mailFromIds'];
    accessoryInfos = map['accessoryInfos'];
    useTime = map['useTime'];
    fatherContent = map['fatherContent'];
    fatherTitle = map['fatherTitle'];
    closeTime = map['closeTime'];
    isTimeOut = map['isTimeOut'];
    score = map['score'];
    reviewed = map['reviewed'];
    reviewContent = map['reviewContent'];
    startTime = map['startTime'];
    createdByPhone = map['createdByPhone'];
    operatorPhone = map['operatorPhone'];
    childTaskCount = map['childTaskCount'];
    inventoryId = map['inventoryId'];
    inventoryName = map['inventoryName'];
    parentId = map['parentId'];
    operatorId = map['operatorId'];
    source = map['source'];
    relationSourceId = map['relationSourceId'];
    canStartTime = map['canStartTime'];
    overdueTime = map['overdueTime'];
    isExistNode = map['isExistNode'];
    seqencing = map['seqencing'];
    preset = map['preset'];
    taskMultiStepEnable = map['taskMultiStepEnable'];
    isMultiStep = map['isMultiStep'];
    supervisorId = map['supervisorId'];
    supervisorName = map['supervisorName'];
    examine = map['examine'];
    whetherCloseTime = map['whetherCloseTime'];
    nodeCount = map['nodeCount'];
    notDoneCount = map['notDoneCount'];
  }

  Map<String, dynamic> toJson() {
    Map<String, dynamic> json = Map<String, dynamic>();

    json['id'] = this.id;
    json['title'] = this.title;
    json['content'] = this.content;
    json['status'] = this.status;
    json['beLongWeek'] = this.beLongWeek;
    json['iscreatedBy'] = this.iscreatedBy;
    json['createdBy'] = this.createdBy;
    json['isnowWeek'] = this.isnowWeek;
    json['isoperator'] = this.isoperator;
    json['operator'] = this.operator;
    json['createdAt'] = this.createdAt;
    json['updatedAt'] = this.updatedAt;
    json['finishedTime'] = this.finishedTime;
    json['isPublic'] = this.isPublic;
    json['isChild'] = this.isChild;
    json['mailFrom'] = this.mailFrom;
    json['mailFromIds'] = this.mailFromIds;
    json['accessoryInfos'] = this.accessoryInfos;
    json['useTime'] = this.useTime;
    json['fatherContent'] = this.fatherContent;
    json['fatherTitle'] = this.fatherTitle;
    json['closeTime'] = this.closeTime;
    json['isTimeOut'] = this.isTimeOut;
    json['score'] = this.score;
    json['reviewed'] = this.reviewed;
    json['reviewContent'] = this.reviewContent;
    json['startTime'] = this.startTime;
    json['createdByPhone'] = this.createdByPhone;
    json['operatorPhone'] = this.operatorPhone;
    json['childTaskCount'] = this.childTaskCount;
    json['inventoryId'] = this.inventoryId;
    json['inventoryName'] = this.inventoryName;
    json['parentId'] = this.parentId;
    json['operatorId'] = this.operatorId;
    json['source'] = this.source;
    json['relationSourceId'] = this.relationSourceId;
    json['canStartTime'] = this.canStartTime;
    json['overdueTime'] = this.overdueTime;
    json['isExistNode'] = this.isExistNode;
    json['seqencing'] = this.seqencing;
    json['preset'] = this.preset;
    json['taskMultiStepEnable'] = this.taskMultiStepEnable;
    json['isMultiStep'] = this.isMultiStep;
    json['supervisorId'] = this.supervisorId;
    json['supervisorName'] = this.supervisorName;
    json['examine'] = this.examine;
    json['whetherCloseTime'] = this.whetherCloseTime;
    json['nodeCount'] = this.nodeCount;
    json['notDoneCount'] = this.notDoneCount;

    return json;
  }
}
