diff --git a/app/controllers/admin/buy_lists_controller.rb b/app/controllers/admin/buy_lists_controller.rb index 515b796..88aa300 100644 --- a/app/controllers/admin/buy_lists_controller.rb +++ b/app/controllers/admin/buy_lists_controller.rb @@ -149,12 +149,13 @@ class Admin::BuyListsController < ApplicationController @p_customer_sheet = PCustomerSheet.find(params[:id]) @p_customer = @p_customer_sheet.p_customer - - if @p_customer_sheet.update_attributes(params.require(:p_customer_sheet).permit!) + @price_line_id = params[:price_line_id] + + if @p_customer_sheet.update(state: params[:state]) - @p_customer_sheets = PCustomerSheet.order(:id).all - - redirect_to admin_p_customer_sheet_path(@p_customer_sheet) + @p_customer_sheets = PCustomerSheet.where(:state => ["AV BPA", "PAS BPA", "BPA"]) + return @p_customer_sheet + # redirect_to admin_p_customer_sheet_path(@p_customer_sheet) else render action: "edit" @@ -235,6 +236,4 @@ class Admin::BuyListsController < ApplicationController end - - end diff --git a/app/controllers/admin/p_customer_sheets_controller.rb b/app/controllers/admin/p_customer_sheets_controller.rb index fbc5058..8905ef1 100644 --- a/app/controllers/admin/p_customer_sheets_controller.rb +++ b/app/controllers/admin/p_customer_sheets_controller.rb @@ -192,14 +192,14 @@ class Admin::PCustomerSheetsController < ApplicationController def update @p_customer_sheet = PCustomerSheet.find(params[:id]) - if @p_customer_sheet.update_attributes(params.require(:p_customer_sheet).permit!) - @p_customer = @p_customer_sheet.price_line_block.p_customer - - - redirect_to admin_p_customer_sheet_path(@p_customer_sheet) + @p_customer = @p_customer_sheet.price_line_block.p_customer + respond_to do |format| + format.html{redirect_to admin_p_customer_sheet_path(@p_customer_sheet)} + format.js{} + end else render action: "edit" @@ -207,7 +207,6 @@ class Admin::PCustomerSheetsController < ApplicationController end - def destroy @p_customer_sheet = PCustomerSheet.find(params[:id]) @p_customer_sheet.destroy diff --git a/app/models/p_customer_sheet.rb b/app/models/p_customer_sheet.rb index 9ab4cf7..cada486 100644 --- a/app/models/p_customer_sheet.rb +++ b/app/models/p_customer_sheet.rb @@ -44,6 +44,8 @@ class PCustomerSheet < ApplicationRecord :actions => {:name => "Actions", :reorder => false}, } + # STATES = ["brouillon", "offre", "commande", "livrée","facturée", "annulée", "refusée"] + STATES = ["AV BPA", "PAS BPA","BPA", "Traitée"] def personalised_archive @@ -328,7 +330,6 @@ class PCustomerSheet < ApplicationRecord end - STATES = ["brouillon", "offre", "commande", "livrée","facturée", "annulée", "refusée"] def unblock_price diff --git a/app/views/admin/buy_lists/index.html.haml b/app/views/admin/buy_lists/index.html.haml index de9fbbb..f561056 100644 --- a/app/views/admin/buy_lists/index.html.haml +++ b/app/views/admin/buy_lists/index.html.haml @@ -216,7 +216,7 @@ %tbody.detail -ppr_lines.each do |price_line| - %tr + %tr{id: "price_line_row_#{price_line.id}"} - if checkbox %td =check_box_tag :"price_line_ids[]", price_line.id @@ -235,7 +235,20 @@ =link_to price_line.p_customer.show_name, [:admin, price_line.p_customer] %td - =state_helper price_line.price_line_block.price_lineable.state + -@p_customer_sheet = price_line.price_line_block.price_lineable + .dropdown + %button.btn.btn-default.dropdown-toggle{"aria-expanded" => "true", "aria-haspopup" => "true", "data-toggle" => "dropdown", :type => "button"} + %span.span_cat{'class' => "p_customer_sheet_#{@p_customer_sheet.id}"} + =#@p_customer_sheet.state + =state_helper @p_customer_sheet.state + %span.caret + %ul.dropdown-menu{"aria-labelledby" => "dropdownMenu1"} + -PCustomerSheet::STATES.each do |state| + %li + =link_to admin_p_customer_sheet_path(:id => @p_customer_sheet.id, :p_customer_sheet => {:state => state}), :method => :put, :remote => true, :onclick => "$('.dropdown-toggle').dropdown('hide');$(\".p_customer_sheet_#{@p_customer_sheet.id}\").html($(this).find('span').html());", :class => "dropdown-item" do + =ic :check if false + %span=state_helper state + %td =price_line.comment @@ -364,6 +377,7 @@ checkbox.prop("checked", false) } }) + $('.plus-all').click() diff --git a/app/views/admin/p_customer_sheets/update.js.erb b/app/views/admin/p_customer_sheets/update.js.erb index 1d96e9f..572c4eb 100644 --- a/app/views/admin/p_customer_sheets/update.js.erb +++ b/app/views/admin/p_customer_sheets/update.js.erb @@ -1,2 +1,4 @@ -$('#p_customer_sheets_rows').html("<%= escape_javascript(render(@p_customer_sheets))%>"); -close_pane_hover(); \ No newline at end of file +<% if @p_customer_sheets %> + $('#p_customer_sheets_rows').html("<%= escape_javascript(render(@p_customer_sheets))%>"); +<% end %> +close_pane_hover();