@fleetbase/storefront-engine 0.2.4 → 0.2.6

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 (140) hide show
  1. package/README.md +4 -4
  2. package/addon/components/modals/import-products.hbs +1 -1
  3. package/addon/components/schedule-manager.hbs +2 -2
  4. package/addon/components/widget/customers.hbs +1 -1
  5. package/addon/components/widget/customers.js +7 -4
  6. package/addon/components/widget/orders.js +4 -0
  7. package/addon/controllers/base-controller.js +31 -0
  8. package/addon/controllers/networks/index/network.js +2 -2
  9. package/addon/controllers/networks/index.js +3 -2
  10. package/addon/controllers/products/index/category/new.js +14 -11
  11. package/addon/controllers/products/index/category.js +2 -2
  12. package/addon/controllers/products/index/index.js +2 -2
  13. package/addon/controllers/products/index.js +2 -3
  14. package/addon/models/network.js +0 -1
  15. package/addon/models/product-addon-category.js +10 -1
  16. package/addon/models/product-variant.js +0 -2
  17. package/addon/models/product.js +35 -2
  18. package/addon/routes/customers/index.js +11 -1
  19. package/addon/routes/networks/index.js +9 -0
  20. package/addon/routes/orders/index.js +11 -1
  21. package/addon/routes/products/index.js +8 -2
  22. package/addon/serializers/product.js +16 -0
  23. package/addon/services/storefront.js +81 -0
  24. package/addon/templates/networks/index/network/stores.hbs +2 -2
  25. package/addon/templates/networks/index/network.hbs +1 -1
  26. package/addon/templates/products/index/category/new.hbs +3 -3
  27. package/addon/templates/products/index/category.hbs +20 -3
  28. package/app/controllers/base-controller.js +1 -0
  29. package/assets/sounds/storefront_order_alert.mp3 +0 -0
  30. package/composer.json +3 -3
  31. package/config/environment.js +11 -1
  32. package/extension.json +1 -1
  33. package/index.js +15 -0
  34. package/package.json +132 -125
  35. package/server/src/Auth/Schemas/Storefront.php +31 -39
  36. package/server/src/Console/Commands/NotifyStorefrontOrderNearby.php +9 -11
  37. package/server/src/Expansions/ContactFilterExpansion.php +36 -0
  38. package/server/src/Expansions/EntityExpansion.php +12 -12
  39. package/server/src/Expansions/OrderFilterExpansion.php +31 -0
  40. package/server/src/Expansions/VendorFilterExpansion.php +36 -0
  41. package/server/src/Http/Controllers/ActionController.php +9 -11
  42. package/server/src/Http/Controllers/AddonCategoryController.php +1 -1
  43. package/server/src/Http/Controllers/CustomerController.php +1 -1
  44. package/server/src/Http/Controllers/GatewayController.php +1 -1
  45. package/server/src/Http/Controllers/MetricsController.php +17 -17
  46. package/server/src/Http/Controllers/NetworkController.php +16 -26
  47. package/server/src/Http/Controllers/NotificationChannelController.php +1 -1
  48. package/server/src/Http/Controllers/OrderController.php +18 -22
  49. package/server/src/Http/Controllers/ProductAddonCategoryController.php +1 -2
  50. package/server/src/Http/Controllers/ProductAddonController.php +1 -2
  51. package/server/src/Http/Controllers/ProductController.php +89 -44
  52. package/server/src/Http/Controllers/ProductHourController.php +1 -1
  53. package/server/src/Http/Controllers/ProductVariantController.php +1 -1
  54. package/server/src/Http/Controllers/ProductVariantOptionController.php +1 -1
  55. package/server/src/Http/Controllers/ReviewController.php +1 -1
  56. package/server/src/Http/Controllers/StoreController.php +1 -2
  57. package/server/src/Http/Controllers/StoreHourController.php +1 -1
  58. package/server/src/Http/Controllers/StoreLocationController.php +1 -1
  59. package/server/src/Http/Controllers/StorefrontController.php +0 -2
  60. package/server/src/Http/Controllers/VoteController.php +1 -1
  61. package/server/src/Http/Controllers/v1/CartController.php +16 -26
  62. package/server/src/Http/Controllers/v1/CategoryController.php +3 -4
  63. package/server/src/Http/Controllers/v1/CheckoutController.php +283 -286
  64. package/server/src/Http/Controllers/v1/CustomerController.php +54 -67
  65. package/server/src/Http/Controllers/v1/GatewayControllerController.php +0 -2
  66. package/server/src/Http/Controllers/v1/NetworkController.php +26 -23
  67. package/server/src/Http/Controllers/v1/PaymentMethodController.php +0 -2
  68. package/server/src/Http/Controllers/v1/ProductController.php +1 -4
  69. package/server/src/Http/Controllers/v1/ReviewController.php +31 -35
  70. package/server/src/Http/Controllers/v1/ServiceQuoteController.php +57 -53
  71. package/server/src/Http/Controllers/v1/StoreController.php +8 -16
  72. package/server/src/Http/Filter/AddonCategoryFilter.php +1 -1
  73. package/server/src/Http/Filter/OrderFilter.php +2 -2
  74. package/server/src/Http/Middleware/SetStorefrontSession.php +9 -20
  75. package/server/src/Http/Requests/AddStoreToNetworkCategory.php +3 -3
  76. package/server/src/Http/Requests/CreateCustomerRequest.php +5 -7
  77. package/server/src/Http/Requests/CreateReviewRequest.php +4 -5
  78. package/server/src/Http/Requests/GetServiceQuoteFromCart.php +2 -2
  79. package/server/src/Http/Requests/InitializeCheckoutRequest.php +5 -5
  80. package/server/src/Http/Requests/NetworkActionRequest.php +2 -2
  81. package/server/src/Http/Requests/VerifyCreateCustomerRequest.php +2 -2
  82. package/server/src/Http/Resources/Cart.php +20 -11
  83. package/server/src/Http/Resources/Category.php +12 -11
  84. package/server/src/Http/Resources/Customer.php +15 -14
  85. package/server/src/Http/Resources/Gateway.php +12 -11
  86. package/server/src/Http/Resources/Media.php +9 -8
  87. package/server/src/Http/Resources/Network.php +33 -28
  88. package/server/src/Http/Resources/Product.php +89 -81
  89. package/server/src/Http/Resources/Review.php +14 -13
  90. package/server/src/Http/Resources/ReviewCustomer.php +12 -11
  91. package/server/src/Http/Resources/Store.php +39 -33
  92. package/server/src/Http/Resources/StoreHour.php +9 -8
  93. package/server/src/Http/Resources/StoreLocation.php +9 -9
  94. package/server/src/Imports/ProductsImport.php +0 -2
  95. package/server/src/Jobs/DownloadProductImageUrl.php +7 -4
  96. package/server/src/Listeners/HandleOrderCompleted.php +2 -1
  97. package/server/src/Listeners/HandleOrderDispatched.php +2 -1
  98. package/server/src/Listeners/HandleOrderDriverAssigned.php +2 -1
  99. package/server/src/Listeners/HandleOrderStarted.php +4 -3
  100. package/server/src/Mail/StorefrontNetworkInvite.php +7 -6
  101. package/server/src/Models/AddonCategory.php +2 -4
  102. package/server/src/Models/Cart.php +117 -124
  103. package/server/src/Models/Checkout.php +14 -12
  104. package/server/src/Models/Customer.php +9 -9
  105. package/server/src/Models/Gateway.php +22 -22
  106. package/server/src/Models/Network.php +41 -52
  107. package/server/src/Models/NetworkStore.php +6 -5
  108. package/server/src/Models/NotificationChannel.php +11 -9
  109. package/server/src/Models/PaymentMethod.php +9 -7
  110. package/server/src/Models/Product.php +152 -30
  111. package/server/src/Models/ProductAddon.php +14 -11
  112. package/server/src/Models/ProductAddonCategory.php +9 -8
  113. package/server/src/Models/ProductHour.php +6 -5
  114. package/server/src/Models/ProductStoreLocation.php +7 -5
  115. package/server/src/Models/ProductVariant.php +15 -11
  116. package/server/src/Models/ProductVariantOption.php +12 -9
  117. package/server/src/Models/Review.php +9 -7
  118. package/server/src/Models/Store.php +68 -84
  119. package/server/src/Models/StoreHour.php +6 -5
  120. package/server/src/Models/StoreLocation.php +12 -8
  121. package/server/src/Models/StorefrontModel.php +1 -1
  122. package/server/src/Models/Vote.php +8 -6
  123. package/server/src/Notifications/StorefrontOrderCanceled.php +15 -19
  124. package/server/src/Notifications/StorefrontOrderCompleted.php +15 -19
  125. package/server/src/Notifications/StorefrontOrderCreated.php +31 -36
  126. package/server/src/Notifications/StorefrontOrderDriverAssigned.php +15 -20
  127. package/server/src/Notifications/StorefrontOrderEnroute.php +14 -19
  128. package/server/src/Notifications/StorefrontOrderNearby.php +16 -21
  129. package/server/src/Notifications/StorefrontOrderPreparing.php +15 -18
  130. package/server/src/Notifications/StorefrontOrderReadyForPickup.php +15 -18
  131. package/server/src/Observers/NetworkObserver.php +2 -3
  132. package/server/src/Observers/ProductObserver.php +17 -33
  133. package/server/src/Providers/EventServiceProvider.php +15 -4
  134. package/server/src/Providers/StorefrontServiceProvider.php +8 -10
  135. package/server/src/Support/Metrics.php +12 -12
  136. package/server/src/Support/OrderConfig.php +3 -2
  137. package/server/src/Support/QPay.php +22 -20
  138. package/server/src/Support/Storefront.php +18 -17
  139. package/server/src/routes.php +1 -1
  140. package/tsconfig.declarations.json +10 -0
@@ -2,42 +2,87 @@
2
2
 
3
3
  namespace Fleetbase\Storefront\Http\Controllers;
4
4
 
5
+ use Fleetbase\FleetOps\Support\Utils;
6
+ use Fleetbase\Models\Category;
7
+ use Fleetbase\Models\File;
5
8
  use Fleetbase\Storefront\Imports\ProductsImport;
6
9
  use Fleetbase\Storefront\Jobs\DownloadProductImageUrl;
7
10
  use Fleetbase\Storefront\Models\Product;
8
11
  use Fleetbase\Storefront\Models\Store;
9
- use Fleetbase\Models\Category;
10
- use Fleetbase\Models\File;
11
- use Fleetbase\FleetOps\Support\Utils;
12
- use Maatwebsite\Excel\Facades\Excel;
12
+ use Fleetbase\Support\Http;
13
13
  use Illuminate\Http\Request;
14
14
  use Illuminate\Support\Arr;
15
15
  use Illuminate\Support\Str;
16
+ use Maatwebsite\Excel\Facades\Excel;
16
17
 
17
18
  class ProductController extends StorefrontController
18
19
  {
19
20
  /**
20
- * The resource to query
21
+ * The resource to query.
21
22
  *
22
23
  * @var string
23
24
  */
24
25
  public $resource = 'product';
25
26
 
27
+ /**
28
+ * Update a Product record.
29
+ * This update method was overwritten because the ProductObserver
30
+ * isn't firing on the `updated` callback.
31
+ *
32
+ * @return \Fleetbase\Storefront\Http\Resources\Product
33
+ */
34
+ public function updateRecord(Request $request, string $id)
35
+ {
36
+ try {
37
+ $this->validateRequest($request);
38
+ $record = $this->model->updateRecordFromRequest($request, $id, function (&$request, Product &$product) {
39
+ $addonCategories = $request->array('product.addon_categories');
40
+ $variants = $request->array('product.variants');
41
+ $files = $request->array('product.files');
42
+
43
+ // save addon categories
44
+ $product->setAddonCategories($addonCategories);
45
+
46
+ // save product variants
47
+ $product->setProductVariants($variants);
48
+
49
+ // set keys on files
50
+ foreach ($files as $file) {
51
+ $fileRecord = File::where('uuid', $file['uuid'])->first();
52
+ $fileRecord->setKey($product);
53
+ }
54
+ });
55
+
56
+ if (Http::isInternalRequest($request)) {
57
+ $this->resource::wrap($this->resourceSingularlName);
58
+
59
+ return new $this->resource($record);
60
+ }
61
+
62
+ return new $this->resource($record);
63
+ } catch (\Exception $e) {
64
+ return response()->error($e->getMessage());
65
+ } catch (\Illuminate\Database\QueryException $e) {
66
+ return response()->error($e->getMessage());
67
+ } catch (\Fleetbase\Exceptions\FleetbaseRequestValidationException $e) {
68
+ return response()->error($e->getErrors());
69
+ }
70
+ }
71
+
26
72
  /**
27
73
  * List all activity options for current order.
28
74
  *
29
- * @param \Illuminate\Http\Request $request
30
75
  * @return \Illuminate\Http\Response
31
76
  */
32
77
  public function processImports(Request $request)
33
78
  {
34
- $disk = env('FILESYSTEM_DRIVER');
35
- $store = $request->input('store');
36
- $category = $request->input('category');
37
- $files = $request->input('files');
38
- $files = File::whereIn('uuid', $files)->get();
79
+ $disk = $request->input('disk', config('filesystems.default'));
80
+ $store = $request->input('store');
81
+ $category = $request->input('category');
82
+ $files = $request->input('files');
83
+ $files = File::whereIn('uuid', $files)->get();
39
84
  $validFileTypes = ['csv', 'tsv', 'xls', 'xlsx'];
40
- $imports = collect();
85
+ $imports = collect();
41
86
 
42
87
  if ($category) {
43
88
  $category = Category::find($category);
@@ -59,7 +104,7 @@ class ProductController extends StorefrontController
59
104
  return response()->error('Invalid file, unable to proccess.');
60
105
  }
61
106
 
62
- $data = Arr::first($data);
107
+ $data = Arr::first($data);
63
108
  $imports = $imports->merge($data);
64
109
  }
65
110
 
@@ -72,42 +117,42 @@ class ProductController extends StorefrontController
72
117
  }
