spree_cm_commissioner 2.0.1.pre.pre → 2.0.1.pre.pre1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test_and_build_gem.yml +2 -16
  3. data/.gitignore +1 -2
  4. data/Gemfile.lock +1 -28
  5. data/Rakefile +4 -33
  6. data/app/assets/images/mailer/mail.png +0 -0
  7. data/app/assets/images/mailer/tenant_phone.png +0 -0
  8. data/app/assets/images/mailer/tenant_user.png +0 -0
  9. data/app/assets/stylesheets/spree_cm_commissioner/backend/calendar.scss +11 -8
  10. data/app/controllers/concerns/spree_cm_commissioner/transit/taxon_bitwise.rb +44 -0
  11. data/app/controllers/spree/admin/stock_managements_controller.rb +1 -63
  12. data/app/controllers/spree/api/v2/organizer/invite_guests_controller.rb +1 -1
  13. data/app/controllers/spree/api/v2/storefront/accommodations_controller.rb +31 -14
  14. data/app/controllers/spree/api/v2/storefront/queue_cart/line_items_controller.rb +2 -2
  15. data/app/factory/spree_cm_commissioner/invite_guest_claimed_telegram_message_factory.rb +23 -82
  16. data/app/finders/spree_cm_commissioner/line_items/find_by_variant_decorator.rb +20 -0
  17. data/app/interactors/spree_cm_commissioner/create_ticket.rb +6 -5
  18. data/app/interactors/spree_cm_commissioner/pin_code_sender.rb +0 -1
  19. data/app/interactors/spree_cm_commissioner/sms.rb +1 -1
  20. data/app/interactors/spree_cm_commissioner/user_id_token_authenticator.rb +7 -3
  21. data/app/interactors/spree_cm_commissioner/user_id_token_checker.rb +11 -3
  22. data/app/interactors/spree_cm_commissioner/user_identity_checker.rb +12 -6
  23. data/app/interactors/spree_cm_commissioner/user_registration_with_id_token.rb +7 -1
  24. data/app/jobs/spree_cm_commissioner/application_job.rb +0 -20
  25. data/app/jobs/spree_cm_commissioner/application_unique_job.rb +0 -20
  26. data/app/jobs/spree_cm_commissioner/sms_pin_code_job.rb +1 -1
  27. data/app/mailers/spree/order_mailer_decorator.rb +18 -3
  28. data/app/models/concerns/spree_cm_commissioner/line_item_durationable.rb +15 -9
  29. data/app/models/concerns/spree_cm_commissioner/option_type_attr_type.rb +12 -1
  30. data/app/models/concerns/spree_cm_commissioner/order_state_machine.rb +0 -39
  31. data/app/models/concerns/spree_cm_commissioner/product_delegation.rb +3 -1
  32. data/app/models/concerns/spree_cm_commissioner/product_type.rb +0 -10
  33. data/app/models/concerns/spree_cm_commissioner/taxon_kind.rb +1 -1
  34. data/app/models/concerns/spree_cm_commissioner/tenant_preference.rb +1 -0
  35. data/app/models/spree_cm_commissioner/branch.rb +12 -0
  36. data/app/models/spree_cm_commissioner/guest.rb +0 -18
  37. data/app/models/spree_cm_commissioner/line_item_decorator.rb +78 -46
  38. data/app/models/spree_cm_commissioner/line_item_seat.rb +10 -0
  39. data/app/models/spree_cm_commissioner/notification_taxon.rb +1 -1
  40. data/app/models/spree_cm_commissioner/option_type_decorator.rb +11 -1
  41. data/app/models/spree_cm_commissioner/option_value_vehicle_type.rb +8 -0
  42. data/app/models/spree_cm_commissioner/order_decorator.rb +1 -30
  43. data/app/models/spree_cm_commissioner/place.rb +4 -1
  44. data/app/models/spree_cm_commissioner/product_decorator.rb +6 -10
  45. data/app/models/spree_cm_commissioner/service_calendar.rb +2 -0
  46. data/app/models/spree_cm_commissioner/state_decorator.rb +1 -0
  47. data/app/models/spree_cm_commissioner/stock/availability_checker.rb +25 -26
  48. data/app/models/spree_cm_commissioner/stock/availability_validator_decorator.rb +1 -2
  49. data/app/models/spree_cm_commissioner/stock/line_item_availability_checker.rb +3 -3
  50. data/app/models/spree_cm_commissioner/stock_item_decorator.rb +0 -17
  51. data/app/models/spree_cm_commissioner/stop.rb +23 -0
  52. data/app/models/spree_cm_commissioner/taxon_decorator.rb +1 -0
  53. data/app/models/spree_cm_commissioner/taxonomy_decorator.rb +6 -0
  54. data/app/models/spree_cm_commissioner/trip.rb +10 -8
  55. data/app/models/spree_cm_commissioner/trip_connection.rb +5 -5
  56. data/app/models/spree_cm_commissioner/trip_stop.rb +25 -6
  57. data/app/models/spree_cm_commissioner/user_identity_provider.rb +26 -4
  58. data/app/models/spree_cm_commissioner/variant_decorator.rb +47 -37
  59. data/app/models/spree_cm_commissioner/variant_options.rb +23 -0
  60. data/app/models/spree_cm_commissioner/vehicle.rb +14 -9
  61. data/app/models/spree_cm_commissioner/vehicle_seat.rb +11 -0
  62. data/app/models/spree_cm_commissioner/vehicle_type.rb +76 -0
  63. data/app/models/spree_cm_commissioner/vendor_decorator.rb +17 -11
  64. data/app/models/spree_cm_commissioner/vendor_place.rb +3 -9
  65. data/app/models/spree_cm_commissioner/vendor_stop.rb +10 -0
  66. data/app/queries/spree_cm_commissioner/trip_query.rb +44 -70
  67. data/app/queries/spree_cm_commissioner/trip_search_query.rb +76 -0
  68. data/app/queries/spree_cm_commissioner/variant_availability/non_permanent_stock_query.rb +45 -0
  69. data/app/queries/spree_cm_commissioner/variant_availability/permanent_stock_query.rb +55 -0
  70. data/app/queries/spree_cm_commissioner/vendor_stop_place_query.rb +54 -0
  71. data/app/request_schemas/spree_cm_commissioner/accommodation_request_schema.rb +0 -3
  72. data/app/request_schemas/spree_cm_commissioner/application_request_schema.rb +1 -1
  73. data/app/serializers/spree/v2/storefront/accommodation_serializer.rb +0 -2
  74. data/app/serializers/spree/v2/storefront/line_item_serializer_decorator.rb +0 -1
  75. data/app/serializers/spree/v2/tenant/user_serializer.rb +1 -0
  76. data/app/services/spree_cm_commissioner/user_authenticator.rb +1 -1
  77. data/app/services/spree_cm_commissioner/vehicle_option_value_creator.rb +11 -0
  78. data/app/views/spree/admin/stock_managements/_variant_stock_items.html.erb +2 -7
  79. data/app/views/spree/admin/stock_managements/index.html.erb +6 -55
  80. data/app/views/spree/admin/tenants/_form.html.erb +9 -0
  81. data/app/views/spree/admin/vendors/_form.html.erb +14 -0
  82. data/app/views/spree/order_mailer/confirm_email.html.erb +27 -16
  83. data/app/views/spree_cm_commissioner/layouts/order_mailer.html.erb +5 -1
  84. data/app/views/spree_cm_commissioner/order_mailer/_mailer_stylesheets.html.erb +41 -4
  85. data/app/views/spree_cm_commissioner/order_mailer/tenant/_customer_info.html.erb +42 -0
  86. data/app/views/spree_cm_commissioner/order_mailer/tenant/_footer.html.erb +25 -0
  87. data/app/views/spree_cm_commissioner/order_mailer/tenant/_greeting.html.erb +19 -0
  88. data/app/views/spree_cm_commissioner/order_mailer/tenant/_support_contact.html.erb +33 -0
  89. data/config/initializers/spree_permitted_attributes.rb +0 -5
  90. data/config/routes.rb +2 -21
  91. data/db/migrate/20240202080634_update_counter_cache_of_vehicle_type.rb +1 -3
  92. data/db/migrate/20250709073455_add_email_fields_to_spree_vendors.rb +6 -0
  93. data/db/migrate/20250715103333_remove_indexes_from_cm_user_identity_providers.rb +13 -0
  94. data/docker-compose.yml +1 -1
  95. data/lib/cm_app_logger.rb +4 -11
  96. data/lib/generators/spree_cm_commissioner/install/install_generator.rb +11 -14
  97. data/lib/generators/spree_cm_commissioner/install/templates/app/javascript/{spree_dashboard/spree_cm_commissioner → spree_cm_commissioner}/utilities.js +0 -4
  98. data/lib/spree_cm_commissioner/calendar_event.rb +1 -11
  99. data/lib/spree_cm_commissioner/test_helper/factories/branch_factory.rb +12 -0
  100. data/lib/spree_cm_commissioner/test_helper/factories/departure_time_option_type_factory.rb +8 -0
  101. data/lib/spree_cm_commissioner/test_helper/factories/duration_option_type_factory.rb +8 -0
  102. data/lib/spree_cm_commissioner/test_helper/factories/guest_factory.rb +0 -10
  103. data/lib/spree_cm_commissioner/test_helper/factories/homepage_section_relatable_factory.rb +1 -1
  104. data/lib/spree_cm_commissioner/test_helper/factories/line_item_factory.rb +1 -1
  105. data/lib/spree_cm_commissioner/test_helper/factories/line_item_seat_factory.rb +7 -0
  106. data/lib/spree_cm_commissioner/test_helper/factories/option_type_factory.rb +30 -6
  107. data/lib/spree_cm_commissioner/test_helper/factories/order_factory.rb +36 -0
  108. data/lib/spree_cm_commissioner/test_helper/factories/product_factory.rb +34 -18
  109. data/lib/spree_cm_commissioner/test_helper/factories/stock_location_factory.rb +2 -2
  110. data/lib/spree_cm_commissioner/test_helper/factories/stop_factory.rb +14 -0
  111. data/lib/spree_cm_commissioner/test_helper/factories/transit_place_factory.rb +8 -0
  112. data/lib/spree_cm_commissioner/test_helper/factories/trip_factory.rb +3 -11
  113. data/lib/spree_cm_commissioner/test_helper/factories/user_identity_provider_factory.rb +1 -1
  114. data/lib/spree_cm_commissioner/test_helper/factories/variant_factory.rb +19 -41
  115. data/lib/spree_cm_commissioner/test_helper/factories/vehicle_factory.rb +1 -1
  116. data/lib/spree_cm_commissioner/test_helper/factories/vehicle_option_type_factory.rb +8 -0
  117. data/lib/spree_cm_commissioner/test_helper/factories/vehicle_type_factory.rb +96 -0
  118. data/lib/spree_cm_commissioner/test_helper/factories/vendor_factory.rb +1 -6
  119. data/lib/spree_cm_commissioner/test_helper/factories/vendor_place_factory.rb +1 -13
  120. data/lib/spree_cm_commissioner/trip_query_result.rb +0 -8
  121. data/lib/spree_cm_commissioner/trip_result.rb +3 -5
  122. data/lib/spree_cm_commissioner/trip_seat_layout_result.rb +11 -0
  123. data/lib/spree_cm_commissioner/version.rb +1 -1
  124. data/lib/spree_cm_commissioner.rb +1 -35
  125. data/spree_cm_commissioner.gemspec +0 -7
  126. metadata +35 -139
  127. data/app/controllers/spree/admin/inventory_items_controller.rb +0 -83
  128. data/app/controllers/spree/api/v2/storefront/accommodations/variants_controller.rb +0 -42
  129. data/app/finders/spree_cm_commissioner/accommodations/find.rb +0 -37
  130. data/app/finders/spree_cm_commissioner/accommodations/find_variant.rb +0 -32
  131. data/app/interactors/spree_cm_commissioner/ensure_correct_product_type.rb +0 -40
  132. data/app/interactors/spree_cm_commissioner/inventory_item_syncer.rb +0 -25
  133. data/app/interactors/spree_cm_commissioner/stock/inventory_item_resetter.rb +0 -44
  134. data/app/interactors/spree_cm_commissioner/stock/inventory_items_adjuster.rb +0 -13
  135. data/app/interactors/spree_cm_commissioner/stock/inventory_items_generator.rb +0 -15
  136. data/app/interactors/spree_cm_commissioner/stock/permanent_inventory_items_generator.rb +0 -75
  137. data/app/interactors/spree_cm_commissioner/stock/stock_movement_creator.rb +0 -32
  138. data/app/jobs/spree_cm_commissioner/ensure_correct_product_type_job.rb +0 -7
  139. data/app/jobs/spree_cm_commissioner/inventory_item_syncer_job.rb +0 -7
  140. data/app/jobs/spree_cm_commissioner/stock/inventory_items_adjuster_job.rb +0 -11
  141. data/app/jobs/spree_cm_commissioner/stock/inventory_items_generator_job.rb +0 -11
  142. data/app/jobs/spree_cm_commissioner/stock/permanent_inventory_items_generator_job.rb +0 -9
  143. data/app/models/concerns/spree_cm_commissioner/order_seatable.rb +0 -44
  144. data/app/models/spree_cm_commissioner/block.rb +0 -23
  145. data/app/models/spree_cm_commissioner/inventory.rb +0 -11
  146. data/app/models/spree_cm_commissioner/inventory_item.rb +0 -69
  147. data/app/models/spree_cm_commissioner/price_decorator.rb +0 -9
  148. data/app/models/spree_cm_commissioner/redis_stock/cached_inventory_items_builder.rb +0 -41
  149. data/app/models/spree_cm_commissioner/redis_stock/inventory_updater.rb +0 -126
  150. data/app/models/spree_cm_commissioner/redis_stock/line_items_cached_inventory_items_builder.rb +0 -36
  151. data/app/models/spree_cm_commissioner/redis_stock/variant_cached_inventory_items_builder.rb +0 -25
  152. data/app/models/spree_cm_commissioner/reserved_block.rb +0 -30
  153. data/app/models/spree_cm_commissioner/seat_layout.rb +0 -20
  154. data/app/models/spree_cm_commissioner/seat_section.rb +0 -16
  155. data/app/models/spree_cm_commissioner/seats/blocks_canceler.rb +0 -30
  156. data/app/models/spree_cm_commissioner/seats/blocks_holder.rb +0 -53
  157. data/app/models/spree_cm_commissioner/seats/blocks_reserver.rb +0 -49
  158. data/app/models/spree_cm_commissioner/seats/errors/blocks_are_on_hold_by_other_guest.rb +0 -4
  159. data/app/models/spree_cm_commissioner/seats/errors/blocks_are_reserved_by_other_guest.rb +0 -4
  160. data/app/models/spree_cm_commissioner/seats/errors/blocks_are_reserved_by_same_guest.rb +0 -4
  161. data/app/models/spree_cm_commissioner/seats/errors/unable_to_save_reserved_block_record.rb +0 -4
  162. data/app/models/spree_cm_commissioner/stock/order_availability_checker.rb +0 -44
  163. data/app/models/spree_cm_commissioner/variant_block.rb +0 -9
  164. data/app/request_schemas/spree_cm_commissioner/variant_request_schema.rb +0 -19
  165. data/app/views/spree/admin/inventory_items/show.html.erb +0 -72
  166. data/app/views/spree/admin/stock_managements/calendar.html.erb +0 -56
  167. data/config/initializers/paper_trail.rb +0 -1
  168. data/db/migrate/20250304293518_create_cm_inventory_items.rb +0 -21
  169. data/db/migrate/20250429094228_add_lock_version_to_cm_inventory_items.rb +0 -5
  170. data/db/migrate/20250502025848_add_index_to_spree_products.rb +0 -5
  171. data/db/migrate/20250502030001_add_product_type_to_spree_variants.rb +0 -5
  172. data/db/migrate/20250502030002_add_product_type_to_spree_line_items.rb +0 -5
  173. data/db/migrate/20250603035256_add_inventory_item_to_spree_prices.rb +0 -7
  174. data/db/migrate/20250619073724_drop_table_cm_line_item_seats.rb +0 -5
  175. data/db/migrate/20250619073812_drop_table_cm_vehicle_seats.rb +0 -5
  176. data/db/migrate/20250619073844_drop_table_cm_vehicle_types.rb +0 -9
  177. data/db/migrate/20250619073957_drop_table_cm_option_value_vehicle_types.rb +0 -5
  178. data/db/migrate/20250619082354_remove_unnecessary_fields_from_cm_places.rb +0 -9
  179. data/db/migrate/20250619082736_remove_route_type_from_spree_products.rb +0 -5
  180. data/db/migrate/20250619083055_remove_unnecessary_fields_from_spree_taxons.rb +0 -5
  181. data/db/migrate/20250620083055_remove_variant_id_from_cm_trips.rb +0 -5
  182. data/db/migrate/20250620090000_update_cm_trip_connections_to_use_cm_trips.rb +0 -6
  183. data/db/migrate/20250620090001_create_cm_seat_layouts.rb +0 -17
  184. data/db/migrate/20250620090002_create_cm_seat_sections.rb +0 -18
  185. data/db/migrate/20250620090003_create_cm_blocks.rb +0 -18
  186. data/db/migrate/20250624091005_create_cm_reserved_blocks.rb +0 -29
  187. data/db/migrate/20250626083642_create_cm_variant_blocks.rb +0 -24
  188. data/db/migrate/20250627023314_add_block_id_to_cm_guests.rb +0 -13
  189. data/db/migrate/20250716022821_add_location_reference_to_cm_vendor_places.rb +0 -5
  190. data/db/migrate/20250716031743_drop_table_cm_vendor_stops.rb +0 -5
  191. data/db/migrate/20250717023824_add_vendor_reference_to_cm_trips.rb +0 -5
  192. data/db/migrate/20250717041414_add_location_place_reference_to_cm_trip_stops.rb +0 -5
  193. data/db/migrate/20250717042539_rename_cm_trip_stops_stop_id_column_to_stop_place_id.rb +0 -7
  194. data/db/migrate/20250717042707_rename_cm_trips_origin_and_destination_to_origin_place_and_destination_place.rb +0 -11
  195. data/lib/spree_cm_commissioner/cached_inventory_item.rb +0 -23
  196. data/lib/spree_cm_commissioner/test_helper/factories/block_factory.rb +0 -15
  197. data/lib/spree_cm_commissioner/test_helper/factories/inventory_item_factory.rb +0 -9
  198. data/lib/spree_cm_commissioner/test_helper/factories/reserved_block_factory.rb +0 -27
  199. data/lib/spree_cm_commissioner/test_helper/factories/seat_layout_factory.rb +0 -11
  200. data/lib/spree_cm_commissioner/test_helper/factories/seat_section_factory.rb +0 -16
  201. data/lib/spree_cm_commissioner/test_helper/factories/trip_connection_factory.rb +0 -6
  202. data/lib/spree_cm_commissioner/test_helper/factories/trip_stop_factory.rb +0 -10
  203. data/lib/spree_cm_commissioner/test_helper/factories/variant_block_factory.rb +0 -7
  204. data/lib/tasks/create_default_non_permanent_inventory_items.rake +0 -16
  205. data/lib/tasks/ensure_correct_product_type.rake +0 -7
  206. data/lib/tasks/generate_inventory_items.rake +0 -7
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_cm_commissioner
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1.pre.pre
4
+ version: 2.0.1.pre.pre1
5
5
  platform: ruby
