fix: Parent company defaulting on creation of new company (#20422)
* fix: Parent company defaulting on creation of new company * fix: Test Cases * fix: Test Cases * fix: Test Cases for staffing plan
This commit is contained in:
parent
3fb48ebf61
commit
cd8d667861
@ -14,7 +14,7 @@ test_dependencies = ["Designation"]
|
||||
class TestStaffingPlan(unittest.TestCase):
|
||||
def test_staffing_plan(self):
|
||||
_set_up()
|
||||
frappe.db.set_value("Company", "_Test Company", "is_group", 1)
|
||||
frappe.db.set_value("Company", "_Test Company 3", "is_group", 1)
|
||||
if frappe.db.exists("Staffing Plan", "Test"):
|
||||
return
|
||||
staffing_plan = frappe.new_doc("Staffing Plan")
|
||||
@ -36,7 +36,7 @@ class TestStaffingPlan(unittest.TestCase):
|
||||
if frappe.db.exists("Staffing Plan", "Test 1"):
|
||||
return
|
||||
staffing_plan = frappe.new_doc("Staffing Plan")
|
||||
staffing_plan.company = "_Test Company"
|
||||
staffing_plan.company = "_Test Company 3"
|
||||
staffing_plan.name = "Test 1"
|
||||
staffing_plan.from_date = nowdate()
|
||||
staffing_plan.to_date = add_days(nowdate(), 10)
|
||||
@ -52,7 +52,7 @@ class TestStaffingPlan(unittest.TestCase):
|
||||
if frappe.db.exists("Staffing Plan", "Test"):
|
||||
return
|
||||
staffing_plan = frappe.new_doc("Staffing Plan")
|
||||
staffing_plan.company = "_Test Company"
|
||||
staffing_plan.company = "_Test Company 3"
|
||||
staffing_plan.name = "Test"
|
||||
staffing_plan.from_date = nowdate()
|
||||
staffing_plan.to_date = add_days(nowdate(), 10)
|
||||
@ -87,10 +87,11 @@ def _set_up():
|
||||
def make_company():
|
||||
if frappe.db.exists("Company", "_Test Company 10"):
|
||||
return
|
||||
|
||||
company = frappe.new_doc("Company")
|
||||
company.company_name = "_Test Company 10"
|
||||
company.abbr = "_TC10"
|
||||
company.parent_company = "_Test Company"
|
||||
company.parent_company = "_Test Company 3"
|
||||
company.default_currency = "INR"
|
||||
company.country = "Pakistan"
|
||||
company.insert()
|
@ -4,6 +4,15 @@
|
||||
frappe.provide("erpnext.company");
|
||||
|
||||
frappe.ui.form.on("Company", {
|
||||
onload: function(frm) {
|
||||
if (frm.doc.__islocal && frm.doc.parent_company) {
|
||||
frappe.db.get_value('Company', frm.doc.parent_company, 'is_group', (r) => {
|
||||
if (!r.is_group) {
|
||||
frm.set_value('parent_company', '');
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
setup: function(frm) {
|
||||
erpnext.company.setup_queries(frm);
|
||||
frm.set_query("hra_component", function(){
|
||||
|
@ -47,6 +47,7 @@ class Company(NestedSet):
|
||||
self.validate_perpetual_inventory()
|
||||
self.check_country_change()
|
||||
self.set_chart_of_accounts()
|
||||
self.validate_parent_company()
|
||||
|
||||
def validate_abbr(self):
|
||||
if not self.abbr:
|
||||
@ -189,6 +190,13 @@ class Company(NestedSet):
|
||||
self.create_chart_of_accounts_based_on = "Existing Company"
|
||||
self.existing_company = self.parent_company
|
||||
|
||||
def validate_parent_company(self):
|
||||
if self.parent_company:
|
||||
is_group = frappe.get_value('Company', self.parent_company, 'is_group')
|
||||
|
||||
if not is_group:
|
||||
frappe.throw(_("Parent Company must be a group company"))
|
||||
|
||||
def set_default_accounts(self):
|
||||
default_accounts = {
|
||||
"default_cash_account": "Cash",
|
||||
|
Loading…
x
Reference in New Issue
Block a user