73
118
 
74
119
  // $importId = (string) Str::uuid();
75
- $name = Utils::or($row, ['name', 'product_name', 'entry_name', 'entity_name', 'entity', 'item_name', 'item', 'service', 'service_name']);
76
- $description = Utils::or($row, ['description', 'product_description', 'details', 'info', 'about', 'item_description']);
77
- $tags = Utils::or($row, ['tags']);
78
- $sku = Utils::or($row, ['sku', 'internal_id', 'stock_number']);
79
- $price = Utils::or($row, ['price', 'cost', 'value']);
80
- $salePrice = Utils::or($row, ['sale_price', 'sale_cost', 'sale_value']);
81
- $isService = Utils::or($row, ['is_service'], false);
82
- $isBookable = Utils::or($row, ['is_bookable', 'bookable'], false);
83
- $isOnSale = Utils::or($row, ['on_sale', 'is_on_sale'], false);
84
- $isAvailable = Utils::or($row, ['available', 'is_available'], true);
120
+ $name = Utils::or($row, ['name', 'product_name', 'entry_name', 'entity_name', 'entity', 'item_name', 'item', 'service', 'service_name']);
121
+ $description = Utils::or($row, ['description', 'product_description', 'details', 'info', 'about', 'item_description']);
122
+ $tags = Utils::or($row, ['tags']);
123
+ $sku = Utils::or($row, ['sku', 'internal_id', 'stock_number']);
124
+ $price = Utils::or($row, ['price', 'cost', 'value']);
125
+ $salePrice = Utils::or($row, ['sale_price', 'sale_cost', 'sale_value']);
126
+ $isService = Utils::or($row, ['is_service'], false);
127
+ $isBookable = Utils::or($row, ['is_bookable', 'bookable'], false);
128
+ $isOnSale = Utils::or($row, ['on_sale', 'is_on_sale'], false);
129
+ $isAvailable = Utils::or($row, ['available', 'is_available'], true);
85
130
  $isRecommended = Utils::or($row, ['recommended', 'is_recommended'], false);
