Fix: Clean Home, Crear lineas de Venta
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
from django.shortcuts import render
|
||||
|
||||
from django.http import HttpResponse, HttpResponseRedirect, JsonResponse
|
||||
from django.template import loader
|
||||
#from django.template import loader
|
||||
from django.core.exceptions import ValidationError
|
||||
|
||||
from .models import Sale, Product, ProductCategory, Payment
|
||||
@@ -9,18 +10,22 @@ from .forms import ImportProductsForm, PurchaseForm, LineaFormSet, Reconciliatio
|
||||
import csv
|
||||
import io
|
||||
|
||||
|
||||
def index(request):
|
||||
return render(request, 'don_confiao/index.html')
|
||||
|
||||
|
||||
def buy(request):
|
||||
if request.method == "POST":
|
||||
sale_form = PurchaseForm(request.POST)
|
||||
sale_linea_form = LineaFormSet(request.POST)
|
||||
if sale_form.is_valid():
|
||||
sale_form.save()
|
||||
if sale_linea_form.is_valid():
|
||||
sale_linea_form.save()
|
||||
return HttpResponseRedirect("productos")
|
||||
if sale_form.is_valid() and sale_linea_form.is_valid():
|
||||
sale = sale_form.save()
|
||||
lines = sale_linea_form.save(commit=False)
|
||||
for line in lines:
|
||||
line.sale = sale
|
||||
line.save()
|
||||
return HttpResponseRedirect("compras")
|
||||
else:
|
||||
sale_form = PurchaseForm()
|
||||
sale_linea_form = LineaFormSet()
|
||||
@@ -33,6 +38,7 @@ def buy(request):
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
def purchases(request):
|
||||
purchases = Sale.objects.all()
|
||||
context = {
|
||||
@@ -89,6 +95,7 @@ def reconciliate_jar(request):
|
||||
{'summary': summary, 'form': form}
|
||||
)
|
||||
|
||||
|
||||
def reconciliations(request):
|
||||
return HttpResponse('<h1>Reconciliaciones</h1>')
|
||||
|
||||
@@ -98,9 +105,11 @@ def _categories_from_csv_string(categories_string, separator="&"):
|
||||
clean_categories = [c.strip() for c in categories]
|
||||
return [_category_from_name(category) for category in clean_categories]
|
||||
|
||||
|
||||
def _category_from_name(name):
|
||||
return ProductCategory.objects.get_or_create(name=name)[0]
|
||||
|
||||
|
||||
def handle_import_products_file(csv_file):
|
||||
data = io.StringIO(csv_file.read().decode('utf-8'))
|
||||
reader = csv.DictReader(data, quotechar='"')
|
||||
|
||||
Reference in New Issue
Block a user