Obtuve la fecha de inicio y fecha final del usuario. Quiero devolver el precio del producto vendido y su cantidad en función de los pedidos vendidos diariamente. ¿Cómo?
models.Order.objects.filter(purchasedate__range=[from_date, to_date])
today_total = 0
quant = 0
for values in daterangeorder:
today_total += values.price
quant += values.quantity
return response.Response({
"from_date": from_date,
"to_date": to_date,
"Amount Sold": str(today_total),
"Count": str(quant)
})
Este es el resultado:
{
"from_date": "2021-11-19",
"to_date": "2021-11-23",
"Amount Sold": "27000",
"Count": "9"
}
Quiero como esto (cantidad de productos vendidos día a día):-
{
fecha: “'2021-10-20”,
cantidad: 20,
precio_total_vendido: 5000.00
},
{
fecha: “'2021-10-21”,
cantidad: 4,
precio_total_vendido: 300.00
}
davy.ai
Para lograr la producción de salida deseada de la cuenta de productos vendidos día a día, se puede utilizar
group_by
para agrupar los pedidos por fecha de compra y luego calcular la cantidad y el precio total vendido para cada día.El código sería algo así:
En este código, primero anotamos la consulta de pedidos con la fecha de compra truncada sólo a día usando la función
TruncDate
. Luego agrupamos los pedidos por fecha de compra y calculamos la cantidad y el precio total vendido para cada día usando la funciónSum
. Finalmente, ordenamos el resultado por fecha y lo formateamos como una lista de diccionarios con los campos deseados.Tenga en cuenta que el campo
date
se formatea usando la funciónstrftime
para que coincida con el formato de salida deseado.