add junction pay
This commit is contained in:
58
app/controllers/origami/junction_pay_controller.rb
Normal file
58
app/controllers/origami/junction_pay_controller.rb
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
class Origami::JunctionPayController < BaseOrigamiController
|
||||||
|
|
||||||
|
def index
|
||||||
|
@sale_id = params[:sale_id]
|
||||||
|
@cashier_type = params[:type]
|
||||||
|
# limit jcb_amount
|
||||||
|
sale_data = Sale.find_by_sale_id(@sale_id)
|
||||||
|
total = sale_data.grand_total
|
||||||
|
@junction_pay_count = 0
|
||||||
|
others = 0
|
||||||
|
@cashier_id = current_user.emp_id
|
||||||
|
|
||||||
|
@payment_method_setting_nav = PaymentMethodSetting.all
|
||||||
|
@shop = Shop::ShopDetail
|
||||||
|
if @shop.is_rounding_adj
|
||||||
|
new_total = Sale.get_rounding_adjustment(sale_data.grand_total)
|
||||||
|
else
|
||||||
|
new_total = sale_data.grand_total
|
||||||
|
end
|
||||||
|
@rounding_adj = new_total-sale_data.grand_total
|
||||||
|
|
||||||
|
sale_data.sale_payments.each do |sale_payment|
|
||||||
|
if sale_payment.payment_method == "JunctionPay"
|
||||||
|
@junction_pay_count = @junction_pay_count + sale_payment.payment_amount
|
||||||
|
else
|
||||||
|
others = others + sale_payment.payment_amount
|
||||||
|
end
|
||||||
|
end
|
||||||
|
@can_junction_pay = total - @junction_pay_count - others
|
||||||
|
|
||||||
|
@member_discount = MembershipSetting.find_by_discount(1)
|
||||||
|
@sub_total = sale_data.total_amount
|
||||||
|
@membership_id = sale_data.customer.membership_id
|
||||||
|
#for bank integration
|
||||||
|
@receipt_no = sale_data.receipt_no
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
cash = params[:amount]
|
||||||
|
sale_id = params[:sale_id]
|
||||||
|
if(Sale.exists?(sale_id))
|
||||||
|
saleObj = Sale.find(sale_id)
|
||||||
|
shop_details = Shop::ShopDetail
|
||||||
|
|
||||||
|
# rounding adjustment
|
||||||
|
# if shop_details.is_rounding_adj
|
||||||
|
# new_total = Sale.get_rounding_adjustment(saleObj.grand_total)
|
||||||
|
# rounding_adj = new_total-saleObj.grand_total
|
||||||
|
# saleObj.update_attributes(grand_total: new_total,old_grand_total: saleObj.grand_total,rounding_adjustment:rounding_adj)
|
||||||
|
# end
|
||||||
|
|
||||||
|
# saleObj = Sale.find(sale_id)
|
||||||
|
sale_payment = SalePayment.new
|
||||||
|
@status, @sale = sale_payment.process_payment(saleObj, @user, cash, "JunctionPay")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
@@ -27,7 +27,7 @@ class Origami::PaymentsController < BaseOrigamiController
|
|||||||
cashier_terminal = CashierTerminal.find(shift.cashier_terminal_id)
|
cashier_terminal = CashierTerminal.find(shift.cashier_terminal_id)
|
||||||
end
|
end
|
||||||
|
|
||||||
if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
# if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
||||||
receipt_bill_a5_pdf = Lookup.collection_of("print_settings") #print_settings with name:ReceiptBillA5Pdf
|
receipt_bill_a5_pdf = Lookup.collection_of("print_settings") #print_settings with name:ReceiptBillA5Pdf
|
||||||
# Print for First Bill to Customer
|
# Print for First Bill to Customer
|
||||||
unique_code = "ReceiptBillPdf"
|
unique_code = "ReceiptBillPdf"
|
||||||
@@ -89,7 +89,7 @@ class Origami::PaymentsController < BaseOrigamiController
|
|||||||
|
|
||||||
# Mobile Print
|
# Mobile Print
|
||||||
render :json => result.to_json
|
render :json => result.to_json
|
||||||
end
|
# end
|
||||||
end
|
end
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@@ -138,7 +138,7 @@ class Origami::PaymentsController < BaseOrigamiController
|
|||||||
end
|
end
|
||||||
|
|
||||||
# For Print
|
# For Print
|
||||||
if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
# if ENV["SERVER_MODE"] != "cloud" #no print in cloud server
|
||||||
receipt_bill_a5_pdf = Lookup.collection_of("print_settings") #print_settings with name:ReceiptBillA5Pdf
|
receipt_bill_a5_pdf = Lookup.collection_of("print_settings") #print_settings with name:ReceiptBillA5Pdf
|
||||||
unique_code = "ReceiptBillPdf"
|
unique_code = "ReceiptBillPdf"
|
||||||
if !receipt_bill_a5_pdf.empty?
|
if !receipt_bill_a5_pdf.empty?
|
||||||
@@ -202,8 +202,8 @@ class Origami::PaymentsController < BaseOrigamiController
|
|||||||
booking.booking_orders.each do |order|
|
booking.booking_orders.each do |order|
|
||||||
Order.pay_process_order_queue(order.order_id,table_id)
|
Order.pay_process_order_queue(order.order_id,table_id)
|
||||||
end
|
end
|
||||||
|
# end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -221,6 +221,7 @@ class Origami::PaymentsController < BaseOrigamiController
|
|||||||
@jcbcount= 0.0
|
@jcbcount= 0.0
|
||||||
@mastercount = 0.0
|
@mastercount = 0.0
|
||||||
@unionpaycount = 0.0
|
@unionpaycount = 0.0
|
||||||
|
@junctionpaycount = 0.0
|
||||||
@credit = 0.0
|
@credit = 0.0
|
||||||
@sale_data = Sale.find_by_sale_id(sale_id)
|
@sale_data = Sale.find_by_sale_id(sale_id)
|
||||||
@balance = 0.00
|
@balance = 0.00
|
||||||
@@ -333,6 +334,8 @@ class Origami::PaymentsController < BaseOrigamiController
|
|||||||
@mastercount += spay.payment_amount
|
@mastercount += spay.payment_amount
|
||||||
elsif spay.payment_method == "unionpay"
|
elsif spay.payment_method == "unionpay"
|
||||||
@unionpaycount += spay.payment_amount
|
@unionpaycount += spay.payment_amount
|
||||||
|
elsif spay.payment_method == "junctionpay"
|
||||||
|
@unionpaycount += spay.payment_amount
|
||||||
elsif spay.payment_method == "creditnote"
|
elsif spay.payment_method == "creditnote"
|
||||||
@credit += spay.payment_amount
|
@credit += spay.payment_amount
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -48,6 +48,8 @@ class SalePayment < ApplicationRecord
|
|||||||
payment_status = paypar_payment
|
payment_status = paypar_payment
|
||||||
when "foc"
|
when "foc"
|
||||||
payment_status = foc_payment
|
payment_status = foc_payment
|
||||||
|
when "JunctionPay"
|
||||||
|
payment_status = junction_pay_payment
|
||||||
else
|
else
|
||||||
puts "it was something else"
|
puts "it was something else"
|
||||||
end
|
end
|
||||||
@@ -297,6 +299,22 @@ class SalePayment < ApplicationRecord
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def junction_pay_payment
|
||||||
|
payment_status = false
|
||||||
|
|
||||||
|
#Next time - validate if the vochure number is valid - within
|
||||||
|
self.payment_method = "JunctionPay"
|
||||||
|
self.payment_amount = self.received_amount
|
||||||
|
self.payment_reference = self.voucher_no
|
||||||
|
self.outstanding_amount = self.sale.grand_total- self.received_amount
|
||||||
|
self.payment_status = "paid"
|
||||||
|
payment_method = self.save!
|
||||||
|
sale_update_payment_status(self.received_amount)
|
||||||
|
|
||||||
|
return payment_status
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
def sale_update_payment_status(paid_amount,check_foc = false)
|
def sale_update_payment_status(paid_amount,check_foc = false)
|
||||||
#update amount_outstanding
|
#update amount_outstanding
|
||||||
self.sale.amount_received = self.sale.amount_received.to_f + paid_amount.to_f
|
self.sale.amount_received = self.sale.amount_received.to_f + paid_amount.to_f
|
||||||
|
|||||||
@@ -691,7 +691,7 @@
|
|||||||
createReceiptNoInFirstBillData(receipt_no,"");
|
createReceiptNoInFirstBillData(receipt_no,"");
|
||||||
|
|
||||||
// console.log(result);
|
// console.log(result);
|
||||||
code2lab.printBill(result.filepath, result.printer_model, result.printer_url);
|
// code2lab.printBill(result.filepath, result.printer_model, result.printer_url);
|
||||||
location.reload();
|
location.reload();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
5
app/views/origami/junction_pay/create.json.jbuilder
Executable file
5
app/views/origami/junction_pay/create.json.jbuilder
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
if(@status)
|
||||||
|
json.status @status
|
||||||
|
else
|
||||||
|
json.status false
|
||||||
|
end
|
||||||
259
app/views/origami/junction_pay/index.html.erb
Executable file
259
app/views/origami/junction_pay/index.html.erb
Executable file
@@ -0,0 +1,259 @@
|
|||||||
|
<div class="container-fluid">
|
||||||
|
<div id="loading_wrapper" style="display:none;">
|
||||||
|
<div id="loading"></div>
|
||||||
|
</div>
|
||||||
|
<!-- <div class="page-header">
|
||||||
|
<ol class="breadcrumb">
|
||||||
|
<li class="breadcrumb-item"><a href="<%=origami_root_path %>"><%= t :home %></a></li>
|
||||||
|
<li class="breadcrumb-item"><a href="/origami/sale/<%=@sale_id %>/payment"><%= t("views.btn.payment") %></a></li>
|
||||||
|
<li class="breadcrumb-item active"><%= t("views.btn.jcb") %></li>
|
||||||
|
<span class="float-right">
|
||||||
|
<%= link_to t('.back',:default => t("views.btn.back")),'/origami/sale/'+@sale_id+'/payment/others_payment'%>
|
||||||
|
</span>
|
||||||
|
</ol>
|
||||||
|
</div> -->
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-5 col-md-5 col-sm-3">
|
||||||
|
<span class="hidden" id="membership_id"><%= @membership_id%></span>
|
||||||
|
<span class="hidden" id="member_discount"><%= @member_discount%></span>
|
||||||
|
<span class="hidden" id="sub-total"><%= @sub_total%></span>
|
||||||
|
<div class="card m-l-10 m-t-10" style="padding:0px 20px;">
|
||||||
|
<div class="rebate-form">
|
||||||
|
<div class="row">
|
||||||
|
<div class="form-group col-lg-12 col-md-12 col-sm-12">
|
||||||
|
<label for="com_port_name">Select Device</label>
|
||||||
|
<select id="com_port_name" name="com_port_name" class="form-control select col-lg-7 col-md-7 col-sm-7">
|
||||||
|
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="form-group col-lg-12 col-md-12 col-sm-12">
|
||||||
|
<label>You can pay up to </label>
|
||||||
|
<%@can_junction_pay = @can_junction_pay +@rounding_adj%>
|
||||||
|
<input type="text" name="validamount" id="validamount" class="form-control col-lg-7 col-md-7 col-sm-7" readonly="" value="<%=@can_junction_pay %>" data-member-value="">
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
<% if @jcbcount != 0 %>
|
||||||
|
<div class="row">
|
||||||
|
<div class="form-group col-lg-12 col-md-12 col-sm-12">
|
||||||
|
<label>Recent junction pay paid amount </label>
|
||||||
|
<input type="text" name="" id="" class="form-control col-lg-7 col-md-7 col-sm-7" readonly="" value="<%=@junction_pay_count %>" data-member-value="">
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
|
<div class="row">
|
||||||
|
<div class="form-group col-lg-12 col-md-12 col-sm-12">
|
||||||
|
<label>Reference Number</label>
|
||||||
|
<input type="text" name="reference_no" id="reference_no" class="form-control col-lg-7 col-md-7 col-sm-7" value="" data-value="<%=@sale_id %>" data-member-value="">
|
||||||
|
<br><span id="reference_no_Err" style="color:red;"></span>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="form-group col-lg-12 col-md-12 col-sm-12">
|
||||||
|
<label>Amount</label>
|
||||||
|
<div id="amount" class="form-control col-lg-7 col-md-7 col-sm-7">0.0</div>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
||||||
|
<div class="m-t-10 p-l-20">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
||||||
|
<div class="row bottom">
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="1" data-type="num">1</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="2" data-type="num">2</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="3" data-type="num">3</div>
|
||||||
|
</div>
|
||||||
|
<div class="row bottom">
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="4" data-type="num">4</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="5" data-type="num">5</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="6" data-type="num">6</div>
|
||||||
|
</div>
|
||||||
|
<div class="row bottom">
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="7" data-type="num">7</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="8" data-type="num">8</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="9" data-type="num">9</div>
|
||||||
|
</div>
|
||||||
|
<div class="row bottom">
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="0" data-type="num">0</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="." data-type="num">.</div>
|
||||||
|
<div class="col-md-4 cashier_number border-left" data-value="00" data-type="num">00</div>
|
||||||
|
</div>
|
||||||
|
<div class="row bottom">
|
||||||
|
<div class="col-md-4 cashier_number green border-left" data-type="nett" >Nett</div>
|
||||||
|
<div class="col-md-4 cashier_number red border-left" data-type="del">Del</div>
|
||||||
|
<div class="col-md-4 cashier_number orange border-left" data-type="clr">Clr</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
||||||
|
<div class="row bottom m-l-5">
|
||||||
|
<div class="cashier_number long border-left" data-value="1000" data-type="add">1000</div>
|
||||||
|
<div class="cashier_number long left" data-value="3000" data-type="add">3000</div>
|
||||||
|
</div>
|
||||||
|
<div class="row bottom m-l-5">
|
||||||
|
<div class="cashier_number long border-left" data-value="5000" data-type="add">5000</div>
|
||||||
|
<div class="cashier_number long left" data-value="10000" data-type="add">10000</div>
|
||||||
|
</div>
|
||||||
|
<div class="row bottom m-l-5">
|
||||||
|
<div class="pay purple left" id="junction_pay">Pay</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-1 col-md-1 col-sm-1">
|
||||||
|
<button type="button" class="btn btn-default btn-block" onclick="window.location.href = '/origami/sale/<%= @sale_id %>/<%= @cashier_type %>/payment/others_payment';"> <i class="material-icons m-t--5">reply</i>Back </button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
var cashier_type = "<%= @cashier_type %>";
|
||||||
|
$(document).ready(function() {
|
||||||
|
var sale_id = "<%= @sale_id %>";
|
||||||
|
var bank_integration = "<%= @bank_integration %>";
|
||||||
|
if(localStorage.getItem("cash") == null || localStorage.getItem("cash") == 'null'){}
|
||||||
|
else {
|
||||||
|
$('#validamount').attr("value",parseFloat("<%= @can_junction_pay %>") - parseFloat(localStorage.getItem("cash")));
|
||||||
|
}
|
||||||
|
|
||||||
|
code2lab.getCommPorts(); //get comportlists from jade
|
||||||
|
});
|
||||||
|
|
||||||
|
// number key pad
|
||||||
|
$(document).on('click', '.cashier_number', function(event){
|
||||||
|
event.stopPropagation();
|
||||||
|
event.preventDefault();
|
||||||
|
if(event.handled !== true) {
|
||||||
|
var original_value;
|
||||||
|
original_value = $('#amount').text();
|
||||||
|
|
||||||
|
var input_value = $(this).attr("data-value");
|
||||||
|
|
||||||
|
var input_type = $(this).attr("data-type");
|
||||||
|
switch (input_type) {
|
||||||
|
case 'num':
|
||||||
|
if (original_value == "0.0"){
|
||||||
|
$('#amount').text(input_value);
|
||||||
|
}else{
|
||||||
|
$('#amount').append(input_value);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'add':
|
||||||
|
var input_value = $(this).attr("data-value");
|
||||||
|
amount = parseInt(input_value) + parseInt(original_value);
|
||||||
|
$('#amount').html(amount);
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 'clr':
|
||||||
|
$('#amount').html("0.0");
|
||||||
|
break;
|
||||||
|
case 'del' :
|
||||||
|
var cash=$('#amount').text();
|
||||||
|
$('#amount').text(cash.substr(0,cash.length-1));
|
||||||
|
break;
|
||||||
|
case 'nett':
|
||||||
|
var remain_amount = $('#validamount').val();
|
||||||
|
$('#amount').text(remain_amount);
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
event.handled = true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
$('#junction_pay').on('click',function(){
|
||||||
|
var amount = $('#amount').text();
|
||||||
|
var reference_no = $('#reference_no').val();
|
||||||
|
var sale_id = "<%= @sale_id %>";
|
||||||
|
var receipt_no = "<%= @receipt_no %>";
|
||||||
|
var cashier_id = "<%= @cashier_id %>";
|
||||||
|
$("#reference_no_Err").html("");
|
||||||
|
if(reference_no.length > 0){
|
||||||
|
if(parseFloat(amount) <= parseFloat($("#validamount").attr("value")) && amount > 0){
|
||||||
|
$(this).off("click");
|
||||||
|
//start member discount 5% by pay card
|
||||||
|
// var sub_total = $('#sub-total').text();
|
||||||
|
// var member_id = $('#membership_id').text();
|
||||||
|
// var member_discount = $('#member_discount').text();
|
||||||
|
// if (member_id && member_discount) {
|
||||||
|
// $.ajax({
|
||||||
|
// type: "POST",
|
||||||
|
// url: "/origami/" + sale_id + "/member_discount",
|
||||||
|
// data: {'sale_id':sale_id, 'sub_total':sub_total,'is_card':true },
|
||||||
|
// success:function(result){
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
//end member discount
|
||||||
|
$("#loading_wrapper").show();
|
||||||
|
var com_port = '/dev/' + $("#com_port_name").val();
|
||||||
|
//alert(cashier_id + amount + com_port);
|
||||||
|
code2lab.reqJunctionPay(true, cashier_id, parseFloat(amount), receipt_no, com_port);
|
||||||
|
|
||||||
|
resJunctionPayUpdate(function(totalBillAmount , finalBillAmt,giftCardAmount,voucherAmount,voucherNumber,receiptNumber){
|
||||||
|
$("#loading_wrapper").hide();
|
||||||
|
$.ajax({type: "POST",
|
||||||
|
url: "/origami/payment/junctionpay",
|
||||||
|
data: "amount="+ totalBillAmount + "&sale_id="+ sale_id,
|
||||||
|
success:function(result){
|
||||||
|
if(result){
|
||||||
|
swal({
|
||||||
|
title: "Information!",
|
||||||
|
text: "Payment Successfully",
|
||||||
|
html: true,
|
||||||
|
closeOnConfirm: false,
|
||||||
|
closeOnCancel: false,
|
||||||
|
allowOutsideClick: false
|
||||||
|
}, function () {
|
||||||
|
window.location.href = '/origami/sale/'+ sale_id +"/"+cashier_type+"/payment";
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
|
// resJunctionPay(function(memberno,transactionNo,finalBillingAmt){
|
||||||
|
// $("#loading_wrapper").hide();
|
||||||
|
// $.ajax({type: "POST",
|
||||||
|
// url: "/origami/payment/"+payment_type,
|
||||||
|
// data: "amount="+ finalBillingAmt + "&sale_id="+ sale_id,
|
||||||
|
// success:function(result){
|
||||||
|
// if(result){
|
||||||
|
// swal({
|
||||||
|
// title: "Information!",
|
||||||
|
// text: "Payment Successfully",
|
||||||
|
// html: true,
|
||||||
|
// closeOnConfirm: false,
|
||||||
|
// closeOnCancel: false,
|
||||||
|
// allowOutsideClick: false
|
||||||
|
// }, function () {
|
||||||
|
// window.location.href = '/origami/sale/'+ sale_id +"/"+cashier_type+"/payment";
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// });
|
||||||
|
|
||||||
|
resError(function(message){
|
||||||
|
$("#loading_wrapper").hide();
|
||||||
|
swal ( "Oops" , message , "error" );
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@@ -265,6 +265,20 @@
|
|||||||
<div class="col-md-4" id="unionpaycount"><%= number_with_precision(0, precision: precision.to_i ) %></div>
|
<div class="col-md-4" id="unionpaycount"><%= number_with_precision(0, precision: precision.to_i ) %></div>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
<!-- Junction Pay -->
|
||||||
|
<% if @junctionpaycount != 0.0 %>
|
||||||
|
<div class="row payment others-color">
|
||||||
|
<div class="col-md-5"></div>
|
||||||
|
<div class="col-md-3">JUNCTION PAY</div>
|
||||||
|
<div class="col-md-4 master is_card" id="junctionpaycount"><%= number_with_precision(@junctionpaycount, precision: precision.to_i ) rescue number_with_precision(0, precision: precision.to_i ) %></div>
|
||||||
|
</div>
|
||||||
|
<% else %>
|
||||||
|
<div class="row hidden">
|
||||||
|
<div class="col-md-5"></div>
|
||||||
|
<div class="col-md-3">JUNCTION PAY</div>
|
||||||
|
<div class="col-md-4" id="junctionpaycount"><%= number_with_precision(0, precision: precision.to_i ) %></div>
|
||||||
|
</div>
|
||||||
|
<% end %>
|
||||||
<div class="row m-l-5 m-r-5">
|
<div class="row m-l-5 m-r-5">
|
||||||
<div class="col-md-8"><strong>Balance</strong></div>
|
<div class="col-md-8"><strong>Balance</strong></div>
|
||||||
<div class="col-md-4"><strong><span id='balance'><%= number_with_precision(@sale_data.grand_total, precision: precision.to_i ) rescue number_with_precision(0, precision: precision.to_i ) %></span></strong></div>
|
<div class="col-md-4"><strong><span id='balance'><%= number_with_precision(@sale_data.grand_total, precision: precision.to_i ) rescue number_with_precision(0, precision: precision.to_i ) %></span></strong></div>
|
||||||
@@ -488,10 +502,7 @@ var customer_name = "<%= @customer.name %>";
|
|||||||
payment_type = '';
|
payment_type = '';
|
||||||
|
|
||||||
if ($("#server_mode").val() != "cloud") { // first bill not used in cloud
|
if ($("#server_mode").val() != "cloud") { // first bill not used in cloud
|
||||||
console.log("ssssssssssss")
|
|
||||||
payment_type = checkReceiptNoInFirstBillData(receipt_no,"payment");
|
payment_type = checkReceiptNoInFirstBillData(receipt_no,"payment");
|
||||||
console.log(member_id);
|
|
||||||
console.log(member_discount);
|
|
||||||
if (member_id && member_discount) {
|
if (member_id && member_discount) {
|
||||||
if(parseInt(jQuery.inArray("Credit", payment_type)) == -1){
|
if(parseInt(jQuery.inArray("Credit", payment_type)) == -1){
|
||||||
$("#credit_payment").hide();
|
$("#credit_payment").hide();
|
||||||
@@ -562,6 +573,9 @@ var customer_name = "<%= @customer.name %>";
|
|||||||
else if(payment_type == "UNIONPAY" && $('#unionpaycount').text()==0 && sub_total != 0.0){
|
else if(payment_type == "UNIONPAY" && $('#unionpaycount').text()==0 && sub_total != 0.0){
|
||||||
swal("Oops","Please Pay with UNIONPAY Payment","warning");
|
swal("Oops","Please Pay with UNIONPAY Payment","warning");
|
||||||
}
|
}
|
||||||
|
else if(payment_type == "JUNCTIONPAY" && $('#junctionpaycount').text()==0 && sub_total != 0.0){
|
||||||
|
swal("Oops","Please Pay with JUNCTIONPAY Payment","warning");
|
||||||
|
}
|
||||||
else if(payment_type == "Credit" && $('#credit').text()==0 && sub_total != 0.0){
|
else if(payment_type == "Credit" && $('#credit').text()==0 && sub_total != 0.0){
|
||||||
swal("Oops","Please Pay with Credit Payment","warning");
|
swal("Oops","Please Pay with Credit Payment","warning");
|
||||||
}else{
|
}else{
|
||||||
@@ -837,6 +851,7 @@ var customer_name = "<%= @customer.name %>";
|
|||||||
var jcb1 = $('#jcbcount').text();
|
var jcb1 = $('#jcbcount').text();
|
||||||
var master1 = $('#mastercount').text();
|
var master1 = $('#mastercount').text();
|
||||||
var unionpay1 = $('#unionpaycount').text();
|
var unionpay1 = $('#unionpaycount').text();
|
||||||
|
var junctionpay1 = $('#junctionpaycount').text();
|
||||||
var othertotal = parseFloat(credit1) + parseFloat(card1) + parseFloat(paypar1) + parseFloat(visa1) + parseFloat(jcb1) + parseFloat(master1) + parseFloat(unionpay1);
|
var othertotal = parseFloat(credit1) + parseFloat(card1) + parseFloat(paypar1) + parseFloat(visa1) + parseFloat(jcb1) + parseFloat(master1) + parseFloat(unionpay1);
|
||||||
var total = $('#amount_due').text();
|
var total = $('#amount_due').text();
|
||||||
var amt = 0;
|
var amt = 0;
|
||||||
@@ -865,6 +880,7 @@ var customer_name = "<%= @customer.name %>";
|
|||||||
var jcb = $('#jcbcount').text();
|
var jcb = $('#jcbcount').text();
|
||||||
var master = $('#mastercount').text();
|
var master = $('#mastercount').text();
|
||||||
var unionpay = $('#unionpaycount').text();
|
var unionpay = $('#unionpaycount').text();
|
||||||
|
var junctionpay = $('#junctionpaycount').text();
|
||||||
var amount_due = $('#amount_due').text();
|
var amount_due = $('#amount_due').text();
|
||||||
var total = parseFloat(cash) + parseFloat(credit) + parseFloat(card) + parseFloat(paypar) + parseFloat(visa) + parseFloat(jcb) + parseFloat(master) + parseFloat(unionpay)
|
var total = parseFloat(cash) + parseFloat(credit) + parseFloat(card) + parseFloat(paypar) + parseFloat(visa) + parseFloat(jcb) + parseFloat(master) + parseFloat(unionpay)
|
||||||
var result = parseFloat(amount_due) - parseFloat(total);
|
var result = parseFloat(amount_due) - parseFloat(total);
|
||||||
|
|||||||
@@ -177,6 +177,7 @@ scope "(:locale)", locale: /en|mm/ do
|
|||||||
post 'payment/master' => "master#create"
|
post 'payment/master' => "master#create"
|
||||||
post 'payment/visa' => "visa#create"
|
post 'payment/visa' => "visa#create"
|
||||||
post 'payment/unionpay' => "unionpay#create"
|
post 'payment/unionpay' => "unionpay#create"
|
||||||
|
post 'payment/junctionpay' => "junction_pay#create"
|
||||||
post 'payment/paypar' => 'paypar_payments#create'
|
post 'payment/paypar' => 'paypar_payments#create'
|
||||||
post 'payment/credit' => 'credit_payments#create'
|
post 'payment/credit' => 'credit_payments#create'
|
||||||
post 'payment/voucher' => 'voucher_payments#create'
|
post 'payment/voucher' => 'voucher_payments#create'
|
||||||
@@ -188,6 +189,7 @@ scope "(:locale)", locale: /en|mm/ do
|
|||||||
get 'sale/:sale_id/:type/payment/others_payment/Master' => "master#index"
|
get 'sale/:sale_id/:type/payment/others_payment/Master' => "master#index"
|
||||||
get 'sale/:sale_id/:type/payment/others_payment/JCB' => "jcb#index"
|
get 'sale/:sale_id/:type/payment/others_payment/JCB' => "jcb#index"
|
||||||
get 'sale/:sale_id/:type/payment/others_payment/UNIONPAY' => "unionpay#index"
|
get 'sale/:sale_id/:type/payment/others_payment/UNIONPAY' => "unionpay#index"
|
||||||
|
get 'sale/:sale_id/:type/payment/others_payment/JUNCTIONPAY' => "junction_pay#index"
|
||||||
get 'sale/:sale_id/:type/payment/others_payment/Redeem' => "redeem_payments#index"
|
get 'sale/:sale_id/:type/payment/others_payment/Redeem' => "redeem_payments#index"
|
||||||
get 'sale/:sale_id/:type/payment/others_payment/Voucher' => "voucher#index"
|
get 'sale/:sale_id/:type/payment/others_payment/Voucher' => "voucher#index"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user