· 6 years ago · Nov 20, 2019, 09:58 AM
1require_dependency 'markazuna/di_container'
2
3class DoctorReservationsController < ApplicationController
4 include Markazuna::INJECT['doctor_reservation_service']
5 include Markazuna::INJECT['doctor_service']
6 include Markazuna::INJECT['schedule_service']
7 include Markazuna::INJECT['rs_api_resources']
8
9 skip_before_action :verify_authenticity_token
10# before_action :authenticate_core_user!
11# before_action :authenticate
12# skip_before_action :verify_authenticity_token
13# before_action :set_reservation, only: [:show, :edit, :update, :destroy]
14 wrap_parameters :reservation, include: [:user_id,
15 :key,
16 :doctor_name,
17 :doctor_id,
18 :hospital_name,
19 :hospital_id,
20 :reservation_date,
21 :reservation_time,
22 :user_name,
23 :user_phone,
24 :user_email,
25 :user_birthday,
26 :schedule_id,
27 :source,
28 :price,
29 :funnel_name,
30 :gender,
31 :is_new_patient,
32 :id_number,
33 :address,
34 :payment_method,
35 :occupation,
36 :religion,
37 :fit_to_fly_letter,
38 :blood_type,
39 :legal_guardian_name,
40 :info_schedule,
41 :booking_id,
42 :birthday,
43 :bitrix_id,
44 :bitrix_schedule_date,
45 :bitrix_status,
46 :booking_status,
47 :booking_recommendation,
48 :booking_version,
49 :confirmation_date,
50 :confirmation_pdf_url,
51 :confirmation_status,
52 :confirmation_url,
53 :email,
54 :feedback_status,
55 :rejection_reason,
56 :rejection_reason_detail,
57 :feedback_url,
58 :follow_up_by,
59 :hospital,
60 :last_bitrix_update,
61 :note,
62 :patient_name,
63 :phone,
64 :queue_number,
65 :schedule_date,
66 :schedule_time,
67 :update_by,
68 :is_dashboard,
69 :user]
70
71 def doctor_form1
72
73 Rails.logger.info "================Start form 1 and before fetch flag========================"
74 reservation_updated_params = add_dashboard_flag_and_status(reservation_form_params)
75
76 Rails.logger.info "================after flag and before rs-api form 1 reservation========================"
77 response = rs_api_resources.post_data_to_json("form_1_doctor_reservation",reservation_updated_params)
78 # rs_api_message = get_response_message(response)
79
80 if response.try(:code)!=200
81 data = response
82 render json: data, status: response.code
83 return
84 end
85
86 if reservation_updated_params["is_dashboard"]== false
87 reservation_updated_params["booking_id"]=get_booking_id(response)
88 reservation_form_log = my_reservation_form_log_params(reservation_updated_params)
89 if doctor_reservation_service.create_reservation_log(reservation_form_log)
90 Rails.logger.info "================after create reservation log========================"
91 end
92 data = response
93 render json: data, status: response.code
94 return
95 end
96
97 Rails.logger.info "================after form 1 & before get profile doctor========================"
98 response_speciality = rs_api_resources.get_data("get_profile_doctor",speciality_params)
99
100 Rails.logger.info "================after doctor profile & before get profile doctor========================"
101
102 reservation_updated_params["booking_id"]=get_booking_id(response)
103 reservation_updated_params["doctor_speciality"]=get_doctor_speciality(response_speciality)
104 reservation_form = my_reservation_form_params(reservation_updated_params)
105
106 doctor_form = doctor_form_params
107 Rails.logger.info "================before create doctor========================"
108 if doctor_service.create_doctor(doctor_form)
109 Rails.logger.info "================after create doctor and before schedule========================"
110 # puts"----------------------doctor succeeded---------------------------"
111 end
112
113 schedule_form = schedule_form_params
114 if schedule_service.create_schedule(schedule_form)
115 Rails.logger.info "================after create schedule and before reservation========================"
116 # puts"----------------------schedule succeeded--------------------------"
117 end
118
119 # Rails.logger.info "reservation_form.inspect"
120 # Rails.logger.info reservation_form.inspect
121 # Rails.logger.info "end reservation_form.inspect"
122
123 if doctor_reservation_service.create_reservation(reservation_form)
124 Rails.logger.info "================after create reservation========================"
125 prefilled_fields = doctor_reservation_service.prefilled_fields
126 data = {
127 booking_id: reservation_form.booking_id,
128 message: "Success",
129 results: prefilled_fields
130 }
131 render json: data, status: 200
132 else
133 if reservation_form.errors.full_messages.length > 1
134 # Rails.logger.info reservation_form.errors.full_messages
135 reservation_form.errors.clear
136 reservation_form.errors.add(:base, 'Mohon Lengkapi Data Pasien')
137 end
138 error_messages = reservation_form.errors.full_messages
139 data = {message: error_messages.join(', ')}
140 render json: data, status: 422
141 end
142 end
143
144 def doctor_form2
145 Rails.logger.info "================Start form 2 and before fetch param========================"
146 my_form = reservation_form_params
147 rs_api_param= rs_api_form_2
148 Rails.logger.info "================after fetch and before rs-api form 2 reservation========================"
149 response = rs_api_resources.post_data_to_json("form_2_doctor_reservation",rs_api_param)
150
151 if response.try(:code)!=200
152 data = response
153 render json: data, status: response.code
154 return
155 end
156
157 Rails.logger.info my_form["hospital_id"]
158
159 is_dashboard_result = check_is_dashboard(my_form["hospital_id"])
160
161 if is_dashboard_result == false
162 Rails.logger.info "================before update reservation log========================"
163 my_form["form_2_rs_api_status"] = response
164 reservation_form_log = my_reservation_form_log_params(my_form)
165 if doctor_reservation_service.update_reservation_additional_log(reservation_form_log)
166 Rails.logger.info "================after update reservation log========================"
167 end
168 data = response
169 render json: data, status: response.code
170 return
171 end
172
173 Rails.logger.info "================after rs-api form 2 reservation and before update========================"
174 my_form["form_2_rs_api_status"] = response
175 reservation_form = my_reservation_form_params(my_form)
176
177 result = doctor_reservation_service.update_reservation_additional(reservation_form)
178 Rails.logger.info "================after update========================"
179 if result
180 render :json => { meta: {status: '200'}, payload: true}
181 else
182 error_messages = reservation_form.errors.full_messages
183 render :json => { meta: {status: '422'}, payload: 'failed', message: error_messages.join(', ')}, status: 422
184 end
185 end
186
187 def doctor_form1_v_200
188
189 reservation_updated_params = add_dashboard_flag_and_status(reservation_form_params)
190 # Rails.logger.info "================inilah parameter yg dikirim ke rs-api========================"
191 # Rails.logger.info JSON.pretty_generate(reservation_updated_params)
192
193 response = rs_api_resources.post_data_to_json("form_1_doctor_reservation_v_200",reservation_updated_params)
194 # rs_api_message = get_response_message(response)
195
196 if response.try(:code)!=200
197 data = response
198 render json: data, status: response.code
199 return
200 end
201
202 if reservation_updated_params["is_dashboard"]== false
203 reservation_updated_params["booking_id"]=get_booking_id(response)
204 reservation_form_log = my_reservation_form_log_params_v200(reservation_updated_params)
205 if doctor_reservation_service.create_reservation_log_v200(reservation_form_log)
206 Rails.logger.info "================after create reservation v200 log========================"
207 end
208 data = response
209 render json: data, status: response.code
210 return
211 end
212
213 response_speciality = rs_api_resources.get_data("get_profile_doctor",speciality_params)
214
215 reservation_updated_params["booking_id"]=get_booking_id(response)
216 reservation_updated_params["doctor_speciality"]=get_doctor_speciality(response_speciality)
217 reservation_form = my_reservation_form_params_v200(reservation_updated_params)
218
219 doctor_form = doctor_form_params
220 if doctor_service.create_doctor(doctor_form)
221 # puts"----------------------doctor succeeded---------------------------"
222 end
223
224 schedule_form = schedule_form_params
225 if schedule_service.create_schedule(schedule_form)
226 # puts"----------------------schedule succeeded--------------------------"
227 end
228
229 # Rails.logger.info "reservation_form.inspect"
230 # Rails.logger.info reservation_form.inspect
231 # Rails.logger.info "end reservation_form.inspect"
232
233 if doctor_reservation_service.create_reservation_v200(reservation_form)
234 prefilled_fields = doctor_reservation_service.prefilled_fields
235 data = {
236 booking_id: reservation_form.booking_id,
237 message: "Success",
238 results: prefilled_fields
239 }
240 render json: data, status: 200
241 else
242 if reservation_form.errors.full_messages.length > 1
243 # Rails.logger.info JSON.pretty_generate(reservation_form.errors)
244 reservation_form.errors.clear
245 reservation_form.errors.add(:base, 'Mohon Lengkapi Data Pasien')
246 end
247 error_messages = reservation_form.errors.full_messages
248 data = {message: error_messages.join(', ')}
249 render json: data, status: 422
250 end
251 end
252
253 def doctor_form2_v_200
254 my_form = reservation_form_params
255 rs_api_param= rs_api_form_2
256 response = rs_api_resources.post_data_to_json("form_2_doctor_reservation_v_200",rs_api_param)
257
258 if response.try(:code)!=200
259 data = response
260 render json: data, status: response.code
261 return
262 end
263
264 is_dashboard_result = check_is_dashboard(my_form["hospital_id"])
265 if is_dashboard_result == false
266 Rails.logger.info "================before update reservation log========================"
267 my_form["form_2_rs_api_status"] = response
268 reservation_form_log = my_reservation_form_log_params_v200(my_form)
269 if doctor_reservation_service.update_reservation_additional_log(reservation_form_log)
270 Rails.logger.info "================after update reservation v200 log========================"
271 end
272 data = response
273 render json: data, status: response.code
274 return
275 end
276
277 Rails.logger.info "================before update reservation is dashboard========================"
278
279 my_form["form_2_rs_api_status"] = response
280 reservation_form = my_reservation_form_params_v200(my_form)
281
282 result = doctor_reservation_service.update_reservation_additional(reservation_form)
283 if result
284 render :json => { meta: {status: '200'}, payload: true}
285 else
286 error_messages = reservation_form.errors.full_messages
287 render :json => { meta: {status: '422'}, payload: 'failed', message: error_messages.join(', ')}, status: 422
288 end
289 end
290
291 def doctor_form1_v_210
292 rs_api_param= rs_api_form_1_v210
293 response = rs_api_resources.post_data_to_json("form_1_doctor_reservation_v_210",rs_api_param)
294
295 render json: response, status: response.code
296 return
297
298 end
299
300 def doctor_form2_v_210
301
302 reservation_updated_params = add_dashboard_flag_and_status(reservation_form_params)
303 # Rails.logger.info "================inilah parameter yg dikirim ke rs-api========================"
304 # Rails.logger.info JSON.pretty_generate(reservation_updated_params)
305
306 response = rs_api_resources.post_data_to_json("form_2_doctor_reservation_v_210",reservation_updated_params)
307# rs_api_message = get_response_message(response)
308
309 if response.try(:code)!=200
310 render json: response, status: response.code
311 return
312 end
313
314 if reservation_updated_params["is_dashboard"]== false
315 reservation_updated_params["booking_id"]=get_booking_id(response)
316 reservation_form_log = my_reservation_form_log_params_v210(reservation_updated_params)
317 if doctor_reservation_service.create_reservation_log(reservation_form_log)
318 Rails.logger.info "================after create reservation v210 log========================"
319 end
320 data = response
321 render json: data, status: response.code
322 return
323 end
324
325 response_speciality = rs_api_resources.get_data("get_profile_doctor",speciality_params)
326
327 reservation_updated_params["booking_id"]=get_booking_id(response)
328 reservation_updated_params["doctor_speciality"]=get_doctor_speciality(response_speciality)
329 reservation_form = my_reservation_form_params_v210(reservation_updated_params)
330
331 doctor_form = doctor_form_params
332 if doctor_service.create_doctor(doctor_form)
333 # puts"----------------------doctor succeeded---------------------------"
334 end
335
336 schedule_form = schedule_form_params
337 if schedule_service.create_schedule(schedule_form)
338 # puts"----------------------schedule succeeded--------------------------"
339 end
340
341 # Rails.logger.info "reservation_form.inspect"
342 # Rails.logger.info reservation_form.inspect
343 # Rails.logger.info "end reservation_form.inspect"
344
345 if doctor_reservation_service.create_reservation(reservation_form)
346# prefilled_fields = doctor_reservation_service.prefilled_fields
347 data = {
348 booking_id: reservation_form.booking_id,
349 meta: {status: '200'},
350 payload: true
351 }
352 render json: data, status: 200
353 else
354 if reservation_form.errors.full_messages.length > 1
355 # Rails.logger.info JSON.pretty_generate(reservation_form.errors)
356 reservation_form.errors.clear
357 reservation_form.errors.add(:base, 'Mohon Lengkapi Data Pasien')
358 end
359 error_messages = reservation_form.errors.full_messages
360 data = {message: error_messages.join(', ')}
361 render json: data, status: 422
362 end
363 end
364
365 def doctor_form1_web
366 rs_api_param= rs_api_form_1_v210
367 response = rs_api_resources.post_data_to_json("form_1_doctor_reservation_web",rs_api_param)
368
369 render json: response, status: response.code
370 return
371
372 end
373
374 def doctor_form2_web
375
376 reservation_updated_params = add_dashboard_flag_and_status(reservation_form_params)
377 reservation_updated_params_rs_api={}
378 reservation_updated_params_rs_api['reservation']=reservation_updated_params
379 Rails.logger.debug "================inilah parameter yg dikirim ke rs-api========================"
380 Rails.logger.debug reservation_updated_params.inspect
381
382 response = rs_api_resources.post_data_to_json("form_2_doctor_reservation_web",reservation_updated_params_rs_api)
383# rs_api_message = get_response_message(response)
384
385 Rails.logger.debug "==============hasil dari response form 2 web=================="
386 Rails.logger.debug response.inspect
387
388 if response.try(:code)!=200
389 render json: response, status: response.code
390 return
391 end
392
393
394
395 if reservation_updated_params["is_dashboard"]== false
396 reservation_updated_params["booking_id"]=get_booking_id(response)
397 reservation_form_log = my_reservation_form_log_params_v210(reservation_updated_params)
398 if doctor_reservation_service.create_reservation_log(reservation_form_log)
399 Rails.logger.info "================after create reservation v200 log========================"
400 end
401 data = response
402 render json: data, status: response.code
403 return
404 end
405
406 response_speciality = rs_api_resources.get_data("get_profile_doctor",speciality_params)
407
408 reservation_updated_params["booking_id"]=get_booking_id(response)
409 reservation_updated_params["doctor_speciality"]=get_doctor_speciality(response_speciality)
410 reservation_form = my_reservation_form_params_v210(reservation_updated_params)
411
412 doctor_form = doctor_form_params
413 if doctor_service.create_doctor(doctor_form)
414 # puts"----------------------doctor succeeded---------------------------"
415 end
416
417 schedule_form = schedule_form_params
418 if schedule_service.create_schedule(schedule_form)
419 # puts"----------------------schedule succeeded--------------------------"
420 end
421
422 # Rails.logger.info "reservation_form.inspect"
423 # Rails.logger.info reservation_form.inspect
424 # Rails.logger.info "end reservation_form.inspect"
425
426 if doctor_reservation_service.create_reservation(reservation_form)
427# prefilled_fields = doctor_reservation_service.prefilled_fields
428 data = {
429 booking_id: reservation_form.booking_id,
430 meta: {status: '200'},
431 payload: true
432 }
433 render json: data, status: 200
434 else
435 if reservation_form.errors.full_messages.length > 1
436 # Rails.logger.info JSON.pretty_generate(reservation_form.errors)
437 reservation_form.errors.clear
438 reservation_form.errors.add(:base, 'Mohon Lengkapi Data Pasien')
439 end
440 error_messages = reservation_form.errors.full_messages
441 data = {message: error_messages.join(', ')}
442 render json: data, status: 422
443 end
444 end
445
446 def update_lead_internal
447 my_lead_form = lead_form_params
448 rs_api_update_status_param = rs_api_update_status
449 response = rs_api_resources.post_data_to_json("update_status_doctor_reservation",rs_api_update_status_param)
450 rs_api_message = get_response_message(response)
451
452 if response.try(:code)!=200
453 render :json => { meta: {status: response.code}, payload: 'failed', message: rs_api_message}, status: response.code
454 return
455 end
456
457 my_lead_form["update_booking_rs_api_status"] = response
458 my_lead_form["approval_status_user"] = current_core_user.fullname
459 my_lead_form = doctor_reservation_service.lead_parameter_update(my_lead_form)
460
461 doctor_reservation_lead_form = my_update_lead_form_params(my_lead_form)
462
463 result = doctor_reservation_service.update_lead(doctor_reservation_lead_form)
464 if result
465 render :json => { meta: {status: '200'}, payload: true}
466 else
467 error_messages = doctor_reservation_lead_form.errors.full_messages
468 render :json => { meta: {status: '422'}, payload: 'failed', message: error_messages.join(', ')}, status: 422
469 end
470 end
471
472 def update_lead
473 doctor_reservation_lead_form = lead_reservation_form_params
474 result = doctor_reservation_service.update_lead(doctor_reservation_lead_form)
475 if result
476 render :json => { meta: {status: '200'}, payload: true}
477 else
478 error_messages = doctor_reservation_lead_form.errors.full_messages
479 render :json => { meta: {status: '422'}, payload: 'failed', message: error_messages.join(', ')}, status: 422
480 end
481 end
482
483 def cancel_acknowledgement
484 my_form = status_form_params
485 my_form["is_cancel_acknowledged"] = true
486 doctor_reservation_update_status = status_update_form_params(my_form)
487 result = doctor_reservation_service.update_lead(doctor_reservation_update_status)
488 if result
489 render :json => { meta: {status: '200'}, payload: true}
490 else
491 error_messages = doctor_reservation_lead_form.errors.full_messages
492 render :json => { meta: {status: '422'}, payload: 'failed', message: error_messages.join(', ')}, status: 422
493 end
494
495 end
496
497 private
498 def data_not_processed
499 "Data not processed"
500 end
501
502 def new_status
503 "new"
504 end
505
506 def cancelled
507 "cancelled"
508 end
509
510 def confirmed
511 "confirmed"
512 end
513
514 def set_reservation
515 @reservation = Reservation::DoctorReservation.find(reservation_form_params[:id])
516 end
517
518 def status_form_params
519 params.require(:reservation).permit(
520 :booking_id)
521 end
522
523 def lead_form_params
524 params.require(:reservation).permit(
525 :user_id,
526 :key,
527 :user,
528 :doctor_name,
529 :doctor_speciality,
530 :hospital,
531 :patient_name,
532 :schedule_date,
533 :schedule_time,
534 :phone,
535 :email,
536 :birthday,
537 :follow_up_by,
538 :follow,
539 :note,
540 :source,
541 :funnel_name,
542 :booking_version,
543 :bitrix_id,
544 :bitrix_status,
545 :last_bitrix_update,
546 :gender,
547 :queue_number,
548 :booking_id,
549 :confirmation_status,
550 :confirmation_date,
551 :confirmation_url,
552 :bitrix_schedule_date,
553 :feedback_status,
554 :rejection_reason,
555 :rejection_reason_detail,
556 :feedback_url,
557 :is_new_patient,
558 :id_number,
559 :address,
560 :payment_method,
561 :occupation,
562 :religion,
563 :fit_to_fly_letter,
564 :blood_type,
565 :legal_guardian_name,
566 :price,
567 :confirmation_pdf_url,
568 :update_by,
569 :doctor_id,
570 :hospital_id,
571 :schedule_id,
572 :form_2_rs_api_status,
573 :is_dashboard,
574 :update_booking_rs_api_status,
575 booking_status: [:name, :timestamp, :duration],
576 booking_recommendation: [:doctor_id,:doctor_name,:schedule_date,:schedule_time])
577 end
578
579 def reservation_form_params
580 params.require(:reservation).permit(:user_id,
581 :key,
582 :doctor_id,
583 :hospital_id,
584 :procedure_id,
585 :funnel_name,
586 :doctor_name,
587 :hospital_name,
588 :reservation_date,
589 :reservation_time,
590 :price,
591 :follow,
592 :user_name,
593 :user_phone,
594 :user_email,
595 :user_birthday,
596 :source,
597 :schedule_id,
598 :gender,
599 :is_new_patient,
600 :id_number,
601 :address,
602 :payment_method,
603 :occupation,
604 :religion,
605 :fit_to_fly_letter,
606 :blood_type,
607 :legal_guardian_name,
608 :is_dashboard,
609 :booking_id,
610 :patient_name,
611 :insurance_id,
612 :insurance_name,
613 :form_2_rs_api_status,
614 :update_booking_rs_api_status)
615 end
616
617 def doctor_form_params
618 doctor_params = {}
619 doctor_params["id"]=reservation_form_params["doctor_id"]
620 doctor_params["code"]= reservation_form_params["doctor_id"]
621 doctor_params["name"]= reservation_form_params["doctor_name"]
622
623 Reservation::DoctorForm.new(doctor_params)
624 end
625
626 def doctor_reservation_update_status
627 update_status_params = {}
628 update_status_params["booking_id"]=reservation_form_params["booking_id"]
629 update_status_params["bitrix_status"]= reservation_form_params["bitrix_status"]
630
631 Reservation::DoctorForm.new(update_status_params)
632 end
633
634 def schedule_form_params
635 day_name = Date.parse(reservation_form_params["reservation_date"]).strftime("%A") rescue ""
636 start= reservation_form_params["reservation_time"].split('-')[0] rescue ""
637 finish= reservation_form_params["reservation_time"].split('-')[1] rescue ""
638 schedule_params = {}
639 schedule_params["id"]=reservation_form_params["schedule_id"]
640 schedule_params["schedule_day"]=day_name
641 schedule_params["time_from"]=start
642 schedule_params["time_to"]=finish
643 schedule_params["code"]=reservation_form_params["schedule_id"]
644 schedule_params["doctor_id"]=reservation_form_params["doctor_id"]
645 Reservation::ScheduleForm.new(schedule_params)
646 end
647
648 def my_reservation_form_params(reservation_params)
649 Reservation::DoctorReservationForm.new(reservation_params)
650 end
651
652 def my_reservation_form_log_params(reservation_params)
653 Reservation::DoctorReservationFormLog.new(reservation_params)
654 end
655
656 def my_reservation_form_params_v200(reservation_params)
657 Reservation::DoctorReservationFormV200.new(reservation_params)
658 end
659
660 def my_reservation_form_params_v210(reservation_params)
661 Reservation::DoctorReservationFormV210.new(reservation_params)
662 end
663
664 def my_reservation_form_log_params_v200(reservation_params)
665 Reservation::DoctorReservationFormLogV200.new(reservation_params)
666 end
667
668 def my_reservation_form_log_params_v210(reservation_params)
669 Reservation::DoctorReservationFormLogV210.new(reservation_params)
670 end
671
672 def my_update_lead_form_params(my_lead_params)
673 Reservation::DoctorReservationLeadForm.new(my_lead_params)
674 end
675
676
677 def lead_reservation_form_params
678 my_lead_form = lead_form_params
679 my_lead_form = doctor_reservation_service.lead_parameter_update(my_lead_form)
680 Reservation::DoctorReservationLeadForm.new(my_lead_form)
681 end
682
683 def status_update_form_params(lead_params)
684 Reservation::DoctorReservationLeadForm.new(lead_params)
685 end
686
687 def check_is_dashboard(hospital_id)
688 hospital = Hospital.find_by(code: hospital_id, data_status: Enum::DataStatus.statuses["active_data_status"])
689 Rails.logger.info hospital_id
690 Rails.logger.info hospital
691 if hospital.present?
692 Rails.logger.info "hospital available and active"
693 return true
694 end
695 Rails.logger.info "hospital not available or not active"
696 return false
697 end
698
699 def add_dashboard_flag_and_status(reservation_params)
700 # Rails.logger.info "===============parameter di dashboard flag============"
701 # Rails.logger.info JSON.pretty_generate(reservation_params)
702 rs_api_params = reservation_params
703 begin
704 rs_api_params["is_dashboard"]=false;
705 rs_api_params["bitrix_status"]= new_status
706 hospital_id = reservation_params["hospital_id"]
707 hospital = Hospital.find_by(code: hospital_id)
708 if hospital.try(:data_status)==Enum::DataStatus.statuses["active_data_status"]
709 rs_api_params["is_dashboard"]=true;
710 end
711 rescue => e
712 Rails.logger.info e.inspect
713 Rails.logger.info e.backtrace
714 end
715 return rs_api_params
716 end
717
718 def speciality_params
719 speciality_params={}
720 speciality_params["doctor_id"] = reservation_form_params["doctor_id"]
721 # Rails.logger.info "===============parameter di speciality doctor============"
722 # Rails.logger.info JSON.pretty_generate(speciality_params)
723
724 return speciality_params
725 end
726
727 def get_booking_id(response)
728 # Rails.logger.info "=============================inilah response dari rs api (form 1):"
729 # Rails.logger.info response.inspect
730 if response.code==200
731 body = JSON.parse(response.body)
732 return body["booking_id"]
733 else
734 return "";
735 end
736 end
737
738 def get_response_message(response)
739 puts "=============================inilah response dari rs api:"
740 puts response.inspect
741 if response.try(:body)
742 body = JSON.parse(response.body)
743 puts "=============inilah bodynya:============"
744 puts JSON.pretty_generate(body)
745 puts JSON.pretty_generate(body["message"])
746 return body["message"] rescue ""
747 else
748 return data_not_processed
749 end
750
751 end
752
753 def get_approval_status_user
754 end
755
756 def get_cancelled_user
757 end
758
759 def get_approval_status_date
760 end
761
762 def get_cancelled_date
763 end
764
765 def get_doctor_speciality(response)
766 # Rails.logger.info "=============================inilah response dari rs api (doctor speciality):"
767 # Rails.logger.info response.inspect
768 if response.code==200
769 begin
770 body = JSON.parse(response.body)
771 return body["data"]["doctor"]["doctor_speciality"]
772 rescue
773 return ""
774 end
775 else
776 return ""
777 end
778 end
779
780 def rs_api_form_2
781 rs_api_param={}
782 rs_api_param["reservation"] = reservation_form_params
783 return rs_api_param
784 end
785
786 def rs_api_form_1_v210
787 rs_api_param={}
788 rs_api_param["reservation"] = reservation_form_params
789 return rs_api_param
790 end
791
792 def rs_api_update_status
793 rs_api_param={}
794 rs_api_param["booking_id"]= lead_form_params["booking_id"]
795 rs_api_param["reservation"] = lead_form_params
796 return rs_api_param
797 end
798end