fix: set first_response_time on status change of issue

This commit is contained in:
diptanilsaha
2025-09-20 20:37:52 +05:30
parent 7e63f1d220
commit ba459204b0
2 changed files with 4 additions and 2 deletions

View File

@@ -310,7 +310,7 @@ def is_first_response(issue):
def calculate_first_response_time(issue, first_responded_on):
issue_creation_date = issue.service_level_agreement_creation or issue.creation
issue_creation_date = get_datetime(issue.service_level_agreement_creation or issue.creation)
issue_creation_time = get_time_in_seconds(issue_creation_date)
first_responded_on_in_seconds = get_time_in_seconds(first_responded_on)
support_hours = frappe.get_cached_doc(

View File

@@ -25,7 +25,7 @@ from frappe.utils.caching import redis_cache
from frappe.utils.nestedset import get_ancestors_of
from frappe.utils.safe_exec import get_safe_globals
from erpnext.support.doctype.issue.issue import get_holidays
from erpnext.support.doctype.issue.issue import calculate_first_response_time, get_holidays
class ServiceLevelAgreement(Document):
@@ -552,6 +552,8 @@ def handle_status_change(doc, apply_sla_for_resolution):
def set_first_response():
if doc.meta.has_field("first_responded_on") and not doc.get("first_responded_on"):
doc.first_responded_on = now_time
if doc.meta.has_field("first_response_time"):
doc.first_response_time = calculate_first_response_time(doc, doc.first_responded_on)
if get_datetime(doc.get("first_responded_on")) > get_datetime(doc.get("response_by")):
record_assigned_users_on_failure(doc)