Files
sx-fc/app/models/sale_order.rb
2019-06-21 10:04:35 +06:30

46 lines
1.2 KiB
Ruby
Executable File

class SaleOrder < ApplicationRecord
self.primary_key = "sale_order_id"
#primary key - need to be unique generated for multiple shops
before_create :generate_sale_order_id
belongs_to :sale
belongs_to :order
def create_sale_order(sale, order)
sale_order = SaleOrder.new
sale_order.sale_id = sale
sale_order.order_id = order
sale_order.save!
end
def self.sync_sale_order_records(sale_orders)
if !sale_orders.nil?
sale_orders.each do |so|
sale_order = SaleOrder.find_by_sale_order_id(so['sale_order_id'])
# unless SaleOrder.exists?(so['sale_order_id'])
if sale_order.nil?
sale_order = SaleOrder.new
end
sale_order.sale_order_id = so['sale_order_id']
sale_order.sale_id = so['sale_id']
sale_order.order_id = so['order_id']
sale_order.save
end
puts '......... Sale Order sync completed ........'
end
end
private
def generate_sale_order_id
prefix = "SOI"
if ENV["SERVER_MODE"] == 'cloud'
prefix = "CSOI"
end
self.class.name
saleOrderId = SeedGenerator.generate_id(self.class.name, prefix)
self.sale_order_id = saleOrderId
end
end