fix: adapt to query builder

Signed-off-by: Akhil Narang <me@akhilnarang.dev>
This commit is contained in:
Akhil Narang
2025-11-16 22:50:58 +05:30
parent d40e660a52
commit 1cf9f903e5
49 changed files with 225 additions and 132 deletions

View File

@@ -63,7 +63,7 @@ def get_all_customers(date_range, company, field, limit=None):
return frappe.get_list(
"Sales Invoice",
fields=["customer as name", "sum(outstanding_amount) as value"],
fields=["customer as name", {"SUM": "outstanding_amount", "as": "value"}],
filters=filters,
group_by="customer",
order_by="value desc",
@@ -80,7 +80,7 @@ def get_all_customers(date_range, company, field, limit=None):
return frappe.get_list(
"Sales Order",
fields=["customer as name", f"sum({select_field}) as value"],
fields=["customer as name", {"SUM": select_field, "as": "value"}],
filters=filters,
group_by="customer",
order_by="value desc",
@@ -91,10 +91,10 @@ def get_all_customers(date_range, company, field, limit=None):
@frappe.whitelist()
def get_all_items(date_range, company, field, limit=None):
if field in ("available_stock_qty", "available_stock_value"):
select_field = "sum(actual_qty)" if field == "available_stock_qty" else "sum(stock_value)"
sum_field = "actual_qty" if field == "available_stock_qty" else "stock_value"
results = frappe.db.get_all(
"Bin",
fields=["item_code as name", f"{select_field} as value"],
fields=["item_code as name", {"SUM": sum_field, "as": "value"}],
group_by="item_code",
order_by="value desc",
limit=limit,
@@ -125,7 +125,7 @@ def get_all_items(date_range, company, field, limit=None):
select_doctype,
fields=[
f"`tab{child_doctype}`.item_code as name",
f"sum(`tab{child_doctype}`.{select_field}) as value",
{"SUM": f"`tab{child_doctype}`.{select_field}", "as": "value"},
],
filters=filters,
order_by="value desc",
@@ -145,7 +145,7 @@ def get_all_suppliers(date_range, company, field, limit=None):
return frappe.get_list(
"Purchase Invoice",
fields=["supplier as name", "sum(outstanding_amount) as value"],
fields=["supplier as name", {"SUM": "outstanding_amount", "as": "value"}],
filters=filters,
group_by="supplier",
order_by="value desc",
@@ -162,7 +162,7 @@ def get_all_suppliers(date_range, company, field, limit=None):
return frappe.get_list(
"Purchase Order",
fields=["supplier as name", f"sum({select_field}) as value"],
fields=["supplier as name", {"SUM": select_field, "as": "value"}],
filters=filters,
group_by="supplier",
order_by="value desc",
@@ -186,7 +186,7 @@ def get_all_sales_partner(date_range, company, field, limit=None):
"Sales Order",
fields=[
"sales_partner as name",
f"sum({select_field}) as value",
{"SUM": select_field, "as": "value"},
],
filters=filters,
group_by="sales_partner",
@@ -210,7 +210,7 @@ def get_all_sales_person(date_range, company, field=None, limit=0):
"Sales Order",
fields=[
"`tabSales Team`.sales_person as name",
"sum(`tabSales Team`.allocated_amount) as value",
{"SUM": "`tabSales Team`.allocated_amount", "as": "value"},
],
filters=filters,
group_by="`tabSales Team`.sales_person",