mirror of
https://github.com/frappe/erpnext.git
synced 2026-04-13 03:45:08 +00:00
Merge pull request #49183 from aerele/fix/mr-status-from-wo
Fix/mr status from wo
(cherry picked from commit 67e57018bc)
This commit is contained in:
@@ -108,7 +108,7 @@ status_map = {
|
||||
["Pending", "eval:self.status != 'Stopped' and self.per_ordered == 0 and self.docstatus == 1"],
|
||||
[
|
||||
"Ordered",
|
||||
"eval:self.status != 'Stopped' and self.per_ordered == 100 and self.docstatus == 1 and self.material_request_type == 'Purchase'",
|
||||
"eval:self.status != 'Stopped' and self.per_ordered == 100 and self.docstatus == 1 and self.material_request_type in ['Purchase', 'Manufacture']",
|
||||
],
|
||||
[
|
||||
"Transferred",
|
||||
@@ -134,10 +134,6 @@ status_map = {
|
||||
"Partially Ordered",
|
||||
"eval:self.status != 'Stopped' and self.per_ordered < 100 and self.per_ordered > 0 and self.docstatus == 1 and self.material_request_type != 'Material Transfer'",
|
||||
],
|
||||
[
|
||||
"Manufactured",
|
||||
"eval:self.status != 'Stopped' and self.per_ordered == 100 and self.docstatus == 1 and self.material_request_type == 'Manufacture'",
|
||||
],
|
||||
],
|
||||
"POS Opening Entry": [
|
||||
["Draft", None],
|
||||
|
||||
@@ -1830,7 +1830,7 @@ class TestSalesOrder(AccountsTestMixin, FrappeTestCase):
|
||||
wo.reload()
|
||||
so.reload()
|
||||
self.assertEqual(so.items[0].work_order_qty, wo.produced_qty)
|
||||
self.assertEqual(mr.status, "Manufactured")
|
||||
self.assertEqual(mr.status, "Ordered")
|
||||
|
||||
@change_settings(
|
||||
"Accounts Settings",
|
||||
|
||||
@@ -35,7 +35,7 @@ frappe.listview_settings["Material Request"] = {
|
||||
return [__("Partially Received"), "yellow", "per_received,<,100"];
|
||||
} else if (doc.material_request_type == "Purchase" && flt(doc.per_received, precision) == 100) {
|
||||
return [__("Received"), "green", "per_received,=,100"];
|
||||
} else if (doc.material_request_type == "Purchase") {
|
||||
} else if (["Purchase", "Manufacture"].includes(doc.material_request_type)) {
|
||||
return [__("Ordered"), "green", "per_ordered,=,100"];
|
||||
} else if (doc.material_request_type == "Material Transfer") {
|
||||
return [__("Transfered"), "green", "per_ordered,=,100"];
|
||||
@@ -43,8 +43,6 @@ frappe.listview_settings["Material Request"] = {
|
||||
return [__("Issued"), "green", "per_ordered,=,100"];
|
||||
} else if (doc.material_request_type == "Customer Provided") {
|
||||
return [__("Received"), "green", "per_ordered,=,100"];
|
||||
} else if (doc.material_request_type == "Manufacture") {
|
||||
return [__("Manufactured"), "green", "per_ordered,=,100"];
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -866,6 +866,23 @@ class TestMaterialRequest(FrappeTestCase):
|
||||
for perm in permissions:
|
||||
perm.delete()
|
||||
|
||||
def test_manufacture_type_status_over_wo(self):
|
||||
from erpnext.stock.doctype.material_request.material_request import raise_work_orders
|
||||
|
||||
mr = make_material_request(
|
||||
item_code="_Test FG Item", material_request_type="Manufacture", do_not_submit=False
|
||||
)
|
||||
|
||||
work_order = raise_work_orders(mr.name)
|
||||
wo = frappe.get_doc("Work Order", work_order[0])
|
||||
wo.wip_warehouse = "_Test Warehouse 1 - _TC"
|
||||
wo.submit()
|
||||
|
||||
mr.reload()
|
||||
|
||||
self.assertEqual(mr.per_ordered, 100)
|
||||
self.assertEqual(mr.status, "Ordered")
|
||||
|
||||
|
||||
def get_in_transit_warehouse(company):
|
||||
if not frappe.db.exists("Warehouse Type", "Transit"):
|
||||
|
||||
Reference in New Issue
Block a user