mirror of
https://github.com/frappe/erpnext.git
synced 2026-03-22 11:44:11 +00:00
feat: sort timesheets by start time
This commit is contained in:
@@ -216,15 +216,15 @@ class Timesheet(Document):
|
||||
|
||||
@frappe.whitelist()
|
||||
def get_projectwise_timesheet_data(project=None, parent=None, from_time=None, to_time=None):
|
||||
condition = ''
|
||||
condition = ""
|
||||
if project:
|
||||
condition += "and tsd.project = %(project)s"
|
||||
condition += "AND tsd.project = %(project)s "
|
||||
if parent:
|
||||
condition += "AND tsd.parent = %(parent)s"
|
||||
condition += "AND tsd.parent = %(parent)s "
|
||||
if from_time and to_time:
|
||||
condition += "AND CAST(tsd.from_time as DATE) BETWEEN %(from_time)s AND %(to_time)s"
|
||||
|
||||
return frappe.db.sql("""
|
||||
query = f"""
|
||||
SELECT
|
||||
|
||||
tsd.name as name,
|
||||
@@ -242,16 +242,25 @@ def get_projectwise_timesheet_data(project=None, parent=None, from_time=None, to
|
||||
INNER JOIN `tabTimesheet` ts
|
||||
ON ts.name = tsd.parent
|
||||
|
||||
WHERE tsd.parenttype = 'Timesheet'
|
||||
AND tsd.docstatus=1 {0}
|
||||
WHERE
|
||||
|
||||
tsd.parenttype = 'Timesheet'
|
||||
AND tsd.docstatus = 1
|
||||
AND tsd.is_billable = 1
|
||||
AND tsd.sales_invoice is null
|
||||
""".format(condition), {
|
||||
'project': project,
|
||||
'parent': parent,
|
||||
'from_time': from_time,
|
||||
'to_time': to_time
|
||||
}, as_dict=1)
|
||||
AND tsd.sales_invoice is NULL
|
||||
{condition}
|
||||
|
||||
ORDER BY tsd.from_time ASC
|
||||
"""
|
||||
|
||||
filters = {
|
||||
"project": project,
|
||||
"parent": parent,
|
||||
"from_time": from_time,
|
||||
"to_time": to_time
|
||||
}
|
||||
|
||||
return frappe.db.sql(query, filters, as_dict=1)
|
||||
|
||||
@frappe.whitelist()
|
||||
@frappe.validate_and_sanitize_search_inputs
|
||||
|
||||
Reference in New Issue
Block a user