Skip to content

Commit

Permalink
fix: timeout error for work order
Browse files Browse the repository at this point in the history
  • Loading branch information
rohitwaghchaure committed Jan 9, 2025
1 parent d79e561 commit b4ceda6
Showing 1 changed file with 14 additions and 3 deletions.
17 changes: 14 additions & 3 deletions erpnext/manufacturing/doctype/job_card/job_card.py
Original file line number Diff line number Diff line change
Expand Up @@ -344,6 +344,9 @@ def has_overlap(self, production_capacity, time_logs):
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)

Expand Down Expand Up @@ -389,8 +392,10 @@ def get_time_logs(self, args, doctype, open_job_cards=None):
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)

Expand Down Expand Up @@ -447,7 +452,13 @@ def time_slot_wise_busy_workstations(existing_time_logs) -> dict:
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)
Expand Down

0 comments on commit b4ceda6

Please sign in to comment.