fixes: Payroll module pre relese test fixes (#22500) (#22506)

* fix: salary payment based on payments

* fix: bank remittance report

* fix: Payroll period onboarding

* fix: provident-fund-deductions report

* fix: Considered unmarked days

* fix: onboarding paYroll

* feat: quick entry in payroll entry

(cherry picked from commit c2523e845340addec214ea36e42992ba89d9b210)

Co-authored-by: Anurag Mishra <32095923+Anurag810@users.noreply.github.com>
This commit is contained in:
mergify[bot] 2020-06-29 20:07:57 +05:30 committed by GitHub
parent c312b3af13
commit 9cba6bddde
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 19 additions and 15 deletions

View File

@ -53,7 +53,7 @@
} }
], ],
"links": [], "links": [],
"modified": "2020-06-22 20:12:32.684189", "modified": "2020-06-29 17:17:12.689089",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "Payroll", "module": "Payroll",
"name": "Payroll Period", "name": "Payroll Period",
@ -96,6 +96,7 @@
"write": 1 "write": 1
} }
], ],
"quick_entry": 1,
"sort_field": "modified", "sort_field": "modified",
"sort_order": "DESC", "sort_order": "DESC",
"track_changes": 1 "track_changes": 1

View File

@ -207,7 +207,7 @@ class SalarySlip(TransactionBase):
frappe.throw(_("There are more holidays than working days this month.")) frappe.throw(_("There are more holidays than working days this month."))
if not payroll_based_on: if not payroll_based_on:
frappe.throw(_("Please set Payroll based on in HR settings")) frappe.throw(_("Please set Payroll based on in Payroll settings"))
if payroll_based_on == "Attendance": if payroll_based_on == "Attendance":
actual_lwp, absent = self.calculate_lwp_and_absent_days_based_on_attendance(holidays) actual_lwp, absent = self.calculate_lwp_and_absent_days_based_on_attendance(holidays)
@ -244,15 +244,13 @@ class SalarySlip(TransactionBase):
for holiday in holidays: for holiday in holidays:
if not frappe.db.exists("Attendance", {"employee": self.employee, "attendance_date": holiday, "docstatus": 1 }): if not frappe.db.exists("Attendance", {"employee": self.employee, "attendance_date": holiday, "docstatus": 1 }):
self.payment_days += 1 self.payment_days += 1
else: else:
self.payment_days = 0 self.payment_days = 0
def get_unmarked_days(self): def get_unmarked_days(self):
marked_days = frappe.get_all("Attendance", filters = { marked_days = frappe.get_all("Attendance", filters = {
"attendance_date": ["between", ['2020-05-1',"2020-05-30"]], "attendance_date": ["between", [self.start_date, self.end_date]],
"employee": 'HR-EMP-00003', "employee": self.employee,
"docstatus": 1 "docstatus": 1
}, fields = ["COUNT(*) as marked_days"])[0].marked_days }, fields = ["COUNT(*) as marked_days"])[0].marked_days

View File

@ -13,7 +13,7 @@
"documentation_url": "https://docs.erpnext.com/docs/user/manual/en/human-resources/payroll-entry", "documentation_url": "https://docs.erpnext.com/docs/user/manual/en/human-resources/payroll-entry",
"idx": 0, "idx": 0,
"is_complete": 0, "is_complete": 0,
"modified": "2020-06-04 16:35:30.650792", "modified": "2020-06-29 17:00:25.113341",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "Payroll", "module": "Payroll",
"name": "Payroll", "name": "Payroll",

View File

@ -8,7 +8,7 @@
"is_mandatory": 1, "is_mandatory": 1,
"is_single": 0, "is_single": 0,
"is_skipped": 0, "is_skipped": 0,
"modified": "2020-06-01 11:53:54.553947", "modified": "2020-06-29 11:53:54.553947",
"modified_by": "Administrator", "modified_by": "Administrator",
"name": "Create Payroll Period", "name": "Create Payroll Period",
"owner": "Administrator", "owner": "Administrator",

View File

@ -1,19 +1,19 @@
{ {
"action": "Go to Page", "action": "Update Settings",
"creation": "2020-06-04 16:34:29.664917", "creation": "2020-06-04 16:34:29.664917",
"docstatus": 0, "docstatus": 0,
"doctype": "Onboarding Step", "doctype": "Onboarding Step",
"idx": 0, "idx": 0,
"is_complete": 0, "is_complete": 0,
"is_mandatory": 0, "is_mandatory": 0,
"is_single": 0, "is_single": 1,
"is_skipped": 0, "is_skipped": 0,
"modified": "2020-06-04 16:34:29.664917", "modified": "2020-06-29 16:34:29.664917",
"modified_by": "Administrator", "modified_by": "Administrator",
"name": "Payroll Settings", "name": "Payroll Settings",
"owner": "Administrator", "owner": "Administrator",
"path": "#Form/Payroll Settings", "reference_document": "Payroll Settings",
"show_full_form": 0, "show_full_form": 0,
"title": "Payroll Settings", "title": "Payroll Settings",
"validate_action": 1 "validate_action": 0
} }

View File

@ -152,6 +152,9 @@ def set_company_account(payment_accounts, payroll_entries):
company_accounts_map[acc.account] = acc company_accounts_map[acc.account] = acc
for entry in payroll_entries: for entry in payroll_entries:
entry["company_account"] = company_accounts_map[entry.payment_account]['bank_account_no'] company_account = ''
if entry.payment_account in company_accounts_map:
company_account = company_accounts_map[entry.payment_account]['bank_account_no']
entry["company_account"] = company_account
return payroll_entries return payroll_entries

View File

@ -100,6 +100,8 @@ def get_data(filters, mode_of_payments):
total_row = get_total_based_on_mode_of_payment(data, mode_of_payments) total_row = get_total_based_on_mode_of_payment(data, mode_of_payments)
total_deductions = gross_pay - total_row.get("total") total_deductions = gross_pay - total_row.get("total")
report_summary = []
if data: if data:
data.append(total_row) data.append(total_row)
data.append({}) data.append({})

View File

@ -97,7 +97,7 @@ def prepare_data(entry,component_type_dict):
"employee": d.employee, "employee": d.employee,
"employee_name": d.employee_name, "employee_name": d.employee_name,
"pf_account": employee_account_dict.get(d.employee), "pf_account": employee_account_dict.get(d.employee),
"component_type": d.amount component_type: d.amount
}) })
return data_list return data_list