123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316 |
- import 'package:domain/entity/response/hotel_info_entity.dart';
- import 'package:domain/entity/response/job_list_e_r_detail_entity.dart';
- import 'package:domain/entity/response/job_list_e_r_option_entity.dart';
- import 'package:domain/entity/response/labour_request_e_r_entity.dart';
- import 'package:domain/entity/response/sign_in_sign_out_entity.dart';
- import 'package:domain/entity/response/switch_project_entity.dart';
- import 'package:get/get.dart';
- import 'package:plugin_platform/http/http_provider.dart';
- import 'package:plugin_platform/http/http_result.dart';
- import 'package:plugin_platform/platform_export.dart';
- import 'package:shared/utils/util.dart';
- import '../constants/api_constants.dart';
- import '../entity/response/labour_list_e_r_entity.dart';
- import '../entity/response/labour_request_e_r_option_entity.dart';
- /// 泰国的 ER 的数据仓库
- class THERRepository extends GetxService {
- HttpProvider httpProvider;
- THERRepository({required this.httpProvider});
- /// 获取 ER 用工请求列表
- Future<HttpResult<LabourRequestEREntity>> fetchERLabourRequest(
- String? date, {
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- if (!Utils.isEmpty(date)) {
- params["day"] = date!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERLabourRequestTH,
- params: params,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- final json = result.getDataJson();
- var data = LabourRequestEREntity.fromJson(json!);
- return result.convert<LabourRequestEREntity>(data: data);
- }
- return result.convert();
- }
- /// 获取 ER 用工请求选项
- Future<HttpResult<JobListERDetailEntity>> fetchERLabourRequestAddOption({
- CancelToken? cancelToken,
- }) async {
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERLabourRequestAddOptionTH,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- final json = result.getDataJson();
- var data = JobListERDetailEntity.fromJson(json!);
- return result.convert<JobListERDetailEntity>(data: data);
- }
- return result.convert();
- }
- /// 新增 ER 的用工请求
- Future<HttpResult> addLabourRequestERSubmit({
- required String jobTitleId,
- required String startTime,
- required String endTime,
- required String outletId,
- String? repeatStart,
- String? repeatEnd,
- String? sexLimit,
- String? needNum,
- String? maleLimit,
- String? femaleLimit,
- String? eventName,
- String? eventType,
- String? remark,
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- params["job_title_id"] = jobTitleId;
- params["start_time"] = startTime;
- params["end_time"] = endTime;
- params["outlet_id"] = outletId;
- if (!Utils.isEmpty(repeatStart)) {
- params["repeat_start"] = repeatStart!;
- }
- if (!Utils.isEmpty(repeatEnd)) {
- params["repeat_end"] = repeatEnd!;
- }
- if (!Utils.isEmpty(sexLimit)) {
- params["sex_limit"] = sexLimit!;
- }
- if (!Utils.isEmpty(needNum)) {
- params["need_num"] = needNum!;
- }
- if (!Utils.isEmpty(maleLimit)) {
- params["male_limit"] = maleLimit!;
- }
- if (!Utils.isEmpty(femaleLimit)) {
- params["female_limit"] = femaleLimit!;
- }
- if (!Utils.isEmpty(eventName)) {
- params["event_name"] = eventName!;
- }
- if (!Utils.isEmpty(eventType)) {
- params["event_type"] = eventType!;
- }
- if (!Utils.isEmpty(remark)) {
- params["remark"] = remark!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERLabourRequestAddSubmitTH,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- return result.convert();
- }
- return result.convert();
- }
- /// 获取 ER 工作列表选项
- Future<HttpResult<JobListEROptionEntity>> fetchERJobListOption({
- String? date,
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- if (!Utils.isEmpty(date)) {
- params["daily"] = date!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERJobListOptionTH,
- params: params,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- final json = result.getDataJson();
- var data = JobListEROptionEntity.fromJson(json!);
- return result.convert<JobListEROptionEntity>(data: data);
- }
- return result.convert();
- }
- /// 获取 ER 工作列表
- Future<HttpResult<LabourListEREntity>> fetchERJobListTable({
- required int curPage,
- String? keyword,
- String? divisionId,
- String? outletId,
- String? status,
- String? startDate,
- String? endDate,
- String? trending,
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = curPage.toString();
- params["page_size"] = "10";
- if (!Utils.isEmpty(keyword)) {
- params["job_title"] = keyword!;
- }
- if (!Utils.isEmpty(divisionId)) {
- params["division_id"] = divisionId!;
- }
- if (!Utils.isEmpty(outletId)) {
- params["outlet_id"] = outletId!;
- }
- if (!Utils.isEmpty(status)) {
- params["status"] = status!;
- }
- if (!Utils.isEmpty(startDate)) {
- params["start_date"] = startDate!;
- }
- if (!Utils.isEmpty(endDate)) {
- params["end_date"] = endDate!;
- }
- if (!Utils.isEmpty(trending)) {
- params["trending"] = trending!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERJobListTableTH,
- params: params,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- final json = result.getDataJson();
- var data = LabourListEREntity.fromJson(json!);
- return result.convert<LabourListEREntity>(data: data);
- }
- return result.convert();
- }
- /// ER 工作列表的删除
- Future<HttpResult> deleteJobListERSubmit({
- required String jobId,
- required String type,
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- params["job_id"] = jobId;
- params["type"] = type;
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERJobListDeleteTH,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- return result.convert();
- }
- return result.convert();
- }
- /// 获取 ER 工作列表详情
- Future<HttpResult<JobListERDetailEntity>> fetchERJobListDetail({
- required String jobId,
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["job_id"] = jobId;
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERJobListDetailTH,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- final json = result.getDataJson();
- var data = JobListERDetailEntity.fromJson(json!);
- return result.convert<JobListERDetailEntity>(data: data);
- }
- return result.convert();
- }
- /// 编辑 ER 的用工请求
- Future<HttpResult> editLabourRequestERSubmit({
- required String jobId,
- required String jobTitleId,
- required String startTime,
- required String endTime,
- required String outletId,
- String? sexLimit,
- String? needNum,
- String? maleLimit,
- String? femaleLimit,
- String? eventName,
- String? eventType,
- String? remark,
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- params["job_id"] = jobId;
- params["job_title_id"] = jobTitleId;
- params["start_time"] = startTime;
- params["end_time"] = endTime;
- params["outlet_id"] = outletId;
- if (!Utils.isEmpty(sexLimit)) {
- params["sex_limit"] = sexLimit!;
- }
- if (!Utils.isEmpty(needNum)) {
- params["need_num"] = needNum!;
- }
- if (!Utils.isEmpty(maleLimit)) {
- params["male_limit"] = maleLimit!;
- }
- if (!Utils.isEmpty(femaleLimit)) {
- params["female_limit"] = femaleLimit!;
- }
- if (!Utils.isEmpty(eventName)) {
- params["event_name"] = eventName!;
- }
- if (!Utils.isEmpty(eventType)) {
- params["event_type"] = eventType!;
- }
- if (!Utils.isEmpty(remark)) {
- params["remark"] = remark!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiERLabourRequestEditSubmitTH,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- if (result.isSuccess) {
- return result.convert();
- }
- return result.convert();
- }
- }
|