49 lines
1.3 KiB
Python
49 lines
1.3 KiB
Python
from frappe import _
|
|
|
|
doctype_rule_map = {
|
|
"Item": {"points": 5, "for_doc_event": "New"},
|
|
"Customer": {"points": 5, "for_doc_event": "New"},
|
|
"Supplier": {"points": 5, "for_doc_event": "New"},
|
|
"Lead": {"points": 2, "for_doc_event": "New"},
|
|
"Opportunity": {
|
|
"points": 10,
|
|
"for_doc_event": "Custom",
|
|
"condition": 'doc.status=="Converted"',
|
|
"rule_name": _("On Converting Opportunity"),
|
|
"user_field": "converted_by",
|
|
},
|
|
"Sales Order": {
|
|
"points": 10,
|
|
"for_doc_event": "Submit",
|
|
"rule_name": _("On Sales Order Submission"),
|
|
"user_field": "modified_by",
|
|
},
|
|
"Purchase Order": {
|
|
"points": 10,
|
|
"for_doc_event": "Submit",
|
|
"rule_name": _("On Purchase Order Submission"),
|
|
"user_field": "modified_by",
|
|
},
|
|
"Task": {
|
|
"points": 5,
|
|
"condition": 'doc.status == "Completed"',
|
|
"rule_name": _("On Task Completion"),
|
|
"user_field": "completed_by",
|
|
},
|
|
}
|
|
|
|
|
|
def get_default_energy_point_rules():
|
|
return [
|
|
{
|
|
"doctype": "Energy Point Rule",
|
|
"reference_doctype": doctype,
|
|
"for_doc_event": rule.get("for_doc_event") or "Custom",
|
|
"condition": rule.get("condition"),
|
|
"rule_name": rule.get("rule_name") or _("On {0} Creation").format(doctype),
|
|
"points": rule.get("points"),
|
|
"user_field": rule.get("user_field") or "owner",
|
|
}
|
|
for doctype, rule in doctype_rule_map.items()
|
|
]
|