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

@JsonSerializable()
class JobListEROptionEntity {
	@JSONField(name: "division_list")
	List<IndexOptionEntity>? divisionList = [];
	@JSONField(name: "outlet_list")
	List<IndexOptionEntity>? outletList = [];
	@JSONField(name: "with_ot")
	bool? withOt;
	@JSONField(name: "status_list")
	List<IndexOptionEntity>? statusList = [];
	@JSONField(name: "with_ot_job")
	bool? withOtJob;
	JobListEROptionFilter? filter;
	String? view;

	JobListEROptionEntity();

	factory JobListEROptionEntity.fromJson(Map<String, dynamic> json) => $JobListEROptionEntityFromJson(json);

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

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

@JsonSerializable()
class JobListEROptionFilter {
	@JSONField(name: "start_date")
	String? startDate;
	@JSONField(name: "end_date")
	String? endDate;

	JobListEROptionFilter();

	factory JobListEROptionFilter.fromJson(Map<String, dynamic> json) => $JobListEROptionFilterFromJson(json);

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

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