update close cashier pdf
This commit is contained in:
@@ -309,133 +309,131 @@ class ReceiptBillPdf < Prawn::Document
|
||||
end
|
||||
|
||||
def all_total(sale_data,precision,delimiter,printed_status)
|
||||
move_down line_move
|
||||
item_name_width = self.item_width
|
||||
y_position = cursor
|
||||
if sale_data.discount_type == 'member_discount'
|
||||
dis_type = "Member Discount:"
|
||||
move_down line_move
|
||||
item_name_width = self.item_width
|
||||
y_position = cursor
|
||||
if sale_data.discount_type == 'member_discount'
|
||||
dis_type = "Member Discount:"
|
||||
else
|
||||
dis_type = "Overall Discount:"
|
||||
end
|
||||
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "#{ dis_type }", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "( #{number_format(sale_data.total_discount, :precision => precision.to_i, :delimiter => delimiter)} )" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
|
||||
service_tax_desc = ""
|
||||
service_tax_amount = 0
|
||||
service_tax_rate = 0
|
||||
com_tax_desc = ""
|
||||
com_tax_amount = 0
|
||||
com_tax_rate = 0
|
||||
if sale_data.sale_taxes.length > 0
|
||||
incl_tax = ""
|
||||
if sale_data.tax_type == "inclusive"
|
||||
incl_tax = "Incl."
|
||||
end
|
||||
|
||||
find_lookup = Lookup.find_by_lookup_type('show_total_before_tax')
|
||||
if find_lookup.nil? || find_lookup == nil
|
||||
lookup = Lookup.new(lookup_type: 'show_total_before_tax', name: 'Show Total Before Tax', value: '0')
|
||||
lookup.save
|
||||
end
|
||||
check_lookup_type = Lookup.find_by_lookup_type('show_total_before_tax')
|
||||
if check_lookup_type.value == '1'
|
||||
sale_data.sale_taxes.each do |st|
|
||||
if (st.tax_name.include? "Service")
|
||||
service_tax_desc = st.tax_name
|
||||
service_tax_amount = st.tax_payable_amount
|
||||
if incl_tax
|
||||
service_tax_rate = st.tax_rate.to_i
|
||||
end
|
||||
end
|
||||
if (st.tax_name.include? "Commercial")
|
||||
com_tax_desc = st.tax_name
|
||||
com_tax_amount = st.tax_payable_amount
|
||||
if incl_tax
|
||||
com_tax_rate = st.tax_rate.to_i
|
||||
end
|
||||
end
|
||||
end
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "#{ service_tax_desc } (#{incl_tax} #{ service_tax_rate }%)", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{number_format(service_tax_amount, :precision => precision.to_i, :delimiter => delimiter)}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
stroke_horizontal_rule
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "Total Before Tax", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{service_tax_amount.to_i + @sub_total.to_i}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "#{ com_tax_desc } (#{incl_tax} #{ com_tax_rate.to_i }%)", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{number_format(com_tax_amount, :precision => precision.to_i, :delimiter => delimiter)}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
else
|
||||
dis_type = "Overall Discount:"
|
||||
end
|
||||
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "#{ dis_type }", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "( #{number_format(sale_data.total_discount, :precision => precision.to_i, :delimiter => delimiter)} )" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
|
||||
service_tax_desc = ""
|
||||
service_tax_amount = 0
|
||||
service_tax_rate = 0
|
||||
com_tax_desc = ""
|
||||
com_tax_amount = 0
|
||||
com_tax_rate = 0
|
||||
if sale_data.sale_taxes.length > 0
|
||||
incl_tax = ""
|
||||
if sale_data.tax_type == "inclusive"
|
||||
incl_tax = "Incl."
|
||||
end
|
||||
|
||||
find_lookup = Lookup.find_by_lookup_type('show_total_before_tax')
|
||||
if find_lookup.nil? || find_lookup == nil
|
||||
lookup = Lookup.new(lookup_type: 'show_total_before_tax', name: 'Show Total Before Tax', value: '0')
|
||||
lookup.save
|
||||
end
|
||||
check_lookup_type = Lookup.find_by_lookup_type('show_total_before_tax')
|
||||
if check_lookup_type.value == '1'
|
||||
sale_data.sale_taxes.each do |st|
|
||||
if (st.tax_name.include? "Service")
|
||||
service_tax_desc = st.tax_name
|
||||
service_tax_amount = st.tax_payable_amount
|
||||
if incl_tax
|
||||
service_tax_rate = st.tax_rate.to_i
|
||||
end
|
||||
end
|
||||
if (st.tax_name.include? "Commercial")
|
||||
com_tax_desc = st.tax_name
|
||||
com_tax_amount = st.tax_payable_amount
|
||||
if incl_tax
|
||||
com_tax_rate = st.tax_rate.to_i
|
||||
end
|
||||
end
|
||||
end
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "#{ service_tax_desc } (#{incl_tax} #{ service_tax_rate }%)", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{number_format(service_tax_amount, :precision => precision.to_i, :delimiter => delimiter)}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
stroke_horizontal_rule
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "Total Before Tax", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{service_tax_amount.to_i + @sub_total.to_i}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "#{ com_tax_desc } (#{incl_tax} #{ com_tax_rate.to_i }%)", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{number_format(com_tax_amount, :precision => precision.to_i, :delimiter => delimiter)}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
else
|
||||
sale_data.sale_taxes.each do |st|
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "#{ st.tax_name } (#{incl_tax} #{ st.tax_rate.to_i }%)", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{number_format(st.tax_payable_amount, :precision => precision.to_i, :delimiter => delimiter)}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
|
||||
end
|
||||
|
||||
# move_down 5
|
||||
# y_position = cursor
|
||||
|
||||
# bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
# text "Total Tax", :size => self.item_font_size,:align => :left
|
||||
# end
|
||||
# bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
# text "( " +"#{sale_data.total_tax}" +" )" , :size => self.item_font_size,:align => :right
|
||||
# end
|
||||
|
||||
if sale_data.rounding_adjustment != 0.0
|
||||
move_down line_move
|
||||
sale_data.sale_taxes.each do |st|
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "Rounding Adjustment", :size => self.item_font_size,:align => :left
|
||||
text "#{ st.tax_name } (#{incl_tax} #{ st.tax_rate.to_i }%)", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{sale_data.rounding_adjustment}", :size => self.item_font_size,:align => :right
|
||||
text "#{number_format(st.tax_payable_amount, :precision => precision.to_i, :delimiter => delimiter)}" , :size => self.item_font_size,:align => :right
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# move_down 5
|
||||
# y_position = cursor
|
||||
|
||||
# bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
# text "Total Tax", :size => self.item_font_size,:align => :left
|
||||
# end
|
||||
# bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
# text "( " +"#{sale_data.total_tax}" +" )" , :size => self.item_font_size,:align => :right
|
||||
# end
|
||||
|
||||
if sale_data.rounding_adjustment != 0.0
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
move_down line_move
|
||||
bounding_box([0,y_position], :width =>self.item_description_width) do
|
||||
text "Grand Total",:style => :bold, :size => self.header_font_size,:align => :left
|
||||
|
||||
bounding_box([0,y_position], :width =>self.item_description_width, :height => self.item_height) do
|
||||
text "Rounding Adjustment", :size => self.item_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{number_format(sale_data.grand_total, :precision => precision.to_i, :delimiter => delimiter)}" , :style => :bold, :size => self.header_font_size,:align => :right
|
||||
text "#{sale_data.rounding_adjustment}", :size => self.item_font_size,:align => :right
|
||||
end
|
||||
move_down line_move
|
||||
end
|
||||
|
||||
sale_payment(sale_data,precision,delimiter,printed_status)
|
||||
move_down line_move
|
||||
y_position = cursor
|
||||
move_down line_move
|
||||
bounding_box([0,y_position], :width =>self.item_description_width) do
|
||||
text "Grand Total",:style => :bold, :size => self.header_font_size,:align => :left
|
||||
end
|
||||
bounding_box([self.item_description_width,y_position], :width =>self.label_width) do
|
||||
text "#{number_format(sale_data.grand_total, :precision => precision.to_i, :delimiter => delimiter)}" , :style => :bold, :size => self.header_font_size,:align => :right
|
||||
end
|
||||
move_down line_move
|
||||
|
||||
sale_payment(sale_data,precision,delimiter,printed_status)
|
||||
end
|
||||
|
||||
def sale_payment(sale_data,precision,delimiter,printed_status)
|
||||
|
||||
Reference in New Issue
Block a user