6
6
  authors:
7
7
  - You
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-23 00:00:00.000000000 Z
11
+ date: 2025-07-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spree
@@ -464,62 +464,6 @@ dependencies:
464
464
  - - "~>"
465
465
  - !ruby/object:Gem::Version
466
466
  version: '3.2'
467
- - !ruby/object:Gem::Dependency
468
- name: paper_trail
469
- requirement: !ruby/object:Gem::Requirement
470
- requirements:
471
- - - "~>"
472
- - !ruby/object:Gem::Version
473
- version: '16.0'
474
- type: :runtime
475
- prerelease: false
476
- version_requirements: !ruby/object:Gem::Requirement
477
- requirements:
478
- - - "~>"
479
- - !ruby/object:Gem::Version
480
- version: '16.0'
481
- - !ruby/object:Gem::Dependency
482
- name: redis
483
- requirement: !ruby/object:Gem::Requirement
484
- requirements:
485
- - - ">="
486
- - !ruby/object:Gem::Version
487
- version: '0'
488
- type: :runtime
489
- prerelease: false
490
- version_requirements: !ruby/object:Gem::Requirement
491
- requirements:
492
- - - ">="
493
- - !ruby/object:Gem::Version
494
- version: '0'
495
- - !ruby/object:Gem::Dependency
496
- name: redis-rails
497
- requirement: !ruby/object:Gem::Requirement
498
- requirements:
499
- - - ">="
500
- - !ruby/object:Gem::Version
501
- version: '0'
502
- type: :runtime
503
- prerelease: false
504
- version_requirements: !ruby/object:Gem::Requirement
505
- requirements:
506
- - - ">="
507
- - !ruby/object:Gem::Version
508
- version: '0'
509
- - !ruby/object:Gem::Dependency
510
- name: connection_pool
511
- requirement: !ruby/object:Gem::Requirement
512
- requirements:
513
- - - ">="
514
- - !ruby/object:Gem::Version
515
- version: '0'
516
- type: :runtime
517
- prerelease: false
518
- version_requirements: !ruby/object:Gem::Requirement
519
- requirements:
520
- - - ">="
521
- - !ruby/object:Gem::Version
522
- version: '0'
523
467
  - !ruby/object:Gem::Dependency
524
468
  name: pg
525
469
  requirement: !ruby/object:Gem::Requirement
@@ -708,8 +652,11 @@ files:
708
652
  - app/assets/images/mailer/facebook.png
709
653
  - app/assets/images/mailer/instagram.png
710
654
  - app/assets/images/mailer/line_item-mailer-bg.png
655
+ - app/assets/images/mailer/mail.png
711
656
  - app/assets/images/mailer/map-marker.png
712
657
  - app/assets/images/mailer/phone.png
658
+ - app/assets/images/mailer/tenant_phone.png
659
+ - app/assets/images/mailer/tenant_user.png
713
660
  - app/assets/images/mailer/twitter.png
714
661
  - app/assets/images/mailer/user.png
715
662
  - app/assets/images/payment_methods/cm-payment-affirm.svg
@@ -790,6 +737,7 @@ files:
790
737
  - app/controllers/concerns/spree_cm_commissioner/events/role_authorization.rb
791
738
  - app/controllers/concerns/spree_cm_commissioner/exception_notificable.rb
792
739
  - app/controllers/concerns/spree_cm_commissioner/order_concern.rb
740
+ - app/controllers/concerns/spree_cm_commissioner/transit/taxon_bitwise.rb
793
741
  - app/controllers/concerns/spree_cm_commissioner/waiting_room_authorization.rb
794
742
  - app/controllers/spree/admin/account_deletions_controller.rb
795
743
  - app/controllers/spree/admin/base_controller_decorator.rb
@@ -816,7 +764,6 @@ files:
816
764
  - app/controllers/spree/admin/id_cards_controller.rb
817
765
  - app/controllers/spree/admin/import_existing_orders_controller.rb
818
766
  - app/controllers/spree/admin/import_new_orders_controller.rb
819
- - app/controllers/spree/admin/inventory_items_controller.rb
820
767
  - app/controllers/spree/admin/kyc_controller.rb
821
768
  - app/controllers/spree/admin/line_items_controller.rb
822
769
  - app/controllers/spree/admin/master_variant_controller.rb
@@ -888,7 +835,6 @@ files:
888
835
  - app/controllers/spree/api/v2/platform/seat_number_layouts_controller.rb
889
836
  - app/controllers/spree/api/v2/platform/taxons_controller_decorator.rb
890
837
  - app/controllers/spree/api/v2/resource_controller_decorator.rb
891
- - app/controllers/spree/api/v2/storefront/accommodations/variants_controller.rb
892
838
  - app/controllers/spree/api/v2/storefront/accommodations_controller.rb
893
839
  - app/controllers/spree/api/v2/storefront/account/orders_controller_decorator.rb
894
840
  - app/controllers/spree/api/v2/storefront/account/preferred_payment_method_controller.rb
@@ -1066,8 +1012,7 @@ files:
1066
1012
  - app/factory/spree_cm_commissioner/invite_guest_claimed_telegram_message_factory.rb
1067
1013
  - app/factory/spree_cm_commissioner/order_telegram_message_factory.rb
1068
1014
  - app/factory/spree_cm_commissioner/telegram_message_factory.rb
1069
- - app/finders/spree_cm_commissioner/accommodations/find.rb
1070
- - app/finders/spree_cm_commissioner/accommodations/find_variant.rb
1015
+ - app/finders/spree_cm_commissioner/line_items/find_by_variant_decorator.rb
1071
1016
  - app/finders/spree_cm_commissioner/orders/find.rb
1072
1017
  - app/finders/spree_cm_commissioner/orders/find_by_state.rb
1073
1018
  - app/finders/spree_cm_commissioner/payment_methods/group_by_bank.rb
@@ -1118,7 +1063,6 @@ files:
1118
1063
  - app/interactors/spree_cm_commissioner/customer_promotion_creator.rb
1119
1064
  - app/interactors/spree_cm_commissioner/enqueue_cart/add_item.rb
1120
1065
  - app/interactors/spree_cm_commissioner/enqueue_cart/add_item_status_marker.rb
1121
- - app/interactors/spree_cm_commissioner/ensure_correct_product_type.rb
1122
1066
  - app/interactors/spree_cm_commissioner/event_line_items_date_syncer.rb
1123
1067
  - app/interactors/spree_cm_commissioner/event_qr_generator.rb
1124
1068
  - app/interactors/spree_cm_commissioner/existing_account_checker.rb
@@ -1134,7 +1078,6 @@ files:
1134
1078
  - app/interactors/spree_cm_commissioner/imported_csv_downloader.rb
1135
1079
  - app/interactors/spree_cm_commissioner/international_mobile_formatter.rb
1136
1080
  - app/interactors/spree_cm_commissioner/invalidate_cache_request.rb
1137
- - app/interactors/spree_cm_commissioner/inventory_item_syncer.rb
1138
1081
  - app/interactors/spree_cm_commissioner/invoice_creator.rb
1139
1082
  - app/interactors/spree_cm_commissioner/media/signed_cookie_generator.rb
1140
1083
  - app/interactors/spree_cm_commissioner/media/signed_path_generator.rb
@@ -1169,11 +1112,6 @@ files:
1169
1112
  - app/interactors/spree_cm_commissioner/sms.rb
1170
1113
  - app/interactors/spree_cm_commissioner/sqs/media_convert_job_status.rb
1171
1114
  - app/interactors/spree_cm_commissioner/state_updater.rb
1172
- - app/interactors/spree_cm_commissioner/stock/inventory_item_resetter.rb
1173
- - app/interactors/spree_cm_commissioner/stock/inventory_items_adjuster.rb
1174
- - app/interactors/spree_cm_commissioner/stock/inventory_items_generator.rb
1175
- - app/interactors/spree_cm_commissioner/stock/permanent_inventory_items_generator.rb
1176
- - app/interactors/spree_cm_commissioner/stock/stock_movement_creator.rb
1177
1115
  - app/interactors/spree_cm_commissioner/subscriptions_order_creator.rb
1178
1116
  - app/interactors/spree_cm_commissioner/subscriptions_order_cron_executor.rb
1179
1117
  - app/interactors/spree_cm_commissioner/subscriptions_prepaid_order_creator.rb
@@ -1223,7 +1161,6 @@ files:
1223
1161
  - app/jobs/spree_cm_commissioner/customer_notification_cron_job.rb
1224
1162
  - app/jobs/spree_cm_commissioner/customer_notification_sender_job.rb
1225
1163
  - app/jobs/spree_cm_commissioner/enqueue_cart/add_item_job.rb
1226
- - app/jobs/spree_cm_commissioner/ensure_correct_product_type_job.rb
1227
1164
  - app/jobs/spree_cm_commissioner/ensure_event_for_product_line_item_guests_job.rb
1228
1165
  - app/jobs/spree_cm_commissioner/ensure_event_id_for_guests_job.rb
1229
1166
  - app/jobs/spree_cm_commissioner/event_line_items_date_syncer_job.rb
@@ -1231,7 +1168,6 @@ files:
1231
1168
  - app/jobs/spree_cm_commissioner/firebase_email_fetcher_job.rb
1232
1169
  - app/jobs/spree_cm_commissioner/import_order_job.rb
1233
1170
  - app/jobs/spree_cm_commissioner/invalidate_cache_request_job.rb
1234
- - app/jobs/spree_cm_commissioner/inventory_item_syncer_job.rb
1235
1171
  - app/jobs/spree_cm_commissioner/option_type_variants_public_metadata_updater_job.rb
1236
1172
  - app/jobs/spree_cm_commissioner/option_value_variants_public_metadata_updater_job.rb
1237
1173
  - app/jobs/spree_cm_commissioner/order_complete_telegram_sender_job.rb
@@ -1240,9 +1176,6 @@ files:
1240
1176
  - app/jobs/spree_cm_commissioner/sms_job.rb
1241
1177
  - app/jobs/spree_cm_commissioner/sms_pin_code_job.rb
1242
1178
  - app/jobs/spree_cm_commissioner/state_job.rb
1243
- - app/jobs/spree_cm_commissioner/stock/inventory_items_adjuster_job.rb
1244
- - app/jobs/spree_cm_commissioner/stock/inventory_items_generator_job.rb
1245
- - app/jobs/spree_cm_commissioner/stock/permanent_inventory_items_generator_job.rb
1246
1179
  - app/jobs/spree_cm_commissioner/subscription_order_executor_job.rb
1247
1180
  - app/jobs/spree_cm_commissioner/telegram_debug_pin_code_sender_job.rb
1248
1181
  - app/jobs/spree_cm_commissioner/telegram_notification_sender_job.rb
@@ -1271,7 +1204,6 @@ files:
1271
1204
  - app/models/concerns/spree_cm_commissioner/metafield.rb
1272
1205
  - app/models/concerns/spree_cm_commissioner/option_type_attr_type.rb
1273
1206
  - app/models/concerns/spree_cm_commissioner/option_value_attr_type.rb
1274
- - app/models/concerns/spree_cm_commissioner/order_seatable.rb
1275
1207
  - app/models/concerns/spree_cm_commissioner/order_state_machine.rb
1276
1208
  - app/models/concerns/spree_cm_commissioner/parameterize_name.rb
1277
1209
  - app/models/concerns/spree_cm_commissioner/participation_type_bitwise.rb
@@ -1300,7 +1232,7 @@ files:
1300
1232
  - app/models/spree_cm_commissioner/back_image.rb
1301
1233
  - app/models/spree_cm_commissioner/base.rb
1302
1234
  - app/models/spree_cm_commissioner/blazer_queryable.rb
1303
- - app/models/spree_cm_commissioner/block.rb
1235
+ - app/models/spree_cm_commissioner/branch.rb
1304
1236
  - app/models/spree_cm_commissioner/check_in.rb
1305
1237
  - app/models/spree_cm_commissioner/check_in_ability.rb
1306
1238
  - app/models/spree_cm_commissioner/check_in_record.rb
@@ -1349,8 +1281,6 @@ files:
1349
1281
  - app/models/spree_cm_commissioner/image_methods_decorator.rb
1350
1282
  - app/models/spree_cm_commissioner/import.rb
1351
1283
  - app/models/spree_cm_commissioner/imports/import_order.rb
1352
- - app/models/spree_cm_commissioner/inventory.rb
1353
- - app/models/spree_cm_commissioner/inventory_item.rb
1354
1284
  - app/models/spree_cm_commissioner/invite.rb
1355
1285
  - app/models/spree_cm_commissioner/invite_guest.rb
1356
1286
  - app/models/spree_cm_commissioner/invite_team.rb
@@ -1358,6 +1288,7 @@ files:
1358
1288
  - app/models/spree_cm_commissioner/invite_user_taxon.rb
1359
1289
  - app/models/spree_cm_commissioner/invoice.rb
1360
1290
  - app/models/spree_cm_commissioner/line_item_decorator.rb
1291
+ - app/models/spree_cm_commissioner/line_item_seat.rb
1361
1292
  - app/models/spree_cm_commissioner/notification.rb
1362
1293
  - app/models/spree_cm_commissioner/notification_taxon.rb
1363
1294
  - app/models/spree_cm_commissioner/oauth_access_token_decorator.rb
@@ -1365,6 +1296,7 @@ files:
1365
1296
  - app/models/spree_cm_commissioner/option_type_decorator.rb
1366
1297
  - app/models/spree_cm_commissioner/option_value_decorator.rb
1367
1298
  - app/models/spree_cm_commissioner/option_value_vehicle.rb
1299
+ - app/models/spree_cm_commissioner/option_value_vehicle_type.rb
1368
1300
  - app/models/spree_cm_commissioner/option_value_vendor.rb
1369
1301
  - app/models/spree_cm_commissioner/order/address_book_decorator.rb
1370
1302
  - app/models/spree_cm_commissioner/order_decorator.rb
@@ -1383,7 +1315,6 @@ files:
1383
1315
  - app/models/spree_cm_commissioner/pin_code_telegram.rb
1384
1316
  - app/models/spree_cm_commissioner/pin_code_update_user_login.rb
1385
1317
  - app/models/spree_cm_commissioner/place.rb
1386
- - app/models/spree_cm_commissioner/price_decorator.rb
1387
1318
  - app/models/spree_cm_commissioner/product_completion_step.rb
1388
1319
  - app/models/spree_cm_commissioner/product_completion_steps/chatrace_telegram.rb
1389
1320
  - app/models/spree_cm_commissioner/product_decorator.rb
@@ -1405,24 +1336,10 @@ files:
1405
1336
  - app/models/spree_cm_commissioner/promotion_decorator.rb
1406
1337
  - app/models/spree_cm_commissioner/property_decorator.rb
1407
1338
  - app/models/spree_cm_commissioner/prototype_decorator.rb
1408
- - app/models/spree_cm_commissioner/redis_stock/cached_inventory_items_builder.rb
1409
- - app/models/spree_cm_commissioner/redis_stock/inventory_updater.rb
1410
- - app/models/spree_cm_commissioner/redis_stock/line_items_cached_inventory_items_builder.rb
1411
- - app/models/spree_cm_commissioner/redis_stock/variant_cached_inventory_items_builder.rb
1412
- - app/models/spree_cm_commissioner/reserved_block.rb
1413
1339
  - app/models/spree_cm_commissioner/role_decorator.rb
1414
1340
  - app/models/spree_cm_commissioner/role_permission.rb
1415
1341
  - app/models/spree_cm_commissioner/s3_presigned_url.rb
1416
1342
  - app/models/spree_cm_commissioner/s3_presigned_url_builder.rb
1417
- - app/models/spree_cm_commissioner/seat_layout.rb
1418
- - app/models/spree_cm_commissioner/seat_section.rb
1419
- - app/models/spree_cm_commissioner/seats/blocks_canceler.rb
1420
- - app/models/spree_cm_commissioner/seats/blocks_holder.rb
1421
- - app/models/spree_cm_commissioner/seats/blocks_reserver.rb
1422
- - app/models/spree_cm_commissioner/seats/errors/blocks_are_on_hold_by_other_guest.rb
1423
- - app/models/spree_cm_commissioner/seats/errors/blocks_are_reserved_by_other_guest.rb
1424
- - app/models/spree_cm_commissioner/seats/errors/blocks_are_reserved_by_same_guest.rb
1425
- - app/models/spree_cm_commissioner/seats/errors/unable_to_save_reserved_block_record.rb
1426
1343
  - app/models/spree_cm_commissioner/service_calendar.rb
1427
1344
  - app/models/spree_cm_commissioner/sms_log.rb
1428
1345
  - app/models/spree_cm_commissioner/state_change_decorator.rb
@@ -1431,9 +1348,9 @@ files:
1431
1348
  - app/models/spree_cm_commissioner/stock/availability_validator_decorator.rb
1432
1349
  - app/models/spree_cm_commissioner/stock/inventory_unit_builder_decorator.rb
1433
1350
  - app/models/spree_cm_commissioner/stock/line_item_availability_checker.rb
1434
- - app/models/spree_cm_commissioner/stock/order_availability_checker.rb
1435
1351
  - app/models/spree_cm_commissioner/stock_item_decorator.rb
1436
1352
  - app/models/spree_cm_commissioner/stock_location_decorator.rb
1353
+ - app/models/spree_cm_commissioner/stop.rb
1437
1354
  - app/models/spree_cm_commissioner/store_decorator.rb
1438
1355
  - app/models/spree_cm_commissioner/subscription.rb
1439
1356
  - app/models/spree_cm_commissioner/taxon_app_banner.rb
@@ -1463,7 +1380,6 @@ files:
1463
1380
  - app/models/spree_cm_commissioner/user_place.rb
1464
1381
  - app/models/spree_cm_commissioner/user_profile.rb
1465
1382
  - app/models/spree_cm_commissioner/user_taxon.rb
1466
- - app/models/spree_cm_commissioner/variant_block.rb
1467
1383
  - app/models/spree_cm_commissioner/variant_decorator.rb
1468
1384
  - app/models/spree_cm_commissioner/variant_guest_card_class.rb
1469
1385
  - app/models/spree_cm_commissioner/variant_options.rb
@@ -1471,6 +1387,8 @@ files:
1471
1387
  - app/models/spree_cm_commissioner/vehicle.rb
1472
1388
  - app/models/spree_cm_commissioner/vehicle_option_type.rb
1473
1389
  - app/models/spree_cm_commissioner/vehicle_photo.rb
1390
+ - app/models/spree_cm_commissioner/vehicle_seat.rb
1391
+ - app/models/spree_cm_commissioner/vehicle_type.rb
1474
1392
  - app/models/spree_cm_commissioner/vendor_app_promotion_banner.rb
1475
1393
  - app/models/spree_cm_commissioner/vendor_decorator.rb
1476
1394
  - app/models/spree_cm_commissioner/vendor_logo.rb
@@ -1479,6 +1397,7 @@ files:
1479
1397
  - app/models/spree_cm_commissioner/vendor_photo.rb
1480
1398
  - app/models/spree_cm_commissioner/vendor_place.rb
1481
1399
  - app/models/spree_cm_commissioner/vendor_promotion_rule.rb
1400
+ - app/models/spree_cm_commissioner/vendor_stop.rb
1482
1401
  - app/models/spree_cm_commissioner/vendor_web_promotion_banner.rb
1483
1402
  - app/models/spree_cm_commissioner/video.rb
1484
1403
  - app/models/spree_cm_commissioner/video_on_demand.rb
@@ -1640,14 +1559,17 @@ files:
1640
1559
  - app/queries/spree_cm_commissioner/subscription_revenue_overview_query.rb
1641
1560
  - app/queries/spree_cm_commissioner/tickets_searcher_query.rb
1642
1561
  - app/queries/spree_cm_commissioner/trip_query.rb
1562
+ - app/queries/spree_cm_commissioner/trip_search_query.rb
1643
1563
  - app/queries/spree_cm_commissioner/trip_seat_layout_query.rb
1644
1564
  - app/queries/spree_cm_commissioner/users_by_event_fetcher_query.rb
1565
+ - app/queries/spree_cm_commissioner/variant_availability/non_permanent_stock_query.rb
1566
+ - app/queries/spree_cm_commissioner/variant_availability/permanent_stock_query.rb
1567
+ - app/queries/spree_cm_commissioner/vendor_stop_place_query.rb
1645
1568
  - app/request_schemas/spree_cm_commissioner/accommodation_request_schema.rb
1646
1569
  - app/request_schemas/spree_cm_commissioner/application_request_schema.rb
