Class: Api::Partner::V1::ReportsController
- Inherits:
-
BaseController
- Object
- ActionController::API
- BaseController
- Api::Partner::V1::ReportsController
- Defined in:
- app/controllers/api/partner/v1/reports_controller.rb
Instance Method Summary collapse
- #export ⇒ Object
-
#report_branch_covers_by_hour ⇒ Object
Generates a report of branch covers grouped by hour.
-
#report_by_day ⇒ Object
Generates a report of reservations grouped by day.
-
#report_by_hour ⇒ Object
Generates a report of reservations grouped by hour.
-
#report_cover_dine_in_by_day ⇒ Object
Generates a report of dine-in covers grouped by day.
-
#report_package_by_day ⇒ Object
Generates a report of package sales grouped by day.
-
#report_package_by_hour ⇒ Object
Generates a report of package sales grouped by hour.
-
#report_sales_and_rating ⇒ Object
Generates a sales and ratings report.
-
#report_service_type_by_day ⇒ Object
Generates a report of service types used, grouped by day.
-
#report_service_type_by_hour ⇒ Object
Generates a report of service types used, grouped by hour.
-
#report_sold_out ⇒ Object
Generates a report of sold-out items.
Methods inherited from BaseController
#default_restaurant, #identity_cache_memoization, #render_unauthorize_action, #restaurants, #set_options
Methods included from LogrageCustomLogger
Methods included from ControllerHelpers
#check_boolean_param, #get_banners, #inventory_params, #reservation_params
Methods included from ResponseCacheConcern
Instance Method Details
#export ⇒ Object
132 133 134 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 132 def export raise NotImplementedError, 'This action is not implemented yet.' end |
#report_branch_covers_by_hour ⇒ Object
Generates a report of branch covers grouped by hour.
60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 60 def report_branch_covers_by_hour report_result = PartnerService::Reports::BranchCoversService.new(params, restaurants).build_reports_by_hour render json: { data: report_result[0], meta: { total_covers_restaurants: report_result[1], grand_total_covers: report_result[2], total_seats_restaurants: report_result[3], grand_total_seats: report_result[4], }, } end |
#report_by_day ⇒ Object
Generates a report of reservations grouped by day.
9 10 11 12 13 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 9 def report_by_day report_result = PartnerService::Reports::DineInService.new(params, restaurants).build_reports_by_day render json: { data: report_result[0], meta: report_result[1] } end |
#report_by_hour ⇒ Object
Generates a report of reservations grouped by hour.
23 24 25 26 27 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 23 def report_by_hour report_result = PartnerService::Reports::DineInService.new(params, restaurants).build_reports_by_hour render json: { data: report_result[0], meta: report_result[1] } end |
#report_cover_dine_in_by_day ⇒ Object
Generates a report of dine-in covers grouped by day.
115 116 117 118 119 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 115 def report_cover_dine_in_by_day report_result = PartnerService::Reports::DineInCoversService.new(params, restaurants).build_reports_by_day render json: { data: report_result[0], meta: { total: report_result[1] } } end |
#report_package_by_day ⇒ Object
Generates a report of package sales grouped by day.
48 49 50 51 52 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 48 def report_package_by_day report_result = PartnerService::Reports::PackageService.new(params, restaurants).build_reports_by_day render json: { data: { rows: report_result[0], cols: report_result[1] } } end |
#report_package_by_hour ⇒ Object
Generates a report of package sales grouped by hour.
37 38 39 40 41 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 37 def report_package_by_hour report_result = PartnerService::Reports::PackageService.new(params, restaurants).build_reports_by_hour render json: { data: { rows: report_result[0], cols: report_result[1] } } end |
#report_sales_and_rating ⇒ Object
Generates a sales and ratings report.
104 105 106 107 108 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 104 def report_result = PartnerService::Reports::SalesAndRatingService.new(params, restaurants). render json: { data: report_result } end |
#report_service_type_by_day ⇒ Object
Generates a report of service types used, grouped by day.
93 94 95 96 97 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 93 def report_service_type_by_day report_result = PartnerService::Reports::ServiceTypeService.new(params, restaurants).build_reports_service_type_by_day render json: { data: report_result[0], meta: report_result[1] } end |
#report_service_type_by_hour ⇒ Object
Generates a report of service types used, grouped by hour.
82 83 84 85 86 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 82 def report_service_type_by_hour report_result = PartnerService::Reports::ServiceTypeService.new(params, restaurants).build_reports_service_type_by_hour render json: { data: report_result[0], meta: report_result[1] } end |
#report_sold_out ⇒ Object
Generates a report of sold-out items.
126 127 128 129 130 |
# File 'app/controllers/api/partner/v1/reports_controller.rb', line 126 def report_sold_out report_result = PartnerService::Reports::SoldOutService.new(params, restaurants).build_sold_out_report render json: { data: report_result } end |