Merge branch 'adminbsb_ui_changes' of bitbucket.org:code2lab/sxrestaurant

This commit is contained in:
phyusin
2018-10-16 15:41:26 +06:30
8 changed files with 151 additions and 16 deletions

View File

@@ -20,26 +20,35 @@ class Api::AuthenticateController < Api::ApiController
def create_cashier
emp_id = params[:emp_id]
password = params[:password]
@terminals = []
if emp_id && password
@employee = Employee.login(emp_id, password)
if @employee && @employee.role == "cashier"
if @employee.is_active
shift = ShiftSale.current_open_shift(@employee.id)
if !shift.nil?
render json: JSON.generate({:status => true, :session_token => @employee.token_session, :name => @employee.name, :role => @employee.role})
@status = true
# render json: JSON.generate({:status => true, :session_token => @employee.token_session, :name => @employee.name, :role => @employee.role})
else
terminals = CashierTerminal.available.is_active
render json: JSON.generate({:status => true, :session_token => @employee.token_session, :name => @employee.name, :role => @employee.role, :error_message => "No current shift open for this employee!", :terminals => terminals.to_json})
@status = true
@terminals = CashierTerminal.available.is_active
@error_message = "No current shift open for this employee!"
# render json: JSON.generate({:status => true, :session_token => @employee.token_session, :name => @employee.name, :role => @employee.role, :error_message => "No current shift open for this employee!", :terminals => terminals.to_json})
end
else
render json: JSON.generate({:status => false, :error_message => "This employee is not active!"})
@status = false
@error_message = "This employee is not active!"
# render json: JSON.generate({:status => false, :error_message => "This employee is not active!"})
end
else
render json: JSON.generate({:status => false, :error_message => "Bad Emp_ID or Password."})
@status = false
@error_message = "Bad Emp_ID or Password!"
# render json: JSON.generate({:status => false, :error_message => "Bad Emp_ID or Password."})
end
else
render json: JSON.generate({:status => false, :error_message => "Input Parameters missing."})
@status = false
@error_message = "Input Parameters missing!"
# render json: JSON.generate({:status => false, :error_message => "Input Parameters missing."})
end
end

View File

@@ -124,9 +124,6 @@ class Api::BillController < Api::ApiController
end
def request_bill
puts "order items"
puts params[:order_items]
if params[:order_items]
is_extra_time = false
extra_time = ''
@@ -178,15 +175,22 @@ class Api::BillController < Api::ApiController
end
end
# Promotion.promo_activate(@sale)
render json: JSON.generate({:status => true, :sale_id => @sale_id, :sale_data => @sale_data.to_json})
@status = true
# render json: JSON.generate({:status => true, :sale_id => @sale_id, :sale_data => @sale_data.to_json })
else
render json: JSON.generate({:status => false, :error_message => "No Current Open Shift!"})
@status = false
@error_message = "No Current Open Shift!"
# render json: JSON.generate({:status => false, :error_message => "No Current Open Shift!"})
end
else
render json: JSON.generate({:status => false, :error_message => "Create order failed, some error occurred!"})
@status = false
@error_message = "Create order failed, some error occurred!"
# render json: JSON.generate({:status => false, :error_message => "Create order failed, some error occurred!"})
end
else
render json: JSON.generate({:status => false, :error_message => "Parameters missing!"})
@status = false
@error_message = "Parameters missing!"
# render json: JSON.generate({:status => false, :error_message => "Parameters missing!"})
end
end

View File

@@ -17,9 +17,13 @@ class Api::ShiftsController < Api::ApiController
@shift_sale = ShiftSale.new
if @shift_sale.create(opening_balance,cashier_terminal_param, current_login_employee)
render json: JSON.generate({:status => true, :message => "Cashier Terminal successfully signin.", :shift => @shift_sale.to_json})
@status = true
@message = "Cashier Terminal successfully signin."
# render json: JSON.generate({:status => true, :message => "Cashier Terminal successfully signin.", :shift => ActiveSupport::JSON.encode(@shift_sale)})
else
render json: JSON.generate({:status => false, :error_message => "Some error occurred!"})
@status = false
@error_message = "Some error occurred!"
# render json: JSON.generate({:status => false, :error_message => "Some error occurred!"})
end
end
end

View File

@@ -0,0 +1,42 @@
class Api::VoidController < Api::ApiController
# skip_before_action :authenticate
def overall_void
sale_id = params[:sale_id]
order_source = "emenu" #tax profile source
if Sale.exists?(sale_id)
sale = Sale.find_by_sale_id(sale_id)
if sale.discount_type == "member_discount"
sale.update_attributes(total_discount: 0)
sale.compute_by_sale_items(sale_id, sale.sale_items,0,order_source)
end
# update count for shift sale
if(sale.sale_status == "completed")
if sale.shift_sale_id != nil
shift = ShiftSale.find(sale.shift_sale_id)
shift.calculate(sale_id, "void")
end
else
# void before sale payment complete
if sale.shift_sale_id != nil
shift = ShiftSale.find(sale.shift_sale_id)
shift.total_void = shift.total_void + sale.grand_total
shift.save
end
end
sale.rounding_adjustment = 0.0
sale.payment_status = 'void'
sale.sale_status = 'void'
sale.save
# remark = "Void Sale ID #{sale_id} | Receipt No #{sale.receipt_no} | Receipt No #{sale.receipt_no} | Table ->#{table.name}"
sale_audit = SaleAudit.record_audit_for_edit(sale_id,current_login_employee.name, current_login_employee.name,nil,"SALEVOID" )
render json: JSON.generate({:status => true, :message => "Void successfully."})
else
render json: JSON.generate({:status => false, :error_message => "There is no sale for '#{params[:sale_id]}'!"})
end
end
end