128 lines
4.0 KiB
Ruby
128 lines
4.0 KiB
Ruby
# -*- encoding : utf-8 -*-
|
|
|
|
class Admin::PFournisseurDocsController < ApplicationController
|
|
layout "admin"
|
|
before_action :auth_admin
|
|
|
|
before_action :admin_space
|
|
|
|
def admin_space
|
|
@admin_space = "stocks"
|
|
end
|
|
|
|
def index
|
|
@p_fournisseur_docs = PFournisseurDoc.order("date DESC").all
|
|
|
|
end
|
|
|
|
def show
|
|
@p_fournisseur_doc = PFournisseurDoc.find(params[:id])
|
|
|
|
end
|
|
|
|
def new
|
|
|
|
@last_fournisseur_doc = PFournisseurDoc.where(:id => params[:p_fournisseur_doc_id]).first
|
|
@p_fournisseur_doc = PFournisseurDoc.new(:p_fournisseur_order_id => params[:p_fournisseur_order_id], :p_fournisseur_doc_type_id => params[:p_fournisseur_doc_type_id])
|
|
@p_fournisseur_order = @p_fournisseur_doc.p_fournisseur_order if @p_fournisseur_doc.p_fournisseur_order
|
|
|
|
|
|
if @p_fournisseur_order
|
|
@p_fournisseur = @p_fournisseur_order.p_fournisseur
|
|
elsif
|
|
@p_fournisseur = @last_fournisseur_doc.p_fournisseur
|
|
end
|
|
|
|
|
|
@p_fournisseur_doc.p_fournisseur = @p_fournisseur if @p_fournisseur
|
|
|
|
|
|
|
|
|
|
if @p_fournisseur_order
|
|
@p_fournisseur_doc.price_line_block = @p_fournisseur_order.price_line_block.dup
|
|
|
|
@p_fournisseur_order.price_line_block.price_lines.each do |pl|
|
|
@p_fournisseur_doc.price_line_block.price_lines << pl.dup
|
|
end
|
|
elsif @last_fournisseur_doc
|
|
@p_fournisseur_doc.price_line_block = @last_fournisseur_doc.price_line_block.dup
|
|
@last_fournisseur_doc.price_line_block.price_lines.each do |pl|
|
|
@p_fournisseur_doc.price_line_block.price_lines << pl.dup
|
|
end
|
|
|
|
|
|
else
|
|
@p_fournisseur_doc.price_line_block = PriceLineBlock.new
|
|
end
|
|
|
|
if @last_fournisseur_doc
|
|
@p_fournisseur_doc.price_line_block.ct_payment_comptant = @last_fournisseur_doc.price_line_block.ct_payment_comptant
|
|
@p_fournisseur_doc.price_line_block.p_payment_type_id = @last_fournisseur_doc.price_line_block.p_payment_type_id
|
|
@p_fournisseur_doc.price_line_block.ct_acompte = @last_fournisseur_doc.price_line_block.ct_acompte
|
|
@p_fournisseur_doc.price_line_block.ct_acompte_percent = @last_fournisseur_doc.price_line_block.ct_acompte_percent
|
|
@p_fournisseur_doc.price_line_block.ct_payment_delais = @last_fournisseur_doc.price_line_block.ct_payment_delais
|
|
@p_fournisseur_doc.price_line_block.ct_payment_month_end = @last_fournisseur_doc.price_line_block.ct_payment_month_end
|
|
|
|
|
|
elsif @p_fournisseur
|
|
@p_fournisseur_doc.price_line_block.ct_payment_comptant = @p_fournisseur.payment_comptant
|
|
@p_fournisseur_doc.price_line_block.p_payment_type_id = @p_fournisseur.p_payment_type_id
|
|
@p_fournisseur_doc.price_line_block.ct_acompte = @p_fournisseur.acompte
|
|
@p_fournisseur_doc.price_line_block.ct_acompte_percent = @p_fournisseur.acompte_percent
|
|
@p_fournisseur_doc.price_line_block.ct_payment_delais = @p_fournisseur.payment_delais
|
|
@p_fournisseur_doc.price_line_block.ct_payment_month_end = @p_fournisseur.payment_month_end
|
|
|
|
end
|
|
|
|
|
|
end
|
|
|
|
def edit
|
|
@p_fournisseur_doc = PFournisseurDoc.find(params[:id])
|
|
@p_fournisseur = @p_fournisseur_doc.p_fournisseur
|
|
end
|
|
|
|
def create
|
|
@p_fournisseur_doc = PFournisseurDoc.new(params.require(:p_fournisseur_doc).permit!)
|
|
|
|
if @p_fournisseur_doc.save
|
|
if @p_fournisseur_doc.p_fournisseur_order
|
|
redirect_to [:admin, @p_fournisseur_doc.p_fournisseur_order]
|
|
else
|
|
redirect_to [:admin, @p_fournisseur_doc]
|
|
end
|
|
else
|
|
render action: "new"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
def update
|
|
@p_fournisseur_doc = PFournisseurDoc.find(params[:id])
|
|
|
|
|
|
if @p_fournisseur_doc.update_attributes(params.require(:p_fournisseur_doc).permit!)
|
|
if @p_fournisseur_doc.p_fournisseur_order
|
|
redirect_to [:admin, @p_fournisseur_doc.p_fournisseur_order]
|
|
else
|
|
redirect_to [:admin, @p_fournisseur_doc]
|
|
end
|
|
|
|
else
|
|
render action: "edit"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
def destroy
|
|
@p_fournisseur_doc = PFournisseurDoc.find(params[:id])
|
|
@p_fournisseur_doc.destroy
|
|
|
|
end
|
|
end
|