Skip to content

Commit

Permalink
Merge PR #83 into 14.0
Browse files Browse the repository at this point in the history
Signed-off-by mikevhe18
  • Loading branch information
ssi-bot committed Jan 30, 2025
2 parents 6dcc6cb + 808101d commit f10c088
Show file tree
Hide file tree
Showing 22 changed files with 1,923 additions and 9 deletions.
14 changes: 5 additions & 9 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ repos:
- id: pyupgrade
args: ["--keep-percent-format"]
- repo: https://github.com/PyCQA/isort
rev: 5.5.1
rev: 5.11.5
hooks:
- id: isort
name: isort except __init__.py
Expand Down Expand Up @@ -124,19 +124,15 @@ repos:
args: ["--extend-ignore=F401"] # ignore unused imports in __init__.py
files: /__init__\.py$
additional_dependencies: ["flake8-bugbear==20.1.4"]
- repo: https://github.com/PyCQA/pylint
rev: pylint-2.5.3
- repo: https://github.com/OCA/pylint-odoo
rev: v8.0.19
hooks:
- id: pylint
- id: pylint_odoo
name: pylint with optional checks
args:
- --rcfile=.pylintrc
- --exit-zero
verbose: true
additional_dependencies: &pylint_deps
- pylint-odoo==3.5.0
- id: pylint
name: pylint with mandatory checks
- id: pylint_odoo
args:
- --rcfile=.pylintrc-mandatory
additional_dependencies: *pylint_deps
47 changes: 47 additions & 0 deletions ssi_l10n_id_taxform_bukti_potong_pph_1721_a1/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: AGPL-3

================================================
Indonesia - Bukti Potong PPh 21 Formulir 1721 A1
================================================


Installation
============

To install this module, you need to:

1. Clone the branch 14.0 of the repository https://github.com/open-synergy/opnsynid-l10n-indonesia-taxform
2. Add the path to this repository in your configuration (addons-path)
3. Update the module list
4. Go to menu *Apps -> Apps -> Main Apps*
5. Search For *Indonesia - Bukti Potong PPh 21 Formulir 1721 A1*
6. Install the module

Bug Tracker
===========

