Files
sx-fc/app/models/customer.rb

64 lines
1.9 KiB
Ruby

class Customer < ApplicationRecord
#self.primary_key = :customer_id
before_create :generate_custom_id
has_many :orders
has_many :sales
validates_presence_of :name, :contact_no, :email
validates :contact_no, uniqueness: true
validates :email, uniqueness: true
# attr_accessor :name, :company, :contact_no, :email, :date_of_birth, :membership_id, :membership_type, :membership_authentication_code
def self.get_member_group
membership = MembershipSetting.find_by_membership_type("smartpay_url")
app_token = membership.auth_token.to_s
url = membership.gateway_url.to_s + "/api/get_all_member_group".to_s
response = HTTParty.get(url,
:body => { app_token: app_token}.to_json,
:headers => {
'Content-Type' => 'application/json',
'Accept' => 'application/json'
}
)
puts response.body, response.code, response.message, response.headers.inspect
return response;
end
# http://192.168.1.47:3006/api/create_membership_customer
#get_all_member_group
def self.generate(params)
puts "Hello "
puts params.to_json
customer = Customer.new
customer.name= params[:name]
customer.company= params[:company]
customer.contact_no= params[:contact_no]
customer.email= params[:email]
customer.date_of_birth= params[:date_of_birth]
customer.membership_id= params[:membership_id]
customer.membership_type= params[:membership_type]
customer.membership_authentication_code= params[:membership_authentication_code]
customer.save!
return customer
end
def lastest_invoices
sales.where(:customer_id => self.id).order("created_at desc").limit(5)
end
private
def generate_custom_id
self.customer_id = SeedGenerator.generate_id(self.class.name, "CUS")
end
end