import 'package:domain/entity/response/u_k_attendance_entity.dart';
import 'package:domain/generated/json/base/json_field.dart';
import 'package:domain/generated/json/u_k_report_attendance_entity.g.dart';
import 'dart:convert';
export 'package:domain/generated/json/u_k_report_attendance_entity.g.dart';

@JsonSerializable()
class UKReportAttendanceEntity {
	int total = 0;
	List<UKReportAttendanceRows> rows = [];

	UKReportAttendanceEntity();

	factory UKReportAttendanceEntity.fromJson(Map<String, dynamic> json) => $UKReportAttendanceEntityFromJson(json);

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

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

@JsonSerializable()
class UKReportAttendanceRows {
	String? id;
	@JSONField(name: "staff_name")
	String? staffName;
	@JSONField(name: "ic_no")
	String? icNo;
	@JSONField(name: "department_name")
	String? departmentName;
	@JSONField(name: "job_date")
	String? jobDate;
	@JSONField(name: "start_time")
	String? startTime;
	@JSONField(name: "end_time")
	String? endTime;
	@JSONField(name: "adjust_show")
	String? adjustShow;
	@JSONField(name: "total_show")
	String? totalShow;
	@JSONField(name: "work_in")
	UKAttendanceInOut? workIn;
	@JSONField(name: "work_out")
	UKAttendanceInOut? workOut;
	@JSONField(name: "w_in")
	int wIn = 0;
	@JSONField(name: "w_out")
	int wOut = 0;
	@JSONField(name: "revise_hours")
	String? reviseHours;

	UKReportAttendanceRows();

	factory UKReportAttendanceRows.fromJson(Map<String, dynamic> json) => $UKReportAttendanceRowsFromJson(json);

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

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