ソースを参照

Merge branch 'master' of https://git.sml.mx/SML/pos-boutique into apply_rubocop

Jacqueline Maldonado 7 年 前
コミット
685836b7b6

+ 1 - 0
app/controllers/products_controller.rb

@@ -152,6 +152,7 @@ class ProductsController < ApplicationController
             variant.skip_sku_validation = true
             params_to_edit = product_params
             params_to_edit[:sku] = @product.sku + (index + 1).to_s + "A"
+            params_to_edit[:barcode] = variant.barcode
             variant.update_attributes(params_to_edit)
           end
         end

+ 1 - 1
app/datatables/available_products_datatable.rb

@@ -80,7 +80,7 @@ class AvailableProductsDatatable
       products = products.where("products.sku ilike :search or products.name ilike :search", search: "%#{name_searched}%").order('products.name')
       if search.include? ':'
         attribute = search[search.index(':') + 1, search.length]
-        products = products.where('attributes_json ilike :attribute', attribute: "%#{attribute}%")
+        products = products.where('products.attributes_json ilike :attribute', attribute: "%#{attribute}%")
       end
     end
 

+ 19 - 1
app/models/product.rb

@@ -464,7 +464,7 @@ class Product < ActiveRecord::Base
   end
 
   def self.gen_only_barcodes_w_empty
-    products = Product.vigentes.where(barcode: '')
+    products = Product.activos_children.where(barcode: '')
     products.each do |product|
       product.skip_sku_validation = true
       product.barcode = format('%07d', product.id)
@@ -472,4 +472,22 @@ class Product < ActiveRecord::Base
     end
     puts 'termine'
   end
+
+  def self.gen_barcode_img_for_existing_barcodes
+    products = Product.activos_children
+    counter = 0
+    products.each do |product|
+      if product.barcode?
+        unless File.file?(Rails.public_path.join('barcodes', "#{product.barcode}.png"))
+          save_path = Rails.public_path.join('barcodes', "#{product.barcode}.png")
+          File.open(save_path, 'wb') { |f| f.write Barby::Code39.new(product.barcode).to_png(height: 50, margin: 5) }
+          counter += 1;
+        end
+      else
+        puts "***** NO TIENE BARCODE! #{product.id}"
+      end
+    end
+    puts "TERMINÉ, generé: #{counter} imagenes de barcode"
+  end
 end
+