86
- $canPickup = Utils::or($row, ['can_pickup', 'is_pickup', 'is_pickup_only'], false);
87
- $youtubeUrls = Utils::or($row, ['youtube', 'youtube_urls', 'youtube_videos']);
88
- $images = Utils::or($row, ['photos', 'images', 'image', 'photo', 'primary_image', 'product_image', 'thumbnail', 'photo1', 'image1']);
131
+ $canPickup = Utils::or($row, ['can_pickup', 'is_pickup', 'is_pickup_only'], false);
132
+ $youtubeUrls = Utils::or($row, ['youtube', 'youtube_urls', 'youtube_videos']);
133
+ $images = Utils::or($row, ['photos', 'images', 'image', 'photo', 'primary_image', 'product_image', 'thumbnail', 'photo1', 'image1']);
89
134
 
90
135
  $products[] = $product = Product::create(
91
136
  [
92
- 'company_uuid' => $request->session()->get('company'),
137
+ 'company_uuid' => $request->session()->get('company'),
93
138
  'created_by_uuid' => $request->session()->get('user'),
94
- 'store_uuid' => $store->uuid,
95
- 'name' => Utils::unicodeDecode($name),
96
- 'description' => Utils::unicodeDecode($description),
97
- 'sku' => $sku,
98
- 'tags' => explode(',', $tags),
99
- 'youtube_urls' => explode(',', $youtubeUrls),
100
- 'price' => $price,
101
- 'sale_price' => $salePrice,
102
- 'currency' => $store->currency,
103
- 'is_service' => $isService,
104
- 'is_bookable' => $isBookable,
105
- 'is_on_sale' => $isOnSale,
106
- 'is_available' => $isAvailable,
107
- 'is_recommended' => $isRecommended,
108
- 'can_pickup' => $canPickup,
109
- 'category_uuid' => $category ? $category->uuid : null,
110
- 'status' => 'published'
139
+ 'store_uuid' => $store->uuid,
140
+ 'name' => Utils::unicodeDecode($name),
141
+ 'description' => Utils::unicodeDecode($description),
142
+ 'sku' => $sku,
143
+ 'tags' => explode(',', $tags),
144
+ 'youtube_urls' => explode(',', $youtubeUrls),
145
+ 'price' => $price,
146
+ 'sale_price' => $salePrice,
147
+ 'currency' => $store->currency,
148
+ 'is_service' => $isService,
149
+ 'is_bookable' => $isBookable,
150
+ 'is_on_sale' => $isOnSale,
151
+ 'is_available' => $isAvailable,
152
+ 'is_recommended' => $isRecommended,
153
+ 'can_pickup' => $canPickup,
154
+ 'category_uuid' => $category ? $category->uuid : null,
155
+ 'status' => 'published',
111
156
  ]
112
157
  );
