import 'package:domain/generated/json/base/json_field.dart';
import 'package:domain/generated/json/labour_report_v_n_entity.g.dart';
import 'dart:convert';
export 'package:domain/generated/json/labour_report_v_n_entity.g.dart';

@JsonSerializable()
class LabourReportVNEntity {
	@JSONField(name: "start_date")
	String? startDate;
	@JSONField(name: "end_date")
	String? endDate;
	List<LabourReportVNRows> rows = [];
	LabourReportVNTotal? total;

	LabourReportVNEntity();

	factory LabourReportVNEntity.fromJson(Map<String, dynamic> json) => $LabourReportVNEntityFromJson(json);

	Map<String, dynamic> toJson() => $LabourReportVNEntityToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class LabourReportVNRows {
	@JSONField(name: "outlet_id")
	String? outletId;
	@JSONField(name: "outlet_name")
	String? outletName;
	String? num;
	String? hrs;
	String? rms;
	String? amt;
	@JSONField(name: "in_num")
	String? inNum;
	@JSONField(name: "in_hrs")
	String? inHrs;
	@JSONField(name: "in_rms")
	String? inRms;
	@JSONField(name: "in_amt")
	String? inAmt;
	@JSONField(name: "tot_num")
	String? totNum;
	@JSONField(name: "tot_hrs")
	String? totHrs;
	@JSONField(name: "tot_rms")
	String? totRms;
	@JSONField(name: "tot_amt")
	String? totAmt;

	LabourReportVNRows();

	factory LabourReportVNRows.fromJson(Map<String, dynamic> json) => $LabourReportVNRowsFromJson(json);

	Map<String, dynamic> toJson() => $LabourReportVNRowsToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class LabourReportVNTotal {
	String? num;
	double? hrs;
	String? rms;
	String? amt;
	@JSONField(name: "in_num")
	String? inNum;
	@JSONField(name: "in_hrs")
	String? inHrs;
	@JSONField(name: "in_rms")
	String? inRms;
	@JSONField(name: "in_amt")
	String? inAmt;
	@JSONField(name: "tot_num")
	String? totNum;
	@JSONField(name: "tot_hrs")
	String? totHrs;
	@JSONField(name: "tot_rms")
	String? totRms;
	@JSONField(name: "tot_amt")
	String? totAmt;

	LabourReportVNTotal();

	factory LabourReportVNTotal.fromJson(Map<String, dynamic> json) => $LabourReportVNTotalFromJson(json);

	Map<String, dynamic> toJson() => $LabourReportVNTotalToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}