Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.99 KB | None | 0 0
  1. import android.util.Log;
  2.  
  3. import com.google.gson.GsonBuilder;
  4. import com.quickersupport.crewgo.helpers.DateHelperMethods;
  5. import com.quickersupport.crewgo.helpers.SwipetoDeleteListView.DateFormatHelper;
  6. import com.quickersupport.crewgo.retrofit.ApiClient;
  7. import com.quickersupport.crewgo.retrofit.ApiInterface;
  8. import com.quickersupport.crewgo.helpers.CommonDef;
  9. import com.quickersupport.crewgo.jobList.EventsList;
  10. import com.quickersupport.crewgo.login.loginParent.model.LoginResponse;
  11.  
  12. import java.net.UnknownHostException;
  13. import java.util.ArrayList;
  14.  
  15. import retrofit2.Call;
  16. import retrofit2.Callback;
  17. import retrofit2.Response;
  18.  
  19. public class JobsModel {
  20. private IjobsModel ijobsModel;
  21.  
  22. public JobsModel(IjobsModel ijobsModel) {
  23. this.ijobsModel = ijobsModel;
  24. }
  25.  
  26. public void getWeeklyJobList(String auth_key, int jobType, int timeDifference) {
  27. ApiInterface apiInterface = ApiClient.getClient().create(ApiInterface.class);
  28. Call<BookingsWeeklyJobListResponse> call = apiInterface.getWeeklyJobList(auth_key,timeDifference);
  29. call.enqueue(new Callback<BookingsWeeklyJobListResponse>() {
  30. @Override
  31. public void onResponse(Call<BookingsWeeklyJobListResponse> call, Response<BookingsWeeklyJobListResponse> response) {
  32. if (response.isSuccessful()) {
  33. Log.e("Jobs list", new GsonBuilder().setPrettyPrinting().create().toJson(response));
  34. ArrayList<EventsList> list = new ArrayList<>();
  35. for (BookingsWeeklyJobListResponse.Week week : response.body().weeks) {
  36. EventsList eventsList = new EventsList();
  37. eventsList.isHeader = true;
  38. eventsList.setHeader_title(week.weekTitle);
  39. list.add(eventsList);
  40. for (BookingsWeeklyJobListResponse.Week.Day day : week.days){
  41. String prevDate = "";
  42. for (int i = 0; i < day.jobs.size() ; i++) {
  43. eventsList = new EventsList();
  44. eventsList.setJob_id(day.jobs.get(i).jobId);
  45. eventsList.setJob_title(day.jobs.get(i).jobTitle);
  46. eventsList.setJob_title_number(day.jobs.get(i).jobTitleNumber);
  47. eventsList.setJob_number(day.jobs.get(i).jobNumber);
  48. eventsList.setJob_full_address(day.jobs.get(i).jobFullAddress);
  49. eventsList.setJob_status(day.jobs.get(i).jobStatus);
  50. eventsList.setShift_status(day.jobs.get(i).shiftStatus);
  51. eventsList.setStart_date_time(day.jobs.get(i).startDate);
  52. eventsList.setEnd_date_time(day.jobs.get(i).endDate);
  53. eventsList.setSkillList(day.jobs.get(i).skills);
  54. eventsList.setShiftList(day.jobs.get(i).shiftList);
  55. eventsList.setUtc_start_time(day.jobs.get(i).startDateUtc);
  56. eventsList.setUtc_end_time(day.jobs.get(i).endDateUtc);
  57. eventsList.setStart_date(day.jobs.get(i).startDate);
  58. eventsList.setJobMeetingAddress(day.jobs.get(i).jobMeetingAddress);
  59. eventsList.setAllShiftList(day.jobs.get(i).allShifts);
  60. eventsList.setIsInductionRequired(day.jobs.get(i).hasInduction);
  61. eventsList.setCustomer_name(day.jobs.get(i).customerName);
  62. eventsList.setRefDate(day.jobs.get(i).refDate);
  63. String currDate = DateHelperMethods.getStringDateFormat1(DateHelperMethods.getDateFromUTCDateTime(eventsList.getRefDate()));
  64. if (i == 0 || !prevDate.equals(currDate)) {
  65. eventsList.isDateRequired = true;
  66. }
  67. list.add(eventsList);
  68. prevDate = currDate;
  69. }
  70. }
  71. eventsList = new EventsList();
  72. eventsList.isDivider = true;
  73. list.add(eventsList);
  74. }
  75. ijobsModel.onGetJobList(list);
  76. }
  77. else if (response.body().code.equalsIgnoreCase("0006")) {
  78. ijobsModel.onLoginError(response.body().msg);
  79. }
  80. else {
  81. ijobsModel.onError(response.body().msg);
  82. }
  83. }
  84.  
  85. @Override
  86. public void onFailure(Call<BookingsWeeklyJobListResponse> call, Throwable t) {
  87. ijobsModel.onError(CommonDef.Network_Error);
  88. }
  89. });
  90. }
  91.  
  92. public void getJobList(String auth_key, int jobType, int timeDifference) {
  93. Call<BookingsJobsListResponse> call;
  94. ApiInterface apiInterface = ApiClient.getClient().create(ApiInterface.class);
  95. if (jobType == CommonDef.JOBS) {
  96. call = apiInterface.getJobList(auth_key, timeDifference);
  97. }
  98. else {
  99. call = apiInterface.getSavedJobList(auth_key, timeDifference);
  100. }
  101.  
  102. call.enqueue(new Callback<BookingsJobsListResponse>() {
  103. @Override
  104. public void onResponse(Call<BookingsJobsListResponse> call, Response<BookingsJobsListResponse> response) {
  105. if (response.isSuccessful()) {
  106. if (response.body().code.equalsIgnoreCase("0001")) {
  107. Log.e("Jobs list", new GsonBuilder().setPrettyPrinting().create().toJson(response));
  108. ArrayList<EventsList> list = new ArrayList<>();
  109. EventsList eventsList;
  110. for (int i = 0; i < response.body().jobs.size(); i++) {
  111. String prevDate = "";
  112. for (int j = 0; j < response.body().jobs.get(i).jobs.size(); j++) {
  113. eventsList = new EventsList();
  114. eventsList.setJob_id(response.body().jobs.get(i).jobs.get(j).jobId);
  115. eventsList.setJob_title(response.body().jobs.get(i).jobs.get(j).jobTitle);
  116. eventsList.setJob_title_number(response.body().jobs.get(i).jobs.get(j).jobTitleNumber);
  117. eventsList.setJob_number(response.body().jobs.get(i).jobs.get(j).jobNumber);
  118. eventsList.setJob_full_address(response.body().jobs.get(i).jobs.get(j).jobFullAddress);
  119. eventsList.setJob_status(response.body().jobs.get(i).jobs.get(j).jobStatus);
  120. eventsList.setShift_status(response.body().jobs.get(i).jobs.get(j).shiftStatus);
  121. eventsList.setStart_date_time(response.body().jobs.get(i).jobs.get(j).startDate);
  122. eventsList.setEnd_date_time(response.body().jobs.get(i).jobs.get(j).endDate);
  123. eventsList.setSkillList(response.body().jobs.get(i).jobs.get(j).skills);
  124. eventsList.setShiftList(response.body().jobs.get(i).jobs.get(j).shiftList);
  125. eventsList.setUtc_start_time(response.body().jobs.get(i).jobs.get(j).startDateUtc);
  126. eventsList.setUtc_end_time(response.body().jobs.get(i).jobs.get(j).endDateUtc);
  127. eventsList.setStart_date(response.body().jobs.get(i).date);
  128. eventsList.setJobMeetingAddress(response.body().jobs.get(i).jobs.get(j).jobMeetingAddress);
  129. eventsList.setAllShiftList(response.body().jobs.get(i).jobs.get(j).allShifts);
  130. eventsList.setIsInductionRequired(response.body().jobs.get(i).jobs.get(j).hasInduction);
  131. eventsList.setCustomer_name(response.body().jobs.get(i).jobs.get(j).customerName);
  132. eventsList.setRefDate(response.body().jobs.get(i).jobs.get(j).refDate);
  133. String currDate = DateHelperMethods.getStringDateFormat1(DateHelperMethods.getDateFromUTCDateTime(eventsList.getRefDate()));
  134. if (i == 0 ||!prevDate.equals(currDate)) {
  135. eventsList.isDateRequired = true;
  136. }
  137. list.add(eventsList);
  138. prevDate = currDate;
  139. }
  140. }
  141. ijobsModel.onGetJobList(list);
  142. } else if (response.body().code.equalsIgnoreCase("0006")) {
  143. ijobsModel.onLoginError(response.body().msg);
  144. } else {
  145. ijobsModel.onError(response.body().msg);
  146. }
  147.  
  148. } else {
  149. ijobsModel.onError(CommonDef.Network_Error);
  150. }
  151. }
  152.  
  153. @Override
  154. public void onFailure(Call<BookingsJobsListResponse> call, Throwable t) {
  155. if (t instanceof UnknownHostException) {
  156. ijobsModel.onError(CommonDef.No_Connection_Error);
  157. } else {
  158. ijobsModel.onError(CommonDef.Network_Error);
  159. }
  160. }
  161. });
  162. }
  163.  
  164. public void deleteJob(String auth_key, String id) {
  165. ApiInterface apiInterface = ApiClient.getClient().create(ApiInterface.class);
  166. Call<LoginResponse> call = apiInterface.deleteJob(auth_key, id);
  167.  
  168. call.enqueue(new Callback<LoginResponse>() {
  169. @Override
  170. public void onResponse(Call<LoginResponse> call, Response<LoginResponse> response) {
  171. if (response.isSuccessful()) {
  172. if (response.body().code.equalsIgnoreCase("0001")) {
  173. ijobsModel.onDeleteSuccessfull(id);
  174. } else {
  175. ijobsModel.onError(response.body().msg);
  176. }
  177.  
  178. } else {
  179. ijobsModel.onError(CommonDef.Network_Error);
  180. }
  181. }
  182.  
  183. @Override
  184. public void onFailure(Call<LoginResponse> call, Throwable t) {
  185. if (t instanceof UnknownHostException) {
  186. ijobsModel.onError(CommonDef.No_Connection_Error);
  187. } else {
  188. ijobsModel.onError(CommonDef.Network_Error);
  189. }
  190. }
  191. });
  192. }
  193.  
  194. public void cancelJob(String auth_key, String id) {
  195. ApiInterface apiInterface = ApiClient.getClient().create(ApiInterface.class);
  196. Call<LoginResponse> call = apiInterface.cancelJob(auth_key, id);
  197.  
  198. call.enqueue(new Callback<LoginResponse>() {
  199. @Override
  200. public void onResponse(Call<LoginResponse> call, Response<LoginResponse> response) {
  201. if (response.isSuccessful()) {
  202. if (response.body().code.equalsIgnoreCase("0001")) {
  203. ijobsModel.onDeleteSuccessfull(id);
  204. } else {
  205. ijobsModel.onError(response.body().msg);
  206. }
  207.  
  208. } else {
  209. ijobsModel.onError(CommonDef.Network_Error);
  210. }
  211. }
  212.  
  213. @Override
  214. public void onFailure(Call<LoginResponse> call, Throwable t) {
  215. if (t instanceof UnknownHostException) {
  216. ijobsModel.onError(CommonDef.No_Connection_Error);
  217. } else {
  218. ijobsModel.onError(CommonDef.Network_Error);
  219. }
  220. }
  221. });
  222. }
  223.  
  224.  
  225. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement