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 %>