|
|
@@ -5,8 +5,28 @@ class OrderDetail < ActiveRecord::Base
|
|
|
belongs_to :product
|
|
|
belongs_to :order, :foreign_key => :order_id
|
|
|
# has_one :order, :foreign_key=>:order_id, :primary_key=>:order_id
|
|
|
- validates :order_no,:order_id,:product_id,:nums, presence: true
|
|
|
+ validates :order_no,:product_id,:nums, presence: true
|
|
|
+ validate :order_validation
|
|
|
+ def order_validation
|
|
|
+ if self.product_id > 0
|
|
|
+ prd = Product.where("id = ?", self.product_id).first
|
|
|
+ if prd1.blank?
|
|
|
+ self.errors.add(:product_id,"商品不存在,请重新填写商品ID")
|
|
|
+ else
|
|
|
+ self.product_name=prd.Name
|
|
|
+ end
|
|
|
+ end
|
|
|
+
|
|
|
+ if self.order_no.length>0
|
|
|
+ ord = Order.where("order_id = ?", self.order_no).first
|
|
|
+ if ord.blank?
|
|
|
+ self.errors.add(:order_id,"订单不存在,请重新填写编号")
|
|
|
+ else
|
|
|
+ self.order_id=order.Id
|
|
|
+ end
|
|
|
+ end
|
|
|
|
|
|
+ end
|
|
|
|
|
|
def order_state
|
|
|
order = Order.where("id = ?", self.order_id).first
|
|
|
@@ -117,7 +137,7 @@ class OrderDetail < ActiveRecord::Base
|
|
|
|
|
|
edit do
|
|
|
field :order_no
|
|
|
- field :order_id
|
|
|
+ #field :order_id
|
|
|
field :product_id
|
|
|
field :nums
|
|
|
field :is_zeng
|