diff --git a/Gemfile b/Gemfile index 1aed5cdf..bcbebe51 100644 --- a/Gemfile +++ b/Gemfile @@ -12,6 +12,9 @@ gem 'rails', '~> 5.1.0' gem 'mysql2', '>= 0.3.18', '< 0.5' +#Use PosgreSQL +# gem 'pg' + # redis server for cable # gem 'redis', '~> 3.0' diff --git a/app/assets/javascripts/OQS.js b/app/assets/javascripts/OQS.js index 80a09b47..7df365ec 100644 --- a/app/assets/javascripts/OQS.js +++ b/app/assets/javascripts/OQS.js @@ -80,4 +80,14 @@ $(document).ready(function(){ success: function(data){ } }); }); + + $('#print_order_summary').on('click',function(){ + var assigned_item_id=$('.selected-item').children('.card-block').children('.assigned-order-item').text(); + var params = { 'id':assigned_item_id }; + $.ajax({ + type: 'GET', + url: '/oqs/print/print_order_summary/'+assigned_item_id, + success: function(data){ } + }); + }); }); diff --git a/app/controllers/api/orders_controller.rb b/app/controllers/api/orders_controller.rb index 443a754b..df9b1542 100644 --- a/app/controllers/api/orders_controller.rb +++ b/app/controllers/api/orders_controller.rb @@ -28,7 +28,7 @@ class Api::OrdersController < Api::ApiController @order = Order.new @order.source = params[:order_source] @order.order_type = params[:order_type] - @order.customer_id = params[:customer_id] + @order.customer_id = params[:customer_id] == ""? "CUS-000000000001" : params[:customer_id] # for no customer id from mobile @order.items = params[:order_items] @order.guest = params[:guest_info] @order.table_id = params[:table_id] diff --git a/app/controllers/crm/customers_controller.rb b/app/controllers/crm/customers_controller.rb index 4e97faec..d173888e 100644 --- a/app/controllers/crm/customers_controller.rb +++ b/app/controllers/crm/customers_controller.rb @@ -4,7 +4,7 @@ class Crm::CustomersController < ApplicationController # GET /crm/customers # GET /crm/customers.json def index - @crm_customers = Crm::Customer.all + @crm_customers = Customer.all end # GET /crm/customers/1 @@ -14,7 +14,7 @@ class Crm::CustomersController < ApplicationController # GET /crm/customers/new def new - @crm_customer = Crm::Customer.new + @crm_customer = Customer.new end # GET /crm/customers/1/edit @@ -24,7 +24,7 @@ class Crm::CustomersController < ApplicationController # POST /crm/customers # POST /crm/customers.json def create - @crm_customer = Crm::Customer.new(crm_customer_params) + @crm_customer = Customer.new(crm_customer_params) respond_to do |format| if @crm_customer.save @@ -64,7 +64,7 @@ class Crm::CustomersController < ApplicationController private # Use callbacks to share common setup or constraints between actions. def set_crm_customer - @crm_customer = Crm::Customer.find(params[:id]) + @crm_customer = Customer.find(params[:id]) end # Never trust parameters from the scary internet, only allow the white list through. diff --git a/app/controllers/oqs/home_controller.rb b/app/controllers/oqs/home_controller.rb index 1292a5e6..0c680624 100644 --- a/app/controllers/oqs/home_controller.rb +++ b/app/controllers/oqs/home_controller.rb @@ -35,15 +35,15 @@ class Oqs::HomeController < BaseOqsController # Query for OQS with status def queue_items_query(status) - AssignedOrderItem.select("assigned_order_items.id, oqs.station_name, oqs.is_active, df.name as zone, odt.item_code, odt.item_name, odt.price, odt.qty, odt.item_order_by, cus.name as customer_name, odt.created_at") + AssignedOrderItem.select("assigned_order_items.assigned_order_item_id, oqs.station_name, oqs.is_active, df.name as zone, odt.item_code, odt.item_name, odt.price, odt.qty, odt.item_order_by, cus.name as customer_name, odt.created_at") .joins("join order_queue_process_by_zones as oqpz ON oqpz.order_queue_station_id = assigned_order_items.order_queue_station_id left join dining_facilities as df on df.zone_id = oqpz.zone_id left join order_queue_stations as oqs ON oqs.id = assigned_order_items.order_queue_station_id - left join orders as od ON od.id = assigned_order_items.order_id + left join orders as od ON od.order_id = assigned_order_items.order_id left join order_items as odt ON odt.item_code = assigned_order_items.item_code - left join customers as cus ON cus.id = od.customer_id") + left join customers as cus ON cus.customer_id = od.customer_id") .where("assigned_order_items.delivery_status = #{status}") - .group("assigned_order_items.id") + .group("assigned_order_items.assigned_order_item_id") .order("odt.item_name DESC") end end diff --git a/app/controllers/oqs/print_controller.rb b/app/controllers/oqs/print_controller.rb index 368a513d..1b48fae6 100644 --- a/app/controllers/oqs/print_controller.rb +++ b/app/controllers/oqs/print_controller.rb @@ -2,7 +2,7 @@ class Oqs::PrintController < ApplicationController def print unique_code="OrderItemPdf" assigned_item_id=params[:id] - assigned_order_item=AssignedOrderItem.select("order_id, item_code").where('id='+assigned_item_id) + assigned_order_item=AssignedOrderItem.select("order_id, item_code").where('assigned_order_item_id='+assigned_item_id) print_settings=PrintSetting.find_by_unique_code(unique_code) order_queue_printer= Printer::OrderQueuePrinter.new(print_settings) @@ -13,4 +13,19 @@ class Oqs::PrintController < ApplicationController assigned_item.print_status=true assigned_item.save end + + def print_order_summary + unique_code="OrderSummaryPdf" + assigned_item_id=params[:id] + assigned_order_item=AssignedOrderItem.select("order_id").where('assigned_order_item_id='+assigned_item_id) + + print_settings=PrintSetting.find_by_unique_code(unique_code) + order_queue_printer= Printer::OrderQueuePrinter.new(print_settings) + order_queue_printer.print_order_summary(print_settings,assigned_order_item[0].order_id) + + # update print status when complete click + assigned_item=AssignedOrderItem.find(assigned_item_id) + assigned_item.print_status=true + assigned_item.save + end end diff --git a/app/controllers/origami/request_bills_controller.rb b/app/controllers/origami/request_bills_controller.rb index 8acbad03..59039da8 100644 --- a/app/controllers/origami/request_bills_controller.rb +++ b/app/controllers/origami/request_bills_controller.rb @@ -3,13 +3,15 @@ class Origami::RequestBillsController < BaseOrigamiController @sale = Sale.new booking_id = params[:id] - check_booking = Booking.find_by_id(booking_id) + check_booking = Booking.find_by_booking_id(booking_id) if check_booking.sale_id.nil? #check if it doesn't exist @status = @sale.generate_invoice_from_booking(check_booking.id,current_login_employee.name) - @sale_data = Sale.find_by_id(check_booking.sale_id) + @sale_data = Sale.find_by_sale_id(check_booking.sale_id) + @sale_items = SaleItem.where("sale_id=?",check_booking.sale_id) + else + @sale_data = Sale.find_by_sale_id(check_booking.sale_id) @sale_items = SaleItem.where("sale_id=?",check_booking.sale_id) - end unique_code="ReceiptBillPdf" @@ -21,4 +23,5 @@ class Origami::RequestBillsController < BaseOrigamiController end + end diff --git a/app/controllers/settings/menu_item_instances_controller.rb b/app/controllers/settings/menu_item_instances_controller.rb index 6bd00638..f9c20a2d 100644 --- a/app/controllers/settings/menu_item_instances_controller.rb +++ b/app/controllers/settings/menu_item_instances_controller.rb @@ -41,7 +41,7 @@ class Settings::MenuItemInstancesController < ApplicationController category = MenuCategory.find(catID.menu_category_id) respond_to do |format| if @settings_menu_item_instances.save - @settings_menu_item_instances.item_attributes = params[:menu_item_instance][:item_attributes] + @settings_menu_item_instances.item_attributes = params[:menu_item_instance][:item_attributes].reject(&:blank?) @settings_menu_item_instances.save format.html { redirect_to settings_menu_category_simple_menu_item_path(category,catID), notice: 'Menu item instance was successfully created.' } format.json { render :show, status: :created, location: @settings_menu_item_instances } diff --git a/app/models/menu_item.rb b/app/models/menu_item.rb index 0eafa612..40c80ad6 100644 --- a/app/models/menu_item.rb +++ b/app/models/menu_item.rb @@ -1,5 +1,7 @@ class MenuItem < ApplicationRecord + #belongs_to :account + belongs_to :menu_category, :optional => true has_many :menu_item_instances belongs_to :parent, :class_name => "MenuItem", foreign_key: "menu_item_id", :optional => true diff --git a/app/models/order.rb b/app/models/order.rb index 1ba50ed6..68e13fc6 100644 --- a/app/models/order.rb +++ b/app/models/order.rb @@ -40,7 +40,7 @@ class Order < ApplicationRecord self.adding_line_items #Add Order Table and Room relation afrer order creation - BookingOrder.create({:booking_id => booking.id, :order => self}) + BookingOrder.create({:booking_id => booking.booking_id, :order => self}) #Send order to queue one it done! process_order_queue @@ -209,75 +209,67 @@ class Order < ApplicationRecord #Origami: Cashier : to view order type Table def self.get_booking_order_table - booking_orders = Booking.select("sales.receipt_no, - orders.status as order_status, - bookings.booking_id, - sales.sale_id as sale_id, - dining_facilities.name as table_name") - .joins("left join booking_orders on booking_orders.booking = bookings.booking_id") + booking_orders = Booking.select("sales.receipt_no,orders.status as order_status, + bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name") + .joins("left join booking_orders on booking_orders.booking_id = bookings.booking_id") .joins("left join dining_facilities on dining_facilities.id = bookings.dining_facility_id") - .joins("left join orders on orders.order_id = booking_orders.order") - .joins("left join sale_orders on sale_orders.order = orders.order_id") - .joins("left join sales on sales.sale_id = sale_orders.sale") - .where("booking_orders.order IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::TABLE_TYPE,true) + .joins("left join orders on orders.order_id = booking_orders.order_id") + .joins("left join sale_orders on sale_orders.order_id = orders.order_id") + .joins("left join sales on sales.sale_id = sale_orders.sale_id") + .where("booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::TABLE_TYPE,true) .group("bookings.booking_id") end #Origami: Cashier : to view order type Room def self.get_booking_order_rooms - booking_rooms = Booking.select("sales.receipt_no, - orders.status as order_status,bookings.booking_id, - sales.sale_id as sale_id, - dining_facilities.name as room_name") - .joins("left join booking_orders on booking_orders.booking = bookings.booking_id") + booking_rooms = Booking.select("sales.receipt_no,orders.status as order_status,bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as room_name") + .joins("left join booking_orders on booking_orders.booking_id = bookings.booking_id") .joins("left join dining_facilities on dining_facilities.id = bookings.dining_facility_id") - .joins("left join orders on orders.order_id = booking_orders.order") - .joins("left join sale_orders on sale_orders.order = orders.order_id") - .joins("left join sales on sales.sale_id = sale_orders.sale") - .where("booking_orders.order IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::ROOM_TYPE,true) + .joins("left join orders on orders.order_id = booking_orders.order_id") + .joins("left join sale_orders on sale_orders.order_id = orders.order_id") + .joins("left join sales on sales.sale_id = sale_orders.sale_id") + .where("booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::ROOM_TYPE,true) .group("bookings.booking_id") end #Origami: Cashier : to view order type Room def self.get_order_rooms - order_rooms = Order.select("orders.order_id as order_id, - sum(order_items.qty*order_items.price) as total_price, - order_items.order_items_id as order_items_id,dining_facilities.name as room_name") - .joins("left join booking_orders on booking_orders.order = orders.order_id - left join bookings on bookings.booking_id = booking_orders.booking_order_id + order_rooms = Order.select("orders.order_id as order_id,sum(order_items.qty*order_items.price) as total_price, + order_items.id as order_items_id,dining_facilities.name as room_name") + .joins("left join booking_orders on booking_orders.order_id = orders.order_id + left join bookings on bookings.booking_id = booking_orders.order_id left join dining_facilities on dining_facilities.id = bookings.dining_facility_id left join order_items on order_items.order_id = orders.order_id") .where("dining_facilities.type=? and orders.order_type=? and dining_facilities.is_active=?",DiningFacility::ROOM_TYPE,"dine_in",true) - .group("orders.order_id,order_items.order_items_id,dining_facilities.name") + .group("orders.order_id,order_items.id,dining_facilities.name") end #Origami: Cashier : to view orders def self.get_orders from = Time.now.beginning_of_day.utc to = Time.now.end_of_day.utc - orders = Order.select("orders.order_id as order_id, - sales.receipt_no,orders.status as order_status,bookings.booking_id, - sales.sale_id as sale_id,dining_facilities.name as table_name") - .joins("left join booking_orders on booking_orders.order = orders.order_id - left join bookings on bookings.booking_id = booking_orders.booking_order_id + orders = Order.select("orders.order_id as order_id,sales.receipt_no,orders.status as order_status,bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name") + .joins("left join booking_orders on booking_orders.order_id = orders.order_id + left join bookings on bookings.booking_id = booking_orders.order_id left join dining_facilities on dining_facilities.id = bookings.dining_facility_id left join order_items on order_items.order_id = orders.order_id - left join sale_orders on sale_orders.order = orders.order_id - left join sales on sales.sale_id = sale_orders.sale") + left join sale_orders on sale_orders.order_id = orders.order_id + left join sales on sales.sale_id = sale_orders.sale_id") .where("dining_facilities.is_active=? and orders.date between ? and ?",true,from,to) .group("orders.order_id") - # Booking.select("sales.receipt_no,orders.status as order_status,bookings.id,sales.id as sale_id,dining_facilities.name as table_name") - # .joins("left join booking_orders on booking_orders.booking_id = bookings.id") + # Booking.select("sales.receipt_no,orders.status as order_status,bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name") + # .joins("left join booking_orders on booking_orders.booking_id = bookings.booking_id") # .joins("left join dining_facilities on dining_facilities.id = bookings.dining_facility_id") - # .joins("left join orders on orders.id = booking_orders.order_id") - # .joins("left join sale_orders on sale_orders.order_id = orders.id") - # .joins("left join sales on sales.id = sale_orders.sale_id") + # .joins("left join orders on orders.order_id = booking_orders.order_id") + # .joins("left join sale_orders on sale_orders.order_id = orders.order_id") + # .joins("left join sales on sales.sale_id = sale_orders.sale_id") # .where("booking_orders.order_id IS NOT NULL and dining_facilities.is_active=? and orders.date between ? and ?",true,from,to) - # .group("orders.id") + # .group("orders.order_id") end + private def generate_custom_id self.order_id = SeedGenerator.generate_id(self.class.name, "ODR") diff --git a/app/models/order_item.rb b/app/models/order_item.rb index 94ec7a1c..039aa406 100644 --- a/app/models/order_item.rb +++ b/app/models/order_item.rb @@ -39,15 +39,12 @@ class OrderItem < ApplicationRecord #Origami : Cashier : to show order items details def self.get_order_items_details(booking_id) - booking_orders = BookingOrder.where("booking=?",booking_id) -puts booking_orders.to_json + booking_orders = BookingOrder.where("booking_id=?",booking_id) if booking_orders booking_orders.each do |book_order| - puts "booooooooo" - puts book_order.booking_order_id order_details = OrderItem.select("order_items.item_name,order_items.qty,order_items.price,(order_items.qty*order_items.price) as total_price") .joins("left join orders on orders.order_id = order_items.order_id") - .where("order_items.order_id=?",book_order.order) + .where("order_items.order_id=?",book_order.order) return order_details end else @@ -57,6 +54,6 @@ puts booking_orders.to_json private def generate_custom_id - self.order_item_id = SeedGenerator.generate_id(self.class.name, "ODI") + self.order_items_id = SeedGenerator.generate_id(self.class.name, "ODI") end end diff --git a/app/models/printer/order_queue_printer.rb b/app/models/printer/order_queue_printer.rb index 6a8a4b78..3428bb98 100644 --- a/app/models/printer/order_queue_printer.rb +++ b/app/models/printer/order_queue_printer.rb @@ -10,12 +10,12 @@ class Printer::OrderQueuePrinter < Printer::PrinterWorker self.print("tmp/receipt.pdf") end - def print_order_summary(printer_settings,booking_id) + def print_order_summary(printer_settings,order_id) #Use CUPS service #Generate PDF #Print - order=print_query('booking',booking_id) - filename = "tmp/order_summary_#{booking_id}" + ".pdf" + order=print_query('order_summary',order_id) + filename = "tmp/order_summary_#{order_id}" + ".pdf" pdf = OrderSummaryPdf.new(order,printer_settings) pdf.render_file filename @@ -25,21 +25,23 @@ class Printer::OrderQueuePrinter < Printer::PrinterWorker # Query for OQS with status def print_query(type, code) if type == 'order_item' - OrderItem.select("order_items.item_code, order_items.item_name,order_items.item_order_by as order_by, order_items.created_at as order_at, cus.name as customer, df.name as dining") - .joins("left join orders ON orders.id = order_items.order_id + OrderItem.select("order_items.item_code, order_items.item_name, order_items.qty, order_items.price, order_items.item_order_by as order_by, order_items.created_at as order_at, cus.name as customer, df.name as dining") + .joins("left join orders ON orders.order_id = order_items.order_id left join booking_orders AS bo ON bo.order_id=order_items.order_id - left join bookings AS b ON b.id = bo.booking_id - left join dining_facilities AS df ON df.id = b.dining_facility_id - left join customers as cus ON cus.id = orders.customer_id") + left join bookings AS b ON b.booking_id = bo.booking_id + left join dining_facilities AS df ON df.dining_facility_id = b.dining_facility_id + left join customers as cus ON cus.customer_id = orders.customer_id") .where("order_items.item_code=" + code) .group("order_items.item_code") else - OrderItem.select("order_items.item_code, order_items.item_name, df.name as dining") - .joins("left join orders ON orders.id = order_items.order_id + OrderItem.select("order_items.item_code, order_items.item_name, order_items.qty, order_items.price, order_items.item_order_by as order_by, order_items.created_at as order_at, cus.name as customer, df.name as dining") + .joins("left join orders ON orders.order_id = order_items.order_id left join booking_orders AS bo ON bo.order_id=order_items.order_id - left join bookings AS b ON b.id = bo.booking_id - left join dining_facilities AS df ON df.id = b.dining_facility_id") - .where("booking.id=" + code) + left join bookings AS b ON b.booking_id = bo.booking_id + left join dining_facilities AS df ON df.dining_facility_id = b.dining_facility_id + left join customers as cus ON cus.customer_id = orders.customer_id") + .where("orders.order_id=" + code.to_s) + .group("order_items.item_code") end end diff --git a/app/models/sale.rb b/app/models/sale.rb index fcc2d198..ec4831e5 100644 --- a/app/models/sale.rb +++ b/app/models/sale.rb @@ -1,6 +1,6 @@ class Sale < ApplicationRecord #primary key - need to be unique generated for multiple shops - + before_create :generate_custom_id #before_create :generate_receipt_no belongs_to :cashier, :optional => true belongs_to :customer, :optional => true diff --git a/app/models/sale_item.rb b/app/models/sale_item.rb index a94785ff..254e8b8b 100644 --- a/app/models/sale_item.rb +++ b/app/models/sale_item.rb @@ -10,12 +10,12 @@ class SaleItem < ApplicationRecord def self.get_order_items_details(sale_id) - sale_orders = SaleOrder.where("sale=?",sale_id) + sale_orders = SaleOrder.where("sale_id=?",sale_id) if sale_orders sale_orders.each do |sale_order| order_details = SaleItem.select("sales.total_discount as discount_amount,DATE_FORMAT(sales.receipt_date,'%Y-%m-%d %h:%m') as receipt_date,sales.cashier_name,sales.receipt_no,sale_items.product_name as item_name,sale_items.qty,sale_items.price,sale_items.unit_price as total_price") - .joins("left join sales on sales.sale_id = sale_items.sale_id") - .where("sale_items.sale_id=?",sale_order.sale) + .joins("left join sales on sales.id = sale_items.sale_id") + .where("sale_items.sale_id=?",sale_order.sale_id) return order_details end else diff --git a/app/models/seed_generator.rb b/app/models/seed_generator.rb index da1e6284..5e7864b6 100644 --- a/app/models/seed_generator.rb +++ b/app/models/seed_generator.rb @@ -14,9 +14,11 @@ class SeedGenerator < ApplicationRecord seed.current = current_no seed.save end - padding_len = 12 - prefix.length - return prefix +"-"+ seed.current.to_s.to_s.rjust((12-prefix.length)+1,'0') + padding_len = 15 - prefix.length + + return prefix +"-"+ seed.current.to_s.to_s.rjust((14-prefix.length)+1,'0') + end def self.new_receipt_no diff --git a/app/pdf/order_item_pdf.rb b/app/pdf/order_item_pdf.rb index 356327b4..3044c578 100644 --- a/app/pdf/order_item_pdf.rb +++ b/app/pdf/order_item_pdf.rb @@ -11,21 +11,61 @@ class OrderItemPdf < Prawn::Document stroke_horizontal_rule move_down 5 - cashier_info(order_item.order_by,order_item.order_at, order_item.customer) + #order_info + order_info(order_item.order_by,order_item.order_at, order_item.customer) + # order items + order_items(order_item) end - def cashier_info(order_by, order_at, customer) - move_down 5 + # Write Order Information to PDF + def order_info(order_by, order_at, customer) y_position = cursor - bounding_box([0,y_position], :width =>200, :height => 20) do - text "OrderBy:#{order_by} Customer:#{customer} Date:#{order_at.strftime("%Y %m %d")}", :size => 7,:align => :left + bounding_box([0,y_position], :width => 200, :height => 15) do + text "OrderBy:#{order_by} Customer:#{customer} Date:#{order_at.strftime("%Y-%m-%d")}", :size => 7,:align => :left end stroke_horizontal_rule + move_down 20 + end + + # Write Order items to PDF + def order_items(order_item) + y_position = cursor + + bounding_box([0,y_position], :width => 180, :height => 15) do + text "Item", :size => 7,:align => :left + end + + bounding_box([160,y_position], :width => 20, :height => 15) do + text "Qty", :size => 7,:align => :right + end + + stroke_horizontal_rule move_down 5 + + #Add Order Item + add_order_items(order_item) + end + + # Add order items under order info + def add_order_items(order_item) + y_position = cursor + + move_down 5 + + bounding_box([0,y_position], :width => 180, :height => 20) do + text "#{order_item.item_name}", :size => 7,:align => :left + end + + bounding_box([160,y_position], :width => 20, :height => 20) do + text "#{order_item.qty}", :size => 7,:align => :right + end + + move_down 5 + end end diff --git a/app/pdf/order_summary_pdf.rb b/app/pdf/order_summary_pdf.rb index 8b79b40e..8a7a1ad9 100644 --- a/app/pdf/order_summary_pdf.rb +++ b/app/pdf/order_summary_pdf.rb @@ -7,11 +7,68 @@ class OrderSummaryPdf < Prawn::Document # font "public/fonts/Zawgyi-One.ttf" # font "public/fonts/padauk.ttf" - font_size 9 - text "#{"table_name"}", :size => 15 + text "#{order[0].dining}", :size => 15 stroke_horizontal_rule move_down 5 + #order_info + order_info(order[0].order_by,order[0].order_at, order[0].customer) + + # order items + order_items(order) + + end + + # Write Order Information to PDF + def order_info(order_by, order_at, customer) + y_position = cursor + + bounding_box([0,y_position], :width => 200, :height => 15) do + text "OrderBy:#{order_by} Customer:#{customer} Date:#{order_at.strftime("%Y-%m-%d")}", :size => 7,:align => :left + end + + stroke_horizontal_rule + + move_down 20 + end + + # Write Order items to PDF + def order_items(order_item) + y_position = cursor + + bounding_box([0,y_position], :width => 180, :height => 15) do + text "Item", :size => 7,:align => :left + end + + bounding_box([160,y_position], :width => 20, :height => 15) do + text "Qty", :size => 7,:align => :right + end + + stroke_horizontal_rule + move_down 5 + + #Add Order Item + add_order_items(order_item) + end + + # Add order items under order info + def add_order_items(order_item) + y_position = cursor + + move_down 5 + + order_item.each do|odi| + bounding_box([0,y_position], :width => 180, :height => 20) do + text "#{odi.item_name}", :size => 7,:align => :left + end + + bounding_box([160,y_position], :width => 20, :height => 20) do + text "#{odi.qty}", :size => 7,:align => :right + end + end + + move_down 5 + end end diff --git a/app/views/api/bookings/show.json.jbuilder b/app/views/api/bookings/show.json.jbuilder index c4edb79f..cbd1575a 100644 --- a/app/views/api/bookings/show.json.jbuilder +++ b/app/views/api/bookings/show.json.jbuilder @@ -1,5 +1,5 @@ if (@booking) - json.id @booking.id + json.id @booking.booking_id json.status @booking.booking_status json.checkin_at @booking.checkin_at json.checkin_by @booking.checkin_by @@ -12,7 +12,8 @@ if (@booking) end @total_amount = 0.00 @total_tax = 0.00 - + + @booking_orders = BookingOrder.where("booking_id = #{@booking.booking_id}").all; if @booking.booking_orders order_items = [] @booking.booking_orders.each do |bo| diff --git a/app/views/crm/customers/_form.html.erb b/app/views/crm/customers/_form.html.erb index c5adac88..7c37a2fe 100644 --- a/app/views/crm/customers/_form.html.erb +++ b/app/views/crm/customers/_form.html.erb @@ -1,4 +1,5 @@ -<%= simple_form_for(@crm_customer) do |f| %> + +<%= simple_form_for([:crm,@crm_customer]) do |f| %> <%= f.error_notification %>
<%= qid.customer_name %>
-<%= qid.id %>
+<%= qid.assigned_order_item_id %>
<%= qid.customer_name %>
-<%= qid.id %>
+<%= qid.assigned_order_item_id %>