瀏覽代碼

bug fixed, commissions

jose miguel 9 年之前
父節點
當前提交
3af8c95131
共有 2 個文件被更改,包括 22 次插入35 次删除
  1. 21 34
      app/controllers/commissions_controller.rb
  2. 1 1
      app/views/commissions/_form.html.erb

+ 21 - 34
app/controllers/commissions_controller.rb

@@ -11,11 +11,7 @@ class CommissionsController < ApplicationController
   # GET /commissions
   # GET /commissions.json
   def index
-    if current_user.usertype == 'A'
-      @commissions = Commission.all.includes(:pointsale, :user)
-    else
-      @commissions = Commission.includes(:pointsale, :user).where(:pointsale_id => current_user.pointsale_id)
-    end
+    @commissions = current_user.usertype == 'A' ? Commission.all.includes(:pointsale, :user).order('created_at desc') : Commission.includes(:pointsale, :user).where(pointsale_id: current_user.pointsale_id).order('created_at desc')
   end
 
   # GET /commissions/1
@@ -27,7 +23,7 @@ class CommissionsController < ApplicationController
 
   # GET /commissions/new
   def new
-    @sellers = Seller.where('id IN (?)' , params[:sellers_ids])
+    @sellers = Seller.where('id IN (?)', params[:sellers_ids])
     @initial_date = params[:initial_date]
     @final_date = params[:final_date]
     commission_total = 0
@@ -43,8 +39,7 @@ class CommissionsController < ApplicationController
   end
 
   # GET /commissions/1/edit
-  def edit
-  end
+  def edit; end
 
   # POST /commissions
   # POST /commissions.json
@@ -52,11 +47,11 @@ class CommissionsController < ApplicationController
     @commission = Commission.new(commission_params)
     @commission.user_id = current_user.id
     respond_to do |format|
-      @commission.audit_comment = "Comisiones del #{initial_date} al #{final_date} generadas"
+      @commission.audit_comment = "Comisiones del #{@commission.initial_date} al #{@commission.final_date} generadas"
       if @commission.save
         @commission.sellerscommissions.each do |seller_commission|
           sales_by_period = seller_commission.seller.get_sales_by_period(@commission.initial_date, @commission.final_date, 'commission').pluck(:id)
-          sales_by_period.each do |sale |
+          sales_by_period.each do |sale|
             sales_sellercom = SalesSellercommission.new
             sales_sellercom.sellerscommission_id = seller_commission.id
             sales_sellercom.sale_id = sale
@@ -96,45 +91,37 @@ class CommissionsController < ApplicationController
     end
   end
 
-  def sellers_for_commissions
-  end
+  def sellers_for_commissions; end
 
-  def generate_commissions
-
-  end
+  def generate_commissions; end
 
   def find_sellers_by_date
     initial_date = DateTime.parse(params[:initial_date])
     final_date = DateTime.parse(params[:final_date])
 
-    sales = Pointsale.find(params[:pointsale_id]).sales.where(:date_sale => initial_date..final_date).pluck(:id)
+    sales = Pointsale.find(params[:pointsale_id]).sales.where(date_sale: initial_date..final_date).pluck(:id)
     commissions_paid = SalesSellercommission.where('sale_id IN (?)', sales).pluck(:sale_id)
 
     to_pay = sales - commissions_paid
 
     sellers = Sale.where('sales.id IN (?)', to_pay).joins(:seller).distinct(:seller_id).select(:seller_id, :name)
-    render :json => sellers
+    render json: sellers
   end
 
-
   private
-    # Use callbacks to share common setup or constraints between actions.
-    def set_commission
-      @commission = Commission.find(params[:id])
-    end
 
-    def get_filters
-      if params[:current_page].blank?
-        @current_page = 1
-      else
-        @current_page = params[:current_page]
-      end
-      @filter = params[:filter]
-    end
+  # Use callbacks to share common setup or constraints between actions.
+  def set_commission
+    @commission = Commission.find(params[:id])
+  end
 
-    # Never trust parameters from the scary internet, only allow the white list through.
-    def commission_params
-      params.require(:commission).permit(:initial_date, :final_date, :commission_total, :pointsale_id, :user_id, sellerscommissions_attributes: [:seller_id, :num_sales, :num_products, :sales_total, :commission_calculated, :commission_paid, :commission_percent])
-    end
+  def get_filters
+    @current_page = params[:current_page].blank? ? 1 : params[:current_page]
+    @filter = params[:filter]
+  end
 
+  # Never trust parameters from the scary internet, only allow the white list through.
+  def commission_params
+    params.require(:commission).permit(:initial_date, :final_date, :commission_total, :pointsale_id, :user_id, sellerscommissions_attributes: [:seller_id, :num_sales, :num_products, :sales_total, :commission_calculated, :commission_paid, :commission_percent])
+  end
 end

+ 1 - 1
app/views/commissions/_form.html.erb

@@ -72,7 +72,7 @@
                                 </td>
                                 <td>
                                   <%= f.fields_for :sellerscommissions do |b| %>
-                                    <%= b.number_field :commission_paid, {:class =>"form-control", :value => commission_calculated, input_html: {min: 0}} %>
+                                    <%= b.number_field :commission_paid, {:class =>"form-control", :value => commission_calculated, input_html: {min: 0}, :step =>"any", :pattern =>"^[0-9]*[1-9][0-9]*$"} %>
                                     <%= b.hidden_field :seller_id, :value => seller.id %>
                                     <%= b.hidden_field :num_sales, :value => sales_by_period.count %>
                                     <%= b.hidden_field :num_products, :value => sales_by_period.joins(:sales_details).sum('sales_details.quantity').round  %>