lambda-erp 0.8.7__tar.gz → 0.8.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/PKG-INFO +1 -1
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/documents.py +8 -7
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/pyproject.toml +1 -1
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/.gitignore +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/LICENSE +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/README.md +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/attachments.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/auth.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/bootstrap.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/chat.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/demo_limits.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/deps.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/errors.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/main.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/oauth.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/pdf.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/providers.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/remarks_md.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/accounting.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/admin.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/analytics.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/availability.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/bank_reconciliation.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/chat_api.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/masters.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/mcp.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/proposals.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/reports.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/routers/setup.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/services.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/templates/document.html +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/api/templates/proposal.html +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/docs/agents/README.md +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/frontend/LICENSE +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/frontend/README.md +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/frontend/src/api/client.ts +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/bank_transaction.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/budget.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/chart_of_accounts.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/general_ledger.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/journal_entry.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/payment_entry.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/pos_invoice.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/purchase_invoice.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/revaluation.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/sales_invoice.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/engine.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/pack.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/packs/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/packs/ch.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/packs/de_common.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/packs/de_skr03.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/packs/de_skr04.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/packs/generic.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/profiles.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/setup/spine.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/accounting/subscription.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/assets/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/assets/asset.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/assets/reservation.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/buying/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/buying/purchase_order.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/controllers/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/controllers/currency.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/controllers/defaults.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/controllers/pricing_rule.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/controllers/taxes_and_totals.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/database.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/exceptions.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/hooks.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/model.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/selling/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/selling/proposal.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/selling/quotation.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/selling/sales_order.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/simulation.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/stock/__init__.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/stock/delivery_note.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/stock/purchase_receipt.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/stock/stock_entry.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/stock/stock_ledger.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/lambda_erp/utils.py +0 -0
- {lambda_erp-0.8.7 → lambda_erp-0.8.8}/terraform/README.md +0 -0
|
@@ -100,15 +100,16 @@ def list_docs(
|
|
|
100
100
|
if order.lower() not in ("asc", "desc"):
|
|
101
101
|
raise HTTPException(status_code=400, detail="order must be 'asc' or 'desc'")
|
|
102
102
|
|
|
103
|
-
# Column projection: the frontend sends the columns its list view
|
|
104
|
-
#
|
|
105
|
-
#
|
|
103
|
+
# Column projection: the frontend sends the columns its list view renders, so
|
|
104
|
+
# a wide doctype doesn't ship every column for a few-column grid. This is
|
|
105
|
+
# ADVISORY — unknown columns are silently dropped, never a 400: the frontend
|
|
106
|
+
# appends display-only fields (currency, party_type) that not every doctype
|
|
107
|
+
# has, and a projection can only ever narrow the response (name is kept
|
|
108
|
+
# downstream), so an unknown field is harmless. (Contrast order_by/search_
|
|
109
|
+
# fields, which affect query correctness and stay strict.)
|
|
106
110
|
projection = None
|
|
107
111
|
if fields:
|
|
108
|
-
projection = [f.strip() for f in fields.split(",") if f.strip()]
|
|
109
|
-
bad = [f for f in projection if f not in columns]
|
|
110
|
-
if bad:
|
|
111
|
-
raise HTTPException(status_code=400, detail=f"Unknown field(s): {', '.join(bad)}")
|
|
112
|
+
projection = [f.strip() for f in fields.split(",") if f.strip() and f.strip() in columns]
|
|
112
113
|
|
|
113
114
|
rows = list_documents(doctype_slug, filters=filters, limit=limit, offset=offset,
|
|
114
115
|
include_discarded=include_discarded, order_by=order_by, order=order,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|