diff --git a/.eslintrc.yml b/.eslintrc.yml index 88f2881b4c128fc4762338a8f420272c44cc29ef..9429bc688aab4993eae460767368f65089afa323 100644 --- a/.eslintrc.yml +++ b/.eslintrc.yml @@ -1,9 +1,16 @@ env: browser: true + es6: true # See https://github.com/OCA/odoo-community.org/issues/37#issuecomment-470686449 parserOptions: - ecmaVersion: 2017 + ecmaVersion: 2019 + +overrides: + - files: + - "**/*.esm.js" + parserOptions: + sourceType: module # Globals available in Odoo that shouldn't produce errorings globals: @@ -14,7 +21,7 @@ globals: moment: readonly odoo: readonly openerp: readonly - Promise: readonly + owl: readonly # Styling is handled by Prettier, so we only need to enable AST rules; # see https://github.com/OCA/maintainer-quality-tools/pull/618#issuecomment-558576890 diff --git a/.gitignore b/.gitignore index 818770fb1bdc0a144e924c9a5940f0b035df8a0d..9c283fd41f6cc3330653f1d90a820b85e23caf65 100644 --- a/.gitignore +++ b/.gitignore @@ -15,7 +15,6 @@ build/ develop-eggs/ dist/ eggs/ -lib/ lib64/ parts/ sdist/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index cb8b5ef27a4408c9767c962d0f4e70fb99715061..168470e2ed745631aefb772a4a864cf1de76d3cb 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -5,7 +5,9 @@ exclude: | # Files and folders generated by bots, to avoid loops ^setup/|/static/description/index\.html$| # We don't want to mess with tool-generated files - .svg$|/tests/([^/]+/)?cassettes/| + .svg$|/tests/([^/]+/)?cassettes/|^.copier-answers.yml$|^.github/| + # Maybe reactivate this when all README files include prettier ignore tags? + ^README\.md$| # Library files can have extraneous formatting (even minimized) /static/(src/)?lib/| # Repos using Sphinx to generate docs don't need prettying @@ -14,7 +16,7 @@ exclude: | (LICENSE.*|COPYING.*) default_language_version: python: python3 - node: "14.13.0" + node: "14.18.0" repos: - repo: local hooks: @@ -26,10 +28,12 @@ repos: language: fail files: "\\.rej$" - repo: https://github.com/oca/maintainer-tools - rev: ab1d7f6 + rev: dfba427ba03900b69e0a7f2c65890dc48921d36a hooks: # update the NOT INSTALLABLE ADDONS section above - id: oca-update-pre-commit-excluded-addons + - id: oca-fix-manifest-website + args: ["https://le-filament.com"] - repo: https://github.com/myint/autoflake rev: v1.4 hooks: @@ -42,22 +46,22 @@ repos: - --remove-duplicate-keys - --remove-unused-variables - repo: https://github.com/psf/black - rev: 20.8b1 + rev: 22.3.0 hooks: - id: black - repo: https://github.com/pre-commit/mirrors-prettier - rev: v2.1.2 + rev: v2.4.1 hooks: - id: prettier name: prettier (with plugin-xml) additional_dependencies: - - "prettier@2.1.2" - - "@prettier/plugin-xml@0.12.0" + - "prettier@2.4.1" + - "@prettier/plugin-xml@1.1.0" args: - --plugin=@prettier/plugin-xml files: \.(css|htm|html|js|json|jsx|less|md|scss|toml|ts|xml|yaml|yml)$ - repo: https://github.com/pre-commit/mirrors-eslint - rev: v7.8.1 + rev: v7.32.0 hooks: - id: eslint verbose: true @@ -65,7 +69,7 @@ repos: - --color - --fix - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v3.2.0 + rev: v4.0.1 hooks: - id: trailing-whitespace # exclude autogenerated files @@ -87,12 +91,12 @@ repos: - id: mixed-line-ending args: ["--fix=lf"] - repo: https://github.com/asottile/pyupgrade - rev: v2.7.2 + rev: v2.29.0 hooks: - id: pyupgrade args: ["--keep-percent-format"] - repo: https://github.com/PyCQA/isort - rev: 5.5.1 + rev: 5.9.3 hooks: - id: isort name: isort except __init__.py @@ -100,24 +104,20 @@ repos: - --settings=. exclude: /__init__\.py$ - repo: https://gitlab.com/PyCQA/flake8 - rev: 3.8.3 + rev: 3.9.2 hooks: - id: flake8 name: flake8 - additional_dependencies: ["flake8-bugbear==20.1.4"] - - repo: https://github.com/PyCQA/pylint - rev: pylint-2.5.3 + additional_dependencies: ["flake8-bugbear==21.9.2"] + - repo: https://github.com/OCA/pylint-odoo + rev: 7.0.2 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 diff --git a/.pylintrc b/.pylintrc index c3d0a5c839baeee21312961c56158de4936fdc91..d431ca78d44080ba32c20c6991c2655f2ab6423b 100644 --- a/.pylintrc +++ b/.pylintrc @@ -8,7 +8,7 @@ manifest_required_authors=Le Filament manifest_required_keys=license manifest_deprecated_keys=description,active license_allowed=AGPL-3,GPL-2,GPL-2 or any later version,GPL-3,GPL-3 or any later version,LGPL-3 -valid_odoo_versions=14.0 +valid_odoo_versions=15.0 [MESSAGES CONTROL] disable=all @@ -64,6 +64,38 @@ enable=anomalous-backslash-in-string, use-vim-comment, wrong-tabs-instead-of-spaces, xml-syntax-error, + attribute-string-redundant, + character-not-valid-in-resource-link, + consider-merging-classes-inherited, + context-overridden, + create-user-wo-reset-password, + dangerous-filter-wo-user, + dangerous-qweb-replace-wo-priority, + deprecated-data-xml-node, + deprecated-openerp-xml-node, + duplicate-po-message-definition, + except-pass, + file-not-used, + invalid-commit, + manifest-maintainers-list, + missing-newline-extrafiles, + missing-readme, + missing-return, + odoo-addons-relative-import, + old-api7-method-defined, + po-msgstr-variables, + po-syntax-error, + renamed-field-parameter, + resource-not-exist, + str-format-used, + test-folder-imported, + translation-contains-variable, + translation-positional-used, + unnecessary-utf8-coding-comment, + website-manifest-key-not-valid-uri, + xml-attribute-translatable, + xml-deprecated-qweb-directive, + xml-deprecated-tree-attribute, # messages that do not cause the lint step to fail consider-merging-classes-inherited, create-user-wo-reset-password, @@ -73,7 +105,7 @@ enable=anomalous-backslash-in-string, invalid-commit, missing-manifest-dependency, missing-newline-extrafiles, - # missing-readme, + missing-readme, no-utf8-coding-comment, odoo-addons-relative-import, old-api7-method-defined, diff --git a/.pylintrc-mandatory b/.pylintrc-mandatory index 43ea23947166ff8080219007cfae43ec54a28f8e..189c548631665bef116fc4d0df3b986f9727df31 100644 --- a/.pylintrc-mandatory +++ b/.pylintrc-mandatory @@ -8,7 +8,7 @@ manifest_required_authors=Le Filament manifest_required_keys=license manifest_deprecated_keys=description,active license_allowed=AGPL-3,GPL-2,GPL-2 or any later version,GPL-3,GPL-3 or any later version,LGPL-3 -valid_odoo_versions=14.0 +valid_odoo_versions=15.0 [MESSAGES CONTROL] disable=all @@ -56,7 +56,39 @@ enable=anomalous-backslash-in-string, unreachable, use-vim-comment, wrong-tabs-instead-of-spaces, - xml-syntax-error + xml-syntax-error, + attribute-string-redundant, + character-not-valid-in-resource-link, + consider-merging-classes-inherited, + context-overridden, + create-user-wo-reset-password, + dangerous-filter-wo-user, + dangerous-qweb-replace-wo-priority, + deprecated-data-xml-node, + deprecated-openerp-xml-node, + duplicate-po-message-definition, + except-pass, + file-not-used, + invalid-commit, + manifest-maintainers-list, + missing-newline-extrafiles, + missing-readme, + missing-return, + odoo-addons-relative-import, + old-api7-method-defined, + po-msgstr-variables, + po-syntax-error, + renamed-field-parameter, + resource-not-exist, + str-format-used, + test-folder-imported, + translation-contains-variable, + translation-positional-used, + unnecessary-utf8-coding-comment, + website-manifest-key-not-valid-uri, + xml-attribute-translatable, + xml-deprecated-qweb-directive, + xml-deprecated-tree-attribute [REPORTS] msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg} diff --git a/__init__.py b/__init__.py index 35d5ce45dc3341050801b85b7330714a0c8e7863..ee5475c4a3ad710641ec1f79798350c41985f64d 100644 --- a/__init__.py +++ b/__init__.py @@ -1,4 +1 @@ -# © 2020 Le Filament (<http://www.le-filament.com>) -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html) - from . import controllers, models, wizard diff --git a/__manifest__.py b/__manifest__.py index f8470b3df7b1f80b37a22bda3b916bed395e1975..afd4ea88f252a9685e63335bb107d0ecfd5cb503 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -1,11 +1,10 @@ -# Copyright 2020 Le Filament (<http://www.le-filament.com>) -# License AGPL-3 or later (http://www.gnu.org/licenses/agpl.html). { "name": "Export Journal Tool", "summary": "Export des journaux", "author": "Le Filament", - "version": "14.0.0.0.0", + "version": "15.0.0.0.0", "license": "AGPL-3", + "category": "Accounting/Accounting", "depends": ["account"], "qweb": [], "data": [ diff --git a/controllers/__init__.py b/controllers/__init__.py index 882dcf8f685591e2be3241c768e0a29c2d3f3283..12a7e529b674164f0ad189b131c5d5c8fb9ae0bc 100644 --- a/controllers/__init__.py +++ b/controllers/__init__.py @@ -1,4 +1 @@ -# Copyright 2020 Le Filament (<http://www.le-filament.com>) -# License AGPL-3 or later (http://www.gnu.org/licenses/agpl.html). - from . import main diff --git a/controllers/main.py b/controllers/main.py index ad33b7d0cad1bb6cde06db770da82d27a320defc..d5b38b2475e1c6342d6a7cd6bcc4fbf85b3ec3d8 100644 --- a/controllers/main.py +++ b/controllers/main.py @@ -1,4 +1,4 @@ -# Copyright 2020 Le Filament (<http://www.le-filament.com>) +# Copyright 2020-2022 Le Filament (<https://le-filament.com>) # License AGPL-3 or later (http://www.gnu.org/licenses/agpl.html). import csv diff --git a/datas/export_journal_datas.xml b/datas/export_journal_datas.xml index 92d1f2bf2ff42bbe091cd208f06a33364ce3f9e8..db2e48942638ed8289496dc337872a92a3e3ede9 100644 --- a/datas/export_journal_datas.xml +++ b/datas/export_journal_datas.xml @@ -1,373 +1,373 @@ <?xml version="1.0" ?> -<odoo> - <data noupdate="1"> - <!-- Journal Type --> +<!-- Copyright 2017-2022 Le Filament (<https://le-filament.com>) + License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). --> +<odoo noupdate="1"> + <!-- Journal Type --> - <!-- IBIZA --> - <record id="ibiza_export_ventes" model="export.journal.type"> - <field name="name">Ibiza Ventes</field> - <field name="active" eval="True" /> - <field name="sequence">1</field> - <field name="is_header" eval="False" /> - <field name="journal_ids" eval="[(6, 0, [1])]" /> - <field name="company_id" eval="1" /> - <field name="csv_datestyle">%d/%m/%y</field> - <field name="xls_datestyle">dd/mm/yy</field> - </record> - <record id="ibiza_export_achats" model="export.journal.type"> - <field name="name">Ibiza Achats</field> - <field name="active" eval="True" /> - <field name="sequence">2</field> - <field name="is_header" eval="False" /> - <field name="journal_ids" eval="[(6, 0, [2])]" /> - <field name="company_id" eval="1" /> - <field name="csv_datestyle">%d/%m/%y</field> - <field name="xls_datestyle">dd/mm/yy</field> - </record> + <!-- IBIZA --> + <record id="ibiza_export_ventes" model="export.journal.type"> + <field name="name">Ibiza Ventes</field> + <field name="active" eval="True" /> + <field name="sequence">1</field> + <field name="is_header" eval="False" /> + <field name="journal_ids" eval="[(6, 0, [1])]" /> + <field name="company_id" eval="1" /> + <field name="csv_datestyle">%d/%m/%y</field> + <field name="xls_datestyle">dd/mm/yy</field> + </record> + <record id="ibiza_export_achats" model="export.journal.type"> + <field name="name">Ibiza Achats</field> + <field name="active" eval="True" /> + <field name="sequence">2</field> + <field name="is_header" eval="False" /> + <field name="journal_ids" eval="[(6, 0, [2])]" /> + <field name="company_id" eval="1" /> + <field name="csv_datestyle">%d/%m/%y</field> + <field name="xls_datestyle">dd/mm/yy</field> + </record> - <!-- CEGID --> - <record id="cegid_export_ventes" model="export.journal.type"> - <field name="name">Cegid Ventes</field> - <field name="active" eval="True" /> - <field name="sequence">4</field> - <field name="is_header" eval="True" /> - <field name="journal_ids" eval="[(6, 0, [1])]" /> - <field name="company_id" eval="1" /> - <field name="csv_datestyle">%d/%m/%Y</field> - <field name="xls_datestyle">dd/mm/yyyy</field> - </record> - <record id="cegid_export_achats" model="export.journal.type"> - <field name="name">Cegid Achats</field> - <field name="active" eval="True" /> - <field name="sequence">5</field> - <field name="is_header" eval="True" /> - <field name="journal_ids" eval="[(6, 0, [2])]" /> - <field name="company_id" eval="1" /> - <field name="csv_datestyle">%d/%m/%Y</field> - <field name="xls_datestyle">dd/mm/yyyy</field> - </record> + <!-- CEGID --> + <record id="cegid_export_ventes" model="export.journal.type"> + <field name="name">Cegid Ventes</field> + <field name="active" eval="True" /> + <field name="sequence">4</field> + <field name="is_header" eval="True" /> + <field name="journal_ids" eval="[(6, 0, [1])]" /> + <field name="company_id" eval="1" /> + <field name="csv_datestyle">%d/%m/%Y</field> + <field name="xls_datestyle">dd/mm/yyyy</field> + </record> + <record id="cegid_export_achats" model="export.journal.type"> + <field name="name">Cegid Achats</field> + <field name="active" eval="True" /> + <field name="sequence">5</field> + <field name="is_header" eval="True" /> + <field name="journal_ids" eval="[(6, 0, [2])]" /> + <field name="company_id" eval="1" /> + <field name="csv_datestyle">%d/%m/%Y</field> + <field name="xls_datestyle">dd/mm/yyyy</field> + </record> - <!-- Journal Fields--> + <!-- Journal Fields--> - <!-- IBIZA VENTES--> - <record id="ibiza_vt_1" model="export.journal.field"> - <field name="name">date</field> - <field name="sequence">1</field> - <field name="field_name">line.date</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_2" model="export.journal.field"> - <field name="name">journal</field> - <field name="sequence">2</field> - <field name="field_name">'VT'</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_3" model="export.journal.field"> - <field name="name">compte</field> - <field name="sequence">3</field> - <field name="field_name">line.account_id.code</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_4" model="export.journal.field"> - <field name="name">debit</field> - <field name="sequence">4</field> - <field name="field_name">line.debit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_5" model="export.journal.field"> - <field name="name">credit</field> - <field name="sequence">5</field> - <field name="field_name">line.credit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_6" model="export.journal.field"> - <field name="name">libelle</field> - <field name="sequence">6</field> - <field - name="field_name" - >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_7" model="export.journal.field"> - <field name="name">piece</field> - <field name="sequence">7</field> - <field name="field_name">line.move_id.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_8" model="export.journal.field"> - <field name="name">echeance</field> - <field name="sequence">8</field> - <field name="field_name">line.date_maturity</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <record id="ibiza_vt_9" model="export.journal.field"> - <field name="name">ref_piece</field> - <field name="sequence">9</field> - <field name="field_name">line.move_id.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_ventes" - /> - </record> - <!-- IBIZA ACHATS --> - <record id="ibiza_ha_1" model="export.journal.field"> - <field name="name">date</field> - <field name="sequence">1</field> - <field name="field_name">line.date</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_2" model="export.journal.field"> - <field name="name">journal</field> - <field name="sequence">2</field> - <field name="field_name">'VT'</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_3" model="export.journal.field"> - <field name="name">compte</field> - <field name="sequence">3</field> - <field name="field_name">line.account_id.code</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_4" model="export.journal.field"> - <field name="name">debit</field> - <field name="sequence">4</field> - <field name="field_name">line.debit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_5" model="export.journal.field"> - <field name="name">credit</field> - <field name="sequence">5</field> - <field name="field_name">line.credit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_6" model="export.journal.field"> - <field name="name">libelle</field> - <field name="sequence">6</field> - <field - name="field_name" - >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_7" model="export.journal.field"> - <field name="name">piece</field> - <field name="sequence">7</field> - <field name="field_name">line.move_id.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_8" model="export.journal.field"> - <field name="name">echeance</field> - <field name="sequence">8</field> - <field name="field_name">line.date_maturity</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> - <record id="ibiza_ha_9" model="export.journal.field"> - <field name="name">ref_piece</field> - <field name="sequence">9</field> - <field name="field_name">line.move_id.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.ibiza_export_achats" - /> - </record> + <!-- IBIZA VENTES--> + <record id="ibiza_vt_1" model="export.journal.field"> + <field name="name">date</field> + <field name="sequence">1</field> + <field name="field_name">line.date</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_2" model="export.journal.field"> + <field name="name">journal</field> + <field name="sequence">2</field> + <field name="field_name">'VT'</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_3" model="export.journal.field"> + <field name="name">compte</field> + <field name="sequence">3</field> + <field name="field_name">line.account_id.code</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_4" model="export.journal.field"> + <field name="name">debit</field> + <field name="sequence">4</field> + <field name="field_name">line.debit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_5" model="export.journal.field"> + <field name="name">credit</field> + <field name="sequence">5</field> + <field name="field_name">line.credit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_6" model="export.journal.field"> + <field name="name">libelle</field> + <field name="sequence">6</field> + <field + name="field_name" + >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_7" model="export.journal.field"> + <field name="name">piece</field> + <field name="sequence">7</field> + <field name="field_name">line.move_id.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_8" model="export.journal.field"> + <field name="name">echeance</field> + <field name="sequence">8</field> + <field name="field_name">line.date_maturity</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <record id="ibiza_vt_9" model="export.journal.field"> + <field name="name">ref_piece</field> + <field name="sequence">9</field> + <field name="field_name">line.move_id.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_ventes" + /> + </record> + <!-- IBIZA ACHATS --> + <record id="ibiza_ha_1" model="export.journal.field"> + <field name="name">date</field> + <field name="sequence">1</field> + <field name="field_name">line.date</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_2" model="export.journal.field"> + <field name="name">journal</field> + <field name="sequence">2</field> + <field name="field_name">'VT'</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_3" model="export.journal.field"> + <field name="name">compte</field> + <field name="sequence">3</field> + <field name="field_name">line.account_id.code</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_4" model="export.journal.field"> + <field name="name">debit</field> + <field name="sequence">4</field> + <field name="field_name">line.debit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_5" model="export.journal.field"> + <field name="name">credit</field> + <field name="sequence">5</field> + <field name="field_name">line.credit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_6" model="export.journal.field"> + <field name="name">libelle</field> + <field name="sequence">6</field> + <field + name="field_name" + >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_7" model="export.journal.field"> + <field name="name">piece</field> + <field name="sequence">7</field> + <field name="field_name">line.move_id.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_8" model="export.journal.field"> + <field name="name">echeance</field> + <field name="sequence">8</field> + <field name="field_name">line.date_maturity</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> + <record id="ibiza_ha_9" model="export.journal.field"> + <field name="name">ref_piece</field> + <field name="sequence">9</field> + <field name="field_name">line.move_id.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.ibiza_export_achats" + /> + </record> - <!-- CEGID VENTES--> - <record id="cegid_vt_1" model="export.journal.field"> - <field name="name">Journal</field> - <field name="sequence">1</field> - <field name="field_name">'VEN'</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <record id="cegid_vt_2" model="export.journal.field"> - <field name="name">Date</field> - <field name="sequence">2</field> - <field name="field_name">line.date</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <record id="cegid_vt_3" model="export.journal.field"> - <field name="name">Général</field> - <field name="sequence">3</field> - <field name="field_name">line.account_id.code</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <record id="cegid_vt_4" model="export.journal.field"> - <field name="name">Auxiliaire</field> - <field name="sequence">4</field> - <field name="field_name">''</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <record id="cegid_vt_5" model="export.journal.field"> - <field name="name">Référence</field> - <field name="sequence">5</field> - <field name="field_name">line.move_id.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <record id="cegid_vt_6" model="export.journal.field"> - <field name="name">Libellé</field> - <field name="sequence">6</field> - <field - name="field_name" - >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <record id="cegid_vt_7" model="export.journal.field"> - <field name="name">Débit</field> - <field name="sequence">7</field> - <field name="field_name">line.debit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <record id="cegid_vt_8" model="export.journal.field"> - <field name="name">Crédit</field> - <field name="sequence">8</field> - <field name="field_name">line.credit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_ventes" - /> - </record> - <!-- CEGID ACHATS--> - <record id="cegid_ha_1" model="export.journal.field"> - <field name="name">Journal</field> - <field name="sequence">1</field> - <field name="field_name">'VEN'</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> - <record id="cegid_ha_2" model="export.journal.field"> - <field name="name">Date</field> - <field name="sequence">2</field> - <field name="field_name">line.date</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> - <record id="cegid_ha_3" model="export.journal.field"> - <field name="name">Général</field> - <field name="sequence">3</field> - <field name="field_name">line.account_id.code</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> - <record id="cegid_ha_4" model="export.journal.field"> - <field name="name">Auxiliaire</field> - <field name="sequence">4</field> - <field name="field_name">''</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> - <record id="cegid_ha_5" model="export.journal.field"> - <field name="name">Référence</field> - <field name="sequence">5</field> - <field name="field_name">line.move_id.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> - <record id="cegid_ha_6" model="export.journal.field"> - <field name="name">Libellé</field> - <field name="sequence">6</field> - <field - name="field_name" - >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> - <record id="cegid_ha_7" model="export.journal.field"> - <field name="name">Débit</field> - <field name="sequence">7</field> - <field name="field_name">line.debit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> - <record id="cegid_ha_8" model="export.journal.field"> - <field name="name">Crédit</field> - <field name="sequence">8</field> - <field name="field_name">line.credit</field> - <field - name="export_id" - ref="lefilament_export_journal_tool.cegid_export_achats" - /> - </record> + <!-- CEGID VENTES--> + <record id="cegid_vt_1" model="export.journal.field"> + <field name="name">Journal</field> + <field name="sequence">1</field> + <field name="field_name">'VEN'</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <record id="cegid_vt_2" model="export.journal.field"> + <field name="name">Date</field> + <field name="sequence">2</field> + <field name="field_name">line.date</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <record id="cegid_vt_3" model="export.journal.field"> + <field name="name">Général</field> + <field name="sequence">3</field> + <field name="field_name">line.account_id.code</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <record id="cegid_vt_4" model="export.journal.field"> + <field name="name">Auxiliaire</field> + <field name="sequence">4</field> + <field name="field_name">''</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <record id="cegid_vt_5" model="export.journal.field"> + <field name="name">Référence</field> + <field name="sequence">5</field> + <field name="field_name">line.move_id.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <record id="cegid_vt_6" model="export.journal.field"> + <field name="name">Libellé</field> + <field name="sequence">6</field> + <field + name="field_name" + >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <record id="cegid_vt_7" model="export.journal.field"> + <field name="name">Débit</field> + <field name="sequence">7</field> + <field name="field_name">line.debit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <record id="cegid_vt_8" model="export.journal.field"> + <field name="name">Crédit</field> + <field name="sequence">8</field> + <field name="field_name">line.credit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_ventes" + /> + </record> + <!-- CEGID ACHATS--> + <record id="cegid_ha_1" model="export.journal.field"> + <field name="name">Journal</field> + <field name="sequence">1</field> + <field name="field_name">'VEN'</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> + <record id="cegid_ha_2" model="export.journal.field"> + <field name="name">Date</field> + <field name="sequence">2</field> + <field name="field_name">line.date</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> + <record id="cegid_ha_3" model="export.journal.field"> + <field name="name">Général</field> + <field name="sequence">3</field> + <field name="field_name">line.account_id.code</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> + <record id="cegid_ha_4" model="export.journal.field"> + <field name="name">Auxiliaire</field> + <field name="sequence">4</field> + <field name="field_name">''</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> + <record id="cegid_ha_5" model="export.journal.field"> + <field name="name">Référence</field> + <field name="sequence">5</field> + <field name="field_name">line.move_id.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> + <record id="cegid_ha_6" model="export.journal.field"> + <field name="name">Libellé</field> + <field name="sequence">6</field> + <field + name="field_name" + >line.partner_id.name if not line.name else 'Facture ' + line.move_id.name + ' - ' + line.name</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> + <record id="cegid_ha_7" model="export.journal.field"> + <field name="name">Débit</field> + <field name="sequence">7</field> + <field name="field_name">line.debit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> + <record id="cegid_ha_8" model="export.journal.field"> + <field name="name">Crédit</field> + <field name="sequence">8</field> + <field name="field_name">line.credit</field> + <field + name="export_id" + ref="lefilament_export_journal_tool.cegid_export_achats" + /> + </record> - </data> </odoo> diff --git a/models/__init__.py b/models/__init__.py index c15eeb8f20f44d642ba2f9bbb2c06f4e8730550b..5ab804d4c41a2b2cf8bfc1b0ec04e6c61dec2bdf 100644 --- a/models/__init__.py +++ b/models/__init__.py @@ -1,6 +1,3 @@ -# Copyright 2020 Le Filament (<http://www.le-filament.com>) -# License AGPL-3 or later (http://www.gnu.org/licenses/agpl.html). - from . import account_move_line from . import export_journal_field from . import export_journal_type diff --git a/models/account_move_line.py b/models/account_move_line.py index 5b93be9134c35efc131a58549977c6d543a222da..eae5eb8b9e33737311808e5fbe39ef4aae13191a 100644 --- a/models/account_move_line.py +++ b/models/account_move_line.py @@ -1,5 +1,5 @@ -# Copyright 2020 Le Filament -# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +# Copyright 2020-2022 Le Filament (<https://le-filament.com>) +# License AGPL-3 or later (http://www.gnu.org/licenses/agpl.html). from odoo import fields, models diff --git a/models/export_journal_field.py b/models/export_journal_field.py index 8800236eb3813a76337c1213e73a3c26db972218..652f408eef5034b8e5092d64b35b7632a1c22c2d 100644 --- a/models/export_journal_field.py +++ b/models/export_journal_field.py @@ -1,4 +1,4 @@ -# Copyright 2020 Le Filament (<http://www.le-filament.com>) +# Copyright 2020-2022 Le Filament (<https://le-filament.com>) # License AGPL-3 or later (http://www.gnu.org/licenses/agpl.html). from odoo import fields, models @@ -10,7 +10,7 @@ class ExportJournalField(models.Model): _order = "sequence" name = fields.Char("Header") - sequence = fields.Integer("Sequence", default=10) + sequence = fields.Integer(default=10) export_id = fields.Many2one(comodel_name="export.journal.type", name="Parent") field_name = fields.Char("Champ") is_python = fields.Boolean("Expression python", default=True) diff --git a/models/export_journal_type.py b/models/export_journal_type.py index 5629e355168c28713ca1620f66c04bfbdb9de0a1..6f2d9a2d0ab00eb365e6ff023bf487e9a375485f 100644 --- a/models/export_journal_type.py +++ b/models/export_journal_type.py @@ -1,4 +1,4 @@ -# Copyright 2020 Le Filament (<http://www.le-filament.com>) +# Copyright 2020-2022 Le Filament (<https://le-filament.com>) # License AGPL-3 or later (http://www.gnu.org/licenses/agpl.html). from odoo import fields, models @@ -11,7 +11,7 @@ class ExportJournalType(models.Model): name = fields.Char("Nom", required=True) active = fields.Boolean("Actif", default=True) - sequence = fields.Integer("Sequence", default=10) + sequence = fields.Integer(default=10) fields_ids = fields.One2many( comodel_name="export.journal.field", inverse_name="export_id", diff --git a/views/export_journal_type.xml b/views/export_journal_type.xml index cf8b7188c814b571d58acb644f11f710826b9250..0ee90a46d0b662409e18c16d8eb37a99e5c2606b 100644 --- a/views/export_journal_type.xml +++ b/views/export_journal_type.xml @@ -1,117 +1,115 @@ <?xml version="1.0" encoding="utf-8" ?> -<!-- Copyright 2020 Le Filament +<!-- Copyright 2020-2022 Le Filament (<https://le-filament.com>) License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). --> <odoo> - <data> - <record id="export_journal_type_form_view" model="ir.ui.view"> - <field name="name">export.journal.type.form</field> - <field name="model">export.journal.type</field> - <field name="arch" type="xml"> - <form string="Export Journaux"> - <sheet> - <field name="active" invisible="1" /> - <widget - name="web_ribbon" - title="Archivé" - bg_color="bg-danger" - attrs="{'invisible': [('active', '=', True)]}" - /> - <h2><field name="name" /></h2> + <record id="export_journal_type_form_view" model="ir.ui.view"> + <field name="name">export.journal.type.form</field> + <field name="model">export.journal.type</field> + <field name="arch" type="xml"> + <form string="Export Journaux"> + <sheet> + <field name="active" invisible="1" /> + <widget + name="web_ribbon" + title="Archivé" + bg_color="bg-danger" + attrs="{'invisible': [('active', '=', True)]}" + /> + <h2><field name="name" /></h2> + <group> <group> - <group> - <field - name="journal_ids" - widget="many2many_tags" - options="{'no_create': 1}" - required="1" - /> - <field name="is_header" /> - <field name="delimiter" required="1" /> - <field name="csv_datestyle" required="1" /> - <field name="xls_datestyle" required="1" /> - </group> - <group> - <field name="sequence" /> - <field - name="company_id" - options="{'no_create': 1}" - required="1" - /> - </group> + <field + name="journal_ids" + widget="many2many_tags" + options="{'no_create': 1}" + required="1" + /> + <field name="is_header" /> + <field name="delimiter" required="1" /> + <field name="csv_datestyle" required="1" /> + <field name="xls_datestyle" required="1" /> </group> - <div class="alert alert-info" role="alert"> - La première colonne correspond au nom de l'entête du fichier de sortie.<br + <group> + <field name="sequence" /> + <field + name="company_id" + options="{'no_create': 1}" + required="1" /> - La deuxième colonne est la valeur de sortie : code python où l'objet <code - >line</code> correspond à un <code - >account.move.line</code>.<br /> - </div> - <field name="fields_ids"> - <tree editable="bottom"> - <field name="sequence" widget="handle" /> - <field name="name" required="1" /> - <field name="field_name" required="1" /> - <field name="is_python" widget="boolean_toggle" /> - </tree> - </field> - </sheet> - </form> - </field> - </record> + </group> + </group> + <div class="alert alert-info" role="alert"> + La première colonne correspond au nom de l'entête du fichier de sortie.<br + /> + La deuxième colonne est la valeur de sortie : code python où l'objet <code + >line</code> correspond à un <code>account.move.line</code>.<br + /> + </div> + <field name="fields_ids"> + <tree editable="bottom"> + <field name="sequence" widget="handle" /> + <field name="name" required="1" /> + <field name="field_name" required="1" /> + <field name="is_python" widget="boolean_toggle" /> + </tree> + </field> + </sheet> + </form> + </field> + </record> - <record id="export_journal_type_tree_view" model="ir.ui.view"> - <field name="name">export.journal.type.tree</field> - <field name="model">export.journal.type</field> - <field name="arch" type="xml"> - <tree string="Export Journaux"> - <field name="sequence" widget="handle" /> - <field name="name" /> - <field name="is_header" /> - <field name="journal_ids" widget="many2many_tags" /> - <field name="company_id" /> - </tree> - </field> - </record> + <record id="export_journal_type_tree_view" model="ir.ui.view"> + <field name="name">export.journal.type.tree</field> + <field name="model">export.journal.type</field> + <field name="arch" type="xml"> + <tree> + <field name="sequence" widget="handle" /> + <field name="name" /> + <field name="is_header" /> + <field name="journal_ids" widget="many2many_tags" /> + <field name="company_id" /> + </tree> + </field> + </record> - <record id="export_journal_type_search_view" model="ir.ui.view"> - <field name="name">export.journal.type.search</field> - <field name="model">export.journal.type</field> - <field name="arch" type="xml"> - <search string="Export Journaux"> - <field name="name" /> - <filter - string="Archivés" - name="inactive" - domain="[('active','=',False)]" - /> - <filter - string="Tous" - name="all" - domain="[('active','in',(True,False))]" - /> - </search> - </field> - </record> + <record id="export_journal_type_search_view" model="ir.ui.view"> + <field name="name">export.journal.type.search</field> + <field name="model">export.journal.type</field> + <field name="arch" type="xml"> + <search string="Export Journaux"> + <field name="name" /> + <filter + string="Archivés" + name="inactive" + domain="[('active','=',False)]" + /> + <filter + string="Tous" + name="all" + domain="[('active','in',(True,False))]" + /> + </search> + </field> + </record> - <record id="export_journal_type_act_window" model="ir.actions.act_window"> - <field name="name">Export Journaux</field> - <field name="type">ir.actions.act_window</field> - <field name="res_model">export.journal.type</field> - <field name="view_mode">tree,form</field> - </record> + <record id="export_journal_type_act_window" model="ir.actions.act_window"> + <field name="name">Export Journaux</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">export.journal.type</field> + <field name="view_mode">tree,form</field> + </record> - <menuitem - name="Comptabilité" - id="export_journal_type_root_menu" - parent="base.menu_custom" - sequence="50" - /> - <menuitem - name="Configuration Export Journaux" - id="export_journal_type_menu" - parent="lefilament_export_journal_tool.export_journal_type_root_menu" - action="export_journal_type_act_window" - /> + <menuitem + name="Comptabilité" + id="export_journal_type_root_menu" + parent="base.menu_custom" + sequence="50" + /> + <menuitem + name="Configuration Export Journaux" + id="export_journal_type_menu" + parent="lefilament_export_journal_tool.export_journal_type_root_menu" + action="export_journal_type_act_window" + /> - </data> </odoo>