From de45865584869c9a28e12995e0ca953a758fec37 Mon Sep 17 00:00:00 2001 From: wuboy Date: Fri, 9 Feb 2018 03:23:57 +0800 Subject: [PATCH] fix clone_billing_address for new spree --- app/models/spree/order_decorator.rb | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/models/spree/order_decorator.rb b/app/models/spree/order_decorator.rb index 6459690d..8c119b50 100644 --- a/app/models/spree/order_decorator.rb +++ b/app/models/spree/order_decorator.rb @@ -6,15 +6,19 @@ before_validation :clone_shipping_address, :if => "Spree::AddressBook::Config[:disable_bill_address]" def clone_shipping_address - if self.ship_address - self.bill_address = self.ship_address + if ship_address && bill_address.nil? + self.bill_address = ship_address.clone + else + bill_address.attributes = ship_address.attributes.except('id', 'updated_at', 'created_at') end true end def clone_billing_address - if self.bill_address - self.ship_address = self.bill_address + if bill_address && ship_address.nil? + self.ship_address = bill_address.clone + else + ship_address.attributes = bill_address.attributes.except('id', 'updated_at', 'created_at') end true end