Bugs are tracked on `GitHub Issues
<https://github.com/open-synergy/opnsynid-l10n-indonesia-taxform/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed
and welcomed feedback.


Credits
=======

Contributors
------------

* Michael Viriyananda <[email protected]>

Maintainer
----------

.. image:: https://simetri-sinergi.id/logo.png
:alt: PT. Simetri Sinergi Indonesia
:target: https://simetri-sinergi.id.com

This module is maintained by the PT. Simetri Sinergi Indonesia.
7 changes: 7 additions & 0 deletions ssi_l10n_id_taxform_bukti_potong_pph_1721_a1/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Copyright 2025 OpenSynergy Indonesia
# Copyright 2025 PT. Simetri Sinergi Indonesia
# License AGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).

from . import (
models,
)
47 changes: 47 additions & 0 deletions ssi_l10n_id_taxform_bukti_potong_pph_1721_a1/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Copyright 2025 OpenSynergy Indonesia
# Copyright 2025 PT. Simetri Sinergi Indonesia
# License AGPL-3.0 or later (http://www.gnu.org/licenses/lgpl).
# pylint: disable=locally-disabled, manifest-required-author
{
"name": "Indonesia - Bukti Potong PPh 21 Formulir 1721 A1",
"version": "14.0.1.0.0",
"category": "localization",
"website": "https://simetri-sinergi.id",
"author": "PT. Simetri Sinergi Indonesia, OpenSynergy Indonesia",
"license": "AGPL-3",
"installable": True,
"application": False,
"depends": [
"ssi_transaction_mixin",
"ssi_transaction_confirm_mixin",
"ssi_transaction_done_mixin",
"ssi_transaction_cancel_mixin",
"ssi_l10n_id_taxform_bukti_potong_pph_mixin",
"ssi_partner",
"ssi_l10n_id_partner_identification_kependudukan",
"ssi_l10n_id_taxform_pph_21",
"report_py3o",
"ssi_print_mixin",
"partner_contact_in_several_companies",
],
"data": [
"security/ir_module_category_data.xml",
"security/res_group_data.xml",
"security/ir.model.access.csv",
"security/ir_rule_data.xml",
"data/ir_sequence_data.xml",
"data/sequence_template_data.xml",
"data/policy_template_data.xml",
"data/approval_template_data.xml",
"reports/bukti_potong_pph_1721_a1_report.xml",
"views/bukti_potong_pph_1721_a1_views.xml",
"views/bukti_potong_pph_1721_a1_config_views.xml",
"views/res_company_views.xml",
],
"demo": [
# "demo/account_journal_demo.xml",
# "demo/account_account_demo.xml",
# "demo/account_tax_demo.xml",
# "demo/l10n_id_bukti_potong_type_demo.xml",
],
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2025 OpenSynergy Indonesia
Copyright 2025 PT. Simetri Sinergi Indonesia
License AGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). -->
<odoo>
<data noupdate="1">
<!-- 1721 a1-->
<record id="approval_template_1721_a1" model="approval.template">
<field name="name">Standard</field>
<field
name="model_id"
ref="ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.model_l10n_id_bukti_potong_pph_1721_a1"
/>
<field name="sequence" eval="100" />
<field name="computation_method">use_python</field>
<field name="python_code">result = True</field>
<field name="validate_sequence" eval="1" />
</record>
<record id="approval_template_detail_1721_a1" model="approval.template_detail">
<field name="template_id" ref="approval_template_1721_a1" />
<field name="approver_selection_method">use_group</field>
<field
name="approver_group_ids"
eval="[(6,0,[ref('ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.l10n_id_bukti_potong_pph_1721_a1_validator_group')])]"
/>
</record>

</data>
</odoo>
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2025 OpenSynergy Indonesia
Copyright 2025 PT. Simetri Sinergi Indonesia
License AGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). -->
<odoo>
<data noupdate="1">

<record id="sequence_1721_a1" model="ir.sequence">
<field name="name">Default Bukti Potong PPh 21 1721 A1</field>
<field name="code">l10n_id.bukti_potong_pph_1721_a1</field>
<field name="prefix">1.1-%(month)s-%(range_year)s-</field>
<field eval="1" name="number_next" />
<field eval="1" name="number_increment" />
<field name="padding" eval="6" />
<field name="use_date_range" eval="1" />
<field eval="False" name="company_id" />
</record>
</data>
</odoo>
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2025 OpenSynergy Indonesia
Copyright 2025 PT. Simetri Sinergi Indonesia
License AGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). -->
<odoo>
<data noupdate="0">

<record id="policy_template_1721_a1" model="policy.template">
<field name="name">Standard</field>
<field
name="model_id"
ref="ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.model_l10n_id_bukti_potong_pph_1721_a1"
/>
<field
name="state_field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','state')]"
/>
<field name="sequence" eval="100" />
<field name="python_code">result=True</field>
</record>

<!-- 1721 a1 confirm_ok -->
<record id="policy_template_1721_a1_confirm" model="policy.template_detail">
<field name="template_id" ref="policy_template_1721_a1" />
<field
name="field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','confirm_ok')]"
/>
<field name="restrict_state" eval="1" />
<field
name="state_ids"
search="[('field_id.model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('value','=','draft')]"
/>
<field name="restrict_user" eval="1" />
<field name="computation_method">use_group</field>
<field
name="group_ids"
eval="[(6,0,[ref('ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.l10n_id_bukti_potong_pph_1721_a1_user_group')])]"
/>
<field name="restrict_additional" eval="0" />
</record>

<!-- 1721 a1 approve_ok -->
<record id="policy_template_1721_a1_approve" model="policy.template_detail">
<field name="template_id" ref="policy_template_1721_a1" />
<field
name="field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','approve_ok')]"
/>
<field name="restrict_state" eval="1" />
<field
name="state_ids"
search="[('field_id.model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('value','=','confirm')]"
/>
<field name="restrict_user" eval="0" />
<field name="restrict_additional" eval="1" />
<field name="additional_python_code">result = False
if env.user.id in document.active_approver_user_ids.ids:
result = True</field>
</record>

<!-- 1721 a1 reject_ok -->
<record id="policy_template_1721_a1_reject" model="policy.template_detail">
<field name="template_id" ref="policy_template_1721_a1" />
<field
name="field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','reject_ok')]"
/>
<field name="restrict_state" eval="1" />
<field
name="state_ids"
search="[('field_id.model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('value','=','confirm')]"
/>
<field name="restrict_user" eval="0" />
<field name="restrict_additional" eval="1" />
<field name="additional_python_code">result = False
if env.user.id in document.active_approver_user_ids.ids:
result = True</field>
</record>

<!-- 1721 a1 restart_approval_ok -->
<record id="policy_template_1721_a1_restart_approval" model="policy.template_detail">
<field name="template_id" ref="policy_template_1721_a1" />
<field
name="field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','restart_approval_ok')]"
/>
<field name="restrict_state" eval="1" />
<field
name="state_ids"
search="[('field_id.model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('value','in',['confirm'])]"
/>
<field name="restrict_user" eval="1" />
<field name="computation_method">use_group</field>
<field
name="group_ids"
eval="[(6,0,[ref('ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.l10n_id_bukti_potong_pph_1721_a1_validator_group')])]"
/>
<field name="restrict_additional" eval="1" />
<field name="additional_python_code">result = False
if not document.approval_template_id:
result = True</field>
</record>

<!-- 1721 a1 cancel_ok -->
<record id="policy_template_1721_a1_cancel" model="policy.template_detail">
<field name="template_id" ref="policy_template_1721_a1" />
<field
name="field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','cancel_ok')]"
/>
<field name="restrict_state" eval="1" />
<field
name="state_ids"
search="[('field_id.model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('value','in',['draft','confirm','done'])]"
/>
<field name="restrict_user" eval="1" />
<field name="computation_method">use_group</field>
<field
name="group_ids"
eval="[(6,0,[ref('ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.l10n_id_bukti_potong_pph_1721_a1_validator_group')])]"
/>
<field name="restrict_additional" eval="0" />
</record>

<!-- 1721 a1 restart_ok -->
<record id="policy_template_1721_a1_restart" model="policy.template_detail">
<field name="template_id" ref="policy_template_1721_a1" />
<field
name="field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','restart_ok')]"
/>
<field name="restrict_state" eval="1" />
<field
name="state_ids"
search="[('field_id.model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('value','in',['cancel','reject'])]"
/>
<field name="restrict_user" eval="1" />
<field name="computation_method">use_group</field>
<field
name="group_ids"
eval="[(6,0,[ref('ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.l10n_id_bukti_potong_pph_1721_a1_validator_group')])]"
/>
<field name="restrict_additional" eval="0" />
</record>

<!-- 1721 a1: manual_number_ok -->
<record id="policy_template_1721_a1_manual_number" model="policy.template_detail">
<field name="template_id" ref="policy_template_1721_a1" />
<field
name="field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','manual_number_ok')]"
/>
<field name="restrict_state" eval="1" />
<field
name="state_ids"
search="[('field_id.model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('value','=','draft')]"
/>
<field name="restrict_user" eval="1" />
<field name="computation_method">use_group</field>
<field
name="group_ids"
eval="[(6,0,[ref('ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.l10n_id_bukti_potong_pph_1721_a1_validator_group')])]"
/>
<field name="restrict_additional" eval="0" />
</record>

</data>
</odoo>
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2025 OpenSynergy Indonesia
Copyright 2025 PT. Simetri Sinergi Indonesia
License AGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). -->
<odoo>

<data noupdate="1">

<record id="sequence_template_1721_a1" model="sequence.template">
<field name="name">Standard</field>
<field
name="model_id"
ref="ssi_l10n_id_taxform_bukti_potong_pph_1721_a1.model_l10n_id_bukti_potong_pph_1721_a1"
/>
<field name="sequence" eval="100" />
<field name="initial_string">/</field>
<field
name="sequence_field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','name')]"
/>
<field
name="date_field_id"
search="[('model_id.model','=','l10n_id.bukti_potong_pph_1721_a1'),('name','=','date')]"
/>
<field name="computation_method">use_python</field>
<field name="python_code">result=True</field>
<field name="sequence_id" ref="sequence_1721_a1" />
<field name="sequence_selection_method">use_sequence</field>
<field name="add_custom_prefix" eval="0" />
<field name="add_custom_suffix" eval="0" />
</record>

</data>
</odoo>
Loading

0 comments on commit f10c088

Please sign in to comment.