fix: Validation for delivery date in Sales Order (#35597)

* fix: Validation for delivery date in Sales Order

* chore: update utils

* chore: revert

* chore: Add default delivery date
This commit is contained in:
Deepesh Garg 2023-06-13 21:35:52 +05:30 committed by GitHub
parent 937c0feefe
commit 984f89d274
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 4 deletions

View File

@ -299,6 +299,7 @@ def _make_sales_order(source_name, target_doc=None, ignore_permissions=False):
) )
target.flags.ignore_permissions = ignore_permissions target.flags.ignore_permissions = ignore_permissions
target.delivery_date = nowdate()
target.run_method("set_missing_values") target.run_method("set_missing_values")
target.run_method("calculate_taxes_and_totals") target.run_method("calculate_taxes_and_totals")
@ -306,6 +307,7 @@ def _make_sales_order(source_name, target_doc=None, ignore_permissions=False):
balance_qty = obj.qty - ordered_items.get(obj.item_code, 0.0) balance_qty = obj.qty - ordered_items.get(obj.item_code, 0.0)
target.qty = balance_qty if balance_qty > 0 else 0 target.qty = balance_qty if balance_qty > 0 else 0
target.stock_qty = flt(target.qty) * flt(obj.conversion_factor) target.stock_qty = flt(target.qty) * flt(obj.conversion_factor)
target.delivery_date = nowdate()
if obj.against_blanket_order: if obj.against_blanket_order:
target.against_blanket_order = obj.against_blanket_order target.against_blanket_order = obj.against_blanket_order

View File

@ -60,9 +60,9 @@ class TestQuotation(FrappeTestCase):
sales_order = make_sales_order(quotation.name) sales_order = make_sales_order(quotation.name)
sales_order.currency = "USD" sales_order.currency = "USD"
sales_order.conversion_rate = 20.0 sales_order.conversion_rate = 20.0
sales_order.delivery_date = "2019-01-01"
sales_order.naming_series = "_T-Quotation-" sales_order.naming_series = "_T-Quotation-"
sales_order.transaction_date = nowdate() sales_order.transaction_date = nowdate()
sales_order.delivery_date = nowdate()
sales_order.insert() sales_order.insert()
self.assertEqual(sales_order.currency, "USD") self.assertEqual(sales_order.currency, "USD")
@ -644,8 +644,6 @@ def make_quotation(**args):
}, },
) )
qo.delivery_date = add_days(qo.transaction_date, 10)
if not args.do_not_save: if not args.do_not_save:
qo.insert() qo.insert()
if not args.do_not_submit: if not args.do_not_submit:

View File

@ -171,7 +171,8 @@ class SalesOrder(SellingController):
frappe.msgprint( frappe.msgprint(
_("Expected Delivery Date should be after Sales Order Date"), _("Expected Delivery Date should be after Sales Order Date"),
indicator="orange", indicator="orange",
title=_("Warning"), title=_("Invalid Delivery Date"),
raise_exception=True,
) )
else: else:
frappe.throw(_("Please enter Delivery Date")) frappe.throw(_("Please enter Delivery Date"))