import 'package:json_annotation/json_annotation.dart';

@JsonSerializable()
part 'inventarization_response.g.dart';

@JsonSerializable(explicitToJson: true)
class InventarizationResponse {
  InventarizationResponse(
      {required this.id,
      required this.appCompanyId,
      required this.inventoryDate,
      required this.docNumber,
      required this.molUserId,
      required this.refInvoiceStatus,
      required this.createdAt,
      required this.updatedAt,
      this.deletedAt,
      this.act});

  int id;

  @JsonKey(name: 'app_company_id')
  int appCompanyId;
  @JsonKey(name: 'inventory_date')
  DateTime inventoryDate;
  @JsonKey(name: 'doc_number')
  int docNumber;
  @JsonKey(name: 'mol_user_id')
  int molUserId;
  @JsonKey(name: 'act')
  int? act;
  @JsonKey(name: 'ref_invoice_status')
  int refInvoiceStatus;
  @JsonKey(name: 'created_at')
  DateTime createdAt;
  @JsonKey(name: 'updated_at')
  DateTime updatedAt;
  @JsonKey(name: 'deleted_at')
  DateTime? deletedAt;

  factory InventarizationResponse.fromJson(Map<String, dynamic> json) =>
      _$InventarizationResponseFromJson(json);

  Map<String, dynamic> toJson() => _$InventarizationResponseToJson(this);
}
