diff --git a/product/ERP5/Document/PaySheetTransaction.py b/product/ERP5/Document/PaySheetTransaction.py index 66fceeda694c2403f4bed6f2f9c0713c02473eb5..85f6bab1247d0d5217196069ea28bdd88be01480 100644 --- a/product/ERP5/Document/PaySheetTransaction.py +++ b/product/ERP5/Document/PaySheetTransaction.py @@ -101,7 +101,7 @@ class PaySheetTransaction(Invoice): security.declareProtected(Permissions.AddPortalContent, 'createPaySheetLine') def createPaySheetLine(self, cell_list, title='', res='', desc='', - base_amount_list=None, **kw): + base_amount_list=None, int_index=None, **kw): ''' This function register all paysheet informations in paysheet lines and cells. Select good cells only @@ -137,6 +137,7 @@ class PaySheetTransaction(Invoice): variation_base_category_list = ('tax_category', 'salary_range'), variation_category_list = var_cat_list, base_amount_list = base_amount_list, + int_index = int_index, **kw) base_id = 'movement' @@ -198,6 +199,7 @@ class PaySheetTransaction(Invoice): 'desc' : [], 'base_amount_list' : model_line.getBaseAmountList(), 'res' : service.getRelativeUrl(), + 'int_index' : model_line.getFloatIndex(), 'cell_list' : [] } @@ -234,6 +236,7 @@ class PaySheetTransaction(Invoice): res = item['res'], desc = desc, cell_list = item['cell_list'], + int_index = item['int_index'], base_amount_list=item['base_amount_list'],) @@ -334,6 +337,7 @@ class PaySheetTransaction(Invoice): service = model_line.getResourceValue() title = model_line.getTitleOrId() + int_index = model_line.getFloatIndex() id = model_line.getId() base_amount_list = model_line.getBaseAmountList() res = service.getRelativeUrl() @@ -438,24 +442,20 @@ class PaySheetTransaction(Invoice): pay_sheet_line = self.createPaySheetLine( title = title, res = res, + int_index = int_index, desc = desc, base_amount_list = base_amount_list, cell_list = cell_list, ) pay_sheet_line_list.append(pay_sheet_line) - # create a line of the total tax payed by the employee - # this hack permit to calculate the net salary - new_cell = { 'axe_list' : [ 'tax_category/employer_share', - 'salary_range/france/forfait'] - , 'quantity' : employee_tax_amount - , 'price' : 1 - } - pay_sheet_line = self.createPaySheetLine( - title = 'total employee contributions' - , res = 'payroll_service_module/total_employee_contributions' - , desc = 'this line permit to calculate the sum of the employer' - ' share and permit to calculate the net salary' - , cell_list = [new_cell]) + + # this script is used to add a line that permit to have good accounting + # lines + localized_add_end_line_script = getattr(self, + 'PaySheetTransaction_addEndLine', + None) + if localized_add_end_line_script: + localized_add_end_line_script(employee_tax_amount) return pay_sheet_line_list