113
158
 
@@ -5,7 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  class ProductHourController extends StorefrontController
6
6
  {
7
7
  /**
8
- * The resource to query
8
+ * The resource to query.
9
9
  *
10
10
  * @var string
11
11
  */
@@ -5,7 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  class ProductVariantController extends StorefrontController
6
6
  {
7
7
  /**
8
- * The resource to query
8
+ * The resource to query.
9
9
  *
10
10
  * @var string
11
11
  */
@@ -5,7 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  class ProductVariantOptionController extends StorefrontController
6
6
  {
7
7
  /**
8
- * The resource to query
8
+ * The resource to query.
9
9
  *
10
10
  * @var string
11
11
  */
@@ -5,7 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  class ReviewController extends StorefrontController
6
6
  {
7
7
  /**
8
- * The resource to query
8
+ * The resource to query.
9
9
  *
10
10
  * @var string
11
11
  */
@@ -8,13 +8,12 @@ use Illuminate\Http\Request;
8
8
  class StoreController extends StorefrontController
9
9
  {
10
10
  /**
11
- * The resource to query
11
+ * The resource to query.
12
12
  *
13
13
  * @var string
14
14
  */
15
15
  public $resource = 'store';
16
16
 
17
-
18
17
  public function allStores(Request $request)
19
18
  {
20
19
  $stores = Store::select(['uuid', 'name', 'description', 'created_at'])
@@ -5,7 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  class StoreHourController extends StorefrontController
6
6
  {
7
7
  /**
8
- * The resource to query
8
+ * The resource to query.
9
9
  *
10
10
  * @var string
11
11
  */
@@ -5,7 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  class StoreLocationController extends StorefrontController
6
6
  {
7
7
  /**
8
- * The resource to query
8
+ * The resource to query.
9
9
  *
10
10
  * @var string
11
11
  */
@@ -8,8 +8,6 @@ class StorefrontController extends FleetbaseController
8
8
  {
9
9
  /**
10
10
  * The package namespace used to resolve from.
11
- *
12
- * @var string
13
11
  */
14
12
  public string $namespace = '\\Fleetbase\\Storefront';
15
13
  }
@@ -5,7 +5,7 @@ namespace Fleetbase\Storefront\Http\Controllers;
5
5
  class VoteController extends StorefrontController
6
6
  {
7
7
  /**
8
- * The resource to query
8
+ * The resource to query.
9
9
  *
10
10
  * @var string
11
11
  */
@@ -3,8 +3,8 @@
3
3
  namespace Fleetbase\Storefront\Http\Controllers\v1;
4
4
 
5
5
  use Fleetbase\Http\Controllers\Controller;
6
- use Fleetbase\Storefront\Models\Cart;
7
6
  use Fleetbase\Storefront\Http\Resources\Cart as StorefrontCart;
7
+ use Fleetbase\Storefront\Models\Cart;
8
8
  use Illuminate\Http\Request;
9
9
 
10
10
  class CartController extends Controller
@@ -13,11 +13,9 @@ class CartController extends Controller
13
13
  * Retrieve or create a cart using a unique identifier. If no unique identifier is provided
14
14
  * one will be created.
15
15
  *
16
- * @param string|null $uniqueId
17
- * @param \Illuminate\Http\Request $request
18
16
  * @return \Illuminate\Http\Response
19
17
  */
20
- public function retrieve(?string $uniqueId = null, Request $request)
18
+ public function retrieve(string $uniqueId = null, Request $request)
21
19
  {
22
20
  $cart = Cart::retrieve($uniqueId, true);
23
21
 
@@ -30,19 +28,16 @@ class CartController extends Controller
30
28
  /**
31
29
  * Adds a product to cart and creates a line item for the product.
32
30
  *
33
- * @param string $cartId
34
- * @param string $productId
35
- * @param \Illuminate\Http\Request $request
36
31
  * @return \Illuminate\Http\Response
37
32
  */
38
33
  public function add(string $cartId, string $productId, Request $request)
39
34
  {
40
- $quantity = $request->input('quantity', 1);
41
- $variants = $request->input('variants', []);
42
- $addons = $request->input('addons', []);
43
- $scheduledAt = $request->input('scheduled_at');
35
+ $quantity = $request->input('quantity', 1);
36
+ $variants = $request->input('variants', []);
37
+ $addons = $request->input('addons', []);
38
+ $scheduledAt = $request->input('scheduled_at');
44
39
  $storeLocationId = $request->input('store_location');
45
- $cart = Cart::retrieve($cartId);
40
+ $cart = Cart::retrieve($cartId);
46
41
 
47
42
  if (!$cart) {
48
43
  return response()->error('Cart was not found or has already been checkout out.');
@@ -61,20 +56,19 @@ class CartController extends Controller
61
56
  }
62
57
 
63
58
  /**
64
- * Update a line item in the cart
59
+ * Update a line item in the cart.
65
60
  *
66
- * @param string $cartId
67
61
  * @param string $cartItemId - can be either product id or line item id
68
- * @param \Illuminate\Http\Request $request
62
+ *
69
63
  * @return \Illuminate\Http\Response
70
64
  */
71
65
  public function update(string $cartId, string $cartItemId, Request $request)
72
66
  {
73
- $quantity = $request->input('quantity', null);
74
- $variants = $request->input('variants', null);
75
- $addons = $request->input('addons', null);
67
+ $quantity = $request->input('quantity', null);
68
+ $variants = $request->input('variants', null);
69
+ $addons = $request->input('addons', null);
76
70
  $scheduledAt = $request->input('scheduled_at');
77
- $cart = Cart::retrieve($cartId);
71
+ $cart = Cart::retrieve($cartId);
78
72
 
79
73
  if (!$cart) {
80
74
  return response()->error('Cart was not found or has already been checkout out.');
@@ -93,11 +87,10 @@ class CartController extends Controller
93
87
  }
94
88
 
95
89
  /**
96
- * Removes a line item in the cart
90
+ * Removes a line item in the cart.
97
91
  *
98
- * @param string $cartId
99
92
  * @param string $cartItemId - can be either product id or line item id
100
- * @param \Illuminate\Http\Request $request
93
+ *
101
94
  * @return \Illuminate\Http\Response
102
95
  */
103
96
  public function remove(?string $cartId, ?string $cartItemId, Request $request)
@@ -121,9 +114,8 @@ class CartController extends Controller
121
114
  }
122
115
 
123
116
  /**
124
- * Empties a cart
117
+ * Empties a cart.
125
118
  *
126
- * @param string $cartId
127
119
  * @return \Illuminate\Http\Response
128
120
  */
129
121
  public function empty(string $cartId)
@@ -142,8 +134,6 @@ class CartController extends Controller
142
134
  /**
143
135
  * Deletes a cart.
144
136
  *
145
- * @param string $cartId
146
- * @param \Illuminate\Http\Request $request
147
137
  * @return \Illuminate\Http\Response
148
138
  */
149
139
  public function delete(string $cartId)
@@ -3,11 +3,11 @@
3
3
  namespace Fleetbase\Storefront\Http\Controllers\v1;
4
4
 
5
5
  use Fleetbase\Http\Controllers\Controller;
6
+ use Fleetbase\Models\Category;
6
7
  use Fleetbase\Storefront\Http\Resources\Category as StorefrontCategory;
7
8
  use Fleetbase\Storefront\Http\Resources\Product as ProductResource;
8
- use Fleetbase\Storefront\Models\Store;
9
9
  use Fleetbase\Storefront\Models\Product;
10
- use Fleetbase\Models\Category;
10
+ use Fleetbase\Storefront\Models\Store;
11
11
  use Illuminate\Http\Request;
12
12
  use Illuminate\Support\Facades\DB;
13
13
 
@@ -16,7 +16,6 @@ class CategoryController extends Controller
16
16
  /**
17
17
  * Query for Storefront Product resources.
18
18
  *
19
- * @param \Illuminate\Http\Request $request
20
19
  * @return \Illuminate\Http\Response
21
20
  */
22
21
  public function query(Request $request)
@@ -62,7 +61,7 @@ class CategoryController extends Controller
62
61
  if ($request->filled('store')) {
63
62
  $store = Store::where([
64
63
  'company_uuid' => session('company'),
65
- 'public_id' => $request->input('store')
64
+ 'public_id' => $request->input('store'),
66
65
  ])->whereHas('networks', function ($q) {
67
66
  $q->where('network_uuid', session('storefront_network'));
68
67
  })->first();