[enhance] desktop messages

This commit is contained in:
Rushabh Mehta 2017-02-22 16:15:43 +05:30
parent 8c9bc8edbb
commit 05ce7ec7bb
2 changed files with 104 additions and 2 deletions

View File

@ -28,6 +28,7 @@ after_install = "erpnext.setup.install.after_install"
boot_session = "erpnext.startup.boot.boot_session"
notification_config = "erpnext.startup.notifications.get_notification_config"
get_help_messages = "erpnext.utilities.activation.get_help_messages"
on_session_creation = "erpnext.shopping_cart.utils.set_cart_count"
on_logout = "erpnext.shopping_cart.utils.clear_cart_count"

View File

@ -1,4 +1,6 @@
import frappe
import frappe, erpnext
from frappe import _
def get_level():
activation_level = 0
@ -20,6 +22,9 @@ def get_level():
if frappe.db.count('Employee') > 3:
activation_level += 1
if frappe.db.count('Lead') > 3:
activation_level += 1
if frappe.db.count('Payment Entry') > 2:
activation_level += 1
@ -29,8 +34,104 @@ def get_level():
if frappe.db.count('User') > 5:
activation_level += 1
if frappe.db.count('Student') > 5:
activation_level += 1
if frappe.db.count('Student Batch') > 5:
activation_level += 1
if frappe.db.count('Instructor') > 5:
activation_level += 1
# recent login
if frappe.db.sql('select name from tabUser where last_login > date_sub(now(), interval 2 day) limit 1'):
activation_level += 1
return activation_level
return activation_level
def get_help_messages():
'''Returns help messages to be shown on Desktop'''
# if get_level() > 6:
# return []
messages = []
domain = frappe.db.get_value('Company', erpnext.get_default_company(), 'domain')
if domain in ('Manufacturing', 'Retail', 'Services', 'Distribution'):
count = frappe.db.count('Lead')
if count < 3:
messages.append(dict(
title=_('Create Leads'),
description=_('Create Leads'),
action=_('Leads help you get business, add all your contacts and more as your leads'),
route='List/Lead',
count=count
))
count = frappe.db.count('Quotation')
if count < 3:
messages.append(dict(
title=_('Create customer quotes'),
description=_('Quotations are proposals, bids you have sent to your customers'),
action=_('Make Quotation'),
route='List/Quotation'
))
count = frappe.db.count('Sales Order')
if count < 3:
messages.append(dict(
title=_('Manage your orders'),
description=_('Make Sales Orders to help you plan your work and deliver on-time'),
action=_('Make Sales Order'),
route='List/Sales Order'
))
count = frappe.db.count('Purchase Order')
if count < 3:
messages.append(dict(
title=_('Create Purchase Orders'),
description=_('Purchase orders help you plan and follow up on your purchases'),
action=_('Make Purchase Order'),
route='List/Purchase Order'
))
count = frappe.db.count('User')
if count < 3:
messages.append(dict(
title=_('Create Users'),
description=_('Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts'),
action=_('Make User'),
route='List/User'
))
elif domain == 'Education':
count = frappe.db.count('Student')
if count < 5:
messages.append(dict(
title=_('Add Students'),
description=_('Students are at the heart of the system, add all your students'),
action=_('Make Student'),
route='List/Student'
))
count = frappe.db.count('Student Batch')
if count < 3:
messages.append(dict(
title=_('Group your students in batches'),
description=_('Student Batches help you track attendance, assessments and fees for students'),
action=_('Make Student Batch'),
route='List/Student Batch'
))
# anyways
count = frappe.db.count('Employee')
if count < 3:
messages.append(dict(
title=_('Create Employee Records'),
description=_('Create Employee records to manage leaves, expense claims and payroll'),
action=_('Make Employee'),
route='List/Employee'
))
return messages