Commits

Alejandro Villanueva committed 527993b

Adding back button, adding sales whit debt, editing sales are now the same UI as adding them

Comments (0)

Files changed (5)

apps/ventas/urls.py

     url(r'checkout/(?P<id>\d+)/$', 'checkout'),
     url(r'finished/$', 'terminadas'),
     url(r'reportes/$', 'reportes'),
+    url(r'pendientes/$', 'pendientes'),
     # URL Reservaciones
     url(r'reservaciones', 'reservaciones'),
     url(r'reservacion/borrar/(?P<id>\d+)', 'del_reservaciones'),

apps/ventas/views.py

         if form.is_valid():
             venta = form.save(commit=False)
             venta.vendedor = request.user
-            print venta.tiene_conductor
             venta.save()
             messages.success(request, 'Venta agregada correctamente.')
             return redirect('/ventas/entregas/', 
     
     if request.method == 'POST':
         venta = get_object_or_404(Ventas, pk=id)
-        form = VentasCompleteForm(request.POST, instance=venta, 
+        form = VentasForm(request.POST, instance=venta, 
                 error_class=DivErrorList)
         if form.is_valid():
-            form.save()
-            messages.success('Venta Actualizada.')
+            venta = form.save(commit=False)
+            venta.vendedor = request.user
+            venta.save()
+            messages.success(request, 'Venta Actualizada.')
             return redirect('/ventas/list/?page=' + str(page), 
                             context_instance=RequestContext(request))
     else:
         venta = get_object_or_404(Ventas, pk=id)
-        form = VentasCompleteForm(instance=venta)
+        form = VentasForm(instance=venta)
     vars = {'form': form, 'venta': venta, 'page': page}
     return render_to_response('ventas/change_ventas.html', vars,
                                 context_instance=RequestContext(request))
         'total_fiscal': total_fiscal, 'total_no_fiscal': total_no_fiscal}
     return render_to_response('ventas/reporte_ventas.html', vars,
                                 context_instance=RequestContext(request))
-     
+
+
+def pendientes(request):
+    pendientes = Ventas.objects.filter(tipo_pago = "PENDIENTE")
+    pendientes.order_by('serie')
+    pendientes.order_by('num_contrato')
+    
+    paginator = Paginator(pendientes, 60) 
+    
+     # Make sure page request is an int. If not, deliver first page.
+    try:
+        page = int(request.GET.get('page', '1'))
+    except ValueError:
+        page = 1
+
+    # If page request (9999) is out of range, deliver last page of results.
+    try:
+        ventas = paginator.page(page)
+    except (EmptyPage, InvalidPage):
+        ventas = paginator.page(paginator.num_pages)
+    vars = {'ventas' : ventas}
+    return render_to_response('ventas/pendientes.html', vars,
+                                context_instance=RequestContext(request))
     'apps.clientes',
     'apps.admin',
     'apps.messages',
+    'apps.eonutils',
     'django.contrib.admin',
 )
 

templates/default.html

                           <li><a href="{% url apps.ventas.views.add_ventas %}"><i class="icon-plus"></i> Agregar</a></li>
                           <li><a href="{% url apps.ventas.views.lista_entregas %}"><i class="icon-share"></i> Activos</a></li>
                           <li><a href="{% url apps.ventas.views.terminadas %}"><i class="icon-check"></i> Cerradas</a></li>
+                          <li><a href="{% url apps.ventas.views.pendientes %}"><i class="icon-briefcase"></i> Cartera</a></li>
                           <li><a href="{% url apps.ventas.views.reportes %}"><i class="icon-list-alt"></i> Reportes</a></li>
                       </ul>
                       {% endif %}
                     {% block content %}
 
                     {% endblock %}
-
+                    <div class="span10">
+                        <a class="btn btn-mini btn-primary" href="javascript:history.back()"> <i class="icon-white icon-arrow-left"></i> Regresar</a>
+                    </div>
                 </div>
             </div>
             <div class="row-fluid">

templates/ventas/change_ventas.html

 {% extends 'default.html' %}
 
+{% block head %}
+    <script src="/static/assets/js/sales.js" type="text/javascript"></script>
+{% endblock %}
+
 {%  block content%}
