From ec20504c5a90c051211a60b593338cb51d814814 Mon Sep 17 00:00:00 2001 From: Yan Date: Tue, 4 Jul 2017 14:19:11 +0630 Subject: [PATCH] add qty precision --- app/pdf/order_item_pdf.rb | 11 ++++++----- app/pdf/order_summary_pdf.rb | 13 +++++++------ app/pdf/receipt_bill_pdf.rb | 2 +- dump.rdb | Bin 17902 -> 819 bytes 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/app/pdf/order_item_pdf.rb b/app/pdf/order_item_pdf.rb index 2bd9f114..03ed4d21 100644 --- a/app/pdf/order_item_pdf.rb +++ b/app/pdf/order_item_pdf.rb @@ -1,4 +1,5 @@ class OrderItemPdf < Prawn::Document + include ActionView::Helpers::NumberHelper attr_accessor :label_width,:price_column_width,:page_width, :page_height, :margin, :price_width, :item_width, :header_font_size, :item_font_size,:item_height,:qty_width,:total_width,:item_description_width def initialize(print_settings,order_item, print_status, options, alt_name) self.page_width = 180 @@ -30,7 +31,7 @@ class OrderItemPdf < Prawn::Document order_info(order_item.order_id, order_item.order_by,order_item.order_at) # order items - order_items(order_item, options, alt_name) + order_items(order_item, options, alt_name, print_settings.precision) end # Write Order Information to PDF @@ -58,11 +59,11 @@ class OrderItemPdf < Prawn::Document end # Write Order items to PDF - def order_items(order_item, options, alt_name) + def order_items(order_item, options, alt_name, precision) y_position = cursor #Add Order Item - add_order_items(order_item, options, alt_name) + add_order_items(order_item, options, alt_name, precision) dash(1, :space => 1, :phase => 1) stroke_horizontal_line 0, (self.page_width - self.margin) @@ -70,7 +71,7 @@ class OrderItemPdf < Prawn::Document end # Add order items under order info - def add_order_items(order_item, options, alt_name) + def add_order_items(order_item, options, alt_name, precision) y_position = cursor move_down 5 @@ -80,7 +81,7 @@ class OrderItemPdf < Prawn::Document end bounding_box([self.item_width,y_position], :width => self.qty_width) do - text "[#{order_item.qty.to_i}]", :size => self.item_font_size,:align => :left + text "[#{number_with_precision(order_item.qty.to_i, :precision => precision.to_i)}]", :size => self.item_font_size,:align => :left end bounding_box([0,y_position], :width => self.item_width) do diff --git a/app/pdf/order_summary_pdf.rb b/app/pdf/order_summary_pdf.rb index 0c3b7fd8..9ee459c8 100644 --- a/app/pdf/order_summary_pdf.rb +++ b/app/pdf/order_summary_pdf.rb @@ -1,4 +1,5 @@ class OrderSummaryPdf < Prawn::Document + include ActionView::Helpers::NumberHelper attr_accessor :label_width,:price_column_width,:page_width, :page_height, :margin, :price_width, :item_width, :header_font_size, :item_font_size,:item_height,:qty_width,:total_width,:item_description_width def initialize(print_settings,order, print_status, order_items = nil,alt_name) self.page_width = 180 @@ -29,9 +30,9 @@ class OrderSummaryPdf < Prawn::Document # order items if order_items == nil - order_items(order, alt_name) + order_items(order, alt_name, print_settings.precision) else - order_items(order_items, alt_name) + order_items(order_items, alt_name, print_settings.precision) end end @@ -60,7 +61,7 @@ class OrderSummaryPdf < Prawn::Document end # Write Order items to PDF - def order_items(order_item, alt_name) + def order_items(order_item, alt_name, precision) y_position = cursor bounding_box([0,y_position], :width => self.item_width, :height => self.item_height) do @@ -75,12 +76,12 @@ class OrderSummaryPdf < Prawn::Document move_down 5 #Add Order Item - add_order_items(order_item, alt_name) + add_order_items(order_item, alt_name, precision) end # Add order items under order info - def add_order_items(order_item, alt_name) + def add_order_items(order_item, alt_name, precision) y_position = cursor move_down 5 @@ -96,7 +97,7 @@ class OrderSummaryPdf < Prawn::Document end bounding_box([self.item_width,y_position], :width => self.qty_width) do - text "#{odi.qty}", :size => self.item_font_size,:align => :left + text "#{number_with_precision(odi.qty, :precision => precision.to_i)}", :size => self.item_font_size,:align => :left end bounding_box([0,y_position], :width => self.item_width) do diff --git a/app/pdf/receipt_bill_pdf.rb b/app/pdf/receipt_bill_pdf.rb index 9807b2d5..1baa5f2c 100644 --- a/app/pdf/receipt_bill_pdf.rb +++ b/app/pdf/receipt_bill_pdf.rb @@ -142,7 +142,7 @@ class ReceiptBillPdf < Prawn::Document pad_top(15) { text_box "#{product_name}", :at =>[0,y_position], :width => self.item_width, :height =>self.item_height, :size => self.item_font_size, :overflow => :shrink_to_fix text_box "#{number_with_precision(price, :precision => precision.to_i, :delimiter => delimiter)}", :at =>[self.item_width,y_position], :width => self.price_width, :height =>self.item_height, :size => self.item_font_size, :align => :right, :overflow => :shrink_to_fix - text_box "#{qty}", :at =>[item_name_width,y_position], :width => self.qty_width, :height =>self.item_height, :size => self.item_font_size, :align => :center, :overflow => :shrink_to_fix + text_box "#{number_with_precision(qty, :precision => precision.to_i)}", :at =>[item_name_width,y_position], :width => self.qty_width, :height =>self.item_height, :size => self.item_font_size, :align => :center, :overflow => :shrink_to_fix text_box "#{number_with_precision(total_price, :precision => precision.to_i, :delimiter => delimiter)}", :at =>[(item_name_width+4),y_position], :width =>self.total_width+3, :height =>self.item_height, :size => self.item_font_size, :align => :right, :overflow => :shrink_to_fix } move_down 1 diff --git a/dump.rdb b/dump.rdb index e6612cd4d745c3a266a4b581523a7577e82df134..156cca62127bba78e2184ce7dcae6f5a203b480c 100644 GIT binary patch literal 819 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