open-synergy/opnsynid-hr

View on GitHub

Showing 547 of 547 total issues

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    vendor_ids = fields.Many2many(
        string="Vendor",
        comodel_name="res.partner",
        relation="rel_training_vendor",
        column1="training_id",
Severity: Major
Found in hr_employee_training/models/hr_training.py and 3 other locations - About 1 hr to fix
hr_employee_training/models/hr_training.py on lines 107..116
hr_employee_training/models/hr_training.py on lines 162..171
hr_employee_training/models/hr_training.py on lines 175..184

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    method_ids = fields.Many2many(
        string="Training Method",
        comodel_name="hr.training_method",
        relation="rel_training_2_training_method",
        column1="training_id",
Severity: Major
Found in hr_employee_training/models/hr_training.py and 3 other locations - About 1 hr to fix
hr_employee_training/models/hr_training.py on lines 120..129
hr_employee_training/models/hr_training.py on lines 162..171
hr_employee_training/models/hr_training.py on lines 175..184

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

Severity: Major
Found in hr_timesheet_pricelist/models/account_analytic_account.py and 1 other location - About 1 hr to fix
hr_contract_timesheet_pricelist/models/hr_contract.py on lines 0..13

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    training_syllabus_id = fields.Many2many(
        string="Training Syllabus",
        comodel_name="hr.training_syllabus",
        relation="rel_training_2_syllabus",
        column1="training_id",
Severity: Major
Found in hr_employee_training/models/hr_training.py and 3 other locations - About 1 hr to fix
hr_employee_training/models/hr_training.py on lines 107..116
hr_employee_training/models/hr_training.py on lines 120..129
hr_employee_training/models/hr_training.py on lines 162..171

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

    @api.multi
    def _get_manager_id(self):
        self.ensure_one()
        manager_id = False
        if self.employee_id:
hr_attendance_overtime_request/models/hr_overtime_request.py on lines 441..447

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

Severity: Major
Found in hr_contract_timesheet_pricelist/models/hr_contract.py and 1 other location - About 1 hr to fix
hr_timesheet_pricelist/models/account_analytic_account.py on lines 0..13

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

    @api.multi
    def _get_department_id(self):
        self.ensure_one()
        department_id = False
        if self.employee_id:
hr_attendance_overtime_request/models/hr_overtime_request.py on lines 449..455

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    training_purpose_ids = fields.Many2many(
        string="Training Purpose",
        comodel_name="hr.training_purpose",
        relation="rel_training_2_purpose",
        column1="training_id",
Severity: Major
Found in hr_employee_training/models/hr_training.py and 3 other locations - About 1 hr to fix
hr_employee_training/models/hr_training.py on lines 107..116
hr_employee_training/models/hr_training.py on lines 120..129
hr_employee_training/models/hr_training.py on lines 175..184

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 40.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_8 = self.obj_payslip.sudo(self.user_2).create(
            {
                "name": "Payslip 8",
                "employee_id": self.employee_5.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_operator.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_1 = self.obj_payslip.sudo(self.user_2).create(
            {
                "name": "Payslip 1",
                "employee_id": self.employee_2.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_viewer.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_5 = self.obj_payslip.sudo(self.user_4).create(
            {
                "name": "Payslip 5",
                "employee_id": self.employee_4.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_viewer.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_9 = self.obj_payslip.sudo(self.user_4).create(
            {
                "name": "Payslip 9",
                "employee_id": self.employee_4.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_operator.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_14 = self.obj_payslip.sudo(self.user_8).create(
            {
                "name": "Payslip 14",
                "employee_id": self.employee_6.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_operator.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_15 = self.obj_payslip.sudo(self.user_8).create(
            {
                "name": "Payslip 15",
                "employee_id": self.employee_10.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_operator.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_5 = self.obj_payslip.sudo(self.user_2).create(
            {
                "name": "Payslip 5",
                "employee_id": self.employee_2.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_operator.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_8 = self.obj_payslip.sudo(self.user_8).create(
            {
                "name": "Payslip 8",
                "employee_id": self.employee_8.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_viewer.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_2 = self.obj_payslip.sudo(self.user_2).create(
            {
                "name": "Payslip 2",
                "employee_id": self.employee_5.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_viewer.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 138..143
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Function _prepare_contract_revert has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring.
Open

    def _prepare_contract_revert(self):
        self.ensure_one()
        return {
            "job_id": self.previous_job_id and self.previous_job_id.id or False,
            "working_hours": self.previous_working_hour_id
Severity: Minor
Found in hr_career_transition/models/hr_career_transition.py - About 1 hr to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Similar blocks of code found in 16 locations. Consider refactoring.
Open

        payslip_7 = self.obj_payslip.sudo(self.user_8).create(
            {
                "name": "Payslip 7",
                "employee_id": self.employee_8.id,
                "date_from": self.date_from,
Severity: Major
Found in hr_payslip_security/tests/test_payslip_viewer.py and 15 other locations - About 1 hr to fix
hr_payslip_security/tests/test_payslip_operator.py on lines 20..25
hr_payslip_security/tests/test_payslip_operator.py on lines 95..100
hr_payslip_security/tests/test_payslip_operator.py on lines 158..163
hr_payslip_security/tests/test_payslip_operator.py on lines 178..183
hr_payslip_security/tests/test_payslip_operator.py on lines 244..249
hr_payslip_security/tests/test_payslip_operator.py on lines 265..270
hr_payslip_security/tests/test_payslip_operator.py on lines 286..291
hr_payslip_security/tests/test_payslip_operator.py on lines 315..320
hr_payslip_security/tests/test_payslip_viewer.py on lines 21..26
hr_payslip_security/tests/test_payslip_viewer.py on lines 42..47
hr_payslip_security/tests/test_payslip_viewer.py on lines 61..66
hr_payslip_security/tests/test_payslip_viewer.py on lines 91..96
hr_payslip_security/tests/test_payslip_viewer.py on lines 119..124
hr_payslip_security/tests/test_payslip_viewer.py on lines 168..173
hr_payslip_security/tests/test_payslip_viewer.py on lines 189..194

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 39.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Function button_compute_sheet has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring.
Open

    def button_compute_sheet(self):
        self.ensure_one()
        obj_hr_payslip = self.env["hr.payslip"]
        context = self._context
        record_ids = context["active_ids"]
Severity: Minor
Found in hr_payslip_compute_sheet/wizards/hr_compute_sheet.py - About 1 hr to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Severity
Category
Status
Source
Language