浏览代码

order base detail export edit

abiao 4 年之前
父节点
当前提交
979ae8cf20

+ 158 - 0
app/models/base_detail.rb

@@ -0,0 +1,158 @@
+# encoding:utf-8
+class BaseDetail < ActiveRecord::Base
+  has_paper_trail
+  self.table_name = "order_details"
+  belongs_to :product
+  belongs_to :order, :foreign_key => :order_id
+  # has_one :order, :foreign_key=>:order_id, :primary_key=>:order_id
+  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 prd.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=ord.id
+      end
+    end
+
+  end
+
+  def order_state
+    order = Order.where("id = ?", self.order_id).first
+    if !order.blank?
+      return order.status
+    end
+  end
+
+
+  def paid_time
+    paidTime = 0
+    order = Order.where("id = ?", self.order_id).first
+    if !order.blank?
+      paidTime=order.paied_at
+    end
+    return paidTime
+  end
+
+
+  def pay_way
+    payWay = ""
+    order = Order.where("id = ?", self.order_id).first
+    if !order.blank?
+      payWay=order.pay_way
+    end
+    return payWay
+  end
+
+  STATUS_ENUM = [["未支付","unpay"],["已关闭","closed"],["待确认","unconfirmed"],["处理中","processing"],["已完成","complete"],["待收货","dispatch"],["已退款","refunded"]]
+  PAY_WAY_ENUM = [
+      # ["Web网银连连支付","webbankllpay"],
+      # ["Web认证连连支付","webauthllpay"],
+      # ["Wap认证连连支付","wapauthllpay"],
+      ["微信支付","weixinpay"],
+      ["提货券支付","balance"],
+      # ["公众号微信支付","gzhwxpay"],
+      # ["公众号提货券支付","gzhbalance"],
+      # ["统统微信支付","wx_sumpay"],
+      # ["统统Web网银支付","webbanksumpay"],
+  ]
+  rails_admin do
+    navigation_label '商品管理'
+    weight -240
+    parent Order
+
+    list do
+      filters [:product,:order_no,:nums,:price,:order_state]
+      field :id
+      field :order_no do
+        filterable true
+      end
+      #field :order
+      field :product
+      field :nums
+      field :price do
+        visible true
+        label "单价(元)"
+        formatted_value do
+          value!=0 ? (value/100.0):0
+        end
+      end
+      field :product_name
+      field :order_state, :enum do
+        filterable true
+        enum do
+          STATUS_ENUM
+        end
+      end
+      # field :paid_time do
+      #   filterable true
+      #   formatted_value do
+      #     #bindings[:object].order.paied_time
+      #     (bindings[:object].order.paied_at == 0 || bindings[:object].order.paied_at == nil) ? Time.at(0) : Time.at(bindings[:object].order.paied_at)
+      #   end
+      # end
+      field :paid_time
+      field :pay_way, :enum do
+        filterable true
+        enum do
+          PAY_WAY_ENUM
+        end
+      end
+      field :is_zeng
+      field :size_name
+      field :color_name
+      field :created_at
+      field :updated_at
+    end
+    show do
+      field :id
+      field :order_no
+      field :product
+      field :nums
+      field :is_zeng
+      field :price do
+        visible true
+        label "单价(元)"
+        formatted_value do
+          value!=0 ? (value/100.0):0
+        end
+      end
+      field :product_name
+      field :size_name
+      field :color_name
+      field :created_at
+      field :updated_at
+    end
+
+    edit do
+      field :order_no
+      #field :order_id
+      field :product_id
+      field :nums
+      field :is_zeng
+      field :price
+    end
+    export do
+      include_all_fields
+      field :wx_user_id do
+        formatted_value do
+          bindings[:object].order.wx_user_id
+        end
+      end
+      field :unit_robo_balance_price do
+        visible false
+      end
+    end
+  end
+end

+ 0 - 111
app/models/order_base_detail.rb

