mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-08 15:42:52 +00:00
[multicheck] Select multiple domains in setup (#11709)
* [multicheck] select multiple domains in setup * use multiple domains in make_sample_data * revert to setting in domains child table * domains slide validation * update setup wizard test
This commit is contained in:
committed by
Nabin Hait
parent
cd477fc187
commit
7351709980
@@ -15,11 +15,12 @@ erpnext.setup.slides_settings = [
|
|||||||
{
|
{
|
||||||
// Domain
|
// Domain
|
||||||
name: 'domain',
|
name: 'domain',
|
||||||
domains: ["all"],
|
title: __('Select your Domains'),
|
||||||
title: __('Select your Domain'),
|
|
||||||
fields: [
|
fields: [
|
||||||
{
|
{
|
||||||
fieldname: 'domain', label: __('Domain'), fieldtype: 'Select',
|
fieldname: 'domains',
|
||||||
|
label: __('Domains'),
|
||||||
|
fieldtype: 'MultiCheck',
|
||||||
options: [
|
options: [
|
||||||
{ "label": __("Distribution"), "value": "Distribution" },
|
{ "label": __("Distribution"), "value": "Distribution" },
|
||||||
{ "label": __("Manufacturing"), "value": "Manufacturing" },
|
{ "label": __("Manufacturing"), "value": "Manufacturing" },
|
||||||
@@ -32,18 +33,19 @@ erpnext.setup.slides_settings = [
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
// help: __('Select the nature of your business.'),
|
// help: __('Select the nature of your business.'),
|
||||||
onload: function (slide) {
|
validate: function () {
|
||||||
slide.get_input("domain").on("change", function () {
|
if (this.values.domains.length === 0) {
|
||||||
frappe.setup.domain = $(this).val();
|
frappe.msgprint(__("Please select at least one domain."));
|
||||||
frappe.wizard.refresh_slides();
|
return false;
|
||||||
});
|
}
|
||||||
|
frappe.setup.domains = this.values.domains;
|
||||||
|
return true;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
// Brand
|
// Brand
|
||||||
name: 'brand',
|
name: 'brand',
|
||||||
domains: ["all"],
|
|
||||||
icon: "fa fa-bookmark",
|
icon: "fa fa-bookmark",
|
||||||
title: __("The Brand"),
|
title: __("The Brand"),
|
||||||
// help: __('Upload your letter head and logo. (you can edit them later).'),
|
// help: __('Upload your letter head and logo. (you can edit them later).'),
|
||||||
@@ -57,14 +59,14 @@ erpnext.setup.slides_settings = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
fieldname: 'company_name',
|
fieldname: 'company_name',
|
||||||
label: frappe.setup.domain === 'Education' ?
|
label: frappe.setup.domains.includes('Education') ?
|
||||||
__('Institute Name') : __('Company Name'),
|
__('Institute Name') : __('Company Name'),
|
||||||
fieldtype: 'Data',
|
fieldtype: 'Data',
|
||||||
reqd: 1
|
reqd: 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
fieldname: 'company_abbr',
|
fieldname: 'company_abbr',
|
||||||
label: frappe.setup.domain === 'Education' ?
|
label: frappe.setup.domains.includes('Education') ?
|
||||||
__('Institute Abbreviation') : __('Company Abbreviation'),
|
__('Institute Abbreviation') : __('Company Abbreviation'),
|
||||||
fieldtype: 'Data'
|
fieldtype: 'Data'
|
||||||
}
|
}
|
||||||
@@ -100,10 +102,9 @@ erpnext.setup.slides_settings = [
|
|||||||
{
|
{
|
||||||
// Organisation
|
// Organisation
|
||||||
name: 'organisation',
|
name: 'organisation',
|
||||||
domains: ["all"],
|
|
||||||
title: __("Your Organization"),
|
title: __("Your Organization"),
|
||||||
icon: "fa fa-building",
|
icon: "fa fa-building",
|
||||||
// help: (frappe.setup.domain === 'Education' ?
|
// help: frappe.setup.domains.includes('Education') ?
|
||||||
// __('The name of the institute for which you are setting up this system.') :
|
// __('The name of the institute for which you are setting up this system.') :
|
||||||
// __('The name of your company for which you are setting up this system.')),
|
// __('The name of your company for which you are setting up this system.')),
|
||||||
fields: [
|
fields: [
|
||||||
@@ -111,7 +112,7 @@ erpnext.setup.slides_settings = [
|
|||||||
fieldname: 'company_tagline',
|
fieldname: 'company_tagline',
|
||||||
label: __('What does it do?'),
|
label: __('What does it do?'),
|
||||||
fieldtype: 'Data',
|
fieldtype: 'Data',
|
||||||
placeholder: frappe.setup.domain === 'Education' ?
|
placeholder: frappe.setup.domains.includes('Education') ?
|
||||||
__('e.g. "Primary School" or "University"') :
|
__('e.g. "Primary School" or "University"') :
|
||||||
__('e.g. "Build tools for builders"'),
|
__('e.g. "Build tools for builders"'),
|
||||||
reqd: 1
|
reqd: 1
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
"currency": "INR",
|
"currency": "INR",
|
||||||
"customer_1": "Test Customer 1",
|
"customer_1": "Test Customer 1",
|
||||||
"customer_2": "Test Customer 2",
|
"customer_2": "Test Customer 2",
|
||||||
"domain": "Manufacturing",
|
"domains": ["Manufacturing"],
|
||||||
"email": "great@example.com",
|
"email": "great@example.com",
|
||||||
"full_name": "Great Tester",
|
"full_name": "Great Tester",
|
||||||
"fy_end_date": "2018-03-31",
|
"fy_end_date": "2018-03-31",
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import random, os, json
|
|||||||
from frappe import _
|
from frappe import _
|
||||||
from markdown2 import markdown
|
from markdown2 import markdown
|
||||||
|
|
||||||
def make_sample_data(domain, make_dependent = False):
|
def make_sample_data(domains, make_dependent = False):
|
||||||
"""Create a few opportunities, quotes, material requests, issues, todos, projects
|
"""Create a few opportunities, quotes, material requests, issues, todos, projects
|
||||||
to help the user get started"""
|
to help the user get started"""
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ def make_sample_data(domain, make_dependent = False):
|
|||||||
if items and warehouses:
|
if items and warehouses:
|
||||||
make_material_request(frappe.get_all("Item"))
|
make_material_request(frappe.get_all("Item"))
|
||||||
|
|
||||||
make_projects(domain)
|
make_projects(domains)
|
||||||
import_email_alert()
|
import_email_alert()
|
||||||
|
|
||||||
frappe.db.commit()
|
frappe.db.commit()
|
||||||
@@ -89,7 +89,7 @@ def make_material_request(items):
|
|||||||
def make_issue():
|
def make_issue():
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def make_projects(domain):
|
def make_projects(domains):
|
||||||
current_date = frappe.utils.nowdate()
|
current_date = frappe.utils.nowdate()
|
||||||
project = frappe.get_doc({
|
project = frappe.get_doc({
|
||||||
"doctype": "Project",
|
"doctype": "Project",
|
||||||
@@ -104,7 +104,7 @@ def make_projects(domain):
|
|||||||
"file": "explore.md"
|
"file": "explore.md"
|
||||||
}]
|
}]
|
||||||
|
|
||||||
if domain == 'Education':
|
if 'Education' in domains:
|
||||||
tasks += [
|
tasks += [
|
||||||
{
|
{
|
||||||
"title": _("Setup your Institute in ERPNext"),
|
"title": _("Setup your Institute in ERPNext"),
|
||||||
|
|||||||
@@ -39,8 +39,10 @@ def setup_complete(args=None):
|
|||||||
create_logo(args)
|
create_logo(args)
|
||||||
|
|
||||||
frappe.local.message_log = []
|
frappe.local.message_log = []
|
||||||
|
|
||||||
|
domains = args.get('domains')
|
||||||
domain_settings = frappe.get_single('Domain Settings')
|
domain_settings = frappe.get_single('Domain Settings')
|
||||||
domain_settings.set_active_domains([args.get('domain')])
|
domain_settings.set_active_domains(domains)
|
||||||
|
|
||||||
frappe.db.commit()
|
frappe.db.commit()
|
||||||
login_as_first_user(args)
|
login_as_first_user(args)
|
||||||
@@ -49,7 +51,7 @@ def setup_complete(args=None):
|
|||||||
frappe.clear_cache()
|
frappe.clear_cache()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
make_sample_data(args.get('domain'))
|
make_sample_data(domains)
|
||||||
frappe.clear_cache()
|
frappe.clear_cache()
|
||||||
except:
|
except:
|
||||||
# clear message
|
# clear message
|
||||||
@@ -80,7 +82,7 @@ def create_fiscal_year_and_company(args):
|
|||||||
'country': args.get('country'),
|
'country': args.get('country'),
|
||||||
'create_chart_of_accounts_based_on': 'Standard Template',
|
'create_chart_of_accounts_based_on': 'Standard Template',
|
||||||
'chart_of_accounts': args.get('chart_of_accounts'),
|
'chart_of_accounts': args.get('chart_of_accounts'),
|
||||||
'domain': args.get('domain')
|
'domain': args.get('domains')[0]
|
||||||
}).insert()
|
}).insert()
|
||||||
|
|
||||||
#Enable shopping cart
|
#Enable shopping cart
|
||||||
|
|||||||
@@ -40,8 +40,7 @@ def run_setup_wizard_test():
|
|||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
|
|
||||||
# domain slide
|
# domain slide
|
||||||
# time.sleep(3)
|
driver.set_multicheck("domains", ["Manufacturing"])
|
||||||
driver.set_select("domain", "Manufacturing")
|
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
driver.click(".next-btn")
|
driver.click(".next-btn")
|
||||||
|
|
||||||
|
|||||||
@@ -272,10 +272,9 @@ def get_user_progress_slides():
|
|||||||
slides = []
|
slides = []
|
||||||
slide_settings = get_slide_settings()
|
slide_settings = get_slide_settings()
|
||||||
|
|
||||||
domain = frappe.db.get_value('Company', erpnext.get_default_company(), 'domain')
|
domains = frappe.get_active_domains()
|
||||||
|
|
||||||
for s in slide_settings:
|
for s in slide_settings:
|
||||||
if not s.domains or (domain and domain in s.domains):
|
if not s.domains or any(d in domains for d in s.domains):
|
||||||
s.mark_as_done_method = "erpnext.setup.doctype.setup_progress.setup_progress.set_action_completed_state"
|
s.mark_as_done_method = "erpnext.setup.doctype.setup_progress.setup_progress.set_action_completed_state"
|
||||||
s.done = get_action_completed_state(s.action_name) or 0
|
s.done = get_action_completed_state(s.action_name) or 0
|
||||||
slides.append(s)
|
slides.append(s)
|
||||||
|
|||||||
Reference in New Issue
Block a user