abiao 5 éve
szülő
commit
511e3e1b35

+ 8 - 1
config/initializers/rails_admin.rb

@@ -16,7 +16,7 @@ require Rails.root.join('lib', 'rails_admin', 'create_xcx_qrcode')
 require Rails.root.join('lib', 'rails_admin', 'generate_order_static')
 require Rails.root.join('lib', 'product', 'copy_product')
 require Rails.root.join('lib', 'rails_admin', 'update_shop_application')
-
+require Rails.root.join('lib', 'rails_admin', 'audit_order_refund')
 
 
 RailsAdmin::Config::Actions.register(RailsAdmin::Config::Actions::GenerateMenu)
@@ -36,6 +36,8 @@ RailsAdmin::Config::Actions.register(RailsAdmin::Config::Actions::CreateXcxQrcod
 RailsAdmin::Config::Actions.register(RailsAdmin::Config::Actions::CopyProduct)
 RailsAdmin::Config::Actions.register(RailsAdmin::Config::Actions::GenerateOrderStatic)
 RailsAdmin::Config::Actions.register(RailsAdmin::Config::Actions::UpdateShopApplication)
+RailsAdmin::Config::Actions.register(RailsAdmin::Config::Actions::AuditOrderRefund)
+
 
 
 
@@ -111,6 +113,11 @@ RailsAdmin.config do |config|
     update_shop_application do
       only ["ShopApplication"]
     end
+
+    audit_order_refund do
+      only ["OrderRefund"]
+    end
+
     create_xcx_qrcode do
       only ["WxUser"]
     end

+ 2 - 0
config/locales/rails_admin.zh-CN.yml

@@ -131,6 +131,8 @@ zh-CN:
         menu: "订单统计"
       update_shop_application:
         menu: "审核通过"
+      audit_order_refund:
+        menu: "审核通过"
       refuse_takecash:
         title: "%{model_label_plural}拒绝提现"
         menu: "拒绝提现"

+ 1 - 1
db/migrate/20201109114688_create_order_refunds.rb

@@ -16,7 +16,7 @@ class CreateOrderRefunds < ActiveRecord::Migration
       # 到账时间
       t.column :refund_time, :integer, :limit => 11, :default => 0
       # 到账状态
-      t.column :status, :integer, :limit => 11, :default => 0
+      t.column :status, :boolean, :default=>0
       # 备注
       t.column :remark, :string,:limit => 128
       t.timestamps

+ 43 - 0
lib/rails_admin/audit_order_refund.rb

@@ -0,0 +1,43 @@
+#encoding
+module RailsAdmin
+  module Config
+    module Actions
+
+        class AuditOrderRefund < RailsAdmin::Config::Actions::Base
+            register_instance_option :visible?  do
+                authorized?
+            end
+
+            register_instance_option :member do
+                true
+            end
+
+            register_instance_option :link_icon do
+                'icon-thumbs-up'
+            end
+
+            register_instance_option :pjax? do
+                false
+            end
+
+            register_instance_option :controller do
+                Proc.new do
+                    require 'rest-client'
+                    order_refund = OrderRefund.where("id = ? and status=?",@object.id,0).first
+                    n = "此状态不支持操作"
+                    if not order_refund.blank?
+                        n = "已成功审批"
+                        url = "#{CONFIG_FILE["api_host"]}/railsadmin/order/refund/#{@object.id}"
+                        begin
+                            ret = RestClient.get url, {} #per_page: 5
+                        rescue Exception => e
+                            n = "审批失败!"
+                        end
+                    end
+                    redirect_to :back, notice: "#{n}"
+                end
+            end
+        end
+    end
+  end
+end