|
|
@@ -1,12 +1,13 @@
|
|
|
<div class="row form-horizontal">
|
|
|
<div class="col-md-12">
|
|
|
<h4><%= @product.name %></h4>
|
|
|
+ <%= hidden_field_tag 'product_id', @product.id %>
|
|
|
|
|
|
<% if @product.presentation? && @pointsales.present? %>
|
|
|
<div class="form-group">
|
|
|
<label class="col-md-3 control-label">Punto de venta</label>
|
|
|
<div class="col-md-9">
|
|
|
- <%= select_tag :pointsale_id, options_from_collection_for_select(@pointsales, :pointsale_id, :name), :include_blank => "Seleccione punto de venta", class: "form-control select2 first_input" %>
|
|
|
+ <%= select_tag :pointsale_id, options_from_collection_for_select(@pointsales, :pointsale_id, :name), :include_blank => "Seleccione punto de venta", class: "form-control select2 first_input", onchange: 'getAvailables()' %>
|
|
|
<span class="help-block">Las etiquetas se imprimirán con el precio de venta del punto de venta seleccionado</span>
|
|
|
</div>
|
|
|
<br>
|
|
|
@@ -15,7 +16,7 @@
|
|
|
<div class="form-group">
|
|
|
<label class="col-md-3 control-label">Punto de venta</label>
|
|
|
<div class="col-md-9">
|
|
|
- <%= select_tag :pointsale_id, options_from_collection_for_select(@product.pointsales, :id, :name), :include_blank => "Seleccione punto de venta", class: "form-control select2 first_input" %>
|
|
|
+ <%= select_tag :pointsale_id, options_from_collection_for_select(@product.pointsales, :id, :name), :include_blank => "Seleccione punto de venta", class: "form-control select2 first_input", onchange: 'getAvailables()' %>
|
|
|
<span class="help-block">Las etiquetas se imprimirán con el precio de venta del punto de venta seleccionado</span>
|
|
|
</div>
|
|
|
<br>
|
|
|
@@ -50,9 +51,8 @@
|
|
|
<% else %>
|
|
|
<div class="form-group" style="margin-bottom:20px">
|
|
|
<label class="col-md-3 control-label">Cantidad a imprimir</label>
|
|
|
- <div class="col-md-3" style="padding-top:10px">
|
|
|
+ <div class="col-md-3" style="padding-top:10px" id="individual_prod_container">
|
|
|
<input type="number" id="quantity_to_print" value="0" class="form-control first_input">
|
|
|
- <%= hidden_field_tag 'product_id', @product.id %>
|
|
|
</div>
|
|
|
</div>
|
|
|
<% end %>
|
|
|
@@ -126,6 +126,42 @@
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ function getAvailables() {
|
|
|
+ var pointsale_id = $('#pointsale_id').val();
|
|
|
+ var product_id = $('#product_id').val();
|
|
|
+ var blockUI_target = "";
|
|
|
+ var is_presentation_prod = $("#variant_table_for_labels").length ? true : false;
|
|
|
+ if(pointsale_id) {
|
|
|
+ blockUI_target = is_presentation_prod ? '#variant_table_for_labels' : '#individual_prod_container';
|
|
|
+
|
|
|
+ App.blockUI({
|
|
|
+ target: blockUI_target,
|
|
|
+ animate: true
|
|
|
+ });
|
|
|
+
|
|
|
+ $.ajax({
|
|
|
+ type: "get",
|
|
|
+ url: '/get_availables_by_product',
|
|
|
+ dataType: 'json',
|
|
|
+ data: {
|
|
|
+ pointsale_id: pointsale_id,
|
|
|
+ product_id: product_id
|
|
|
+ },
|
|
|
+ success: function(data) {
|
|
|
+ var availables = data;
|
|
|
+ if(is_presentation_prod) {
|
|
|
+ availables.forEach(function(available) {
|
|
|
+ $('#variant_' + available.product_id.toString()).val(parseFloat(available.stock));
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ $('#quantity_to_print').val(availables[0].stock);
|
|
|
+ }
|
|
|
+ App.unblockUI(blockUI_target);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
function cerrarDialog() {
|
|
|
$('#dialog').modal('toggle');
|
|
|
}
|