mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-20 13:39:18 +00:00
Merge pull request #21280 from anupamvs/opportunity-calendar
Adding Opportunity Calendar View
This commit is contained in:
@@ -336,3 +336,27 @@ def make_opportunity_from_communication(communication, ignore_communication_link
|
|||||||
link_communication_to_document(doc, "Opportunity", opportunity.name, ignore_communication_links)
|
link_communication_to_document(doc, "Opportunity", opportunity.name, ignore_communication_links)
|
||||||
|
|
||||||
return opportunity.name
|
return opportunity.name
|
||||||
|
@frappe.whitelist()
|
||||||
|
def get_events(start, end, filters=None):
|
||||||
|
"""Returns events for Gantt / Calendar view rendering.
|
||||||
|
:param start: Start date-time.
|
||||||
|
:param end: End date-time.
|
||||||
|
:param filters: Filters (JSON).
|
||||||
|
"""
|
||||||
|
from frappe.desk.calendar import get_event_conditions
|
||||||
|
conditions = get_event_conditions("Opportunity", filters)
|
||||||
|
|
||||||
|
data = frappe.db.sql("""
|
||||||
|
select
|
||||||
|
distinct `tabOpportunity`.name, `tabOpportunity`.customer_name, `tabOpportunity`.opportunity_amount,
|
||||||
|
`tabOpportunity`.title, `tabOpportunity`.contact_date
|
||||||
|
from
|
||||||
|
`tabOpportunity`
|
||||||
|
where
|
||||||
|
(`tabOpportunity`.contact_date between %(start)s and %(end)s)
|
||||||
|
{conditions}
|
||||||
|
""".format(conditions=conditions), {
|
||||||
|
"start": start,
|
||||||
|
"end": end
|
||||||
|
}, as_dict=True, update={"allDay": 0})
|
||||||
|
return data
|
||||||
19
erpnext/crm/doctype/opportunity/opportunity_calendar.js
Normal file
19
erpnext/crm/doctype/opportunity/opportunity_calendar.js
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
|
||||||
|
// License: GNU General Public License v3. See license.txt
|
||||||
|
frappe.views.calendar["Opportunity"] = {
|
||||||
|
field_map: {
|
||||||
|
"start": "contact_date",
|
||||||
|
"end": "contact_date",
|
||||||
|
"id": "name",
|
||||||
|
"title": "customer_name",
|
||||||
|
"allDay": "allDay"
|
||||||
|
},
|
||||||
|
options: {
|
||||||
|
header: {
|
||||||
|
left: 'prev,next today',
|
||||||
|
center: 'title',
|
||||||
|
right: 'month'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
get_events_method: 'erpnext.crm.doctype.opportunity.opportunity.get_events'
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user