class OrderModel {
  List<OrerDetailModel> records;
  int total;
  int size;
  int current;
  bool searchCount;
  int pages;

  OrderModel(
      {this.records,
      this.total,
      this.size,
      this.current,
      this.searchCount,
      this.pages});

  OrderModel.fromJson(Map<String, dynamic> json) {
    if (json['records'] != null) {
      records = new List<OrerDetailModel>();
      json['records'].forEach((v) {
        records.add(new OrerDetailModel.fromJson(v));
      });
    }
    total = json['total'];
    size = json['size'];
    current = json['current'];
    searchCount = json['searchCount'];
    pages = json['pages'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.records != null) {
      data['records'] = this.records.map((v) => v.toJson()).toList();
    }
    data['total'] = this.total;
    data['size'] = this.size;
    data['current'] = this.current;
    data['searchCount'] = this.searchCount;
    data['pages'] = this.pages;
    return data;
  }
}

class OrerDetailModel {
  int id;
  int createTime;
  String createBy;
  int updateTime;
  String updateBy;
  int dataId;
  int dataTable;
  int userId;
  int isInvoice;
  dynamic redEnvelopeDeduction;
  int redEnvelopeId;
  dynamic couponDeduction;
  int couponId;
  dynamic totalCost;
  dynamic payCost;
  String orderNo;
  int payType;
  int orderStatus;
  String orderSerialNumber;
  LiftCaseEntity liftCaseEntity;
  LiftCaseAppealEntity liftCaseAppealEntity;

  OrerDetailModel(
      {this.id,
      this.createTime,
      this.createBy,
      this.updateTime,
      this.updateBy,
      this.dataId,
      this.dataTable,
      this.userId,
      this.isInvoice,
      this.redEnvelopeDeduction,
      this.redEnvelopeId,
      this.couponDeduction,
      this.couponId,
      this.totalCost,
      this.payCost,
      this.orderNo,
      this.payType,
      this.orderStatus,
      this.orderSerialNumber,
      this.liftCaseEntity,
      this.liftCaseAppealEntity});

  OrerDetailModel.fromJson(Map<String, dynamic> json) {
    id = json['id'];
    createTime = json['createTime'];
    createBy = json['createBy'];
    updateTime = json['updateTime'];
    updateBy = json['updateBy'];
    dataId = json['dataId'];
    dataTable = json['dataTable'];
    userId = json['userId'];
    isInvoice = json['isInvoice'];
    redEnvelopeDeduction = json['redEnvelopeDeduction'];
    redEnvelopeId = json['redEnvelopeId'];
    couponDeduction = json['couponDeduction'];
    couponId = json['couponId'];
    totalCost = json['totalCost'];
    payCost = json['payCost'];
    orderNo = json['orderNo'];
    payType = json['payType'];
    orderStatus = json['orderStatus'];
    orderSerialNumber = json['orderSerialNumber'];
    liftCaseEntity = json['liftCaseEntity'] != null
        ? new LiftCaseEntity.fromJson(json['liftCaseEntity'])
        : null;
    liftCaseAppealEntity = json['liftCaseAppealEntity'] != null
        ? new LiftCaseAppealEntity.fromJson(json['liftCaseAppealEntity'])
        : null;
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['id'] = this.id;
    data['createTime'] = this.createTime;
    data['createBy'] = this.createBy;
    data['updateTime'] = this.updateTime;
    data['updateBy'] = this.updateBy;
    data['dataId'] = this.dataId;
    data['dataTable'] = this.dataTable;
    data['userId'] = this.userId;
    data['isInvoice'] = this.isInvoice;
    data['redEnvelopeDeduction'] = this.redEnvelopeDeduction;
    data['redEnvelopeId'] = this.redEnvelopeId;
    data['couponDeduction'] = this.couponDeduction;
    data['couponId'] = this.couponId;
    data['totalCost'] = this.totalCost;
    data['payCost'] = this.payCost;
    data['orderNo'] = this.orderNo;
    data['payType'] = this.payType;
    data['orderStatus'] = this.orderStatus;
    data['orderSerialNumber'] = this.orderSerialNumber;
    if (this.liftCaseEntity != null) {
      data['liftCaseEntity'] = this.liftCaseEntity.toJson();
    }
    if (this.liftCaseAppealEntity != null) {
      data['liftCaseAppealEntity'] = this.liftCaseAppealEntity.toJson();
    }
    return data;
  }
}

class LiftCaseEntity {
  int id;
  int createTime;
  String createBy;
  int updateTime;
  String updateBy;
  String expression;
  String usedMethods;
  String imgs;
  int brandId;
  String sessionId;
  String address;
  String chargerId;
  dynamic travelCost;
  dynamic serviceCost;
  dynamic totalCost;
  int arrivedTime;
  int statuz;
  int acceptStatus;
  int arrivedFlag;
  String arrivedAddress;
  int dataTable;
  String createUserId;
  int customerServiceId;
  String name;
  String avatarUrl;
  String brandName;

