From 3528d081785691183b379eff33ce79a365f5d0ae Mon Sep 17 00:00:00 2001 From: Manas Solanki Date: Thu, 30 Mar 2017 12:17:40 +0530 Subject: [PATCH 1/5] [Fix] Fix in program enrollment tool and report --- erpnext/config/schools.py | 7 +++++++ .../program_enrollment_tool/program_enrollment_tool.py | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/erpnext/config/schools.py b/erpnext/config/schools.py index b1e0472f62..7e9760272f 100644 --- a/erpnext/config/schools.py +++ b/erpnext/config/schools.py @@ -29,7 +29,14 @@ def get_data(): { "type": "doctype", "name": "Student Group Creation Tool" + }, + { + "type": "report", + "is_query_report": True, + "name": "Student and Guardian Contact Details", + "doctype": "Program Enrollment" } + ] }, { diff --git a/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py b/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py index 2e7daa7d67..1747bade4b 100644 --- a/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py +++ b/erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.py @@ -21,7 +21,7 @@ class ProgramEnrollmentTool(Document): students = frappe.db.sql("select name as student_applicant, title as student_name from \ `tabStudent Applicant` where program = %s and academic_year = %s",(self.program, self.academic_year), as_dict=1) else: - students = frappe.db.sql("select student, student_name from \ + students = frappe.db.sql("select student, student_name, student_batch_name from \ `tabProgram Enrollment` where program = %s and academic_year = %s",(self.program, self.academic_year), as_dict=1) student_list = [d.student for d in students] @@ -44,6 +44,7 @@ class ProgramEnrollmentTool(Document): prog_enrollment = frappe.new_doc("Program Enrollment") prog_enrollment.student = stud.student prog_enrollment.student_name = stud.student_name + prog_enrollment.student_batch_name = stud.student_batch_name prog_enrollment.program = self.new_program prog_enrollment.academic_year = self.new_academic_year prog_enrollment.save() From 5ac740b3cb888f7e5d3ce926a64ccdb9ae864a85 Mon Sep 17 00:00:00 2001 From: Kanchan Chauhan Date: Thu, 30 Mar 2017 08:32:50 +0530 Subject: [PATCH 2/5] [Fix] From Date and To Date not to be auto calculated for Timesheet Salary --- erpnext/hr/doctype/salary_slip/salary_slip.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/erpnext/hr/doctype/salary_slip/salary_slip.py b/erpnext/hr/doctype/salary_slip/salary_slip.py index c629e87571..34b729f102 100644 --- a/erpnext/hr/doctype/salary_slip/salary_slip.py +++ b/erpnext/hr/doctype/salary_slip/salary_slip.py @@ -21,7 +21,9 @@ class SalarySlip(TransactionBase): self.status = self.get_status() self.validate_dates() self.check_existing() - self.get_date_details() + if not self.salary_slip_based_on_timesheet: + self.get_date_details() + if not (len(self.get("earnings")) or len(self.get("deductions"))): # get details from salary structure self.get_emp_and_leave_details() @@ -121,7 +123,8 @@ class SalarySlip(TransactionBase): self.set("earnings", []) self.set("deductions", []) - self.get_date_details() + if not self.salary_slip_based_on_timesheet: + self.get_date_details() self.validate_dates() joining_date, relieving_date = frappe.db.get_value("Employee", self.employee, ["date_of_joining", "relieving_date"]) @@ -189,7 +192,8 @@ class SalarySlip(TransactionBase): def process_salary_structure(self): '''Calculate salary after salary structure details have been updated''' - self.get_date_details() + if not self.salary_slip_based_on_timesheet: + self.get_date_details() self.pull_emp_details() self.get_leave_details() self.calculate_net_pay() From 99752e58ec5b7a58de33a02d140534dbb8b610a2 Mon Sep 17 00:00:00 2001 From: CH Date: Wed, 29 Mar 2017 21:26:02 +0200 Subject: [PATCH 3/5] VAT rates update for France --- .../setup/setup_wizard/data/country_wise_tax.json | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/erpnext/setup/setup_wizard/data/country_wise_tax.json b/erpnext/setup/setup_wizard/data/country_wise_tax.json index 780b88fa5f..0ac89b4c69 100644 --- a/erpnext/setup/setup_wizard/data/country_wise_tax.json +++ b/erpnext/setup/setup_wizard/data/country_wise_tax.json @@ -448,11 +448,15 @@ }, "France": { - "France VAT 19.6%": { - "account_name": "VAT 19.6%", - "tax_rate": 19.6, + "France VAT 20%": { + "account_name": "VAT 20%", + "tax_rate": 20, "default": 1 }, + "France VAT 10%": { + "account_name": "VAT 10%", + "tax_rate": 10 + }, "France VAT 5.5%": { "account_name": "VAT 5.5%", "tax_rate": 5.5 @@ -1377,4 +1381,4 @@ "tax_rate": 15.00 } } -} \ No newline at end of file +} From b87c1748987b7bf731e28cf8ea03df54eab08a94 Mon Sep 17 00:00:00 2001 From: Kanchan Chauhan Date: Wed, 29 Mar 2017 21:42:54 +0530 Subject: [PATCH 4/5] Employee Loan Dashboard --- .../employee_loan/employee_loan_dashboard.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 erpnext/hr/doctype/employee_loan/employee_loan_dashboard.py diff --git a/erpnext/hr/doctype/employee_loan/employee_loan_dashboard.py b/erpnext/hr/doctype/employee_loan/employee_loan_dashboard.py new file mode 100644 index 0000000000..20ce69e763 --- /dev/null +++ b/erpnext/hr/doctype/employee_loan/employee_loan_dashboard.py @@ -0,0 +1,19 @@ +from frappe import _ + +def get_data(): + return { + 'fieldname': 'employee', + 'non_standard_fieldnames': { + 'Journal Entry': 'reference_name', + }, + 'transactions': [ + { + 'label': _('Employee'), + 'items': ['Employee Loan Application', 'Salary Slip'] + }, + { + 'label': _('Account'), + 'items': ['Journal Entry'] + } + ] + } \ No newline at end of file From 37d8f643cc78b76514ae5c25dd94150c787ccbd4 Mon Sep 17 00:00:00 2001 From: Kanchan Chauhan Date: Wed, 29 Mar 2017 21:24:42 +0530 Subject: [PATCH 5/5] Read permissions to Employee on Employee Loan and Loan Type --- .../doctype/employee_loan/employee_loan.json | 23 ++++++++++++++++- erpnext/hr/doctype/loan_type/loan_type.json | 25 +++++++++++++++++-- 2 files changed, 45 insertions(+), 3 deletions(-) diff --git a/erpnext/hr/doctype/employee_loan/employee_loan.json b/erpnext/hr/doctype/employee_loan/employee_loan.json index a5e79104aa..68f2f184c3 100644 --- a/erpnext/hr/doctype/employee_loan/employee_loan.json +++ b/erpnext/hr/doctype/employee_loan/employee_loan.json @@ -916,7 +916,7 @@ "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-03-13 15:55:11.143936", + "modified": "2017-03-30 12:58:58.566812", "modified_by": "Administrator", "module": "HR", "name": "Employee Loan", @@ -942,6 +942,27 @@ "share": 1, "submit": 1, "write": 1 + }, + { + "amend": 0, + "apply_user_permissions": 1, + "cancel": 0, + "create": 0, + "delete": 0, + "email": 0, + "export": 0, + "if_owner": 0, + "import": 0, + "permlevel": 0, + "print": 0, + "read": 1, + "report": 0, + "role": "Employee", + "set_user_permissions": 0, + "share": 0, + "submit": 0, + "user_permission_doctypes": "[\"Employee\"]", + "write": 0 } ], "quick_entry": 0, diff --git a/erpnext/hr/doctype/loan_type/loan_type.json b/erpnext/hr/doctype/loan_type/loan_type.json index ce9397923d..e595187e18 100644 --- a/erpnext/hr/doctype/loan_type/loan_type.json +++ b/erpnext/hr/doctype/loan_type/loan_type.json @@ -1,5 +1,6 @@ { "allow_copy": 0, + "allow_guest_to_view": 0, "allow_import": 0, "allow_rename": 0, "autoname": "field:loan_name", @@ -189,17 +190,17 @@ "unique": 0 } ], + "has_web_view": 0, "hide_heading": 0, "hide_toolbar": 0, "idx": 0, "image_view": 0, "in_create": 0, - "in_dialog": 0, "is_submittable": 0, "issingle": 0, "istable": 0, "max_attachments": 0, - "modified": "2017-03-02 04:26:05.375693", + "modified": "2017-03-29 21:23:08.665245", "modified_by": "Administrator", "module": "HR", "name": "Loan Type", @@ -225,6 +226,26 @@ "share": 1, "submit": 0, "write": 1 + }, + { + "amend": 0, + "apply_user_permissions": 0, + "cancel": 0, + "create": 0, + "delete": 0, + "email": 0, + "export": 0, + "if_owner": 0, + "import": 0, + "permlevel": 0, + "print": 0, + "read": 1, + "report": 0, + "role": "Employee", + "set_user_permissions": 0, + "share": 0, + "submit": 0, + "write": 0 } ], "quick_entry": 0,