import 'package:domain/generated/json/base/json_convert_content.dart'; import 'package:domain/entity/response/contract_detail_entity.dart'; import 'package:domain/entity/response/index_option_entity.dart'; ContractDetailEntity $ContractDetailEntityFromJson(Map json) { final ContractDetailEntity contractDetailEntity = ContractDetailEntity(); final ContractDetailRow? row = jsonConvert.convert(json['row']); if (row != null) { contractDetailEntity.row = row; } final List? agencyList = (json['agency_list'] as List?)?.map( (e) => jsonConvert.convert(e) as IndexOptionEntity).toList(); if (agencyList != null) { contractDetailEntity.agencyList = agencyList; } return contractDetailEntity; } Map $ContractDetailEntityToJson(ContractDetailEntity entity) { final Map data = {}; data['row'] = entity.row?.toJson(); data['agency_list'] = entity.agencyList.map((v) => v.toJson()).toList(); return data; } extension ContractDetailEntityExtension on ContractDetailEntity { ContractDetailEntity copyWith({ ContractDetailRow? row, List? agencyList, }) { return ContractDetailEntity() ..row = row ?? this.row ..agencyList = agencyList ?? this.agencyList; } } ContractDetailRow $ContractDetailRowFromJson(Map json) { final ContractDetailRow contractDetailRow = ContractDetailRow(); final String? id = jsonConvert.convert(json['id']); if (id != null) { contractDetailRow.id = id; } final String? employerId = jsonConvert.convert(json['employer_id']); if (employerId != null) { contractDetailRow.employerId = employerId; } final String? agencyId = jsonConvert.convert(json['agency_id']); if (agencyId != null) { contractDetailRow.agencyId = agencyId; } final String? startDate = jsonConvert.convert(json['start_date']); if (startDate != null) { contractDetailRow.startDate = startDate; } final String? endDate = jsonConvert.convert(json['end_date']); if (endDate != null) { contractDetailRow.endDate = endDate; } final String? file = jsonConvert.convert(json['file']); if (file != null) { contractDetailRow.file = file; } final int? status = jsonConvert.convert(json['status']); if (status != null) { contractDetailRow.status = status; } final String? createdAt = jsonConvert.convert(json['created_at']); if (createdAt != null) { contractDetailRow.createdAt = createdAt; } final String? updatedAt = jsonConvert.convert(json['updated_at']); if (updatedAt != null) { contractDetailRow.updatedAt = updatedAt; } final String? deletedAt = jsonConvert.convert(json['deleted_at']); if (deletedAt != null) { contractDetailRow.deletedAt = deletedAt; } return contractDetailRow; } Map $ContractDetailRowToJson(ContractDetailRow entity) { final Map data = {}; data['id'] = entity.id; data['employer_id'] = entity.employerId; data['agency_id'] = entity.agencyId; data['start_date'] = entity.startDate; data['end_date'] = entity.endDate; data['file'] = entity.file; data['status'] = entity.status; data['created_at'] = entity.createdAt; data['updated_at'] = entity.updatedAt; data['deleted_at'] = entity.deletedAt; return data; } extension ContractDetailRowExtension on ContractDetailRow { ContractDetailRow copyWith({ String? id, String? employerId, String? agencyId, String? startDate, String? endDate, String? file, int? status, String? createdAt, String? updatedAt, String? deletedAt, }) { return ContractDetailRow() ..id = id ?? this.id ..employerId = employerId ?? this.employerId ..agencyId = agencyId ?? this.agencyId ..startDate = startDate ?? this.startDate ..endDate = endDate ?? this.endDate ..file = file ?? this.file ..status = status ?? this.status ..createdAt = createdAt ?? this.createdAt ..updatedAt = updatedAt ?? this.updatedAt ..deletedAt = deletedAt ?? this.deletedAt; } }