  LiftCaseEntity(
      {this.id,
      this.createTime,
      this.createBy,
      this.updateTime,
      this.updateBy,
      this.expression,
      this.usedMethods,
      this.imgs,
      this.brandId,
      this.sessionId,
      this.address,
      this.chargerId,
      this.travelCost,
      this.serviceCost,
      this.totalCost,
      this.arrivedTime,
      this.statuz,
      this.acceptStatus,
      this.arrivedFlag,
      this.arrivedAddress,
      this.dataTable,
      this.createUserId,
      this.customerServiceId,
      this.name,
      this.avatarUrl,
      this.brandName});

  LiftCaseEntity.fromJson(Map<String, dynamic> json) {
    id = json['id'];
    createTime = json['createTime'];
    createBy = json['createBy'];
    updateTime = json['updateTime'];
    updateBy = json['updateBy'];
    expression = json['expression'];
    usedMethods = json['usedMethods'];
    imgs = json['imgs'];
    brandId = json['brandId'];
    sessionId = json['sessionId'];
    address = json['address'];
    chargerId = json['chargerId'];
    travelCost = json['travelCost'];
    serviceCost = json['serviceCost'];
    totalCost = json['totalCost'];
    arrivedTime = json['arrivedTime'];
    statuz = json['statuz'];
    acceptStatus = json['acceptStatus'];
    arrivedFlag = json['arrivedFlag'];
    arrivedAddress = json['arrivedAddress'];
    dataTable = json['dataTable'];
    createUserId = json['createUserId'];
    customerServiceId = json['customerServiceId'];
    name = json['name'];
    avatarUrl = json['avatarUrl'];
    brandName = json['brandName'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['id'] = this.id;
    data['createTime'] = this.createTime;
    data['createBy'] = this.createBy;
    data['updateTime'] = this.updateTime;
    data['updateBy'] = this.updateBy;
    data['expression'] = this.expression;
    data['usedMethods'] = this.usedMethods;
    data['imgs'] = this.imgs;
    data['brandId'] = this.brandId;
    data['sessionId'] = this.sessionId;
    data['address'] = this.address;
    data['chargerId'] = this.chargerId;
    data['travelCost'] = this.travelCost;
    data['serviceCost'] = this.serviceCost;
    data['totalCost'] = this.totalCost;
    data['arrivedTime'] = this.arrivedTime;
    data['statuz'] = this.statuz;
    data['acceptStatus'] = this.acceptStatus;
    data['arrivedFlag'] = this.arrivedFlag;
    data['arrivedAddress'] = this.arrivedAddress;
    data['dataTable'] = this.dataTable;
    data['createUserId'] = this.createUserId;
    data['customerServiceId'] = this.customerServiceId;
    data['name'] = this.name;
    data['avatarUrl'] = this.avatarUrl;
    data['brandName'] = this.brandName;
    return data;
  }
}

class LiftCaseAppealEntity {
  String appealerId;
  String cancelSeason;
  int caseId;
  String content;
  String createBy;
  int createTime;
  int dataId;
  String expertName;
  String expression;
  int id;
  String imgs;
  String sessionid;
  int statuz;
  String updateBy;
  int updateTime;
  String userName;

  LiftCaseAppealEntity(
      {this.appealerId,
      this.cancelSeason,
      this.caseId,
      this.content,
      this.createBy,
      this.createTime,
      this.dataId,
      this.expertName,
      this.expression,
      this.id,
      this.imgs,
      this.sessionid,
      this.statuz,
      this.updateBy,
      this.updateTime,
      this.userName});

  LiftCaseAppealEntity.fromJson(Map<String, dynamic> json) {
    appealerId = json['appealerId'];
    cancelSeason = json['cancelSeason'];
    caseId = json['caseId'];
    content = json['content'];
    createBy = json['createBy'];
    createTime = json['createTime'];
    dataId = json['dataId'];
    expertName = json['expertName'];
    expression = json['expression'];
    id = json['id'];
    imgs = json['imgs'];
    sessionid = json['sessionid'];
    statuz = json['statuz'];
    updateBy = json['updateBy'];
    updateTime = json['updateTime'];
    userName = json['userName'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['appealerId'] = this.appealerId;
    data['cancelSeason'] = this.cancelSeason;
    data['caseId'] = this.caseId;
    data['content'] = this.content;
    data['createBy'] = this.createBy;
    data['createTime'] = this.createTime;
    data['dataId'] = this.dataId;
    data['expertName'] = this.expertName;
    data['expression'] = this.expression;
    data['id'] = this.id;
    data['imgs'] = this.imgs;
    data['sessionid'] = this.sessionid;
    data['statuz'] = this.statuz;
    data['updateBy'] = this.updateBy;
    data['updateTime'] = this.updateTime;
    data['userName'] = this.userName;
    return data;
  }
}