1647
1570
  - app/request_schemas/spree_cm_commissioner/profile_image_request_schema.rb
1648
1571
  - app/request_schemas/spree_cm_commissioner/user_account_linkage_request_schema.rb
1649
1572
  - app/request_schemas/spree_cm_commissioner/user_profile_request_schema.rb
1650
- - app/request_schemas/spree_cm_commissioner/variant_request_schema.rb
1651
1573
  - app/serializables/spree_cm_commissioner/event_ticket_aggregator.rb
1652
1574
  - app/serializables/spree_cm_commissioner/pie_chart_event_aggregator.rb
1653
1575
  - app/serializables/spree_cm_commissioner/queue_item.rb
@@ -1832,6 +1754,7 @@ files:
1832
1754
  - app/services/spree_cm_commissioner/seeds/roles_decorator.rb
1833
1755
  - app/services/spree_cm_commissioner/user_authenticator.rb
1834
1756
  - app/services/spree_cm_commissioner/user_roles_assigner.rb
1757
+ - app/services/spree_cm_commissioner/vehicle_option_value_creator.rb
1835
1758
  - app/services/spree_cm_commissioner/waiting_room_system_metadata_fetcher.rb
1836
1759
  - app/services/spree_cm_commissioner/waiting_room_system_metadata_setter.rb
1837
1760
  - app/services/spree_cm_commissioner/webhooks/subscribers/handle_request_decorator.rb
@@ -1923,7 +1846,6 @@ files:
1923
1846
  - app/views/spree/admin/import_new_orders/index.html.erb
1924
1847
  - app/views/spree/admin/import_new_orders/new.html.erb
1925
1848
  - app/views/spree/admin/import_new_orders/show.html.erb
1926
- - app/views/spree/admin/inventory_items/show.html.erb
1927
1849
  - app/views/spree/admin/kyc/_form.html.erb
1928
1850
  - app/views/spree/admin/kyc/edit.html.erb
1929
1851
  - app/views/spree/admin/line_items/_form.html.erb
@@ -1985,7 +1907,6 @@ files:
1985
1907
  - app/views/spree/admin/shared/sub_menu/_calendar.html.erb
1986
1908
  - app/views/spree/admin/shared/sub_menu/_homepage.html.erb
1987
1909
  - app/views/spree/admin/stock_managements/_variant_stock_items.html.erb
1988
- - app/views/spree/admin/stock_managements/calendar.html.erb
1989
1910
  - app/views/spree/admin/stock_managements/index.html.erb
1990
1911
  - app/views/spree/admin/system/show.html.erb
1991
1912
  - app/views/spree/admin/taxon_childrens/index.html.erb
@@ -2269,6 +2190,10 @@ files:
2269
2190
  - app/views/spree_cm_commissioner/order_mailer/hotel/_booking_detail.html.erb
2270
2191
  - app/views/spree_cm_commissioner/order_mailer/purchased_items/_items.html.erb
2271
2192
  - app/views/spree_cm_commissioner/order_mailer/purchased_items/_summary.html.erb
2193
+ - app/views/spree_cm_commissioner/order_mailer/tenant/_customer_info.html.erb
2194
+ - app/views/spree_cm_commissioner/order_mailer/tenant/_footer.html.erb
2195
+ - app/views/spree_cm_commissioner/order_mailer/tenant/_greeting.html.erb
2196
+ - app/views/spree_cm_commissioner/order_mailer/tenant/_support_contact.html.erb
2272
2197
  - app/views/spree_cm_commissioner/pin_code_mailer/send_pin_code.html.erb
2273
2198
  - app/views/spree_cm_commissioner/team_invite_mailer/_mailer_stylesheets.html.erb
2274
2199
  - app/views/spree_cm_commissioner/team_invite_mailer/send_team_invite_email.html.erb
@@ -2278,7 +2203,6 @@ files:
2278
2203
  - config/initializers/doorkeeper.rb
2279
2204
  - config/initializers/exception_notification.rb
2280
2205
  - config/initializers/google_map.rb
2281
- - config/initializers/paper_trail.rb
2282
2206
  - config/initializers/phonelib.rb
2283
2207
  - config/initializers/premailer_rails.rb
2284
2208
  - config/initializers/recaptcha_enterprise.rb
@@ -2563,7 +2487,6 @@ files:
2563
2487
  - db/migrate/20250304101907_create_spree_cm_commissioner_invite.rb
2564
2488
  - db/migrate/20250304101946_create_spree_cm_commissioner_invite_user_taxon.rb
2565
2489
  - db/migrate/20250304155234_add_meta_data_to_spree_vendors.rb
2566
- - db/migrate/20250304293518_create_cm_inventory_items.rb
2567
2490
  - db/migrate/20250307013422_add_parent_id_to_cm_place.rb
2568
2491
  - db/migrate/20250307073003_add_tenant_id_to_cm_customer_notifications.rb
2569
2492
  - db/migrate/20250307083809_remove_tenant_id_from_cm_notifications.rb
@@ -2584,12 +2507,8 @@ files:
2584
2507
  - db/migrate/20250425084929_add_description_to_spree_prototypes.rb
2585
2508
  - db/migrate/20250425085938_add_preferences_to_spree_prototypes.rb
2586
2509
  - db/migrate/20250428025645_add_slug_to_spree_prototypes.rb
2587
- - db/migrate/20250429094228_add_lock_version_to_cm_inventory_items.rb
2588
2510
  - db/migrate/20250430091742_create_cm_taxon_option_types.rb
2589
2511
  - db/migrate/20250430092928_create_cm_taxon_option_values.rb
2590
- - db/migrate/20250502025848_add_index_to_spree_products.rb
2591
- - db/migrate/20250502030001_add_product_type_to_spree_variants.rb
2592
- - db/migrate/20250502030002_add_product_type_to_spree_line_items.rb
2593
2512
  - db/migrate/20250506092929_add_trip_count_to_cm_vendor_stops.rb
2594
2513
  - db/migrate/20250509033437_create_spree_cm_commissioner_transactional_emails.rb
2595
2514
  - db/migrate/20250509075429_add_max_order_quantity_to_spree_product.rb
@@ -2606,7 +2525,6 @@ files:
2606
2525
  - db/migrate/20250531074036_create_spree_cm_commissioner_option_value_vehicle.rb
2607
2526
  - db/migrate/20250531074258_create_spree_cm_commissioner_vehicle_option_types.rb
2608
2527
  - db/migrate/20250602094751_add_host_to_cm_tenants.rb
2609
- - db/migrate/20250603035256_add_inventory_item_to_spree_prices.rb
2610
2528
  - db/migrate/20250605024523_add_participation_type_to_spree_taxon.rb
2611
2529
  - db/migrate/20250606020914_create_cm_dynamic_fields.rb
2612
2530
  - db/migrate/20250606020958_create_cm_guest_dynamic_fields.rb
@@ -2617,36 +2535,17 @@ files:
2617
2535
  - db/migrate/20250611023548_add_country_code_to_guests.rb
2618
2536
  - db/migrate/20250612035937_add_intel_phone_number_to_guests.rb
2619
2537
  - db/migrate/20250616084219_add_description_to_cm_vendor_place.rb
2620
- - db/migrate/20250619073724_drop_table_cm_line_item_seats.rb
2621
- - db/migrate/20250619073812_drop_table_cm_vehicle_seats.rb
2622
- - db/migrate/20250619073844_drop_table_cm_vehicle_types.rb
2623
- - db/migrate/20250619073957_drop_table_cm_option_value_vehicle_types.rb
2624
- - db/migrate/20250619082354_remove_unnecessary_fields_from_cm_places.rb
2625
- - db/migrate/20250619082736_remove_route_type_from_spree_products.rb
2626
- - db/migrate/20250619083055_remove_unnecessary_fields_from_spree_taxons.rb
2627
- - db/migrate/20250620083055_remove_variant_id_from_cm_trips.rb
2628
- - db/migrate/20250620090000_update_cm_trip_connections_to_use_cm_trips.rb
2629
- - db/migrate/20250620090001_create_cm_seat_layouts.rb
2630
- - db/migrate/20250620090002_create_cm_seat_sections.rb
2631
- - db/migrate/20250620090003_create_cm_blocks.rb
2632
- - db/migrate/20250624091005_create_cm_reserved_blocks.rb
2633
- - db/migrate/20250626083642_create_cm_variant_blocks.rb
2634
- - db/migrate/20250627023314_add_block_id_to_cm_guests.rb
2635
2538
  - db/migrate/20250630103536_create_cm_telegram_chats.rb
