Sha256: 70db7e2ddcdd0e07b3f888adade73680482d0dff8b2d81b01e252a8c5a445625

Contents?: true

Size: 1.57 KB

Versions: 42

Compression:

Stored size: 1.57 KB

Contents

module Spree
  module Admin
    class StockTransfersController < Admin::BaseController
      before_filter :load_stock_locations, :only => :index

      def index
        @q = StockTransfer.ransack(params[:q])

        @stock_transfers = @q.result
                             .includes(:stock_movements => { :stock_item => :stock_location })
                             .order('created_at DESC')
                             .page(params[:page])
      end

      def show
        @stock_transfer = StockTransfer.find_by_param(params[:id])
      end

      def new

      end

      def create
        variants = Hash.new(0)
        params[:variant].each_with_index do |variant_id, i|
          variants[variant_id] += params[:quantity][i].to_i
        end

        stock_transfer = StockTransfer.create(:reference => params[:reference])
        stock_transfer.transfer(source_location,
                                destination_location,
                                variants)

        flash[:success] = Spree.t(:stock_successfully_transferred)
        redirect_to admin_stock_transfer_path(stock_transfer)
      end

      private
      def load_stock_locations
        @stock_locations = Spree::StockLocation.active.order('name ASC')
      end

      def source_location
        @source_location ||= params.has_key?(:transfer_receive_stock) ? nil :
                               StockLocation.find(params[:transfer_source_location_id])
      end

      def destination_location
        @destination_location ||= StockLocation.find(params[:transfer_destination_location_id])
      end
    end
  end
end

Version data entries

42 entries across 42 versions & 1 rubygems

Version Path
spree_backend-2.3.13 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.14 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.12 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.13 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.11 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.12 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.10 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.9 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.11 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.10 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.8 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.7 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.9 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.1.12 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.6 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.8 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.1.11 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.3.5 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.2.7 app/controllers/spree/admin/stock_transfers_controller.rb
spree_backend-2.1.10 app/controllers/spree/admin/stock_transfers_controller.rb