From ef7f9c6ecc3557528679dd6a7daea43f95b18ea9 Mon Sep 17 00:00:00 2001 From: Anupam K Date: Thu, 23 Apr 2020 13:45:19 +0530 Subject: [PATCH] Review changes --- erpnext/patches.txt | 2 +- .../update_end_date_and_status_in_email.py | 26 ------------------- ...e_end_date_and_status_in_email_campaign.py | 24 +++++++++++++++++ 3 files changed, 25 insertions(+), 27 deletions(-) delete mode 100644 erpnext/patches/v12_0/update_end_date_and_status_in_email.py create mode 100644 erpnext/patches/v12_0/update_end_date_and_status_in_email_campaign.py diff --git a/erpnext/patches.txt b/erpnext/patches.txt index dd2705ab6b2..ad02a68faaa 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -658,4 +658,4 @@ erpnext.patches.v12_0.rename_mws_settings_fields erpnext.patches.v12_0.set_correct_status_for_expense_claim erpnext.patches.v12_0.set_updated_purpose_in_pick_list erpnext.patches.v12_0.repost_stock_ledger_entries_for_target_warehouse -erpnext.patches.v12_0.update_end_date_and_status_in_email +erpnext.patches.v12_0.update_end_date_and_status_in_email_campaign diff --git a/erpnext/patches/v12_0/update_end_date_and_status_in_email.py b/erpnext/patches/v12_0/update_end_date_and_status_in_email.py deleted file mode 100644 index b3753a5e8db..00000000000 --- a/erpnext/patches/v12_0/update_end_date_and_status_in_email.py +++ /dev/null @@ -1,26 +0,0 @@ -from __future__ import unicode_literals -import frappe -from frappe.utils import add_days, getdate, today - -def execute(): - email_campaign = frappe.get_all('Email Campaign') - if not email_campaign: - return - for campaign in email_campaign: - doc = frappe.get_doc("Email Campaign",campaign["name"]) - send_after_days = [] - - camp = frappe.get_doc("Campaign", doc.campaign_name) - for entry in camp.get("campaign_schedules"): - send_after_days.append(entry.send_after_days) - if send_after_days: - end_date = add_days(getdate(doc.start_date), max(send_after_days)) - doc.db_set("end_date", end_date) - today_date = getdate(today()) - if doc.start_date > today_date: - doc.db_set("status", "Scheduled") - elif end_date >= today_date: - doc.db_set("status", "In Progress") - elif end_date < today_date: - doc.db_set("status", "Completed") - frappe.db.commit() \ No newline at end of file diff --git a/erpnext/patches/v12_0/update_end_date_and_status_in_email_campaign.py b/erpnext/patches/v12_0/update_end_date_and_status_in_email_campaign.py new file mode 100644 index 00000000000..f6561471de4 --- /dev/null +++ b/erpnext/patches/v12_0/update_end_date_and_status_in_email_campaign.py @@ -0,0 +1,24 @@ +from __future__ import unicode_literals +import frappe +from frappe.utils import add_days, getdate, today + +def execute(): + if frappe.db.exists('DocType', 'Email Campaign'): + email_campaign = frappe.get_all('Email Campaign') + for campaign in email_campaign: + doc = frappe.get_doc("Email Campaign",campaign["name"]) + send_after_days = [] + + camp = frappe.get_doc("Campaign", doc.campaign_name) + for entry in camp.get("campaign_schedules"): + send_after_days.append(entry.send_after_days) + if send_after_days: + end_date = add_days(getdate(doc.start_date), max(send_after_days)) + doc.db_set("end_date", end_date) + today_date = getdate(today()) + if doc.start_date > today_date: + doc.db_set("status", "Scheduled") + elif end_date >= today_date: + doc.db_set("status", "In Progress") + elif end_date < today_date: + doc.db_set("status", "Completed") \ No newline at end of file