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

@JsonSerializable()
class JobListAppliedStaffListEntity {
	int total = 0;
	List<JobListAppliedStaffListRows>? rows = [];

	JobListAppliedStaffListEntity();

	factory JobListAppliedStaffListEntity.fromJson(Map<String, dynamic> json) => $JobListAppliedStaffListEntityFromJson(json);

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

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

@JsonSerializable()
class JobListAppliedStaffListRows {
	@JSONField(name: "applied_id")
	int appliedId = 0;
	@JSONField(name: "member_id")
	int memberId = 0;
	@JSONField(name: "staff_name")
	String? staffName = null;
	@JSONField(name: "start_time")
	String? startTime = null;
	@JSONField(name: "end_time")
	String? endTime = null;
	@JSONField(name: "adjust_show")
	String? adjustShow = null;
	@JSONField(name: "total_show")
	int totalShow = 0;
	@JSONField(name: "total_rooms")
	int totalRooms = 0;
	int status = 0;
	@JSONField(name: "status_show")
	String? statusShow = null;
	@JSONField(name: "applied_at")
	String? appliedAt = null;
	@JSONField(name: "security_in")
	JobListAppliedStaffListRowsSecurityIn? securityIn;
	@JSONField(name: "security_out")
	JobListAppliedStaffListRowsSecurityOut? securityOut;
	@JSONField(name: "work_in")
	JobListAppliedStaffListRowsWorkIn? workIn;
	@JSONField(name: "work_out")
	JobListAppliedStaffListRowsWorkOut? workOut;
	@JSONField(name: "s_in")
	int sIn = 0;
	@JSONField(name: "s_out")
	int sOut = 0;
	@JSONField(name: "w_in")
	int wIn = 0;
	@JSONField(name: "w_out")
	int wOut = 0;
	@JSONField(name: "action_list")
	List<String>? actionList = [];

	bool isSelected = false;

	JobListAppliedStaffListRows();

	factory JobListAppliedStaffListRows.fromJson(Map<String, dynamic> json) => $JobListAppliedStaffListRowsFromJson(json);

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

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

@JsonSerializable()
class JobListAppliedStaffListRowsSecurityIn {
	String? time = null;
	dynamic image;
	int changed = 0;

	JobListAppliedStaffListRowsSecurityIn();

	factory JobListAppliedStaffListRowsSecurityIn.fromJson(Map<String, dynamic> json) => $JobListAppliedStaffListRowsSecurityInFromJson(json);

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

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

@JsonSerializable()
class JobListAppliedStaffListRowsSecurityOut {
	String? time = null;
	dynamic image;
	int changed = 0;

	JobListAppliedStaffListRowsSecurityOut();

	factory JobListAppliedStaffListRowsSecurityOut.fromJson(Map<String, dynamic> json) => $JobListAppliedStaffListRowsSecurityOutFromJson(json);

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

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

@JsonSerializable()
class JobListAppliedStaffListRowsWorkIn {
	String? time = null;
	dynamic image;
	int changed = 0;

	JobListAppliedStaffListRowsWorkIn();

	factory JobListAppliedStaffListRowsWorkIn.fromJson(Map<String, dynamic> json) => $JobListAppliedStaffListRowsWorkInFromJson(json);

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

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

@JsonSerializable()
class JobListAppliedStaffListRowsWorkOut {
	String? time = null;
	dynamic image;
	int changed = 0;

	JobListAppliedStaffListRowsWorkOut();

	factory JobListAppliedStaffListRowsWorkOut.fromJson(Map<String, dynamic> json) => $JobListAppliedStaffListRowsWorkOutFromJson(json);

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

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