diff --git a/app/controllers/crm/customers_controller.rb b/app/controllers/crm/customers_controller.rb
index 70f5a617..a64d7af4 100644
--- a/app/controllers/crm/customers_controller.rb
+++ b/app/controllers/crm/customers_controller.rb
@@ -39,7 +39,9 @@ class Crm::CustomersController < BaseCrmController
@membership_types = Lookup.collection_of("member_group_type")
- @taxes = TaxProfile.where(:group_type => 'cashier')
+ # @taxes = TaxProfile.where(:group_type => 'cashier')
+ @taxes = TaxProfile.unscoped.select("id, (CONCAT(name,'(',(SELECT name FROM lookups WHERE lookup_type='tax_profiles' AND value=group_type),')')) as name")
+ .order("group_type ASC,order_by ASC")
@filter = filter
diff --git a/app/controllers/origami/customers_controller.rb b/app/controllers/origami/customers_controller.rb
index 8e002532..0eee0400 100644
--- a/app/controllers/origami/customers_controller.rb
+++ b/app/controllers/origami/customers_controller.rb
@@ -87,7 +87,9 @@ class Origami::CustomersController < BaseOrigamiController
@crm_customer = Customer.new
@count_customer = Customer.count_customer
- @taxes = TaxProfile.where(:group_type => 'cashier')
+ # @taxes = TaxProfile.where(:group_type => 'cashier')
+ @taxes = TaxProfile.unscoped.select("id, (CONCAT(name,'(',(SELECT name FROM lookups WHERE lookup_type='tax_profiles' AND value=group_type),')')) as name")
+ .order("group_type ASC,order_by ASC")
# if flash["errors"]
# @crm_customer.valid?
# end
diff --git a/app/controllers/origami/request_bills_controller.rb b/app/controllers/origami/request_bills_controller.rb
index 961fc855..58aa978d 100755
--- a/app/controllers/origami/request_bills_controller.rb
+++ b/app/controllers/origami/request_bills_controller.rb
@@ -12,76 +12,82 @@ class Origami::RequestBillsController < ApplicationController
sale_order=SaleOrder.new
if !ShiftSale.current_shift.nil?
- order_id = params[:id] # order_id
- bk_order = BookingOrder.find_by_order_id(order_id)
- order = Order.find(order_id)
- check_booking = Booking.find_by_booking_id(bk_order.booking_id)
- if check_booking.dining_facility_id.to_i > 0
- table = DiningFacility.find(check_booking.dining_facility_id)
- else
- table = nil
- end
+ tax_profiles = TaxProfile.unscoped.where("group_type='cashier'").pluck(:id)
+ customers = Customer.find('CUS-000000000002')
+
+ puts "data => "
+ puts tax_profiles.to_json
+ puts customers.tax_profiles.to_json
+ # order_id = params[:id] # order_id
+ # bk_order = BookingOrder.find_by_order_id(order_id)
+ # order = Order.find(order_id)
+ # check_booking = Booking.find_by_booking_id(bk_order.booking_id)
+ # if check_booking.dining_facility_id.to_i > 0
+ # table = DiningFacility.find(check_booking.dining_facility_id)
+ # else
+ # table = nil
+ # end
- if check_booking.sale_id.nil?
- # Create Sale if it doesn't exist
- @status, @sale_id = @sale.generate_invoice_from_booking(check_booking.id,current_login_employee, current_user, order.source)
- @sale_data = Sale.find_by_sale_id(@sale_id)
- @sale_items = SaleItem.where("sale_id=?",@sale_id)
+ # if check_booking.sale_id.nil?
+ # # Create Sale if it doesn't exist
+ # @status, @sale_id = @sale.generate_invoice_from_booking(check_booking.id,current_login_employee, current_user, order.source)
+ # @sale_data = Sale.find_by_sale_id(@sale_id)
+ # @sale_items = SaleItem.where("sale_id=?",@sale_id)
- # in-duty update
- in_duties = InDuty.where("booking_id=?",bk_order.booking_id)
- if !in_duties.empty?
- in_duties.each do |in_duty|
- induty = InDuty.find(in_duty.id)
- induty.sale_id = @sale_id
- induty.save
- end
- end
- else
- @sale_data = Sale.find_by_sale_id(check_booking.sale_id)
- @sale_items = SaleItem.where("sale_id=?",@sale_data.sale_id)
- end
+ # # in-duty update
+ # in_duties = InDuty.where("booking_id=?",bk_order.booking_id)
+ # if !in_duties.empty?
+ # in_duties.each do |in_duty|
+ # induty = InDuty.find(in_duty.id)
+ # induty.sale_id = @sale_id
+ # induty.save
+ # end
+ # end
+ # else
+ # @sale_data = Sale.find_by_sale_id(check_booking.sale_id)
+ # @sale_items = SaleItem.where("sale_id=?",@sale_data.sale_id)
+ # end
- # Bind shift sale id to sale
- # @sale_data.shift_sale_id = shift.id
- # @sale_data.save
+ # # Bind shift sale id to sale
+ # # @sale_data.shift_sale_id = shift.id
+ # # @sale_data.save
- action_by = current_user.name
- type = "REQUEST_BILL"
+ # action_by = current_user.name
+ # type = "REQUEST_BILL"
- remark = "Request bill Receipt No #{@sale_data.receipt_no}"
- sale_audit = SaleAudit.record_audit_sale(@sale_data.sale_id,remark,action_by,type )
+ # remark = "Request bill Receipt No #{@sale_data.receipt_no}"
+ # sale_audit = SaleAudit.record_audit_sale(@sale_data.sale_id,remark,action_by,type )
- # Promotion Activation
- Promotion.promo_activate(@sale)
+ # # Promotion Activation
+ # Promotion.promo_activate(@sale)
- #bill channel
- if ENV["SERVER_MODE"] == 'cloud'
- from = request.subdomain + "." + request.domain
- else
- from = ""
- end
+ # #bill channel
+ # if ENV["SERVER_MODE"] == 'cloud'
+ # from = request.subdomain + "." + request.domain
+ # else
+ # from = ""
+ # end
- ActionCable.server.broadcast "bill_channel",table: table, from: from
- if order.source == "quick_service"
- result = {:status=> @status, :data => @sale.sale_id }
- render :json => result.to_json
- else
+ # ActionCable.server.broadcast "bill_channel",table: table, from: from
+ # if order.source == "quick_service"
+ # result = {:status=> @status, :data => @sale.sale_id }
+ # render :json => result.to_json
+ # else
- if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
+ # if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
- printer = PrintSetting.find_by_unique_code("CheckInOutPdf")
- unique_code = "CheckInOutPdf"
- booking = Booking.find_by_booking_id(bk_order.booking_id)
+ # printer = PrintSetting.find_by_unique_code("CheckInOutPdf")
+ # unique_code = "CheckInOutPdf"
+ # booking = Booking.find_by_booking_id(bk_order.booking_id)
- # print when complete click
- order_queue_printer = Printer::OrderQueuePrinter.new(printer)
+ # # print when complete click
+ # order_queue_printer = Printer::OrderQueuePrinter.new(printer)
- if !printer.nil?
- order_queue_printer.print_check_in_out(printer, booking, table)
- end
- end
- end
+ # if !printer.nil?
+ # order_queue_printer.print_check_in_out(printer, booking, table)
+ # end
+ # end
+ # end
else
@status = false
@error_message = "No Current Open Shift for This Employee"
diff --git a/app/controllers/settings/tax_profiles_controller.rb b/app/controllers/settings/tax_profiles_controller.rb
index 75e4343e..7357e21d 100755
--- a/app/controllers/settings/tax_profiles_controller.rb
+++ b/app/controllers/settings/tax_profiles_controller.rb
@@ -76,9 +76,15 @@ class Settings::TaxProfilesController < ApplicationController
# DELETE /settings/tax_profiles/1
# DELETE /settings/tax_profiles/1.json
def destroy
- @settings_tax_profile.destroy
- flash[:notice] = 'Tax profile was successfully destroyed.'
- render :json => {:status=> "Success", :url => settings_tax_profiles_url }.to_json
+ customers = Customer.where("tax_profiles LIKE '%#{@settings_tax_profile.id}%'")
+ if customers.nil? || customers.empty?
+ @settings_tax_profile.destroy
+ flash[:notice] = 'Tax profile was successfully destroyed.'
+ render :json => {:status=> "Success", :url => settings_tax_profiles_url }.to_json
+ else
+ flash[:error] = 'Tax profile could not destroy! This record is using in somewhere.'
+ render :json => {:status=> "Error", :url => settings_tax_profiles_url }.to_json
+ end
# respond_to do |format|
# format.html { redirect_to settings_tax_profiles_url, notice: 'Tax profile was successfully destroyed.' }
# format.json { head :no_content }
diff --git a/app/models/sale.rb b/app/models/sale.rb
index 63189759..1504f947 100644
--- a/app/models/sale.rb
+++ b/app/models/sale.rb
@@ -1498,7 +1498,7 @@ end
else
query = query.where('sale_status = "completed" and DATE_FORMAT(CONVERT_TZ(receipt_date,"+00:00","+06:30"),"%Y-%m-%d") between ? and ?',from,to)
end
- query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', 'SYSTEM'), '%I %p')")
+ query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', '+06:30'), '%I %p')")
.order('receipt_date')
else
if current_user.role == 'administrator' || current_user.role == 'manager' || current_user.role == 'account' || current_user.role == 'supervisor'
@@ -1508,7 +1508,7 @@ end
else
query = query.where('sale_status = "completed" and DATE_FORMAT(CONVERT_TZ(receipt_date,"+00:00","+06:30"),"%Y-%m-%d") between ? and ?',from,to)
end
- query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', 'SYSTEM'), '%I %p')")
+ query = query.group("date_format(CONVERT_TZ(receipt_date,'+00:00', '+06:30'), '%I %p')")
.order('receipt_date')
else
shift = ShiftSale.current_open_shift(current_user.id)
diff --git a/app/views/origami/payments/show.html.erb b/app/views/origami/payments/show.html.erb
index 6cb85113..195719bd 100755
--- a/app/views/origami/payments/show.html.erb
+++ b/app/views/origami/payments/show.html.erb
@@ -401,14 +401,14 @@
<% if current_login_employee.role == "cashier" %>
- <% if @other_payment < 0 && @sale_payment.nil? %>
+ <% if @other_payment <= 0 && @sale_payment.nil? %>
<%if @sale_data.total_discount == 0 %>
FOC
<% end %>
<%end %>
<% if @sale_payment.nil? %>
Void
- <% if @other_payment < 0 %>
+ <% if @other_payment <= 0 %>
<%if @sale_data.total_discount == 0 %>
Waste
Spoile
@@ -416,14 +416,14 @@
<% end %>
<% end %>
<% else %>
- <% if @other_payment < 0 && @sale_payment.nil?%>
+ <% if @other_payment <= 0 && @sale_payment.nil?%>
<%if @sale_data.total_discount == 0 %>
<%end %>
<%end %>
<% if @sale_payment.nil? %>
- <% if @other_payment < 0 %>
+ <% if @other_payment <= 0 %>
<%if @sale_data.total_discount == 0 %>