@@ -1,111 +0,0 @@
-# encoding:utf-8
-class OrderBaseDetail < ActiveRecord::Base
-  has_paper_trail
-  self.table_name = "order_base_details"
-  validates :order_no,:order_dt_id,:product_id, presence: true
-  # belongs_to :order, :foreign_key => :order_id
-
-  def dt_paid_time
-    order = Order.where("id = ?", self.order_id).first
-    if !order.blank?
-      paidTime=order.paied_time
-      return paidTime
-    end
-
-  end
-
-
-  def dt_pay_way
-    payWay = ""
-    order = Order.where("id = ?", self.order_id).first
-    if !order.blank?
-      payWay=order.pay_way
-    end
-    return payWay
-  end
-
-  STATUS_ENUM = [["未支付","unpay"],["已关闭","closed"],["待确认","unconfirmed"],["处理中","processing"],["已完成","complete"],["待收货","dispatch"],["已退款","refunded"]]
-  PAY_WAY_ENUM = [
-      # ["Web网银连连支付","webbankllpay"],
-      # ["Web认证连连支付","webauthllpay"],
-      # ["Wap认证连连支付","wapauthllpay"],
-      ["微信支付","weixinpay"],
-      ["提货券支付","balance"],
-      # ["公众号微信支付","gzhwxpay"],
-      # ["公众号提货券支付","gzhbalance"],
-      # ["统统微信支付","wx_sumpay"],
-      # ["统统Web网银支付","webbanksumpay"],
-  ]
-
-  rails_admin do
-    navigation_label '订单基本明细'
-    weight -300
-    parent Order
-    list do
-      filters [:order_no,:product_id,:order_dt_id]
-      # include_all_fields
-      field :id
-      field :order_no
-      field :product_id
-      field :product_name
-      field :nums
-      field :order_dt_id
-      field :order_dt_state, :enum do
-        filterable true
-        enum do
-          STATUS_ENUM
-        end
-      end
-       field :dt_paid_time
-      field :dt_pay_way, :enum do
-        filterable true
-        enum do
-          PAY_WAY_ENUM
-        end
-      end
-      field :send
-    end
-    show do
-      field :id
-      field :order_no
-      field :product_id
-      field :product_name
-      field :nums
-      field :order_dt_id
-      field :send
-    end
-
-    edit do
-      include_all_fields
-      field :order_no
-      field :product_id
-      field :product_name
-      field :nums
-      field :order_dt_id
-      field :send
-    end
-
-    export do
-      include_all_fields
-      field :wx_user_id do
-        formatted_value do
-          bindings[:object].order.wx_user_id
-        end
-      end
-      field :order_dt_state, :enum do
-        filterable true
-        enum do
-          STATUS_ENUM
-        end
-      end
-      field :dt_paid_time
-      field :dt_pay_way, :enum do
-        filterable true
-        enum do
-          PAY_WAY_ENUM
-        end
-      end
-    end
-
-  end
-end

+ 28 - 0
config/locales/models/base_detail.yml

@@ -0,0 +1,28 @@
+zh-CN:
+  activerecord:
+    models:
+      base_detail: 基本明细表
+    attributes:
+      base_detail:
+        id: ID
+        order_id: 订单Id
+        wx_user_id: 微信用户Id
+        order_no: 订单编号
+        order: 订单
+        product_name: 产品名称
+        product: 商品
+        product_id: 商品ID
+        nums: 数量
+        price: 价格
+        order_state: 订单状态
+        paid_time: 支付时间
+        pay_way: 支付方式
+        is_zeng: 是否赠品
+        size_name: 规格一
+        color_name: 规格二
+        depart: 部门
+        commend: 是否已评论
+        unit_robo_balance_price: 提货券价
+        created_at: 创建时间
+        updated_at: 修改时间
+

+ 0 - 20
config/locales/models/order_base_detail.yml

@@ -1,20 +0,0 @@
-zh-CN:
-  activerecord:
-    models: 
-      order_base_detail: 订单基本明细
-    attributes:
-      order_base_detail:
-        product_id: 商品id
-        product: 商品
-        product_name: 商品名称
-        order_id: 订单ID
-        order_no: 订单编号
-        order_dt_id: 订单明细ID
-        wx_user_id: 微信用户Id
-        order_dt_state: 订单状态
-        dt_paid_time: 支付时间
-        dt_pay_way: 支付方式
-        nums: 数量
-        send: 赠品
-        created_at: 创建时间
-        updated_at: 修改时间