fix: open lead and opportunities based on today's event
This commit is contained in:
parent
7921a1a605
commit
925b9d985e
@ -1,6 +1,7 @@
|
||||
import frappe
|
||||
from frappe.model.document import Document
|
||||
from frappe.utils import cstr, now
|
||||
from frappe.utils import cstr, now, today
|
||||
from pypika import functions
|
||||
|
||||
|
||||
def update_lead_phone_numbers(contact, method):
|
||||
@ -177,6 +178,27 @@ def get_open_events(ref_doctype, ref_docname):
|
||||
return data
|
||||
|
||||
|
||||
def open_leads_opportunities_based_on_todays_event():
|
||||
event = frappe.qb.DocType("Event")
|
||||
event_link = frappe.qb.DocType("Event Participants")
|
||||
|
||||
query = (
|
||||
frappe.qb.from_(event)
|
||||
.join(event_link)
|
||||
.on(event_link.parent == event.name)
|
||||
.select(event_link.reference_doctype, event_link.reference_docname)
|
||||
.where(
|
||||
(event_link.reference_doctype.isin(["Lead", "Opportunity"]))
|
||||
& (event.status == "Open")
|
||||
& (functions.Date(event.starts_on) == today())
|
||||
)
|
||||
)
|
||||
data = query.run(as_dict=True)
|
||||
|
||||
for d in data:
|
||||
frappe.db.set_value(d.reference_doctype, d.reference_docname, "status", "Open")
|
||||
|
||||
|
||||
class CRMNote(Document):
|
||||
@frappe.whitelist()
|
||||
def add_note(self, note):
|
||||
|
@ -457,6 +457,7 @@ scheduler_events = {
|
||||
"erpnext.hr.utils.allocate_earned_leaves",
|
||||
"erpnext.loan_management.doctype.process_loan_security_shortfall.process_loan_security_shortfall.create_process_loan_security_shortfall",
|
||||
"erpnext.loan_management.doctype.process_loan_interest_accrual.process_loan_interest_accrual.process_loan_interest_accrual_for_term_loans",
|
||||
"erpnext.crm.utils.open_leads_opportunities_based_on_todays_event",
|
||||
],
|
||||
"weekly": ["erpnext.hr.doctype.employee.employee_reminders.send_reminders_in_advance_weekly"],
|
||||
"monthly": ["erpnext.hr.doctype.employee.employee_reminders.send_reminders_in_advance_monthly"],
|
||||
|
Loading…
x
Reference in New Issue
Block a user