Class: Logistics::Core::BillOfLoadingRatesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/logistics/core/bill_of_loading_rates_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject

POST /bill_of_loading_rates POST /bill_of_loading_rates.json



27
28
29
30
31
32
# File 'app/controllers/logistics/core/bill_of_loading_rates_controller.rb', line 27

def create
  effective_date = params[:effective_date]
  BillOfLadingRate.generate_rate_for_bill_of_loading_services(effective_date)
  @response = {:success => true, :message => 'Rate table generated successfully', :data => []}
  render json: @response
end

#indexObject

GET /bill_of_loading_rates GET /bill_of_loading_rates.json



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'app/controllers/logistics/core/bill_of_loading_rates_controller.rb', line 8

def index
  @bill_of_loading_rates = BillOfLadingRate.all
  bill_of_loading_rates_array =[]
  @bill_of_loading_rates.each { |bolr|
    bill_of_loading_rates_array.push({:id => bolr.id, :high => bolr.high, :low => bolr.low, :medium => bolr.medium,
                                     :margin => bolr.margin,:effective_date => bolr.effective_date,
                                     :service_delivery_unit_name => bolr.chargeable_service_unit_of_charge.service_delivery_unit.name,
                                     :service_delivery_unit_id => bolr.chargeable_service_unit_of_charge.service_delivery_unit.id,
                                     :transaction_type_id => bolr.transaction_type_id, :transaction_type_name =>
                                     bolr.transaction_type.name,
                                     :chargeable_service_id => bolr.chargeable_service_unit_of_charge.chargeable_service_id,
                                     :chargeable_service_name => bolr.chargeable_service_unit_of_charge.chargeable_service.name})
  }
  @response = {:success => true, :message => '', :data => bill_of_loading_rates_array}
  render json: @response
end

#updateObject

PATCH/PUT /bill_of_loading_rates/1 PATCH/PUT /bill_of_loading_rates/1.json



36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'app/controllers/logistics/core/bill_of_loading_rates_controller.rb', line 36

def update
  service_rates = params[:updated_service_rates]
  service_rates.each { |service_rate|
    old_service_rate = BillOfLadingRate.find(service_rate['id'])
    old_service_rate.low = service_rate['low']
    old_service_rate.medium = service_rate['medium']
    old_service_rate.high = service_rate['high']
    old_service_rate.margin = service_rate['margin']
    old_service_rate.effective_date = service_rate['effective_date']
    old_service_rate.save
  }
  @response = {:success => true, :message => 'Rate table updated successfully', :data => service_rates}
  render json: @response
end