fix(job card): only hold during draft state (backport #31243) (#31249)

* fix(job card): only hold during draft state (#31243)

(cherry picked from commit ee5bc58e9b)

# Conflicts:
#	erpnext/patches.txt

* chore: conflicts

Co-authored-by: Ankush Menat <me@ankush.dev>
This commit is contained in:
mergify[bot]
2022-06-06 19:54:56 +05:30
committed by GitHub
parent 0badfc8748
commit a7fc278b60
3 changed files with 21 additions and 2 deletions

View File

@@ -621,7 +621,7 @@ class JobCard(Document):
self.set_status(update_status)
def set_status(self, update_status=False):
if self.status == "On Hold":
if self.status == "On Hold" and self.docstatus == 0:
return
self.status = {0: "Open", 1: "Submitted", 2: "Cancelled"}[self.docstatus or 0]

View File

@@ -366,4 +366,4 @@ erpnext.patches.v13_0.requeue_recoverable_reposts
erpnext.patches.v13_0.create_accounting_dimensions_in_orders
erpnext.patches.v13_0.set_per_billed_in_return_delivery_note
erpnext.patches.v13_0.update_employee_advance_status
erpnext.patches.v13_0.job_card_status_on_hold

View File

@@ -0,0 +1,19 @@
import frappe
def execute():
job_cards = frappe.get_all(
"Job Card",
{"status": "On Hold", "docstatus": ("!=", 0)},
pluck="name",
)
for idx, job_card in enumerate(job_cards):
try:
doc = frappe.get_doc("Job Card", job_card)
doc.set_status()
doc.db_set("status", doc.status, update_modified=False)
if idx % 100 == 0:
frappe.db.commit()
except Exception:
continue