113 lines
3.1 KiB
Ruby
113 lines
3.1 KiB
Ruby
|
class StockTakingsController < ApplicationController
|
||
|
|
||
|
def index
|
||
|
@stock_takings = StockTaking.find(:all)
|
||
|
|
||
|
respond_to do |format|
|
||
|
format.html # index.html.erb
|
||
|
format.xml { render :xml => @stock_takings }
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def show
|
||
|
@stock_taking = StockTaking.find(params[:id])
|
||
|
|
||
|
respond_to do |format|
|
||
|
format.html # show.html.erb
|
||
|
format.xml { render :xml => @stock_taking }
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def new
|
||
|
@stock_taking = StockTaking.new
|
||
|
StockArticle.without_deleted.each { |a| @stock_taking.stock_changes.build(:stock_article => a) }
|
||
|
|
||
|
respond_to do |format|
|
||
|
format.html # new.html.erb
|
||
|
format.xml { render :xml => @stock_taking }
|
||
|
end
|
||
|
end
|
||
|
|
||
|
|
||
|
def edit
|
||
|
@stock_taking = StockTaking.find(params[:id])
|
||
|
end
|
||
|
|
||
|
def create
|
||
|
@stock_taking = StockTaking.new(params[:stock_taking])
|
||
|
|
||
|
respond_to do |format|
|
||
|
if @stock_taking.save
|
||
|
flash[:notice] = 'StockTaking was successfully created.'
|
||
|
format.html { redirect_to(@stock_taking) }
|
||
|
format.xml { render :xml => @stock_taking, :status => :created, :location => @stock_taking }
|
||
|
else
|
||
|
format.html { render :action => "new" }
|
||
|
format.xml { render :xml => @stock_taking.errors, :status => :unprocessable_entity }
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def update
|
||
|
@stock_taking = StockTaking.find(params[:id])
|
||
|
|
||
|
respond_to do |format|
|
||
|
if @stock_taking.update_attributes(params[:stock_taking])
|
||
|
flash[:notice] = 'StockTaking was successfully updated.'
|
||
|
format.html { redirect_to(@stock_taking) }
|
||
|
format.xml { head :ok }
|
||
|
else
|
||
|
format.html { render :action => "edit" }
|
||
|
format.xml { render :xml => @stock_taking.errors, :status => :unprocessable_entity }
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def destroy
|
||
|
@stock_taking = StockTaking.find(params[:id])
|
||
|
@stock_taking.destroy
|
||
|
|
||
|
respond_to do |format|
|
||
|
format.html { redirect_to(stock_takings_url) }
|
||
|
format.xml { head :ok }
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def fill_new_stock_article_form
|
||
|
article = Article.find(params[:article_id])
|
||
|
supplier = article.supplier
|
||
|
stock_article = supplier.stock_articles.build(
|
||
|
article.attributes.reject { |attr| attr == ('id' || 'type')}
|
||
|
)
|
||
|
|
||
|
render :partial => 'stock_article_form', :locals => {:stock_article => stock_article}
|
||
|
end
|
||
|
|
||
|
def add_stock_article
|
||
|
article = StockArticle.new(params[:stock_article])
|
||
|
render :update do |page|
|
||
|
if article.save
|
||
|
page.insert_html :top, 'stock_changes', :partial => 'stock_change',
|
||
|
:locals => {:stock_change => article.stock_changes.build}
|
||
|
|
||
|
page.replace_html 'new_stock_article', :partial => 'stock_article_form',
|
||
|
:locals => {:stock_article => StockArticle.new}
|
||
|
else
|
||
|
page.replace_html 'new_stock_article', :partial => 'stock_article_form',
|
||
|
:locals => {:stock_article => article}
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def drop_stock_change
|
||
|
stock_change = StockChange.find(params[:stock_change_id])
|
||
|
stock_change.destroy
|
||
|
|
||
|
render :update do |page|
|
||
|
page.visual_effect :DropOut, "stock_change_#{stock_change.id}"
|
||
|
end
|
||
|
end
|
||
|
|
||
|
|
||
|
end
|