feat(api): optimised get issues for get session-details
This commit is contained in:
parent
531b112439
commit
f296b27346
3 changed files with 9 additions and 7 deletions
|
|
@ -28,8 +28,8 @@ def __merge_cells(rows, start, count, replacement):
|
|||
return rows
|
||||
|
||||
|
||||
def __get_grouped_clickrage(rows, session_id):
|
||||
click_rage_issues = issues.get_by_session_id(session_id=session_id, issue_type="click_rage")
|
||||
def __get_grouped_clickrage(rows, session_id, project_id):
|
||||
click_rage_issues = issues.get_by_session_id(session_id=session_id, issue_type="click_rage", project_id=project_id)
|
||||
if len(click_rage_issues) == 0:
|
||||
return rows
|
||||
|
||||
|
|
@ -63,7 +63,7 @@ def get_by_sessionId2_pg(session_id, project_id, group_clickrage=False):
|
|||
)
|
||||
rows = cur.fetchall()
|
||||
if group_clickrage:
|
||||
rows = __get_grouped_clickrage(rows=rows, session_id=session_id)
|
||||
rows = __get_grouped_clickrage(rows=rows, session_id=session_id, project_id=project_id)
|
||||
|
||||
cur.execute(cur.mogrify("""
|
||||
SELECT
|
||||
|
|
|
|||
|
|
@ -44,16 +44,18 @@ def get(project_id, issue_id):
|
|||
return helper.dict_to_camel_case(data)
|
||||
|
||||
|
||||
def get_by_session_id(session_id, issue_type=None):
|
||||
def get_by_session_id(session_id, project_id, issue_type=None):
|
||||
with pg_client.PostgresClient() as cur:
|
||||
cur.execute(
|
||||
cur.mogrify(f"""\
|
||||
SELECT *
|
||||
FROM events_common.issues
|
||||
INNER JOIN public.issues USING (issue_id)
|
||||
WHERE session_id = %(session_id)s {"AND type = %(type)s" if issue_type is not None else ""}
|
||||
WHERE session_id = %(session_id)s
|
||||
AND project_id= %(project_id)s
|
||||
{"AND type = %(type)s" if issue_type is not None else ""}
|
||||
ORDER BY timestamp;""",
|
||||
{"session_id": session_id, "type": issue_type})
|
||||
{"session_id": session_id, "project_id": project_id, "type": issue_type})
|
||||
)
|
||||
return helper.list_to_camel_case(cur.fetchall())
|
||||
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@ def get_by_id2_pg(project_id, session_id, user_id, full_data=False, include_fav_
|
|||
duration=data["duration"])
|
||||
|
||||
data['metadata'] = __group_metadata(project_metadata=data.pop("projectMetadata"), session=data)
|
||||
data['issues'] = issues.get_by_session_id(session_id=session_id)
|
||||
data['issues'] = issues.get_by_session_id(session_id=session_id,project_id=project_id)
|
||||
data['live'] = live and assist.is_live(project_id=project_id,
|
||||
session_id=session_id,
|
||||
project_key=data["projectKey"])
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue