Merge branch 'master' into develop
This commit is contained in:
commit
51a07d19c8
@ -4,7 +4,7 @@ import inspect
|
|||||||
import frappe
|
import frappe
|
||||||
from erpnext.hooks import regional_overrides
|
from erpnext.hooks import regional_overrides
|
||||||
|
|
||||||
__version__ = '8.11.6'
|
__version__ = '9.0.0'
|
||||||
|
|
||||||
def get_default_company(user=None):
|
def get_default_company(user=None):
|
||||||
'''Get default company for user'''
|
'''Get default company for user'''
|
||||||
|
@ -765,6 +765,7 @@ def get_payment_entry(dt, dn, party_amount=None, bank_account=None, bank_amount=
|
|||||||
pe.append("references", {
|
pe.append("references", {
|
||||||
"reference_doctype": dt,
|
"reference_doctype": dt,
|
||||||
"reference_name": dn,
|
"reference_name": dn,
|
||||||
|
"bill_no": doc.get("bill_no"),
|
||||||
"due_date": doc.get("due_date"),
|
"due_date": doc.get("due_date"),
|
||||||
"total_amount": grand_total,
|
"total_amount": grand_total,
|
||||||
"outstanding_amount": outstanding_amount,
|
"outstanding_amount": outstanding_amount,
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#### POS
|
- POS - Online & Offline
|
||||||
- Now user has an option to enable or disable Offline POS mode from POS Settings
|
- Now user has an option to enable or disable Offline POS mode from POS Settings
|
||||||
- Provision to select the Item's serial number from the dropdown while adding item in the cart
|
- Provision to select the Item's serial number from the dropdown while adding item in the cart
|
||||||
- Indicator for stock availability in Online POS Mode.
|
- Indicator for stock availability in Online POS Mode.
|
||||||
@ -6,3 +6,25 @@
|
|||||||
#### Subscription
|
#### Subscription
|
||||||
- Setup recurring documents using **Subscription**
|
- Setup recurring documents using **Subscription**
|
||||||
- User can schedule the subscription for doctypes other than Sales Invoice, Purchase Invoice etc.
|
- User can schedule the subscription for doctypes other than Sales Invoice, Purchase Invoice etc.
|
||||||
|
|
||||||
|
#### Healthcare Domain
|
||||||
|
- Clinic / Practice Management
|
||||||
|
- Patient
|
||||||
|
- Physician, Physician scheduling
|
||||||
|
- Appointment
|
||||||
|
- Vital Signs
|
||||||
|
- Consultation
|
||||||
|
- Medical Code Standards
|
||||||
|
- Patient Medical Record
|
||||||
|
- Laboratory
|
||||||
|
- Sample Collection
|
||||||
|
- Lab Test
|
||||||
|
- Patient Portal
|
||||||
|
|
||||||
|
#### School Fees Management
|
||||||
|
- Fee Structure
|
||||||
|
- Fee Schedule
|
||||||
|
- Payment against Fees
|
||||||
|
|
||||||
|
#### Setup Wizard
|
||||||
|
- Broken into 2 parts with a fresh looks
|
@ -436,7 +436,7 @@ erpnext.patches.v8_7.add_more_gst_fields
|
|||||||
erpnext.patches.v8_7.fix_purchase_receipt_status
|
erpnext.patches.v8_7.fix_purchase_receipt_status
|
||||||
erpnext.patches.v8_6.rename_bom_update_tool
|
erpnext.patches.v8_6.rename_bom_update_tool
|
||||||
erpnext.patches.v8_7.set_offline_in_pos_settings #11-09-17
|
erpnext.patches.v8_7.set_offline_in_pos_settings #11-09-17
|
||||||
erpnext.patches.v8_9.add_setup_progress_actions #08-09-2017
|
erpnext.patches.v8_9.add_setup_progress_actions #08-09-2017 #26-09-2017
|
||||||
erpnext.patches.v8_9.rename_company_sales_target_field
|
erpnext.patches.v8_9.rename_company_sales_target_field
|
||||||
erpnext.patches.v8_8.set_bom_rate_as_per_uom
|
erpnext.patches.v8_8.set_bom_rate_as_per_uom
|
||||||
erpnext.patches.v8_7.make_subscription_from_recurring_data
|
erpnext.patches.v8_7.make_subscription_from_recurring_data
|
||||||
|
@ -9,27 +9,27 @@ def execute():
|
|||||||
frappe.reload_doc("setup", "doctype", "setup_progress_action")
|
frappe.reload_doc("setup", "doctype", "setup_progress_action")
|
||||||
|
|
||||||
actions = [
|
actions = [
|
||||||
{"action_name": _("Add Company"), "action_doctype": "Company", "min_doc_count": 1, "is_completed": 1,
|
{"action_name": "Add Company", "action_doctype": "Company", "min_doc_count": 1, "is_completed": 1,
|
||||||
"domains": '[]' },
|
"domains": '[]' },
|
||||||
{"action_name": _("Set Sales Target"), "action_doctype": "Company", "min_doc_count": 99,
|
{"action_name": "Set Sales Target", "action_doctype": "Company", "min_doc_count": 99,
|
||||||
"action_document": frappe.defaults.get_defaults().get("company") or '',
|
"action_document": frappe.defaults.get_defaults().get("company") or '',
|
||||||
"action_field": "monthly_sales_target", "is_completed": 0,
|
"action_field": "monthly_sales_target", "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Customers"), "action_doctype": "Customer", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Customers", "action_doctype": "Customer", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Suppliers"), "action_doctype": "Supplier", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Suppliers", "action_doctype": "Supplier", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Products"), "action_doctype": "Item", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Products", "action_doctype": "Item", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Programs"), "action_doctype": "Program", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Programs", "action_doctype": "Program", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Instructors"), "action_doctype": "Instructor", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Instructors", "action_doctype": "Instructor", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Courses"), "action_doctype": "Course", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Courses", "action_doctype": "Course", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Rooms"), "action_doctype": "Room", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Rooms", "action_doctype": "Room", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Users"), "action_doctype": "User", "min_doc_count": 4, "is_completed": 0,
|
{"action_name": "Add Users", "action_doctype": "User", "min_doc_count": 4, "is_completed": 0,
|
||||||
"domains": '[]' }
|
"domains": '[]' }
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -20,6 +20,10 @@ frappe.pages['point-of-sale'].on_page_load = function(wrapper) {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
frappe.pages['point-of-sale'].refresh = function(wrapper) {
|
||||||
|
cur_frm = wrapper.pos.frm;
|
||||||
|
}
|
||||||
|
|
||||||
erpnext.pos.PointOfSale = class PointOfSale {
|
erpnext.pos.PointOfSale = class PointOfSale {
|
||||||
constructor(wrapper) {
|
constructor(wrapper) {
|
||||||
this.wrapper = $(wrapper).find('.layout-main-section');
|
this.wrapper = $(wrapper).find('.layout-main-section');
|
||||||
@ -478,6 +482,8 @@ class POSCart {
|
|||||||
}
|
}
|
||||||
|
|
||||||
update_taxes_and_totals() {
|
update_taxes_and_totals() {
|
||||||
|
if (!this.frm.doc.taxes) { return; }
|
||||||
|
|
||||||
const currency = this.frm.doc.currency;
|
const currency = this.frm.doc.currency;
|
||||||
this.frm.refresh_field('taxes');
|
this.frm.refresh_field('taxes');
|
||||||
|
|
||||||
|
@ -23,27 +23,27 @@ def install(country=None):
|
|||||||
|
|
||||||
# Setup Progress
|
# Setup Progress
|
||||||
{'doctype': "Setup Progress", "actions": [
|
{'doctype': "Setup Progress", "actions": [
|
||||||
{"action_name": _("Add Company"), "action_doctype": "Company", "min_doc_count": 1, "is_completed": 1,
|
{"action_name": "Add Company", "action_doctype": "Company", "min_doc_count": 1, "is_completed": 1,
|
||||||
"domains": '[]' },
|
"domains": '[]' },
|
||||||
{"action_name": _("Set Sales Target"), "action_doctype": "Company", "min_doc_count": 99,
|
{"action_name": "Set Sales Target", "action_doctype": "Company", "min_doc_count": 99,
|
||||||
"action_document": frappe.defaults.get_defaults().get("company") or '',
|
"action_document": frappe.defaults.get_defaults().get("company") or '',
|
||||||
"action_field": "monthly_sales_target", "is_completed": 0,
|
"action_field": "monthly_sales_target", "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Customers"), "action_doctype": "Customer", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Customers", "action_doctype": "Customer", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Suppliers"), "action_doctype": "Supplier", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Suppliers", "action_doctype": "Supplier", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Products"), "action_doctype": "Item", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Products", "action_doctype": "Item", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
"domains": '["Manufacturing", "Services", "Retail", "Distribution"]' },
|
||||||
{"action_name": _("Add Programs"), "action_doctype": "Program", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Programs", "action_doctype": "Program", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Instructors"), "action_doctype": "Instructor", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Instructors", "action_doctype": "Instructor", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Courses"), "action_doctype": "Course", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Courses", "action_doctype": "Course", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Rooms"), "action_doctype": "Room", "min_doc_count": 1, "is_completed": 0,
|
{"action_name": "Add Rooms", "action_doctype": "Room", "min_doc_count": 1, "is_completed": 0,
|
||||||
"domains": '["Education"]' },
|
"domains": '["Education"]' },
|
||||||
{"action_name": _("Add Users"), "action_doctype": "User", "min_doc_count": 4, "is_completed": 0,
|
{"action_name": "Add Users", "action_doctype": "User", "min_doc_count": 4, "is_completed": 0,
|
||||||
"domains": '[]' }
|
"domains": '[]' }
|
||||||
]},
|
]},
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ def get_slide_settings():
|
|||||||
# Initial state of slides
|
# Initial state of slides
|
||||||
return [
|
return [
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Company'),
|
action_name='Add Company',
|
||||||
title=_("Setup Company") if domain != 'Education' else _("Setup Institution"),
|
title=_("Setup Company") if domain != 'Education' else _("Setup Institution"),
|
||||||
help=_('Setup your ' + ('company' if domain != 'Education' else 'institution') + ' and brand.'),
|
help=_('Setup your ' + ('company' if domain != 'Education' else 'institution') + ' and brand.'),
|
||||||
# image_src="/assets/erpnext/images/illustrations/shop.jpg",
|
# image_src="/assets/erpnext/images/illustrations/shop.jpg",
|
||||||
@ -58,7 +58,7 @@ def get_slide_settings():
|
|||||||
]
|
]
|
||||||
),
|
),
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Customers'),
|
action_name='Add Customers',
|
||||||
domains=('Manufacturing', 'Services', 'Retail', 'Distribution'),
|
domains=('Manufacturing', 'Services', 'Retail', 'Distribution'),
|
||||||
title=_("Add Customers"),
|
title=_("Add Customers"),
|
||||||
help=_("List a few of your customers. They could be organizations or individuals."),
|
help=_("List a few of your customers. They could be organizations or individuals."),
|
||||||
@ -82,7 +82,7 @@ def get_slide_settings():
|
|||||||
]
|
]
|
||||||
),
|
),
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Suppliers'),
|
action_name='Add Suppliers',
|
||||||
domains=('Manufacturing', 'Services', 'Retail', 'Distribution'),
|
domains=('Manufacturing', 'Services', 'Retail', 'Distribution'),
|
||||||
icon="fa fa-group",
|
icon="fa fa-group",
|
||||||
title=_("Your Suppliers"),
|
title=_("Your Suppliers"),
|
||||||
@ -111,7 +111,7 @@ def get_slide_settings():
|
|||||||
]
|
]
|
||||||
),
|
),
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Products'),
|
action_name='Add Products',
|
||||||
domains=['Manufacturing', 'Services', 'Retail', 'Distribution'],
|
domains=['Manufacturing', 'Services', 'Retail', 'Distribution'],
|
||||||
icon="fa fa-barcode",
|
icon="fa fa-barcode",
|
||||||
title=_("Your Products or Services"),
|
title=_("Your Products or Services"),
|
||||||
@ -142,7 +142,7 @@ def get_slide_settings():
|
|||||||
|
|
||||||
# School slides begin
|
# School slides begin
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Programs'),
|
action_name='Add Programs',
|
||||||
domains=("Education"),
|
domains=("Education"),
|
||||||
title=_("Program"),
|
title=_("Program"),
|
||||||
help=_("Example: Masters in Computer Science"),
|
help=_("Example: Masters in Computer Science"),
|
||||||
@ -163,7 +163,7 @@ def get_slide_settings():
|
|||||||
|
|
||||||
),
|
),
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Courses'),
|
action_name='Add Courses',
|
||||||
domains=["Education"],
|
domains=["Education"],
|
||||||
title=_("Course"),
|
title=_("Course"),
|
||||||
help=_("Example: Basic Mathematics"),
|
help=_("Example: Basic Mathematics"),
|
||||||
@ -183,7 +183,7 @@ def get_slide_settings():
|
|||||||
]
|
]
|
||||||
),
|
),
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Instructors'),
|
action_name='Add Instructors',
|
||||||
domains=["Education"],
|
domains=["Education"],
|
||||||
title=_("Instructor"),
|
title=_("Instructor"),
|
||||||
help=_("People who teach at your organisation"),
|
help=_("People who teach at your organisation"),
|
||||||
@ -203,7 +203,7 @@ def get_slide_settings():
|
|||||||
]
|
]
|
||||||
),
|
),
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Rooms'),
|
action_name='Add Rooms',
|
||||||
domains=["Education"],
|
domains=["Education"],
|
||||||
title=_("Room"),
|
title=_("Room"),
|
||||||
help=_("Classrooms/ Laboratories etc where lectures can be scheduled."),
|
help=_("Classrooms/ Laboratories etc where lectures can be scheduled."),
|
||||||
@ -222,7 +222,7 @@ def get_slide_settings():
|
|||||||
# School slides end
|
# School slides end
|
||||||
|
|
||||||
frappe._dict(
|
frappe._dict(
|
||||||
action_name=_('Add Users'),
|
action_name='Add Users',
|
||||||
title=_("Add Users"),
|
title=_("Add Users"),
|
||||||
help=_("Add users to your organization, other than yourself."),
|
help=_("Add users to your organization, other than yourself."),
|
||||||
fields=[
|
fields=[
|
||||||
|
Loading…
Reference in New Issue
Block a user