-<h3>Editar Venta</h3>
-	
-	<form action="{% url apps.ventas.views.edit_ventas venta.id %}" class="well" method="POST"> {% csrf_token %}
-		{{ form.as_p }}
-		<input type="submit" class="btn btn-success" value="Guardar" />
-	</form>
+<h3>Editar Venta: {{ venta.num_contrato }}</h3>
+
+    <form action="{% url apps.ventas.views.edit_ventas venta.id %}" class="form-vertical well" method="POST"> {% csrf_token %}
+        {{ form.non_field_errors|safe }}
+         <div class="">
+            {{ form.num_contrato.errors|safe }}
+            {{ form.seria.errors|safe }}
+            <label for="id_num_contrato">Numero de Contrato:</label>
+            {{ form.num_contrato }} {{ form.serie }}
+        </div>
+         <div class="">
+            {{ form.auto.errors|safe }}
+            <label for="id_auto">Auto:</label>
+            {{ form.auto }}
+        </div>
+        <div class="">
+            {{ form.cliente.errors|safe }}
+            <label for="id_cliente">Cliente:</label>
+            {{ form.cliente }}
+            <div id="clienteinfo">
+                
+            </div>
+        </div>
+        <div class="">
+            {{ form.tiene_conductor.errors|safe }}
+            <label for="id_tiene_conductor">Conductor:</label>
+            {{ form.tiene_conductor }}
+        </div>
+            <div id="conductor">
+                <div class="">
+                    {{ form.nombre_conductor.errors|safe }}
+                    <label for="id_nombre_conductor">Nombre:</label>
+                    {{ form.nombre_conductor }}
+                </div>
+                <div class="">
+                    {{ form.licencia_conductor.errors|safe }}
+                    <label for="id_lic_conductor"># Licencia:</label>
+                    {{ form.licencia_conductor }}
+                </div>
+                <div class="">
+                    {{ form.lic_vencimiento_conductor.errors|safe }}
+                    <label for="id_lic_vencimiento_conductor">Fecha Vencimiento:</label>
+                    {{ form.lic_vencimiento_conductor }}
+                </div>
+                <div class="">
+                    {{ form.lic_expedicion_conductor.errors|safe }}
+                    <label for="id_lic_expedicion_conductor">Fecha Expedicion:</label>
+                    {{ form.lic_expedicion_conductor }}
+                </div>
+            </div>
+        <div class="">
+            {{ form.fecha_salida.errors|safe }}
+            <label for="id_fecha_salida">Fecha Salida:</label>
+            {{ form.fecha_salida }}
+        </div>
+        <div class="">
+            {{ form.fecha_entrada.errors|safe }}
+            <label for="id_fecha_entrada">Fecha Entrada:</label>
+            {{ form.fecha_entrada }}
+        </div>
+        <div class="">
+            {{ form.dias.errors|safe }}
+            <label for="id_dias">Días:</label>
+            <h1 id="dias"></h1>
+            {{ form.dias }}
+        </div>
+        <div class="">
+            {{ form.seguro_accidentes.errors|safe }}
+            {{ form.seguro_colision.errors|safe }}
+            <label for="id_seguro_accidentes">Seguros:</label>
+            Accidentes: {{ form.seguro_accidentes }} Colision: {{ form.seguro_colision }}
+        </div>
+        <div class="input-prepend">
+            {{ form.deposito.errors|safe }}
+            <label for="id_deposito">Deposito en Garantia:</label>
+            <span class="add-on">$</span>
+            {{ form.deposito }}
+        </div>
+        <div class="input-prepend">
+            {{ form.adelanto.errors|safe }}
+            <label for="id_adelanto">Adelanto:</label>
+            <span class="add-on">$</span>
+            {{ form.adelanto }}
+        </div>
+        <div class="">
+            {{ form.iva.errors|safe }}
+            <label for="id_iva">Agregar IVA:</label>
+            {{ form.iva }}
+        </div>
+        <div class="input-prepend">
+            {{ form.preciodia.errors|safe }}
+            <label for="id_preciodia">Precio Por Día:</label>
+            <span class="add-on">$</span>
+            {{ form.preciodia }}
+        </div>
+
+        <div class="gas">
+            {{ form.octavo_gas_salida.errors|safe }}
+            <label for="id_gas_octavos_salida_0">Gasolina:</label>
+            <ul>
+                <li ><label for="id_gas_octavos_salida_0"><input type="radio" id="id_gas_octavos_salida_0" value="1" name="gas_octavos_salida"> 1/8</label></li>
+                <li><label for="id_gas_octavos_salida_1"><input type="radio" id="id_gas_octavos_salida_1" value="2" name="gas_octavos_salida"> 2/8</label></li>
+                <li><label for="id_gas_octavos_salida_2"><input type="radio" id="id_gas_octavos_salida_2" value="3" name="gas_octavos_salida"> 3/8</label></li>
+                <li><label for="id_gas_octavos_salida_3"><input type="radio" id="id_gas_octavos_salida_3" value="4" name="gas_octavos_salida"> 4/8</label></li>
+                <li><label for="id_gas_octavos_salida_4"><input type="radio" id="id_gas_octavos_salida_4" value="5" name="gas_octavos_salida"> 5/8</label></li>
+                <li><label for="id_gas_octavos_salida_5"><input type="radio" id="id_gas_octavos_salida_5" value="6" name="gas_octavos_salida"> 6/8</label></li>
+                <li><label for="id_gas_octavos_salida_6"><input type="radio" id="id_gas_octavos_salida_6" value="7" name="gas_octavos_salida"> 7/8</label></li>
+                <li><label for="id_gas_octavos_salida_7"><input type="radio" id="id_gas_octavos_salida_7" value="8" name="gas_octavos_salida"> 8/8</label></li>
+            </ul>
+        </div>
+        <div class="clearfix"></div>
+        <div class="">
+            {{ form.comentarios.errors|safe }}
+            <label for="id_comentarios">Comentarios:</label>
+            {{ form.comentarios }}
+        </div>
+       <div class="">
+            {{ form.tipo_pago.errors|safe }}
+            <label for="id_tipo_pago">Tipo de Pago:</label>
+            {{ form.tipo_pago }}
+        </div>
+        <div class="">
+            {{ form.km_salida.errors|safe }}
+            <label for="id_km_salida">Kilometraje:</label>
+            {{ form.km_salida }}
+        </div>
+        <div id="tarjeta">
+            <div class="">
+                {{ form.tarjeta.errors|safe }}
+                <label for="id_tarjeta">Tipo de Tarjeta:</label>
+                {{ form.tarjeta }}
+            </div>
+            <div class="">
+                {{ form.tar_numero.errors|safe }}
+                <label for="id_tar_numero"># Tarjeta:</label>
+                {{ form.tar_numero }}
+            </div>
+            <div class="">
+                {{ form.tar_vencimiento.errors|safe }}
+                <label for="id_tar_vencimiento">Fecha Vencimiento:</label>
+                {{ form.tar_vencimiento }}
+            </div>
+            {{ form.total }}
+        </div>
+        <div class="page-header">
+          <h1 >Total: <span id="total"></span></h1>
+        </div>
+        
+        <input type="submit" class="btn btn-success" value="Guardar" />
+    </form>
 {% endblock content %}