Class: ODDB::State::User::FiPiOfferInput

Inherits:
Global show all
Defined in:
src/state/user/fipi_offer_input.rb

Defined Under Namespace

Classes: FiPiOffer

Constant Summary

VIEW =
View::User::FiPiOfferInput

Constants inherited from Global

HOME_STATE, ZONE, ZONE_NAVIGATION

Constants inherited from Global

DIRECT_EVENT, GLOBAL_MAP, HOME_STATE, LIMITED, PRINT_STATES, READONLY_STATES, RESOLVE_STATES, REVERSE_MAP, VIEW, ZONE_NAVIGATION

Constants included from UmlautSort

FILTER_PAIRS

Instance Method Summary (collapse)

Methods inherited from Global

#_search_drugs, #_search_drugs_state, #_trigger, #add_to_interaction_basket, #allowed?, #atc_chooser, #checkout, #clear_interaction_basket, #creditable?, #direct_request_path, #doctorlist, #download, #export_csv, #extend, #fachinfo, #feedbacks, #help_navigation, #home_navigation, #home_state, #hospitallist, #interaction_basket, #limit_state, #limited?, #logout, #navigation, #notify, #password_reset, #paypal_return, #powerlink, #print, #proceed_download, #proceed_poweruser, #resolve, #resolve_state, #rss, #search, #show, #snapback_event, #sort, #sponsorlink, #suggest_address, #switch, #unique_email, #user_input, #user_navigation, #ywesee_contact, #zone_navigation, #zones

Methods included from Admin::LoginMethods

#autologin, #login

Methods included from UmlautSort

#sort_model, #umlaut_filter

Instance Method Details

- (Object) calculate_offer



89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'src/state/user/fipi_offer_input.rb', line 89

def calculate_offer
  unless(@model.is_a?(FiPiOffer))
    @model = FiPiOffer.new 
  end
  keys = [
    :fi_update,
    :pi_update,
    :fi_quantity,
    :pi_quantity,
  ]
  mandatory = []
  input = self.user_input(keys, mandatory)
  quant = input[:fi_quantity].to_i \
    + input[:pi_quantity].to_i
  keys.each { |key|
    @model.send(key.to_s+"=", input[key])
  }
  if(quant <= 0)
    self
  else
    State::User::FiPiOfferConfirm.new(@session, @model)
  end
end