2636
2539
  - db/migrate/20250701093203_add_configurations_to_cm_dynamic_field.rb
2637
2540
  - db/migrate/20250702091305_add_dynamic_field_option_to_guest_dynamic_field.rb
2638
2541
  - db/migrate/20250702091935_add_status_to_dynamic_field_option.rb
2639
2542
  - db/migrate/20250707032008_add_vendor_id_to_spree_category.rb
2543
+ - db/migrate/20250709073455_add_email_fields_to_spree_vendors.rb
2640
2544
  - db/migrate/20250711092937_add_position_to_cm_dynamic_fields.rb
2641
2545
  - db/migrate/20250711093045_add_position_to_cm_dynamic_field_options.rb
2642
2546
  - db/migrate/20250714121508_rename_cm_taxon_blazer_query_to_blazer_queryables.rb
2643
2547
  - db/migrate/20250714124323_make_cm_blazer_queryables_polymorphic.rb
2644
- - db/migrate/20250716022821_add_location_reference_to_cm_vendor_places.rb
2645
- - db/migrate/20250716031743_drop_table_cm_vendor_stops.rb
2646
- - db/migrate/20250717023824_add_vendor_reference_to_cm_trips.rb
2647
- - db/migrate/20250717041414_add_location_place_reference_to_cm_trip_stops.rb
2648
- - db/migrate/20250717042539_rename_cm_trip_stops_stop_id_column_to_stop_place_id.rb
2649
- - db/migrate/20250717042707_rename_cm_trips_origin_and_destination_to_origin_place_and_destination_place.rb
2548
+ - db/migrate/20250715103333_remove_indexes_from_cm_user_identity_providers.rb
2650
2549
  - docker-compose.yml
2651
2550
  - docs/option_types/attr_types.md
2652
2551
  - docs/private_key.pem
@@ -2661,12 +2560,11 @@ files:
2661
2560
  - docs/webhook/sqs/params_job_submitted.json
2662
2561
  - lib/cm_app_logger.rb
2663
2562
  - lib/generators/spree_cm_commissioner/install/install_generator.rb
2664
- - lib/generators/spree_cm_commissioner/install/templates/app/javascript/spree_dashboard/spree_cm_commissioner/utilities.js
2563
+ - lib/generators/spree_cm_commissioner/install/templates/app/javascript/spree_cm_commissioner/utilities.js
2665
2564
  - lib/generators/spree_cm_commissioner/install/templates/config/data/nationalities.yml
2666
2565
  - lib/generators/spree_cm_commissioner/install/templates/vendor/assets/javascript/spree_cm_commissioner/telegram/all.js
2667
2566
  - lib/generators/spree_cm_commissioner/install/templates/vendor/assets/stylesheets/spree_cm_commissioner/telegram/all.css
2668
2567
  - lib/spree_cm_commissioner.rb
2669
- - lib/spree_cm_commissioner/cached_inventory_item.rb
2670
2568
  - lib/spree_cm_commissioner/calendar_event.rb
2671
2569
  - lib/spree_cm_commissioner/engine.rb
2672
2570
  - lib/spree_cm_commissioner/factories.rb
@@ -2679,14 +2577,16 @@ files:
2679
2577
  - lib/spree_cm_commissioner/test_helper/factories/address_factory.rb
2680
2578
  - lib/spree_cm_commissioner/test_helper/factories/asset_factory.rb
2681
2579
  - lib/spree_cm_commissioner/test_helper/factories/back_image_factory.rb
2682
- - lib/spree_cm_commissioner/test_helper/factories/block_factory.rb
2580
+ - lib/spree_cm_commissioner/test_helper/factories/branch_factory.rb
2683
2581
  - lib/spree_cm_commissioner/test_helper/factories/check_in_factory.rb
2684
2582
  - lib/spree_cm_commissioner/test_helper/factories/cms_page_factory.rb
2685
2583
  - lib/spree_cm_commissioner/test_helper/factories/country_factory.rb
2686
2584
  - lib/spree_cm_commissioner/test_helper/factories/customer_factory.rb
2687
2585
  - lib/spree_cm_commissioner/test_helper/factories/customer_notification_factory.rb
2688
2586
  - lib/spree_cm_commissioner/test_helper/factories/customers_taxons_factory.rb
2587
+ - lib/spree_cm_commissioner/test_helper/factories/departure_time_option_type_factory.rb
2689
2588
  - lib/spree_cm_commissioner/test_helper/factories/device_token_factory.rb
2589
+ - lib/spree_cm_commissioner/test_helper/factories/duration_option_type_factory.rb
2690
2590
  - lib/spree_cm_commissioner/test_helper/factories/export_guest_csv_factory.rb
2691
2591
  - lib/spree_cm_commissioner/test_helper/factories/front_image_factory.rb
2692
2592
  - lib/spree_cm_commissioner/test_helper/factories/guest_factory.rb
@@ -2700,11 +2600,11 @@ files:
2700
2600
  - lib/spree_cm_commissioner/test_helper/factories/homepage_section_relatable_factory.rb
2701
2601
  - lib/spree_cm_commissioner/test_helper/factories/id_card_factory.rb
2702
2602
  - lib/spree_cm_commissioner/test_helper/factories/image_factory.rb
2703
- - lib/spree_cm_commissioner/test_helper/factories/inventory_item_factory.rb
2704
2603
  - lib/spree_cm_commissioner/test_helper/factories/invite_factory.rb
2705
2604
  - lib/spree_cm_commissioner/test_helper/factories/invite_guests_factory.rb
2706
2605
  - lib/spree_cm_commissioner/test_helper/factories/invite_user_event_factory.rb
2707
2606
  - lib/spree_cm_commissioner/test_helper/factories/line_item_factory.rb
2607
+ - lib/spree_cm_commissioner/test_helper/factories/line_item_seat_factory.rb
2708
2608
  - lib/spree_cm_commissioner/test_helper/factories/notification_factory.rb
2709
2609
  - lib/spree_cm_commissioner/test_helper/factories/notification_taxons_factory.rb
2710
2610
  - lib/spree_cm_commissioner/test_helper/factories/oauth_access_token_factory.rb
@@ -2720,15 +2620,13 @@ files:
2720
2620
  - lib/spree_cm_commissioner/test_helper/factories/product_factory.rb
2721
2621
  - lib/spree_cm_commissioner/test_helper/factories/products_taxons_factory.rb
2722
2622
  - lib/spree_cm_commissioner/test_helper/factories/promotion_factory.rb
2723
- - lib/spree_cm_commissioner/test_helper/factories/reserved_block_factory.rb
2724
2623
  - lib/spree_cm_commissioner/test_helper/factories/role.rb
2725
2624
  - lib/spree_cm_commissioner/test_helper/factories/role_permission_factory.rb
2726
- - lib/spree_cm_commissioner/test_helper/factories/seat_layout_factory.rb
2727
- - lib/spree_cm_commissioner/test_helper/factories/seat_section_factory.rb
2728
2625
  - lib/spree_cm_commissioner/test_helper/factories/service_calendar_factory.rb
2729
2626
  - lib/spree_cm_commissioner/test_helper/factories/sms_logs.rb
2730
2627
  - lib/spree_cm_commissioner/test_helper/factories/state_factory.rb
2731
2628
  - lib/spree_cm_commissioner/test_helper/factories/stock_location_factory.rb
2629
+ - lib/spree_cm_commissioner/test_helper/factories/stop_factory.rb
2732
2630
  - lib/spree_cm_commissioner/test_helper/factories/subscription_factory.rb
2733
2631
  - lib/spree_cm_commissioner/test_helper/factories/taxon_brand_logo_factory.rb
2734
2632
  - lib/spree_cm_commissioner/test_helper/factories/taxon_category_icon.rb
