Class: Smerp::Quotation::Engine::QuotationItemDistributionsController

Inherits:
ApplicationController
  • Object
show all
Defined in:
app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject

POST /quotation_item_distributions



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 33

def create
  #@quotation_item_distribution = QuotationItemDistribution.new(quotation_item_distribution_params)

  qi = QuotationItem.find(params[:quotation_item_distribution][:quotation_item_id])

  if not params[:quotation_item_distribution].nil? and not params[:quotation_item_distribution][:quantum].nil?
    params[:quotation_item_distribution][:quantum].each do |k,v|

      vv = v.first
      indx = vv =~ /p/
      if indx.nil?
        val = vv.to_f
        next if val == 0
      else
        val = vv[0...indx].to_f.percent
        next if val.rep_value == 0
      end

      dest = QuotationItem.find(k)
      qi.distribute_to(dest, val)

    end
  end

  redirect_to quotation_path(qi.quotation), notice: "Distribution saved"

  #if @quotation_item_distribution.save
  #  redirect_to @quotation_item_distribution, notice: "Quotation item distribution was successfully created."
  #else
  #  render :new, status: :unprocessable_entity
  #end
end

#destroyObject

DELETE /quotation_item_distributions/1



76
77
78
79
80
81
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 76

def destroy
  @quotation_item = @quotation_item_distribution.quotation_item
  @quotation_item_distribution.destroy
  #redirect_to quotation_item_distributions_url, notice: "Quotation item distribution was successfully destroyed."
  redirect_to quotation_path(@quotation_item.quotation), notice: "Quotation item distribution was successfully destroyed."
end

#editObject

GET /quotation_item_distributions/1/edit



29
30
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 29

def edit
end

#indexObject

GET /quotation_item_distributions



13
14
15
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 13

def index
  @quotation_item_distributions = QuotationItemDistribution.all
end

#newObject

GET /quotation_item_distributions/new



22
23
24
25
26
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 22

def new
  @quotation_item = QuotationItem.find(params[:source_quotation_item])
  @quotation = @quotation_item.quotation
  @quotation_item_distribution = QuotationItemDistribution.new
end

#set_quotation_itemObject



7
8
9
10
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 7

def set_quotation_item
  #@quotation_item = QuotationItem.find(params[:id])
  #@quotation = @quotation_item.quotation
end

#showObject

GET /quotation_item_distributions/1



18
19
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 18

def show
end

#updateObject

PATCH/PUT /quotation_item_distributions/1



67
68
69
70
71
72
73
# File 'app/controllers/smerp/quotation/engine/quotation_item_distributions_controller.rb', line 67

def update
  if @quotation_item_distribution.update(quotation_item_distribution_params)
    redirect_to @quotation_item_distribution, notice: "Quotation item distribution was successfully updated."
  else
    render :edit, status: :unprocessable_entity
  end
end