fix: timeout error for work order

(cherry picked from commit b4ceda6f2c)
This commit is contained in:
Rohit Waghchaure
2025-01-09 13:10:00 +05:30
committed by Mergify
parent 9e60d1ad79
commit 122b966a7b

View File

@@ -309,6 +309,9 @@ class JobCard(Document):
return overlap
def get_time_logs(self, args, doctype, open_job_cards=None):
if get_datetime(args.from_time) >= get_datetime(args.to_time):
args.to_time = add_to_date(args.from_time, minutes=args.remaining_time_in_mins)
jc = frappe.qb.DocType("Job Card")
jctl = frappe.qb.DocType(doctype)
@@ -354,8 +357,10 @@ class JobCard(Document):
else:
query = query.where(jc.name.isin(open_job_cards))
if doctype != "Job Card Time Log":
query = query.where(jc.total_time_in_mins == 0)
if doctype == "Job Card Time Log":
query = query.where(jc.docstatus < 2)
else:
query = query.where((jc.docstatus == 0) & (jc.total_time_in_mins == 0))
time_logs = query.run(as_dict=True)
@@ -412,7 +417,13 @@ class JobCard(Document):
def schedule_time_logs(self, row):
row.remaining_time_in_mins = row.time_in_mins
while row.remaining_time_in_mins > 0:
args = frappe._dict({"from_time": row.planned_start_time, "to_time": row.planned_end_time})
args = frappe._dict(
{
"from_time": row.planned_start_time,
"to_time": row.planned_end_time,
"remaining_time_in_mins": row.remaining_time_in_mins,
}
)
self.validate_overlap_for_workstation(args, row)
self.check_workstation_time(row)