refactor: rename DocReminder -> Reminder

This commit is contained in:
Ankush Menat 2023-02-24 13:45:32 +05:30
parent 2b32dc054c
commit e7f604ef48
8 changed files with 25 additions and 20 deletions

View file

@ -1,7 +1,7 @@
// Copyright (c) 2023, Frappe Technologies and contributors
// For license information, please see license.txt
// frappe.ui.form.on("DocReminder", {
// frappe.ui.form.on("Reminder", {
// refresh(frm) {
// },

View file

@ -8,16 +8,18 @@
"engine": "InnoDB",
"field_order": [
"user",
"reminder_doctype",
"reminder_docname",
"remind_at",
"description",
"reminder_doctype",
"reminder_docname",
"notified"
],
"fields": [
{
"default": "__user",
"fieldname": "user",
"fieldtype": "Link",
"hidden": 1,
"label": "User",
"options": "User",
"reqd": 1,
@ -28,16 +30,19 @@
"fieldtype": "Link",
"in_list_view": 1,
"label": "Document Type",
"options": "DocType"
"options": "DocType",
"read_only": 1
},
{
"fieldname": "reminder_docname",
"fieldtype": "Dynamic Link",
"in_list_view": 1,
"label": "Document Name",
"options": "reminder_doctype"
"options": "reminder_doctype",
"read_only": 1
},
{
"default": "now",
"fieldname": "remind_at",
"fieldtype": "Datetime",
"in_list_view": 1,
@ -48,23 +53,23 @@
{
"fieldname": "description",
"fieldtype": "Small Text",
"label": "description",
"label": "Description",
"reqd": 1
},
{
"default": "0",
"fieldname": "notified",
"fieldtype": "Check",
"hidden": 1,
"label": "notified"
}
],
"in_create": 1,
"index_web_pages_for_search": 1,
"links": [],
"modified": "2023-02-24 12:28:00.642813",
"modified": "2023-02-24 13:47:50.419648",
"modified_by": "Administrator",
"module": "Automation",
"name": "DocReminder",
"name": "Reminder",
"naming_rule": "Random",
"owner": "Administrator",
"permissions": [
@ -77,7 +82,7 @@
"write": 1
}
],
"read_only": 1,
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC",
"states": [],

View file

@ -8,13 +8,13 @@ from frappe.utils import cint
from frappe.utils.data import add_to_date, get_datetime, now_datetime
class DocReminder(Document):
class Reminder(Document):
@staticmethod
def clear_old_logs(days=30):
from frappe.query_builder import Interval
from frappe.query_builder.functions import Now
table = frappe.qb.DocType("DocReminder")
table = frappe.qb.DocType("Reminder")
frappe.db.delete(table, filters=(table.remind_at < (Now() - Interval(days=days))))
def validate(self):
@ -47,7 +47,7 @@ def create_new_reminder(
reminder_doctype: str | None = None,
reminder_docname: str | None = None,
):
reminder = frappe.new_doc("DocReminder")
reminder = frappe.new_doc("Reminder")
reminder.description = description
reminder.remind_at = remind_at
@ -65,7 +65,7 @@ def send_reminders():
lower_threshold = add_to_date(now_datetime(), hours=-8, as_string=True, as_datetime=True)
pending_reminders = frappe.get_all(
"DocReminder",
"Reminder",
filters=[
("remind_at", "<=", upper_threshold),
("remind_at", ">=", lower_threshold), # dont send too old reminders if failed to send
@ -75,4 +75,4 @@ def send_reminders():
)
for reminder in pending_reminders:
frappe.get_doc("DocReminder", reminder).send_reminder()
frappe.get_doc("Reminder", reminder).send_reminder()

View file

@ -2,13 +2,13 @@
# See license.txt
import frappe
from frappe.automation.doctype.docreminder.docreminder import create_new_reminder, send_reminders
from frappe.automation.doctype.reminder.reminder import create_new_reminder, send_reminders
from frappe.desk.doctype.notification_log.notification_log import get_notification_logs
from frappe.tests.utils import FrappeTestCase
from frappe.utils import add_to_date, now_datetime
class TestDocReminder(FrappeTestCase):
class TestReminder(FrappeTestCase):
def test_reminder(self):
description = "TEST_REMINDER"

View file

@ -20,7 +20,7 @@ DEFAULT_LOGTYPES_RETENTION = {
"Submission Queue": 30,
"Prepared Report": 30,
"Webhook Request Log": 30,
"DocReminder": 30,
"Reminder": 30,
}

View file

@ -194,7 +194,7 @@ scheduler_events = {
"frappe.email.doctype.email_account.email_account.notify_unreplied",
"frappe.utils.global_search.sync_global_search",
"frappe.monitor.flush",
"frappe.automation.doctype.docreminder.docreminder.send_reminders",
"frappe.automation.doctype.reminder.reminder.send_reminders",
],
"hourly": [
"frappe.model.utils.link_count.update_link_count",

View file

@ -85,7 +85,7 @@ export class ReminderManager {
create_reminder() {
frappe
.xcall("frappe.automation.doctype.docreminder.docreminder.create_new_reminder", {
.xcall("frappe.automation.doctype.reminder.reminder.create_new_reminder", {
remind_at: this.dialog.get_value("remind_at"),
description: this.dialog.get_value("description"),
reminder_doctype: this.frm?.doc.doctype,