merge with master
This commit is contained in:
@@ -14,9 +14,9 @@ class Customer < ApplicationRecord
|
||||
|
||||
def self.get_member_group
|
||||
|
||||
membership = MembershipSetting.find_by_membership_type("paypar_url")
|
||||
membership = MembershipSetting.find_by_membership_type("paypar_url")
|
||||
memberaction = MembershipAction.find_by_membership_type("get_all_member_group")
|
||||
app_token = membership.auth_token.to_s
|
||||
app_token = membership.auth_token.to_s
|
||||
|
||||
url = membership.gateway_url.to_s + memberaction.gateway_url.to_s
|
||||
response = HTTParty.get(url,
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
class DiningQueue < ApplicationRecord
|
||||
|
||||
end
|
||||
|
||||
@@ -17,6 +17,10 @@ class Lookup < ApplicationRecord
|
||||
"Gateway Communication Type" => "gateway_communication_type"}
|
||||
end
|
||||
|
||||
# def self.get_by_type( lookup_type)
|
||||
# Lookup.select("value, name").where("lookup_type = ?", lookup_type ).order("name asc").map { |r| [r.name, r.value] }
|
||||
# end
|
||||
|
||||
def self.collection_of(type)
|
||||
Lookup.select("name, value").where("lookup_type" => type ).map { |l| [l.name, l.value] }
|
||||
|
||||
|
||||
@@ -33,10 +33,7 @@ class Order < ApplicationRecord
|
||||
table.status = "occupied"
|
||||
table.save
|
||||
else
|
||||
puts "b"
|
||||
|
||||
booking = Booking.find(self.booking_id)
|
||||
|
||||
booking = Booking.find(self.booking_id)
|
||||
end
|
||||
|
||||
booking.save!
|
||||
@@ -226,26 +223,28 @@ class Order < ApplicationRecord
|
||||
|
||||
#Origami: Cashier : to view booking order Table
|
||||
def self.get_booking_order_table
|
||||
booking_orders = Booking.select("sales.receipt_no,orders.status as order_status,orders.customer_id as customer_id,
|
||||
booking_orders = Booking.select("sales.receipt_no,orders.status as order_status,
|
||||
orders.order_id as order_id,sales.customer_id as sale_customer_id,orders.customer_id as order_customer_id,
|
||||
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_id")
|
||||
.joins("left join sales on sales.sale_id = bookings.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,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.status")
|
||||
.group("bookings.booking_id,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.status,orders.order_id")
|
||||
|
||||
end
|
||||
|
||||
#Origami: Cashier : to view booking order Table
|
||||
def self.get_completed_order
|
||||
completed_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")
|
||||
completed_orders = Booking.select("sales.receipt_no,orders.status as order_status,orders.order_id,
|
||||
bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name,sales.customer_id as sale_customer_id,orders.customer_id as order_customer_id")
|
||||
.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_id")
|
||||
.joins("left join sales on sales.sale_id = bookings.sale_id")
|
||||
.where("sales.sale_status='completed'")
|
||||
<<<<<<< HEAD
|
||||
.group("bookings.booking_id,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.status")
|
||||
end
|
||||
|
||||
@@ -257,14 +256,15 @@ class Order < ApplicationRecord
|
||||
.joins("left join dining_facilities on dining_facilities.id = bookings.dining_facility_id")
|
||||
.joins("left join orders on orders.order_id = booking_orders.order_id")
|
||||
.joins("left join sales on sales.sale_id = bookings.sale_id")
|
||||
.where("sales.sale_status<>'completed' and booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::TABLE_TYPE,true)
|
||||
.group("bookings.booking_id,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.status")
|
||||
|
||||
.where("sales.sale_status<>'completed' and booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::TABLE_TYPE,true)
|
||||
.group("bookings.booking_id,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.status,orders.customer_id,sales.customer_id,orders.order_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,orders.customer_id as customer_id,
|
||||
booking_rooms = Booking.select("sales.receipt_no,orders.status as order_status,
|
||||
orders.order_id as order_id,sales.customer_id as sale_customer_id,orders.customer_id as order_customer_id,
|
||||
bookings.booking_id,orders.customer_id as customer_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")
|
||||
@@ -273,7 +273,6 @@ class Order < ApplicationRecord
|
||||
.joins("left join sales on sales.sale_id = sale_orders.sale_id")
|
||||
.where("sales.sale_status<>'completed' and sales.sale_status<>'complete' and booking_orders.order_id IS NOT NULL and dining_facilities.type=? and dining_facilities.is_active=?",DiningFacility::ROOM_TYPE,true)
|
||||
.group("bookings.booking_id,sales.receipt_no,orders.status,sales.sale_id,dining_facilities.name,orders.customer_id")
|
||||
|
||||
end
|
||||
|
||||
#Origami: Cashier : to view order type Room
|
||||
@@ -294,7 +293,8 @@ class Order < ApplicationRecord
|
||||
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,
|
||||
orders.customer_id as customer_id,bookings.booking_id,sales.sale_id as sale_id,dining_facilities.name as table_name")
|
||||
orders.order_id as order_id,sales.customer_id as sale_customer_id,orders.customer_id as order_customer_id
|
||||
,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
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
class SaleItem < ApplicationRecord
|
||||
self.primary_key = "sale_item_id"
|
||||
|
||||
|
||||
#primary key - need to be unique generated for multiple shops
|
||||
before_create :generate_custom_id
|
||||
|
||||
@@ -12,17 +12,17 @@ class SaleItem < ApplicationRecord
|
||||
|
||||
|
||||
def self.get_order_items_details(sale_id)
|
||||
order_details = SaleItem.select("sales.total_tax as tax_amount, sales.grand_total as grand_total_amount , sales.total_discount as discount_amount,DATE_FORMAT(sales.receipt_date,'%Y-%m-%d %h:%m') as receipt_date,
|
||||
order_details = SaleItem.select("sales.total_tax as tax_amount, sales.grand_total as grand_total_amount , sales.total_discount as discount_amount,sales.receipt_date 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_id)
|
||||
|
||||
# sale_orders = SaleOrder.where("sale_id=?",sale_id)
|
||||
# if sale_orders
|
||||
# sale_orders.each do |sale_order|
|
||||
# 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.id = sale_items.sale_id")
|
||||
# .where("sale_items.sale_id=?",sale_order.sale_id)
|
||||
# .where("sale_items.sale_id=?",sale_order.sale_id)
|
||||
# return order_details
|
||||
# end
|
||||
# else
|
||||
@@ -36,6 +36,7 @@ class SaleItem < ApplicationRecord
|
||||
|
||||
sale_items.each do |si|
|
||||
food_price, beverage_price = self.get_price(si.sale_item_id)
|
||||
|
||||
food_prices = food_prices + food_price
|
||||
beverage_prices = beverage_prices + beverage_price
|
||||
end
|
||||
@@ -57,7 +58,7 @@ class SaleItem < ApplicationRecord
|
||||
|
||||
return food_price, beverage_price
|
||||
end
|
||||
|
||||
|
||||
private
|
||||
def generate_custom_id
|
||||
self.sale_item_id = SeedGenerator.generate_id(self.class.name, "SLI")
|
||||
|
||||
@@ -60,15 +60,15 @@ class SalePayment < ApplicationRecord
|
||||
#record an payment in sale-audit
|
||||
remark = "No outstanding Amount - Grand Total [#{invoice.grand_total}] | Due [#{amount_due}] | Paid [#{invoice.amount_received}]"
|
||||
sale_audit = SaleAudit.record_payment(invoice.id, remark,action_by)
|
||||
|
||||
|
||||
return false, "No outstanding Amount"
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
def self.get_paypar_account(url,token,membership_id,campaign_type_id)
|
||||
def self.get_paypar_account(url,token,membership_id,campaign_type_id,merchant_uid)
|
||||
response = HTTParty.get(url,
|
||||
:body => { app_token: token,membership_id:membership_id,campaign_type_id:campaign_type_id}.to_json,
|
||||
:body => { app_token: token,membership_id:membership_id,campaign_type_id:campaign_type_id,merchant_uid:merchant_uid}.to_json,
|
||||
:headers => {
|
||||
'Content-Type' => 'application/json',
|
||||
'Accept' => 'application/json'
|
||||
@@ -82,9 +82,10 @@ class SalePayment < ApplicationRecord
|
||||
membership_actions_data = MembershipAction.find_by_membership_type("redeem");
|
||||
if !membership_actions_data.nil?
|
||||
url = paypar_url.to_s + membership_actions_data.gateway_url.to_s
|
||||
campaign_type_id = membership_actions_data.additional_parameter["campaign_type_id"]
|
||||
merchant_uid = membership_actions_data.merchant_account_id
|
||||
campaign_type_id = membership_actions_data.additional_parameter["campaign_type_id"]
|
||||
response = HTTParty.post(url,
|
||||
:body => { generic_customer_id:membership_id,total_amount:received_amount,receipet_no:sale_id,campaign_type_id:campaign_type_id,account_no:""}.to_json,
|
||||
:body => { generic_customer_id:membership_id,redeem_amount:received_amount,receipet_no:sale_id,campaign_type_id:campaign_type_id,account_no:"",merchant_uid:merchant_uid}.to_json,
|
||||
:headers => {
|
||||
'Content-Type' => 'application/json',
|
||||
'Accept' => 'application/json'
|
||||
@@ -215,12 +216,23 @@ class SalePayment < ApplicationRecord
|
||||
self.sale.payment_status = "paid"
|
||||
self.sale.sale_status = "completed"
|
||||
self.sale.save!
|
||||
#TODO: table status
|
||||
table_update_status(sObj)
|
||||
rebat()
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
def table_update_status(sale_obj)
|
||||
booking = Booking.find_by_sale_id(sale_obj.id)
|
||||
if booking
|
||||
table = DiningFacility.find(booking.dining_facility_id)
|
||||
if table
|
||||
table.status = "available"
|
||||
table.save
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def rebat
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user