1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198 |
- import 'dart:typed_data';
- import 'package:domain/entity/response/job_list_edit_index_s_g_entity.dart';
- import 'package:domain/entity/response/job_list_index_s_g_entity.dart';
- import 'package:domain/entity/response/job_template_edit_index_entity.dart';
- import 'package:domain/entity/response/job_template_s_g_entity.dart';
- import 'package:domain/entity/response/job_title_edit_index_entity.dart';
- import 'package:domain/entity/response/job_title_s_g_entity.dart';
- import 'package:domain/entity/response/labour_request_s_g_add_index_entity.dart';
- import 'package:domain/entity/response/labour_request_s_g_entity.dart';
- import 'package:get/get.dart';
- import 'package:plugin_platform/dio_export.dart';
- import 'package:plugin_platform/http/http_provider.dart';
- import 'package:plugin_platform/http/http_result.dart';
- import 'package:shared/utils/util.dart';
- import '../constants/api_constants.dart';
- import '../entity/response/job_list_s_g_entity.dart';
- import '../entity/response/labour_request_index_entity.dart';
- import '../entity/response/labour_request_s_g_edit_index_entity.dart';
- import '../entity/response/labour_request_s_g_list_entity.dart';
- /// 用工相关(新加坡)
- class LabourSGRepository extends GetxService {
- HttpProvider httpProvider;
- LabourSGRepository({required this.httpProvider});
- /// 用工模版中的工作标题列表
- Future<HttpResult<JobTitleSGEntity>> fetchJobTitleList(
- String? keyword, {
- required int curPage,
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = curPage.toString();
- params["page_size"] = "10";
- if (Utils.isNotEmpty(keyword)) {
- params["keyword"] = keyword!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTitleListSG,
- params: params,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTitleSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTitleSGEntity>(data: data);
- }
- return result.convert();
- }
- /// 根据ID获取主列表的Item数据,用于刷新Item
- Future<HttpResult<JobTitleSGEntity>> fetchJobTitleListByIds(
- String? ids, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = "1";
- params["page_size"] = "9999";
- if (!Utils.isEmpty(ids)) {
- params["job_title_id"] = ids!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTitleListSG,
- params: params,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTitleSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTitleSGEntity>(data: data);
- }
- return result.convert();
- }
- /// 添加工作标题的详情或选项数据
- Future<HttpResult<JobTitleEditIndexEntity>> fetchJobTitleAddIndex({
- CancelToken? cancelToken,
- }) async {
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTitleAddIndexSG,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTitleEditIndexEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTitleEditIndexEntity>(data: data);
- }
- return result.convert();
- }
- /// 编辑工作标题的详情或选项数据
- Future<HttpResult<JobTitleEditIndexEntity>> fetchJobTitleEditIndex(
- String? titleId, {
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- params["title_id"] = titleId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTitleEditIndexSG,
- params: params,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTitleEditIndexEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTitleEditIndexEntity>(data: data);
- }
- return result.convert();
- }
- /// 添加工作标题的提交
- Future<HttpResult> addJobTitleSubmit(
- String? jobTitle,
- String? sort,
- String? templateId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['job_title'] = jobTitle ?? "";
- if (!Utils.isEmpty(templateId)) {
- params["template_id"] = templateId!;
- }
- if (!Utils.isEmpty(sort)) {
- params["sort"] = sort!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTitleAddSubmitSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 编辑工作标题的提交
- Future<HttpResult> editJobTitleSubmit(
- String? titleId,
- String? jobTitle,
- String? sort,
- String? templateId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['job_title'] = jobTitle ?? "";
- params['title_id'] = titleId ?? "";
- if (!Utils.isEmpty(templateId)) {
- params["template_id"] = templateId!;
- }
- if (!Utils.isEmpty(sort)) {
- params["sort"] = sort!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTitleEditSubmitSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 删除工作标题的提交
- Future<HttpResult> deleteJobTitleSubmit(
- String? titleId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['title_id'] = titleId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTitleDeleteSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- // =================================== Template ↓ ===================================
- /// 用工模版中的工作标题列表
- Future<HttpResult<JobTemplateSGEntity>> fetchJobTemplateList(
- String? keyword, {
- required int curPage,
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = curPage.toString();
- params["page_size"] = "10";
- if (!Utils.isEmpty(keyword)) {
- params["keyword"] = keyword!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTemplateListSG,
- params: params,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTemplateSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTemplateSGEntity>(data: data);
- }
- return result.convert();
- }
- /// 根据ID获取主列表的Item数据,用于刷新Item
- Future<HttpResult<JobTemplateSGEntity>> fetchJobTemplateListByIds(
- String? ids, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = "1";
- params["page_size"] = "9999";
- if (!Utils.isEmpty(ids)) {
- params["job_temp_id"] = ids!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTemplateListSG,
- params: params,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTemplateSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTemplateSGEntity>(data: data);
- }
- return result.convert();
- }
- /// 添加工作模板的详情或选项数据
- Future<HttpResult<JobTemplateEditIndexEntity>> fetchJobTemplateAddIndex({
- CancelToken? cancelToken,
- }) async {
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTemplateAddIndexSG,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTemplateEditIndexEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTemplateEditIndexEntity>(data: data);
- }
- return result.convert();
- }
- /// 编辑工作模板的详情或选项数据
- Future<HttpResult<JobTemplateEditIndexEntity>> fetchJobTemplateEditIndex(
- String? templateId, {
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- params["template_id"] = templateId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTemplateEditIndexSG,
- params: params,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobTemplateEditIndexEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobTemplateEditIndexEntity>(data: data);
- }
- return result.convert();
- }
- /// 添加工作模板的提交
- Future<HttpResult> addJobTemplateSubmit(
- String? name,
- String? contact,
- String? contactNo,
- String? description,
- String? note,
- String? age,
- String? sex,
- String? withFoodCert,
- String? language, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['name'] = name ?? "";
- if (!Utils.isEmpty(contact)) {
- params["contact"] = contact!;
- }
- if (!Utils.isEmpty(contactNo)) {
- params["contact_no"] = contactNo!;
- }
- if (!Utils.isEmpty(description)) {
- params["description"] = description!;
- }
- if (!Utils.isEmpty(note)) {
- params["note"] = note!;
- }
- if (!Utils.isEmpty(age)) {
- params["age"] = age!;
- }
- if (!Utils.isEmpty(sex)) {
- params["sex"] = sex!;
- }
- if (!Utils.isEmpty(withFoodCert)) {
- params["with_food_cert"] = withFoodCert!;
- }
- if (!Utils.isEmpty(language)) {
- params["language"] = language!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTemplateAddSubmitSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 编辑工作模板的提交
- Future<HttpResult> editJobTemplateSubmit(
- String? templateId,
- String? name,
- String? contact,
- String? contactNo,
- String? description,
- String? note,
- String? age,
- String? sex,
- String? withFoodCert,
- String? language, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['name'] = name ?? "";
- params['template_id'] = templateId ?? "";
- if (!Utils.isEmpty(contact)) {
- params["contact"] = contact!;
- }
- if (!Utils.isEmpty(contactNo)) {
- params["contact_no"] = contactNo!;
- }
- if (!Utils.isEmpty(description)) {
- params["description"] = description!;
- }
- if (!Utils.isEmpty(note)) {
- params["note"] = note!;
- }
- if (!Utils.isEmpty(age)) {
- params["age"] = age!;
- }
- if (!Utils.isEmpty(sex)) {
- params["sex"] = sex!;
- }
- if (!Utils.isEmpty(withFoodCert)) {
- params["with_food_cert"] = withFoodCert!;
- }
- if (!Utils.isEmpty(language)) {
- params["language"] = language!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTemplateEditSubmitSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 删除工作标题的提交
- Future<HttpResult> deleteJobTemplateSubmit(
- String? templateId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['template_id'] = templateId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobTemplateDeleteSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 用工请求的首页数据
- Future<HttpResult<LabourRequestSGCountList?>> fetchLabourRequestMain(
- String? date, {
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- if (Utils.isNotEmpty(date)) {
- params["date"] = date ?? "";
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestMainSG,
- params: params,
- cancelToken: cancelToken,
- );
- // //根据返回的结果,封装原始数据为Bean/Entity对象
- // if (result.isSuccess) {
- // //重新赋值data或list
- // final json = result.getDataJson();
- // var data = LabourRequestSGEntity.fromJson(json!);
- // //重新赋值data或list
- // return result.convert<LabourRequestSGEntity>(data: data);
- // }
- // return result.convert();
- if (result.isSuccess) {
- var jsonList = result.getListJson();
- var list = jsonList?.map((e) {
- if (e is Map<String, dynamic>) {
- return LabourRequestSGCountList.fromJson(e);
- } else {
- return null;
- }
- }).toList();
- return result.convert<LabourRequestSGCountList?>(list: list);
- }
- return result.convert<LabourRequestSGCountList>();
- }
- /// 添加用工请求的选项数据
- Future<HttpResult<LabourRequestSGAddIndexEntity>> fetchLabourRequestAddIndex({
- bool isShowLoadingDialog = true,
- CancelToken? cancelToken,
- }) async {
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestAddIndexSG,
- isShowLoadingDialog: isShowLoadingDialog,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = LabourRequestSGAddIndexEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<LabourRequestSGAddIndexEntity>(data: data);
- }
- return result.convert();
- }
- /// 删除工作标题的提交
- Future<HttpResult> submitLabourRequestAdd(
- String? jobTitleId,
- String? startTime,
- String? endTime,
- String? repeatStart,
- String? repeatEnd,
- String? outletId,
- int sexLimit,
- String? maleLimit,
- String? femaleLimit,
- String? needNum,
- String? requestType,
- String? positionId,
- 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 ?? "";
- params['sex_limit'] = sexLimit.toString();
- if (sexLimit == 1) {
- params['male_limit'] = maleLimit ?? "0";
- params['female_limit'] = femaleLimit ?? "0";
- // params['need_num'] = (int.parse(maleLimit ?? "0") + int.parse(femaleLimit ?? "0")).toString(); //不传 need_num 字段
- } else {
- params['need_num'] = needNum ?? "0";
- }
- if (Utils.isNotEmpty(repeatStart)) {
- params['repeat_start'] = repeatStart ?? "";
- }
- if (Utils.isNotEmpty(repeatEnd)) {
- params['repeat_end'] = repeatEnd ?? "";
- }
- if (Utils.isNotEmpty(requestType)) {
- params['request_type'] = requestType ?? "";
- }
- if (Utils.isNotEmpty(positionId) && requestType == "1") {
- params['position_id'] = positionId ?? "";
- }
- if (Utils.isNotEmpty(remark)) {
- params['remark'] = remark ?? "";
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestAddSubmitSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- //用工请求的查询选项(Job List)
- Future<HttpResult<JobListIndexSGEntity>> fetchJobListIndex({
- CancelToken? cancelToken,
- }) async {
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListIndexSG,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobListIndexSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobListIndexSGEntity>(data: data);
- }
- return result.convert();
- }
- //用工请求的查询列表(Job List)
- Future<HttpResult<JobListSGEntity>> fetchJobListTable(
- String? startDate,
- String? endDate,
- String? status,
- String? outletId, {
- required int curPage,
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- if (Utils.isNotEmpty(startDate)) {
- params['start_date'] = startDate ?? "";
- }
- if (Utils.isNotEmpty(endDate)) {
- params['end_date'] = endDate ?? "";
- }
- if (Utils.isNotEmpty(status)) {
- params['status'] = status ?? "";
- }
- if (Utils.isNotEmpty(outletId)) {
- params['outlet_id'] = outletId ?? "";
- }
- params['cur_page'] = curPage.toString();
- params['page_size'] = "10";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListTableSG,
- params: params,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobListSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobListSGEntity>(data: data);
- }
- return result.convert();
- }
- /// 根据ID获取主列表的Item数据,用于刷新Item
- Future<HttpResult<JobListSGEntity>> fetchJobListByIds(
- String? jobId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = "1";
- params["page_size"] = "9999";
- if (!Utils.isEmpty(jobId)) {
- params["job_id"] = jobId!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListTableSG,
- params: params,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobListSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobListSGEntity>(data: data);
- }
- return result.convert();
- }
- //用工请求的编辑详情(Job List)
- Future<HttpResult<JobListEditIndexSGEntity>> fetchJobListEditIndex(
- String? jobId, {
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- params['job_id'] = jobId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListEditIndexSG,
- params: params,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = JobListEditIndexSGEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<JobListEditIndexSGEntity>(data: data);
- }
- return result.convert();
- }
- //用工请求的编辑提交(Job List)
- Future<HttpResult> editJobListSubmit(
- String? jobId,
- String? startTime,
- String? endTime,
- String? outletId,
- int sexLimit,
- String? maleLimit,
- String? femaleLimit,
- String? needNum,
- String? requestType,
- String? positionId,
- String? remark, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['job_id'] = jobId ?? "";
- params['start_time'] = startTime ?? "";
- params['end_time'] = endTime ?? "";
- params['outlet_id'] = outletId ?? "";
- params['sex_limit'] = sexLimit.toString();
- if (sexLimit == 1) {
- params['male_limit'] = maleLimit ?? "0";
- params['female_limit'] = femaleLimit ?? "0";
- // params['need_num'] = (int.parse(maleLimit ?? "0") + int.parse(femaleLimit ?? "0")).toString();
- } else {
- params['need_num'] = needNum ?? "0";
- }
- if (Utils.isNotEmpty(requestType)) {
- params['request_type'] = requestType ?? "";
- }
- if (Utils.isNotEmpty(positionId) && requestType == "1") {
- params['position_id'] = positionId ?? "";
- }
- if (Utils.isNotEmpty(remark)) {
- params['remark'] = remark ?? "";
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListEditSubmitSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- //用工请求的取消(Job List)
- Future<HttpResult> cancelJobList(
- String? jobId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['job_id'] = jobId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListCancelSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- //用工请求的删除(Job List)
- Future<HttpResult> deleteJobList(
- String? jobId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['job_id'] = jobId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListDeleteSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- //用工请求的考勤确认(Job List)
- Future<HttpResult> confirmJobList(
- String? jobId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['job_id'] = jobId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiJobListConfirmSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- // V2 - 新版的LabourRequest 改动
- /// 获取用工请求的筛选选项
- Future<HttpResult<LabourRequestIndexEntity>> fetchLabourRequestSGIndex({
- CancelToken? cancelToken,
- }) async {
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestIndex,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = LabourRequestIndexEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<LabourRequestIndexEntity>(data: data);
- }
- return result.convert();
- }
- /// 获取用工请求的主列表
- Future<HttpResult<LabourRequestSGListEntity>> fetchLabourRequestSGList(
- String? keyword,
- String? startDate,
- String? endDate,
- String? statusId,
- String? departmentId, {
- required int curPage,
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = curPage.toString();
- params["page_size"] = "20";
- if (!Utils.isEmpty(keyword)) {
- params["job_title"] = keyword!;
- }
- if (!Utils.isEmpty(startDate)) {
- params["job_start"] = startDate!;
- }
- if (!Utils.isEmpty(endDate)) {
- params["job_end"] = endDate!;
- }
- if (!Utils.isEmpty(statusId)) {
- params["status"] = statusId!;
- }
- if (!Utils.isEmpty(departmentId)) {
- params["outlet_id"] = departmentId!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestList,
- params: params,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = LabourRequestSGListEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<LabourRequestSGListEntity>(data: data);
- }
- return result.convert();
- }
- /// 根据ID获取主列表的Item数据,用于刷新Item
- Future<HttpResult<LabourRequestSGListEntity>> fetchItemByRequestId(
- String? requestId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params["cur_page"] = "1";
- params["page_size"] = "1";
- if (!Utils.isEmpty(requestId)) {
- params["request_id"] = requestId!;
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestList,
- params: params,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = LabourRequestSGListEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<LabourRequestSGListEntity>(data: data);
- }
- return result.convert();
- }
- /// 删除工作标题的提交
- Future<HttpResult> submitLabourRequestAdd(
- String? jobTitleId,
- String? startTime,
- String? endTime,
- String? repeatStart,
- String? repeatEnd,
- String? outletId,
- int sexLimit,
- String? maleLimit,
- String? femaleLimit,
- String? needNum,
- String? requestType,
- 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 ?? "";
- params['sex_limit'] = sexLimit.toString();
- if (sexLimit == 1) {
- params['male_limit'] = maleLimit ?? "0";
- params['female_limit'] = femaleLimit ?? "0";
- // params['need_num'] = (int.parse(maleLimit ?? "0") + int.parse(femaleLimit ?? "0")).toString(); //不传 need_num 字段
- } else {
- params['need_num'] = needNum ?? "0";
- }
- if (Utils.isNotEmpty(repeatStart)) {
- params['repeat_start'] = repeatStart ?? "";
- }
- if (Utils.isNotEmpty(repeatEnd)) {
- params['repeat_end'] = repeatEnd ?? "";
- }
- if (Utils.isNotEmpty(requestType)) {
- params['request_type'] = requestType ?? "";
- }
- if (Utils.isNotEmpty(remark)) {
- params['remark'] = remark ?? "";
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestAddSubmitSG,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 用工的编辑详情
- Future<HttpResult<LabourRequestSGEditIndexEntity>> fetchLabourRequestEditDetail(
- String? requestId, {
- bool isShowLoadingDialog = true,
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['request_id'] = requestId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestEditDetail,
- params: params,
- isShowLoadingDialog: isShowLoadingDialog,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = LabourRequestSGEditIndexEntity.fromJson(json!);
- //重新赋值data或list
- return result.convert<LabourRequestSGEditIndexEntity>(data: data);
- }
- return result.convert();
- }
- /// 编辑工作标题的提交
- Future<HttpResult> submitLabourRequestEdit(
- String? requestId,
- String? startTime,
- String? endTime,
- String? outletId,
- int sexLimit,
- String? maleLimit,
- String? femaleLimit,
- String? needNum,
- String? requestType,
- String? remark, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['request_id'] = requestId ?? "";
- params['start_time'] = startTime ?? "";
- params['end_time'] = endTime ?? "";
- params['outlet_id'] = outletId ?? "";
- params['sex_limit'] = sexLimit.toString();
- if (sexLimit == 1) {
- params['male_limit'] = maleLimit ?? "0";
- params['female_limit'] = femaleLimit ?? "0";
- // params['need_num'] = (int.parse(maleLimit ?? "0") + int.parse(femaleLimit ?? "0")).toString(); //不传 need_num 字段
- } else {
- params['need_num'] = needNum ?? "0";
- }
- if (Utils.isNotEmpty(requestType)) {
- params['request_type'] = requestType ?? "";
- }
- if (Utils.isNotEmpty(remark)) {
- params['remark'] = remark ?? "";
- }
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestEditSubmit,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 删除新加坡的用工请求
- Future<HttpResult> deleteLabourRequestSG(
- String? requestId, {
- CancelToken? cancelToken,
- }) async {
- //参数
- Map<String, String> params = {};
- params['request_id'] = requestId ?? "";
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiLabourRequestDelete,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- }
|