Add membership action

This commit is contained in:
Moe Su
2017-06-09 02:23:16 +06:30
parent 451804366c
commit 7702c50675
9 changed files with 63 additions and 12 deletions

View File

@@ -12,7 +12,7 @@ gem 'rails', '~> 5.1.0'
gem 'mysql2', '>= 0.3.18', '< 0.5'
#Use PosgreSQL
#gem 'pg'
gem 'pg'
# redis server for cable
# gem 'redis', '~> 3.0'

View File

@@ -109,6 +109,7 @@ GEM
nokogiri (1.7.2)
mini_portile2 (~> 2.1.0)
pdf-core (0.7.0)
pg (0.20.0)
prawn (2.2.2)
pdf-core (~> 0.7.0)
ttfunk (~> 1.5)
@@ -244,6 +245,7 @@ DEPENDENCIES
kaminari (~> 0.16.3)
listen (~> 3.0.5)
mysql2 (>= 0.3.18, < 0.5)
pg
prawn
prawn-table
puma (~> 3.0)

View File

@@ -1,7 +1,7 @@
class Api::MembershipsController < ActionController::API
before :authenticate_token
#Add Membership to invoice
def create

View File

@@ -49,7 +49,7 @@ class Crm::CustomersController < ApplicationController
date_of_birth = customer_params[:date_of_birth]
membership_id = params[:membership_id]
membership = MembershipSetting.find_by_membership_type("smartpay_url")
membership = MembershipSetting.find_by_membership_type("paypar_url")
app_token = membership.auth_token.to_s
url = membership.gateway_url.to_s + "/api/create_membership_customer".to_s
@@ -115,7 +115,7 @@ class Crm::CustomersController < ApplicationController
date_of_birth = customer_params[:date_of_birth]
id = customer_params[:membership_id]
membership = MembershipSetting.find_by_membership_type("smartpay_url")
membership = MembershipSetting.find_by_membership_type("paypar_url")
app_token = membership.auth_token.to_s
url = membership.gateway_url.to_s + "/api/update_membership_customer".to_s

View File

@@ -4,7 +4,44 @@ class Settings::MembershipActionsController < ApplicationController
# GET /settings/membership_actions
# GET /settings/membership_actions.json
def index
@settings_membership_actions = Settings::MembershipAction.all
type = params[:type]
@sale_id = params[:sale_id]
if type.nil?
@settings_membership_actions = Settings::MembershipAction.all
else
membership_actions_data=Settings::MembershipAction.find_by_membership_type(type)
if !membership_actions_data.nil?
url = params[:gateway_url].to_s + membership_actions_data.gateway_url.to_s
puts url.to_json
sale_data = Sale.find_by_sale_id(@sale_id)
if sale_data.customer_id
customer_data= Customer.find_by_customer_id(sale_data.customer_id)
@membership_id = customer_data.membership_id
@campaign_type_id =1
if !@membership_id.nil?
membership_setting = MembershipSetting.find_by_membership_type("paypar_url")
membership_data = SalePayment.get_paypar_account(url,membership_setting.auth_token,@membership_id,@campaign_type_id)
if membership_data["status"]==true
@membership_rebate_balance=membership_data["balance"]
@out = true, @membership_rebate_balance
else
@out = false, 0
end
else
@out = false, 0
end
else
@out =false, 0
end
# campaign_type_id=1
# get_account_data = MembershipAction.get_account_data(url)
else
@out = false, 0
end
render :json => @out.to_json
end
end
# GET /settings/membership_actions/1

View File

@@ -13,7 +13,7 @@ class Customer < ApplicationRecord
def self.get_member_group
membership = MembershipSetting.find_by_membership_type("smartpay_url")
membership = MembershipSetting.find_by_membership_type("paypar_url")
app_token = membership.auth_token.to_s
url = membership.gateway_url.to_s + "/api/get_all_member_group".to_s

View File

@@ -66,10 +66,9 @@ class SalePayment < ApplicationRecord
end
def self.get_paypar_account(paypar_url,token,membership_id)
url = paypar_url.to_s + "/api/get_membership_data".to_s
def self.get_paypar_account(url,token,membership_id,campaign_type_id)
response = HTTParty.get(url,
:body => { app_token: token,membership_id:membership_id}.to_json,
:body => { app_token: token,membership_id:membership_id,campaign_type_id:campaign_type_id}.to_json,
:headers => {
'Content-Type' => 'application/json',
'Accept' => 'application/json'

View File

@@ -4,7 +4,7 @@
<div class="card">
<% @payment_method_setting.each do |payment_method|%>
<div class="col-md-5">
<div class="col-md-12 long purple " id="<%= payment_method.payment_method%>"><%= payment_method.payment_method %></div>
<div class="col-md-12 long purple " id="<%= payment_method.payment_method%>" data-url="<%=payment_method.gateway_url%>" data-sale-id="<%= @sale_id%>"><%= payment_method.payment_method %></div>
</div>
<% end %>
</div>
@@ -15,7 +15,7 @@
<div class="row">
<div class="form-group col-lg-12 col-md-12 col-sm-12">
<label class="col-lg-4 col-md-4 col-sm-4">Valid Amount</label>
<input type="text" name="valid_amount" id="valid_amount" class="form-control col-lg-7 col-md-7 col-sm-7" readonly="" value="1000">
<input type="text" name="valid_amount" id="valid_amount" class="form-control col-lg-7 col-md-7 col-sm-7" readonly="" value="">
</div>
<hr>
</div>
@@ -136,11 +136,24 @@ $(document).on('click', '.cashier_number', function(event){
$("#REDIMREBATE").click(function(){
$('.rebate-form').removeAttr("hidden");
gateway_url = $(this).attr("data-url");
sale_id = $(this).attr("data-sale-id");
$.ajax({
type: "GET",
url: "../../../../settings/membership_actions",
data: {type:"redeem_url",gateway_url:gateway_url,sale_id:sale_id},
success: function(result){
$("#valid_amount").val(result[1]);
}
})
});
$("#redeem").click(function(){
valid_amount = $("#valid_amount").val();
sale_id = $(this).attr("data-value")
sale_id = $("#REDIMREBATE").attr("data-sale-id");
alert(sale_id);
membership_id = $(this).attr("data-member-value");
redeem_amount = parseInt($("#used_amount").text());
if(redeem_amount<=0){