@@ -2738,16 +2636,16 @@ files:
2738
2636
  - lib/spree_cm_commissioner/test_helper/factories/telegram_bot_factory.rb
2739
2637
  - lib/spree_cm_commissioner/test_helper/factories/tenant_factory.rb
2740
2638
  - lib/spree_cm_commissioner/test_helper/factories/transactional_email_factory.rb
2741
- - lib/spree_cm_commissioner/test_helper/factories/trip_connection_factory.rb
2639
+ - lib/spree_cm_commissioner/test_helper/factories/transit_place_factory.rb
2742
2640
  - lib/spree_cm_commissioner/test_helper/factories/trip_factory.rb
2743
- - lib/spree_cm_commissioner/test_helper/factories/trip_stop_factory.rb
2744
2641
  - lib/spree_cm_commissioner/test_helper/factories/user_deletion_reasons_factory.rb
2745
2642
  - lib/spree_cm_commissioner/test_helper/factories/user_event_factory.rb
2746
2643
  - lib/spree_cm_commissioner/test_helper/factories/user_factory.rb
2747
2644
  - lib/spree_cm_commissioner/test_helper/factories/user_identity_provider_factory.rb
2748
- - lib/spree_cm_commissioner/test_helper/factories/variant_block_factory.rb
2749
2645
  - lib/spree_cm_commissioner/test_helper/factories/variant_factory.rb
2750
2646
  - lib/spree_cm_commissioner/test_helper/factories/vehicle_factory.rb
2647
+ - lib/spree_cm_commissioner/test_helper/factories/vehicle_option_type_factory.rb
2648
+ - lib/spree_cm_commissioner/test_helper/factories/vehicle_type_factory.rb
2751
2649
  - lib/spree_cm_commissioner/test_helper/factories/vendor_factory.rb
2752
2650
  - lib/spree_cm_commissioner/test_helper/factories/vendor_logo_factory.rb
2753
2651
  - lib/spree_cm_commissioner/test_helper/factories/vendor_photo_factory.rb
@@ -2757,16 +2655,14 @@ files:
2757
2655
  - lib/spree_cm_commissioner/test_helper/factories/webhook_subscriber_rule_factory.rb
2758
2656
  - lib/spree_cm_commissioner/trip_query_result.rb
2759
2657
  - lib/spree_cm_commissioner/trip_result.rb
2658
+ - lib/spree_cm_commissioner/trip_seat_layout_result.rb
2760
2659
  - lib/spree_cm_commissioner/user_session_jwt_token.rb
2761
2660
  - lib/spree_cm_commissioner/version.rb
2762
- - lib/tasks/create_default_non_permanent_inventory_items.rake
2763
2661
  - lib/tasks/customer_notification_cron_scheduler.rake
2764
- - lib/tasks/ensure_correct_product_type.rake
2765
2662
  - lib/tasks/ensure_event_for_guests.rake
2766
2663
  - lib/tasks/ensure_event_for_product_line_item_guests.rake
2767
2664
  - lib/tasks/ensure_number_for_line_items.rake
2768
2665
  - lib/tasks/fetch_email.rake
2769
- - lib/tasks/generate_inventory_items.rake
2770
2666
  - lib/tasks/kh_location_option_values.rake
2771
2667
  - lib/tasks/kh_provinces.rake
2772
2668
  - lib/tasks/migrate_and_rebuild_place_hierarchy.rake
@@ -1,83 +0,0 @@
1
- module Spree
2
- module Admin
3
- class InventoryItemsController < StockManagementsController
4
- before_action :load_parent
5
-
6
- # GET /products/:slug/variants/:variant_id/inventory_items/:id
7
- def show
8
- @inventory_item = @product.inventory_items.find(params[:id])
9
- @default_prices = @inventory_item.variant.prices.to_a.index_by(&:currency)
10
-
11
- @prices = @inventory_item.prices.to_a
12
- supported_currencies_for_all_stores.each do |currency|
13
- @prices << @inventory_item.prices.new(currency: currency) if @prices.none? { |price| price.currency == currency }
14
- end
15
-
16
- @cached_inventory_item = ::SpreeCmCommissioner::RedisStock::CachedInventoryItemsBuilder.new([@inventory_item])
17
- .call
18
- .index_by(&:inventory_item_id)[@inventory_item.id]
19
- end
20
-
21
- # POST /products/:slug/variants/:variant_id/inventory_items
22
- def create
23
- variant = @product.variants.find(params[:variant_id])
24
- inventory_item = variant.create_default_non_permanent_inventory_item!
25
-
26
- if inventory_item.present?
27
- result = SpreeCmCommissioner::Stock::InventoryItemResetter.call(inventory_item: inventory_item)
28
-
29
- if result.success?
30
- flash[:success] = flash_message_for(result.inventory_item, :successfully_created)
31
- else
32
- flash[:error] = result.message
33
- end
34
- end
35
-
36
- redirect_back fallback_location: admin_product_stock_managements_path(@product)
37
- end
38
-
39
- # PATCH /products/:slug/variants/:variant_id/inventory_items/:id/reset
40
- def reset
41
- inventory_item = @product.inventory_items.find(params[:id])
42
- result = SpreeCmCommissioner::Stock::InventoryItemResetter.call(inventory_item: inventory_item)
43
-
44
- if result.success?
45
- flash[:success] = flash_message_for(result.inventory_item, :successfully_updated)
46
- else
47
- flash[:error] = result.message
48
- end
49
-
50
- redirect_back fallback_location: admin_product_stock_managements_path(@product)
51
- end
52
-
53
- # PATCH /products/:slug/variants/:variant_id/inventory_items/:id/update_prices
54
- def update_prices
55
- inventory_item = @product.inventory_items.find(params[:id])
56
-
57
- params[:prices]&.values&.each do |price_params|
58
- price = inventory_item.prices.find_or_initialize_by(currency: price_params[:currency])
59
- price.price = price_params[:price].empty? ? nil : price_params[:price]
60
- price.compare_at_price = price_params[:compare_at_price].empty? ? nil : price_params[:compare_at_price]
61
- price.variant_id = inventory_item.variant_id
62
- price.save! if (price.new_record? && price.price) || (!price.new_record? && price.changed?)
63
- end
64
-
65
- flash[:success] = flash_message_for(inventory_item, :successfully_updated)
66
- redirect_back fallback_location: admin_product_stock_managements_path(@product)
67
- end
68
-
69
- # PATCH /products/:slug/variants/:variant_id/inventory_items/:id/delete_prices
70
- def delete_prices
71
- inventory_item = @product.inventory_items.find(params[:id])
72
-
73
- if inventory_item.prices.destroy_all
74
- flash[:success] = flash_message_for(inventory_item, :successfully_removed)
75
- else
76
- flash[:error] = inventory_item.errors.full_messages.join(', ')
77
- end
78
-
79
- redirect_back fallback_location: admin_product_stock_managements_path(@product)
80
- end
81
- end
82
- end
83
- end
@@ -1,42 +0,0 @@
1
- module Spree
2
- module Api
3
- module V2
4
- module Storefront
5
- class Accommodations::VariantsController < ::Spree::Api::V2::ResourceController
6
- private
7
-
8
- # override
9
- def collection
10
- @collection ||= SpreeCmCommissioner::Accommodations::FindVariant.new(
11
- from_date: params[:from_date]&.to_date,
12
- to_date: params[:to_date]&.to_date,
13
- vendor_id: params[:accommodation_id],
14
- number_of_adults: params[:adult].to_i,
15
- number_of_kids: params[:children].to_i
16
- ).execute
17
- end
18
-
19
- # override
20
- def resource
21
- @resource ||= collection.find(params[:id])
22
- end
23
-
24
- # override
25
- def resource_serializer
26
- Spree::V2::Storefront::VariantSerializer
27
- end
28
-
29
- # override
30
- def collection_serializer
31
- Spree::V2::Storefront::VariantSerializer
32
- end
33
-
34
- # override
35
- def required_schema
36
- SpreeCmCommissioner::VariantRequestSchema
37
- end
38
- end
39
- end
40
- end
41
- end
42
- end