Quellcode durchsuchen

[FIX] Get Account.Account

adrielso vor 6 Jahren
Ursprung
Commit
2383b8173c
1 geänderte Dateien mit 40 neuen und 13 gelöschten Zeilen
  1. 40 13
      model/eiru_payslip_payments_ipse.py

+ 40 - 13
model/eiru_payslip_payments_ipse.py

@@ -46,8 +46,13 @@ class EiruHrPayslipRun(models.Model):
         slipEmployee = []
         for slip in payslip:
             line = self.env['hr.payslip.line'].search([('slip_id', '=', slip.id), ('code','=', 'IPSE')])
+            accountIpse = self.eiru_get_account_account_hr('245000')
+            if (not accountIpse):
+                accountId = ''
+            accountId = accountIpse.id
+
             if (line):
-                domain = [('move_id', 'in', [slip.move_id.id]),('partner_id', 'in', [slip.employee_id.address_home_id.id]),('account_id', '=', 167),('reconcile_id', '!=', False)]
+                domain = [('move_id', 'in', [slip.move_id.id]),('partner_id', 'in', [slip.employee_id.address_home_id.id]),('account_id', '=', accountId),('reconcile_id', '!=', False)]
                 moveLineReconlide = self.env['account.move.line'].search(domain)
                 if (moveLineReconlide):
                     continue
@@ -190,8 +195,15 @@ class EiruHrPayslipRun(models.Model):
                     'message': "No fue posible localizar el socio."
                 }
 
+            accountIpse = self.eiru_get_account_account_hr('245000')
+            if (not accountIpse):
+                return {
+                    'state': False,
+                    'message': 'No fue posible localizar la Cuenta\n(245000  ==> Deudas Sociales / IPS a pagar.)'
+                }
+
             ''' Get MoveLines  '''
-            moveLines = self._get_move_line_payslit_run(slip, partner, 167)
+            moveLines = self._get_move_line_payslit_run(slip, partner, accountIpse.id)
             if (not moveLines):
                 return {
                     'state': False,
@@ -234,16 +246,20 @@ class EiruHrPayslipRun(models.Model):
             'message': "Operación exitosa."
         }
 
-    ''' Get Move line '''
-    def _get_move_line_payslit_run(self, payslip, partner, accountId):
+    def eiru_get_account_account_hr (self, code):
         '''
-            Account.Account_______________________________________________
-            | id   |       Name                                           |
-            | 75  ==> 241000  - Deudas Sociales / Sueldos a Pagar.        |
-            | 25  ==> 134000  - Otros Créditos / Anticipo al Personal.    |
-            | 167 ==> 245000  - Deudas Sociales / IPS a pagar.            |
-            | 168 ==> 515.1   - IPS Aporte Patronal.                      |
+            # Account.Account ######################################
+            # Code     |       Name                                #
+            # 241000  ==> Deudas Sociales / Sueldos a Pagar.       #
+            # 134000  ==> Otros Créditos / Anticipo al Personal.   #
+            # 245000  ==> Deudas Sociales / IPS a pagar.           #
+            # 515.1   ==> IPS Aporte Patronal.                     #
+            ########################################################
         '''
+        return self.env['account.account'].search([('code', '=', code)])
+
+    ''' Get Move line '''
+    def _get_move_line_payslit_run(self, payslip, partner, accountId):
         domain = [('move_id', 'in', [payslip.move_id.id]),('partner_id', 'in', [partner.id]),('account_id', '=', accountId)]
         line_move = []
         for line in self.env['account.move.line'].search(domain):
@@ -336,8 +352,13 @@ class EiruHrPayslipRun(models.Model):
         amountTotal = 0.0
         for slip in payslip:
             line = self.env['hr.payslip.line'].search([('slip_id', '=', slip.id), ('code','=', 'IPSC')])
+            accountIpsC = self.eiru_get_account_account_hr('245000')
+            if (not accountIpsC):
+                accountId = ''
+            accountId= accountIpsC.id
+
             if (line):
-                domain = [('move_id', 'in', [slip.move_id.id]),('partner_id', 'in', [partner.id]),('account_id', '=', 167),('reconcile_id', '!=', False)]
+                domain = [('move_id', 'in', [slip.move_id.id]),('partner_id', 'in', [partner.id]),('account_id', '=', accountIpsC),('reconcile_id', '!=', False)]
                 moveLineReconlide = self.env['account.move.line'].search(domain)
                 if (moveLineReconlide):
                     continue
@@ -427,10 +448,16 @@ class EiruHrPayslipRun(models.Model):
 
         moveIds = []
         amountTotal = 0.0
+        accountAccount = self.eiru_get_account_account_hr('245000')
+        if (not accountAccount):
+            accountId = ''
+        accountId = accountAccount.id
+
         for slip in hrPayslip:
             line = self.env['hr.payslip.line'].search([('slip_id', '=', slip.id), ('code','=', 'IPSC')])
             if (line):
-                domain = [('move_id', 'in', [slip.move_id.id]),('partner_id.id', '=', partner.id),('account_id', '=', 167),('reconcile_id', '!=', False)]
+
+                domain = [('move_id', 'in', [slip.move_id.id]),('partner_id.id', '=', partner.id),('account_id', '=', accountId),('reconcile_id', '!=', False)]
                 moveLineReconlide = self.env['account.move.line'].search(domain)
                 if (moveLineReconlide):
                     continue
@@ -439,7 +466,7 @@ class EiruHrPayslipRun(models.Model):
                 moveIds.append(slip.move_id.id)
 
         line_move = []
-        for line in self.env['account.move.line'].search([('move_id', 'in', moveIds),('partner_id', '=', partner.id),('account_id.id', '=', 167),('reconcile_id', '=', False)]):
+        for line in self.env['account.move.line'].search([('move_id', 'in', moveIds),('partner_id', '=', partner.id),('account_id.id', '=', accountId),('reconcile_id', '=', False)]):
             line_move.append({
                 'name': "/: %s" % (line.name),
                 'debit': line.credit if line.credit > 0 else 0.0 ,