bscf-core 0.4.8 → 0.4.9
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c14a03202265c747f95062f12f60fc41e2e5bebc1caa9946bf985b99d7abab7e
|
4
|
+
data.tar.gz: 116fb2ffdbd99d4bb5f83b1c93d9bf7bf9c24a08c37810a9136daf9d45d49ee8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fd3edce59b7a9601f74161fc59ae5c7b0b557be5c5091663194fee7fec6ac95bcd61b107dfcb985c36d676e7bf57bb4df52b2858c60e0cd819da30ae709c1432
|
7
|
+
data.tar.gz: fddfacc1d22e9fcec199d9b65c159952b966a878d14068e4630c3d631e284df8e2d3d42dc7c701d4246bdb1b505f6f68caecea8753425e6f060bbd49e13639f7
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module Bscf
|
2
|
+
module Core
|
3
|
+
module Authenticable
|
4
|
+
extend ActiveSupport::Concern
|
5
|
+
|
6
|
+
included do
|
7
|
+
before_action :is_authenticated
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def is_authenticated
|
13
|
+
render json: { error: "Not authenticated" }, status: :unauthorized unless current_user
|
14
|
+
end
|
15
|
+
|
16
|
+
def current_user
|
17
|
+
return @current_user if defined?(@current_user)
|
18
|
+
|
19
|
+
return unless auth_token
|
20
|
+
|
21
|
+
begin
|
22
|
+
payload = TokenService.new.decode(auth_token)
|
23
|
+
@current_user = User.find_by(id: payload["user"]["id"])
|
24
|
+
rescue JWT::DecodeError => e
|
25
|
+
Rails.logger.warn "Token decode error: #{e.message}"
|
26
|
+
nil
|
27
|
+
rescue ActiveRecord::RecordNotFound => e
|
28
|
+
Rails.logger.warn "User not found: #{e.message}"
|
29
|
+
nil
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def auth_token
|
34
|
+
auth_header = request.headers["Authorization"]
|
35
|
+
auth_header&.split(" ")&.last
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -37,10 +37,10 @@ module Bscf
|
|
37
37
|
return nil unless pickup_address&.coordinates.present?
|
38
38
|
|
39
39
|
# Get all delivery order items with dropoff addresses
|
40
|
-
items_with_dropoffs =
|
41
|
-
.where.not(
|
40
|
+
items_with_dropoffs = orders.includes(:drop_off_address)
|
41
|
+
.where.not(drop_off_address: nil)
|
42
42
|
|
43
|
-
dropoff_addresses = items_with_dropoffs.map(&:
|
43
|
+
dropoff_addresses = items_with_dropoffs.map(&:drop_off_address).compact.uniq
|
44
44
|
return nil if dropoff_addresses.empty?
|
45
45
|
|
46
46
|
# Check if all dropoff addresses have coordinates
|
@@ -51,7 +51,7 @@ module Bscf
|
|
51
51
|
route_data = gebeta_service.optimize_route(pickup_address, dropoff_addresses)
|
52
52
|
|
53
53
|
# Return nil if route_data is empty or doesn't have waypoints
|
54
|
-
return nil if route_data.blank? || !route_data.key?("
|
54
|
+
return nil if route_data.blank? || !route_data.key?("directions")
|
55
55
|
|
56
56
|
# Cache the result if needed
|
57
57
|
# Rails.cache.write("delivery_order_route_#{id}", route_data, expires_in: 1.hour)
|
data/lib/bscf/core/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bscf-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Asrat
|
@@ -284,6 +284,7 @@ files:
|
|
284
284
|
- README.md
|
285
285
|
- Rakefile
|
286
286
|
- app/controllers/bscf/core/application_controller.rb
|
287
|
+
- app/controllers/concerns/bscf/core/authenticable.rb
|
287
288
|
- app/jobs/bscf/core/application_job.rb
|
288
289
|
- app/mailers/bscf/core/application_mailer.rb
|
289
290
|
- app/models/bscf/core/address.rb
|
@@ -317,6 +318,7 @@ files:
|
|
317
318
|
- app/services/bscf/core/token_service.rb
|
318
319
|
- app/services/bscf/core/transaction_service.rb
|
319
320
|
- config/database.yml
|
321
|
+
- config/initializers/bullet.rb
|
320
322
|
- config/routes.rb
|
321
323
|
- db/migrate/20250326065606_create_bscf_core_users.rb
|
322
324
|
- db/migrate/20250326075111_create_bscf_core_roles.rb
|