Merge pull request #149 from ForgeFlow/13.0-upt-ci-config

[13.0][IMP]update config files from oca-addons-repo-template
This commit is contained in:
Aaron ForgeFlow
2020-12-24 08:18:41 +01:00
committed by GitHub
41 changed files with 457 additions and 673 deletions

13
.copier-answers.yml Normal file
View File

@@ -0,0 +1,13 @@
# Do NOT update manually; changes here will be overwritten by Copier
_commit: v1.1.1
_src_path: https://github.com/OCA/oca-addons-repo-template.git
dependency_installation_mode: OCA
generate_requirements_txt: false
include_wkhtmltopdf: true
odoo_version: 13.0
rebel_module_groups: []
repo_description: null
repo_name: stock-rma
repo_slug: https://github.com/ForgeFlow/stock-rma
travis_apt_packages: []
travis_apt_sources: []

View File

@@ -1,282 +1,180 @@
{ env:
"globals": browser: true
{
"$": false, # See https://github.com/OCA/odoo-community.org/issues/37#issuecomment-470686449
"_": false, parserOptions:
"fuzzy": false, ecmaVersion: 2017
"jQuery": false,
"moment": false, # Globals available in Odoo that shouldn't produce errorings
"odoo": false, globals:
"openerp": false, _: readonly
"self": false, $: readonly
}, fuzzy: readonly
"env": { "browser": true }, jQuery: readonly
"rules": moment: readonly
{ odoo: readonly
"no-alert": "warn", openerp: readonly
"no-array-constructor": "warn", Promise: readonly
"no-bitwise": "off",
"no-caller": "warn", # Styling is handled by Prettier, so we only need to enable AST rules;
"no-case-declarations": "warn", # see https://github.com/OCA/maintainer-quality-tools/pull/618#issuecomment-558576890
"no-catch-shadow": "warn", rules:
"no-class-assign": "warn", accessor-pairs: warn
"no-cond-assign": "warn", array-callback-return: warn
"no-confusing-arrow": "warn", callback-return: warn
"no-console": "off", capitalized-comments:
"no-const-assign": "warn", - warn
"no-constant-condition": "warn", - always
"no-continue": "off", - ignoreConsecutiveComments: true
"no-control-regex": "warn", ignoreInlineComments: true
"no-debugger": "warn", complexity:
"no-delete-var": "warn", - warn
"no-div-regex": "warn", - 15
"no-dupe-args": "warn", constructor-super: warn
"no-dupe-class-members": "warn", dot-notation: warn
"no-dupe-keys": "warn", eqeqeq: warn
"no-duplicate-case": "warn", global-require: warn
"no-duplicate-imports": "warn", handle-callback-err: warn
"no-else-return": "warn", id-blacklist: warn
"no-empty": "warn", id-match: warn
"no-empty-character-class": "warn", init-declarations: error
"no-empty-function": "warn", max-depth: warn
"no-empty-pattern": "warn", max-nested-callbacks: warn
"no-eq-null": "warn", max-statements-per-line: warn
"no-eval": "warn", no-alert: warn
"no-ex-assign": "warn", no-array-constructor: warn
"no-extend-native": "warn", no-caller: warn
"no-extra-bind": "warn", no-case-declarations: warn
"no-extra-boolean-cast": "warn", no-class-assign: warn
"no-extra-label": "warn", no-cond-assign: error
"no-extra-parens": "warn", no-const-assign: error
"no-extra-semi": "warn", no-constant-condition: warn
"no-fallthrough": "warn", no-control-regex: warn
"no-floating-decimal": "warn", no-debugger: error
"no-func-assign": "warn", no-delete-var: warn
"no-implicit-coercion": ["warn", { "allow": ["~"] }], no-div-regex: warn
"no-implicit-globals": "warn", no-dupe-args: error
"no-implied-eval": "warn", no-dupe-class-members: error
"no-inline-comments": "warn", no-dupe-keys: error
"no-inner-declarations": "warn", no-duplicate-case: error
"no-invalid-regexp": "warn", no-duplicate-imports: error
"no-invalid-this": "off", no-else-return: warn
"no-irregular-whitespace": "warn", no-empty-character-class: warn
"no-iterator": "warn", no-empty-function: error
"no-label-var": "warn", no-empty-pattern: error
"no-labels": "warn", no-empty: warn
"no-lone-blocks": "warn", no-eq-null: error
"no-lonely-if": "warn", no-eval: error
"no-loop-func": "off", no-ex-assign: error
"no-magic-numbers": "off", no-extend-native: warn
"no-mixed-operators": "warn", no-extra-bind: warn
"no-mixed-requires": "warn", no-extra-boolean-cast: warn
"no-mixed-spaces-and-tabs": "warn", no-extra-label: warn
"no-multi-spaces": "warn", no-fallthrough: warn
"no-multi-str": "warn", no-func-assign: error
"no-multiple-empty-lines": "warn", no-global-assign: error
"no-native-reassign": "warn", no-implicit-coercion:
"no-negated-condition": "warn", - warn
"no-negated-in-lhs": "warn", - allow: ["~"]
"no-nested-ternary": "off", no-implicit-globals: warn
"no-new": "warn", no-implied-eval: warn
"no-new-func": "warn", no-inline-comments: warn
"no-new-object": "warn", no-inner-declarations: warn
"no-new-require": "warn", no-invalid-regexp: warn
"no-new-symbol": "warn", no-irregular-whitespace: warn
"no-new-wrappers": "warn", no-iterator: warn
"no-obj-calls": "warn", no-label-var: warn
"no-octal": "warn", no-labels: warn
"no-octal-escape": "warn", no-lone-blocks: warn
"no-param-reassign": "warn", no-lonely-if: error
"no-path-concat": "warn", no-mixed-requires: error
"no-plusplus": "off", no-multi-str: warn
"no-process-env": "warn", no-native-reassign: error
"no-process-exit": "warn", no-negated-condition: warn
"no-proto": "warn", no-negated-in-lhs: error
"no-prototype-builtins": "warn", no-new-func: warn
"no-redeclare": "warn", no-new-object: warn
"no-regex-spaces": "warn", no-new-require: warn
"no-restricted-globals": "warn", no-new-symbol: warn
"no-restricted-imports": "warn", no-new-wrappers: warn
"no-restricted-modules": "warn", no-new: warn
"no-restricted-syntax": "warn", no-obj-calls: warn
"no-return-assign": "warn", no-octal-escape: warn
"no-script-url": "warn", no-octal: warn
"no-self-assign": "warn", no-param-reassign: warn
"no-self-compare": "warn", no-path-concat: warn
"no-sequences": "warn", no-process-env: warn
"no-shadow": "warn", no-process-exit: warn
"no-shadow-restricted-names": "warn", no-proto: warn
"no-whitespace-before-property": "warn", no-prototype-builtins: warn
"no-spaced-func": "warn", no-redeclare: warn
"no-sparse-arrays": "warn", no-regex-spaces: warn
"no-sync": "warn", no-restricted-globals: warn
"no-tabs": "warn", no-restricted-imports: warn
"no-ternary": "off", no-restricted-modules: warn
"no-trailing-spaces": "warn", no-restricted-syntax: warn
"no-this-before-super": "warn", no-return-assign: error
"no-throw-literal": "warn", no-script-url: warn
"no-undef": "warn", no-self-assign: warn
"no-undef-init": "warn", no-self-compare: warn
"no-undefined": "off", no-sequences: warn
"no-unexpected-multiline": "warn", no-shadow-restricted-names: warn
"no-underscore-dangle": "off", no-shadow: warn
"no-unmodified-loop-condition": "warn", no-sparse-arrays: warn
"no-unneeded-ternary": "warn", no-sync: warn
"no-unreachable": "warn", no-this-before-super: warn
"no-unsafe-finally": "warn", no-throw-literal: warn
"no-unused-expressions": "warn", no-undef-init: warn
"no-unused-labels": "warn", no-undef: error
"no-unused-vars": "warn", no-unmodified-loop-condition: warn
"no-use-before-define": "warn", no-unneeded-ternary: error
"no-useless-call": "warn", no-unreachable: error
"no-useless-computed-key": "warn", no-unsafe-finally: error
"no-useless-concat": "warn", no-unused-expressions: error
"no-useless-constructor": "warn", no-unused-labels: error
"no-useless-escape": "warn", no-unused-vars: error
"no-useless-rename": "warn", no-use-before-define: error
"no-void": "warn", no-useless-call: warn
"no-var": "off", no-useless-computed-key: warn
"no-warning-comments": "off", no-useless-concat: warn
"no-with": "warn", no-useless-constructor: warn
"array-bracket-spacing": "off", no-useless-escape: warn
"array-callback-return": "warn", no-useless-rename: warn
"arrow-body-style": "warn", no-void: warn
"arrow-parens": "warn", no-with: warn
"arrow-spacing": "off", operator-assignment: [error, always]
"accessor-pairs": "warn", prefer-const: warn
"block-scoped-var": "off", radix: warn
"block-spacing": ["warn", "always"], require-yield: warn
"brace-style": "warn", sort-imports: warn
"callback-return": "warn", spaced-comment: [error, always]
"camelcase": "off", strict: [error, function]
"capitalized-comments": use-isnan: error
[ valid-jsdoc:
"warn", - warn
"always", - prefer:
{ "ignoreConsecutiveComments": true, "ignoreInlineComments": true }, arg: param
], argument: param
"comma-dangle": ["warn", "always-multiline"], augments: extends
"comma-spacing": ["warn", { "before": false, "after": true }], constructor: class
"comma-style": "warn", exception: throws
"complexity": ["warn", 15], func: function
"computed-property-spacing": "off", method: function
"consistent-return": "off", prop: property
"consistent-this": "off", return: returns
"constructor-super": "warn", virtual: abstract
"curly": "warn", yield: yields
"default-case": "off", preferType:
"dot-location": ["warn", "property"], array: Array
"dot-notation": "warn", bool: Boolean
"eol-last": "warn", boolean: Boolean
"eqeqeq": "warn", number: Number
"func-names": "off", object: Object
"func-style": "off", str: String
"generator-star-spacing": "off", string: String
"global-require": "warn", requireParamDescription: false
"guard-for-in": "off", requireReturn: false
"handle-callback-err": "warn", requireReturnDescription: false
"id-blacklist": "warn", requireReturnType: false
"id-length": "off", valid-typeof: warn
"id-match": "warn", yoda: warn
"indent": "warn",
"init-declarations": "warn",
"jsx-quotes": "warn",
"key-spacing": "off",
"keyword-spacing": "warn",
"linebreak-style": ["warn", "unix"],
"lines-around-comment": "warn",
"max-depth": "warn",
"max-len":
[
"warn",
{ "code": 88, "ignorePattern": "odoo\\.define\\(", "tabWidth": 4 },
],
"max-lines": "off",
"max-nested-callbacks": "warn",
"max-params": "off",
"max-statements": "off",
"max-statements-per-line": "warn",
"multiline-ternary": "off",
"new-cap": "off",
"new-parens": "warn",
"newline-after-var": "off",
"newline-before-return": "off",
"newline-per-chained-call": "off",
"object-curly-newline": ["warn", { "consistent": true }],
"object-curly-spacing": ["warn", "never"],
"object-property-newline":
["warn", { "allowAllPropertiesOnSameLine": true }],
"object-shorthand": "off",
"one-var": "off",
"one-var-declaration-per-line": "off",
"operator-assignment": "warn",
"operator-linebreak": "warn",
"padded-blocks": "off",
"prefer-arrow-callback": "off",
"prefer-const": "warn",
"prefer-reflect": "off",
"prefer-rest-params": "off",
"prefer-spread": "off",
"prefer-template": "off",
"quote-props": "off",
"quotes": "off",
"radix": "warn",
"require-yield": "warn",
"rest-spread-spacing": "off",
"semi": ["warn", "always"],
"semi-spacing": "warn",
"sort-imports": "warn",
"sort-vars": "off",
"space-before-blocks": "warn",
"space-before-function-paren": "warn",
"space-in-parens": "off",
"space-infix-ops": "off",
"space-unary-ops": "off",
"spaced-comment": ["warn", "always"],
"strict": ["warn", "function"],
"template-curly-spacing": "off",
"unicode-bom": "warn",
"use-isnan": "warn",
"valid-jsdoc":
[
"warn",
{
"prefer":
{
"arg": "param",
"argument": "param",
"augments": "extends",
"constructor": "class",
"exception": "throws",
"func": "function",
"method": "function",
"prop": "property",
"return": "returns",
"virtual": "abstract",
"yield": "yields",
},
"preferType":
{
"array": "Array",
"bool": "Boolean",
"boolean": "Boolean",
"number": "Number",
"object": "Object",
"str": "String",
"string": "String",
},
"requireParamDescription": false,
"requireReturn": false,
"requireReturnDescription": false,
"requireReturnType": false,
},
],
"valid-typeof": "warn",
"vars-on-top": "off",
"wrap-iife": "warn",
"wrap-regex": "warn",
"yield-star-spacing": "off",
"yoda": "warn",
},
"parserOptions": { "ecmaVersion": 2017 },
}

13
.github/workflows/pre-commit.yml vendored Normal file
View File

@@ -0,0 +1,13 @@
name: pre-commit
on:
pull_request:
push:
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: pre-commit/action@v2.0.0

19
.gitignore vendored
View File

@@ -1,6 +1,8 @@
# Byte-compiled / optimized / DLL files # Byte-compiled / optimized / DLL files
__pycache__/ __pycache__/
*.py[cod] *.py[cod]
/.venv
/.pytest_cache
# C extensions # C extensions
*.so *.so
@@ -21,6 +23,7 @@ var/
*.egg-info/ *.egg-info/
.installed.cfg .installed.cfg
*.egg *.egg
*.eggs
# Installer logs # Installer logs
pip-log.txt pip-log.txt
@@ -40,6 +43,19 @@ coverage.xml
# Pycharm # Pycharm
.idea .idea
# Eclipse
.settings
# Visual Studio cache/options directory
.vs/
.vscode
# OSX Files
.DS_Store
# Django stuff:
*.log
# Mr Developer # Mr Developer
.mr.developer.cfg .mr.developer.cfg
.project .project
@@ -54,3 +70,6 @@ docs/_build/
# Backup files # Backup files
*~ *~
*.swp *.swp
# OCA rules
!static/lib/

View File

@@ -12,20 +12,21 @@ exclude: |
(LICENSE.*|COPYING.*) (LICENSE.*|COPYING.*)
default_language_version: default_language_version:
python: python3 python: python3
node: "14.13.0"
repos: repos:
- repo: https://github.com/myint/autoflake
rev: v1.4
hooks:
- id: autoflake
args: ["-i", "--ignore-init-module-imports"]
- repo: https://github.com/psf/black - repo: https://github.com/psf/black
rev: 19.10b0 rev: 19.10b0
hooks: hooks:
- id: black - id: black
- repo: https://github.com/prettier/prettier - repo: https://github.com/pre-commit/mirrors-prettier
rev: "1.19.1" rev: v1.19.1
hooks: hooks:
- id: prettier - id: prettier
# TODO Avoid awebdeveloper/pre-commit-prettier if possible
# HACK https://github.com/prettier/prettier/issues/7407
- repo: https://github.com/awebdeveloper/pre-commit-prettier
rev: v0.0.1
hooks:
- id: prettier - id: prettier
name: prettier xml plugin name: prettier xml plugin
additional_dependencies: additional_dependencies:
@@ -75,17 +76,17 @@ repos:
files: /__init__\.py$ files: /__init__\.py$
additional_dependencies: ["flake8-bugbear==19.8.0"] additional_dependencies: ["flake8-bugbear==19.8.0"]
- repo: https://github.com/pre-commit/mirrors-pylint - repo: https://github.com/pre-commit/mirrors-pylint
rev: v2.3.1 rev: v2.5.3
hooks: hooks:
- id: pylint - id: pylint
name: pylint with optional checks name: pylint with optional checks
args: ["--rcfile=.pylintrc", "--exit-zero"] args: ["--rcfile=.pylintrc", "--exit-zero"]
verbose: true verbose: true
additional_dependencies: ["pylint-odoo==3.1.0"] additional_dependencies: ["pylint-odoo==3.5.0"]
- id: pylint - id: pylint
name: pylint with mandatory checks name: pylint with mandatory checks
args: ["--rcfile=.pylintrc-mandatory"] args: ["--rcfile=.pylintrc-mandatory"]
additional_dependencies: ["pylint-odoo==3.1.0"] additional_dependencies: ["pylint-odoo==3.5.0"]
- repo: https://github.com/asottile/pyupgrade - repo: https://github.com/asottile/pyupgrade
rev: v1.26.2 rev: v1.26.2
hooks: hooks:

8
.prettierrc.yml Normal file
View File

@@ -0,0 +1,8 @@
# Defaults for all prettier-supported languages.
# Prettier will complete this with settings from .editorconfig file.
bracketSpacing: false
printWidth: 88
proseWrap: always
semi: true
trailingComma: "es5"
xmlWhitespaceSensitivity: "strict"

View File

@@ -3,7 +3,8 @@ load-plugins=pylint_odoo
score=n score=n
[ODOOLINT] [ODOOLINT]
readme_template_url="https://github.com/ForgeFlow/maintainer-tools/blob/master/template/module/README.rst" readme_template_url="https://github.com/OCA/maintainer-tools/blob/master/template/module/README.rst"
manifest_required_authors=Odoo Community Association (OCA)
manifest_required_keys=license manifest_required_keys=license
manifest_deprecated_keys=description,active 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 license_allowed=AGPL-3,GPL-2,GPL-2 or any later version,GPL-3,GPL-3 or any later version,LGPL-3
@@ -27,6 +28,7 @@ enable=anomalous-backslash-in-string,
class-camelcase, class-camelcase,
dangerous-default-value, dangerous-default-value,
dangerous-view-replace-wo-priority, dangerous-view-replace-wo-priority,
development-status-allowed,
duplicate-id-csv, duplicate-id-csv,
duplicate-key, duplicate-key,
duplicate-xml-fields, duplicate-xml-fields,
@@ -43,8 +45,6 @@ enable=anomalous-backslash-in-string,
method-inverse, method-inverse,
method-required-super, method-required-super,
method-search, method-search,
missing-import-error,
missing-manifest-dependency,
openerp-exception-warning, openerp-exception-warning,
pointless-statement, pointless-statement,
pointless-string-statement, pointless-string-statement,
@@ -70,6 +70,7 @@ enable=anomalous-backslash-in-string,
deprecated-module, deprecated-module,
file-not-used, file-not-used,
invalid-commit, invalid-commit,
missing-manifest-dependency,
missing-newline-extrafiles, missing-newline-extrafiles,
missing-readme, missing-readme,
no-utf8-coding-comment, no-utf8-coding-comment,
@@ -79,6 +80,7 @@ enable=anomalous-backslash-in-string,
too-complex, too-complex,
unnecessary-utf8-coding-comment unnecessary-utf8-coding-comment
[REPORTS] [REPORTS]
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg} msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
output-format=colorized output-format=colorized

View File

@@ -3,7 +3,8 @@ load-plugins=pylint_odoo
score=n score=n
[ODOOLINT] [ODOOLINT]
readme_template_url="https://github.com/ForgeFlow/maintainer-tools/blob/master/template/module/README.rst" readme_template_url="https://github.com/OCA/maintainer-tools/blob/master/template/module/README.rst"
manifest_required_authors=Odoo Community Association (OCA)
manifest_required_keys=license manifest_required_keys=license
manifest_deprecated_keys=description,active 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 license_allowed=AGPL-3,GPL-2,GPL-2 or any later version,GPL-3,GPL-3 or any later version,LGPL-3
@@ -20,6 +21,7 @@ enable=anomalous-backslash-in-string,
class-camelcase, class-camelcase,
dangerous-default-value, dangerous-default-value,
dangerous-view-replace-wo-priority, dangerous-view-replace-wo-priority,
development-status-allowed,
duplicate-id-csv, duplicate-id-csv,
duplicate-key, duplicate-key,
duplicate-xml-fields, duplicate-xml-fields,
@@ -36,8 +38,6 @@ enable=anomalous-backslash-in-string,
method-inverse, method-inverse,
method-required-super, method-required-super,
method-search, method-search,
missing-import-error,
missing-manifest-dependency,
openerp-exception-warning, openerp-exception-warning,
pointless-statement, pointless-statement,
pointless-string-statement, pointless-string-statement,

View File

@@ -14,30 +14,25 @@ addons:
- expect-dev # provides unbuffer utility - expect-dev # provides unbuffer utility
stages: stages:
- linting
- test - test
jobs: jobs:
include: include:
- stage: linting
name: "pre-commit"
before_install:
install: pip install pre-commit
script: pre-commit run --all --show-diff-on-failure
after_success:
- stage: test - stage: test
env: env:
- TESTS="1" ODOO_REPO="odoo/odoo" MAKEPOT="1" - TESTS=1 ODOO_REPO="odoo/odoo" MAKEPOT="1"
- stage: test - stage: test
env: env:
- TESTS="1" ODOO_REPO="OCA/OCB" - TESTS=1 ODOO_REPO="OCA/OCB"
env: env:
global: global:
- VERSION="13.0" TESTS="0" LINT_CHECK="0" MAKEPOT="0" - VERSION="13.0" TESTS="0" LINT_CHECK="0" MAKEPOT="0"
- WKHTMLTOPDF_VERSION="0.12.5"
install: install:
- git clone -b master-eficent https://github.com/ForgeFlow/maintainer-quality-tools.git $HOME/maintainer-quality-tools - git clone -b master-eficent
https://github.com/ForgeFlow/maintainer-quality-tools.git
$HOME/maintainer-quality-tools
- export PATH=${HOME}/maintainer-quality-tools/travis:${PATH} - export PATH=${HOME}/maintainer-quality-tools/travis:${PATH}
- travis_install_nightly - travis_install_nightly

10
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,10 @@
# OCA Guidelines
Please follow the official guide from the
[OCA Guidelines page](https://odoo-community.org/page/contributing).
## Project Specific Guidelines
<!-- /!\ do not modify above this line -->
This project does not have specific coding guidelines.

View File

@@ -1,24 +1,36 @@
[![Build Status](https://travis-ci.org/forgeflow/stock-rma.svg?branch=13.0)](https://travis-ci.org/forgeflow/stock-rma) [![Runbot Status](https://runbot.odoo-community.org/runbot/badge/flat//13.0.svg)](https://runbot.odoo-community.org/runbot/repo/github-com-oca-https://github.com/ForgeFlow/stock-rma-)
[![codecov](https://codecov.io/gh/forgeflow/stock-rma/branch/13.0/graph/badge.svg)](https://codecov.io/gh/forgeflow/stock-rma) [![Build Status](https://travis-ci.com/OCA/https://github.com/ForgeFlow/stock-rma.svg?branch=13.0)](https://travis-ci.com/OCA/https://github.com/ForgeFlow/stock-rma)
[![codecov](https://codecov.io/gh/OCA/https://github.com/ForgeFlow/stock-rma/branch/13.0/graph/badge.svg)](https://codecov.io/gh/OCA/https://github.com/ForgeFlow/stock-rma)
[![Translation Status](https://translation.odoo-community.org/widgets/https://github.com/ForgeFlow/stock-rma-13-0/-/svg-badge.svg)](https://translation.odoo-community.org/engage/https://github.com/ForgeFlow/stock-rma-13-0/?utm_source=widget)
RMA (Return Merchandise Authorization) <!-- /!\ do not modify above this line -->
======================================
A Return Merchandise Authorization (RMA), is a part of the process of # stock-rma
returning a product in order to receive a refund, replacement, or repair
during the product's warranty period.
The purchaser of the product must contact the manufacturer (or distributor None
or retailer) to obtain authorization to return the product.
The resulting RMA number must be displayed on or included in the returned <!-- /!\ do not modify below this line -->
product's packaging.
The issuance of an RMA is a key gatekeeping moment in the reverse logistics <!-- prettier-ignore-start -->
cycle, providing the vendor with a final opportunity to diagnose and correct
the customer's problem with the product (such as improper installation or
configuration) before the customer permanently relinquishes ownership
of the product to the manufacturer, commonly referred to as a return.
As returns are costly for the vendor and inconvenient for the customer, [//]: # (addons)
any return that can be prevented benefits both parties.
This part will be replaced when running the oca-gen-addons-table script from OCA/maintainer-tools.
[//]: # (end addons)
<!-- prettier-ignore-end -->
## Licenses
This repository is licensed under [AGPL-3.0](LICENSE).
However, each module can have a totally different license, as long as they adhere to OCA
policy. Consult each module's `__manifest__.py` file, which contains a `license` key
that explains its license.
----
OCA, or the [Odoo Community Association](http://odoo-community.org/), is a nonprofit
organization whose mission is to support the collaborative development of Odoo features
and promote its widespread use.

View File

@@ -46,10 +46,7 @@
<field name="sequence_id" ref="seq_picking_type_rma_cust_out" /> <field name="sequence_id" ref="seq_picking_type_rma_cust_out" />
<field name="sequence_code">RMA → Customer</field> <field name="sequence_code">RMA → Customer</field>
<field name="default_location_src_id" ref="rma.location_rma" /> <field name="default_location_src_id" ref="rma.location_rma" />
<field <field name="default_location_dest_id" ref="stock.stock_location_customers" />
name="default_location_dest_id"
ref="stock.stock_location_customers"
/>
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">outgoing</field> <field name="code">outgoing</field>
</record> </record>
@@ -58,10 +55,7 @@
<field name="name">Customer → RMA</field> <field name="name">Customer → RMA</field>
<field name="sequence_id" ref="seq_picking_type_rma_cust_in" /> <field name="sequence_id" ref="seq_picking_type_rma_cust_in" />
<field name="sequence_code">Customer → RMA</field> <field name="sequence_code">Customer → RMA</field>
<field <field name="default_location_src_id" ref="stock.stock_location_customers" />
name="default_location_src_id"
ref="stock.stock_location_customers"
/>
<field name="default_location_dest_id" ref="rma.location_rma" /> <field name="default_location_dest_id" ref="rma.location_rma" />
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">incoming</field> <field name="code">incoming</field>
@@ -72,10 +66,7 @@
<field name="sequence_id" ref="seq_picking_type_rma_sup_out" /> <field name="sequence_id" ref="seq_picking_type_rma_sup_out" />
<field name="sequence_code">RMA -> Supplier</field> <field name="sequence_code">RMA -> Supplier</field>
<field name="default_location_src_id" ref="rma.location_rma" /> <field name="default_location_src_id" ref="rma.location_rma" />
<field <field name="default_location_dest_id" ref="stock.stock_location_suppliers" />
name="default_location_dest_id"
ref="stock.stock_location_suppliers"
/>
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">outgoing</field> <field name="code">outgoing</field>
</record> </record>
@@ -84,10 +75,7 @@
<field name="name">Supplier -> RMA</field> <field name="name">Supplier -> RMA</field>
<field name="sequence_id" ref="seq_picking_type_rma_sup_in" /> <field name="sequence_id" ref="seq_picking_type_rma_sup_in" />
<field name="sequence_code">Supplier -> RMA</field> <field name="sequence_code">Supplier -> RMA</field>
<field <field name="default_location_src_id" ref="stock.stock_location_suppliers" />
name="default_location_src_id"
ref="stock.stock_location_suppliers"
/>
<field name="default_location_dest_id" ref="rma.location_rma" /> <field name="default_location_dest_id" ref="rma.location_rma" />
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">incoming</field> <field name="code">incoming</field>
@@ -97,14 +85,8 @@
<field name="name">Customer -> Supplier</field> <field name="name">Customer -> Supplier</field>
<field name="sequence_id" ref="seq_picking_type_rma_dropship" /> <field name="sequence_id" ref="seq_picking_type_rma_dropship" />
<field name="sequence_code">Customer -> Supplier</field> <field name="sequence_code">Customer -> Supplier</field>
<field <field name="default_location_src_id" ref="stock.stock_location_customers" />
name="default_location_src_id" <field name="default_location_dest_id" ref="stock.stock_location_suppliers" />
ref="stock.stock_location_customers"
/>
<field
name="default_location_dest_id"
ref="stock.stock_location_suppliers"
/>
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">incoming</field> <field name="code">incoming</field>
</record> </record>
@@ -113,14 +95,8 @@
<field name="name">Supplier -> Customer</field> <field name="name">Supplier -> Customer</field>
<field name="sequence_id" ref="seq_picking_type_rma_dropship" /> <field name="sequence_id" ref="seq_picking_type_rma_dropship" />
<field name="sequence_code">Supplier -> Customer</field> <field name="sequence_code">Supplier -> Customer</field>
<field <field name="default_location_src_id" ref="stock.stock_location_suppliers" />
name="default_location_src_id" <field name="default_location_dest_id" ref="stock.stock_location_customers" />
ref="stock.stock_location_suppliers"
/>
<field
name="default_location_dest_id"
ref="stock.stock_location_customers"
/>
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">incoming</field> <field name="code">incoming</field>
</record> </record>
@@ -214,10 +190,7 @@
<field name="location_src_id" ref="stock.stock_location_customers" /> <field name="location_src_id" ref="stock.stock_location_customers" />
<field name="procure_method">make_to_stock</field> <field name="procure_method">make_to_stock</field>
<field name="route_id" ref="rma.route_rma_dropship" /> <field name="route_id" ref="rma.route_rma_dropship" />
<field <field name="picking_type_id" ref="rma.picking_type_rma_dropship_return" />
name="picking_type_id"
ref="rma.picking_type_rma_dropship_return"
/>
</record> </record>
<record id="rule_rma_dropship" model="stock.rule"> <record id="rule_rma_dropship" model="stock.rule">

View File

@@ -41,14 +41,8 @@
<record id="picking_type_rma_dropship_return" model="stock.picking.type"> <record id="picking_type_rma_dropship_return" model="stock.picking.type">
<field name="name">Customer -> Supplier</field> <field name="name">Customer -> Supplier</field>
<field name="sequence_id" ref="seq_picking_type_rma_dropship" /> <field name="sequence_id" ref="seq_picking_type_rma_dropship" />
<field <field name="default_location_src_id" ref="stock.stock_location_customers" />
name="default_location_src_id" <field name="default_location_dest_id" ref="stock.stock_location_suppliers" />
ref="stock.stock_location_customers"
/>
<field
name="default_location_dest_id"
ref="stock.stock_location_suppliers"
/>
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">incoming</field> <field name="code">incoming</field>
</record> </record>
@@ -56,14 +50,8 @@
<record id="picking_type_rma_dropship" model="stock.picking.type"> <record id="picking_type_rma_dropship" model="stock.picking.type">
<field name="name">Supplier -> Customer</field> <field name="name">Supplier -> Customer</field>
<field name="sequence_id" ref="seq_picking_type_rma_dropship" /> <field name="sequence_id" ref="seq_picking_type_rma_dropship" />
<field <field name="default_location_src_id" ref="stock.stock_location_suppliers" />
name="default_location_src_id" <field name="default_location_dest_id" ref="stock.stock_location_customers" />
ref="stock.stock_location_suppliers"
/>
<field
name="default_location_dest_id"
ref="stock.stock_location_customers"
/>
<field name="warehouse_id" eval="False" /> <field name="warehouse_id" eval="False" />
<field name="code">incoming</field> <field name="code">incoming</field>
</record> </record>
@@ -105,10 +93,7 @@
<field name="location_src_id" ref="stock.stock_location_customers" /> <field name="location_src_id" ref="stock.stock_location_customers" />
<field name="procure_method">make_to_stock</field> <field name="procure_method">make_to_stock</field>
<field name="route_id" ref="rma.route_rma_dropship" /> <field name="route_id" ref="rma.route_rma_dropship" />
<field <field name="picking_type_id" ref="rma.picking_type_rma_dropship_return" />
name="picking_type_id"
ref="rma.picking_type_rma_dropship_return"
/>
</record> </record>
<record id="rule_rma_dropship" model="stock.rule"> <record id="rule_rma_dropship" model="stock.rule">

View File

@@ -2,10 +2,7 @@
<odoo> <odoo>
<template id="report_rma_order_line_document"> <template id="report_rma_order_line_document">
<t t-call="web.external_layout"> <t t-call="web.external_layout">
<t <t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
t-set="doc"
t-value="doc.with_context({'lang':doc.partner_id.lang})"
/>
<div class="page"> <div class="page">
<div class="oe_structure" /> <div class="oe_structure" />
<div class="row"> <div class="row">
@@ -19,9 +16,7 @@
t-field="doc.in_warehouse_id.partner_id" t-field="doc.in_warehouse_id.partner_id"
t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}' t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}'
/> />
<p <p t-if="doc.in_warehouse_id.partner_id.vat">VAT: <span
t-if="doc.in_warehouse_id.partner_id.vat"
>VAT: <span
t-field="doc.in_warehouse_id.partner_id.vat" t-field="doc.in_warehouse_id.partner_id.vat"
/></p> /></p>
</div> </div>
@@ -80,11 +75,7 @@
<strong>Contact Person:</strong> <strong>Contact Person:</strong>
<p t-field="doc.requested_by.name" /> <p t-field="doc.requested_by.name" />
</div> </div>
<div <div name="operation_id" t-if="doc.operation_id" class="col-3">
name="operation_id"
t-if="doc.operation_id"
class="col-3"
>
<strong>Operation:</strong> <strong>Operation:</strong>
<p t-field="doc.operation_id.name" /> <p t-field="doc.operation_id.name" />
</div> </div>
@@ -103,10 +94,7 @@
<td><span t-field="doc.product_id" /></td> <td><span t-field="doc.product_id" /></td>
<td class="text-right"> <td class="text-right">
<span t-field="doc.product_qty" /> <span t-field="doc.product_qty" />
<span <span t-field="doc.uom_id" groups="uom.group_uom" />
t-field="doc.uom_id"
groups="uom.group_uom"
/>
</td> </td>
<td class="text-right"> <td class="text-right">
<span <span
@@ -144,10 +132,7 @@
<template id="report_rma_order_document"> <template id="report_rma_order_document">
<t t-call="web.external_layout"> <t t-call="web.external_layout">
<t <t t-set="doc" t-value="doc.with_context({'lang':doc.partner_id.lang})" />
t-set="doc"
t-value="doc.with_context({'lang':doc.partner_id.lang})"
/>
<div class="page"> <div class="page">
<div class="oe_structure" /> <div class="oe_structure" />
<div class="row"> <div class="row">
@@ -161,9 +146,7 @@
t-field="doc.in_warehouse_id.partner_id" t-field="doc.in_warehouse_id.partner_id"
t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}' t-options='{"widget": "contact", "fields": ["address", "name", "phone", "fax"], "no_marker": True, "phone_icons": True}'
/> />
<p <p t-if="doc.in_warehouse_id.partner_id.vat">VAT: <span
t-if="doc.in_warehouse_id.partner_id.vat"
>VAT: <span
t-field="doc.in_warehouse_id.partner_id.vat" t-field="doc.in_warehouse_id.partner_id.vat"
/></p> /></p>
</div> </div>
@@ -241,10 +224,7 @@
<td><span t-field="l.product_id" /></td> <td><span t-field="l.product_id" /></td>
<td class="text-right"> <td class="text-right">
<span t-field="l.product_qty" /> <span t-field="l.product_qty" />
<span <span t-field="l.uom_id" groups="uom.group_uom" />
t-field="l.uom_id"
groups="uom.group_uom"
/>
</td> </td>
<td class="text-right"> <td class="text-right">
<span t-field="l.price_unit" /> <span t-field="l.price_unit" />

View File

@@ -10,19 +10,13 @@
<record id="group_rma_customer_user" model="res.groups"> <record id="group_rma_customer_user" model="res.groups">
<field name="name">RMA Customer User</field> <field name="name">RMA Customer User</field>
<field <field name="implied_ids" eval="[(4, ref('stock.group_stock_user'))]" />
name="implied_ids"
eval="[(4, ref('stock.group_stock_user'))]"
/>
<field name="category_id" ref="module_category_rma" /> <field name="category_id" ref="module_category_rma" />
</record> </record>
<record id="group_rma_supplier_user" model="res.groups"> <record id="group_rma_supplier_user" model="res.groups">
<field name="name">RMA Supplier User</field> <field name="name">RMA Supplier User</field>
<field <field name="implied_ids" eval="[(4, ref('stock.group_stock_user'))]" />
name="implied_ids"
eval="[(4, ref('stock.group_stock_user'))]"
/>
<field name="category_id" ref="module_category_rma" /> <field name="category_id" ref="module_category_rma" />
</record> </record>

View File

@@ -3,10 +3,7 @@
<record id="product_category_form_view" model="ir.ui.view"> <record id="product_category_form_view" model="ir.ui.view">
<field name="name">product.category.form</field> <field name="name">product.category.form</field>
<field name="model">product.category</field> <field name="model">product.category</field>
<field <field name="inherit_id" ref="stock.product_category_form_view_inherit" />
name="inherit_id"
ref="stock.product_category_form_view_inherit"
/>
<field name="arch" type="xml"> <field name="arch" type="xml">
<field name="removal_strategy_id" position="after"> <field name="removal_strategy_id" position="after">
<group name="rma"> <group name="rma">

View File

@@ -39,10 +39,7 @@
<field name="lot_id" groups="stock.group_production_lot" /> <field name="lot_id" groups="stock.group_production_lot" />
<field name="rma_id" groups="rma.group_rma_groups" /> <field name="rma_id" groups="rma.group_rma_groups" />
<field name="origin" /> <field name="origin" />
<field <field name="operation_id" domain="[('type','=','supplier')]" />
name="operation_id"
domain="[('type','=','supplier')]"
/>
<field name="uom_id" groups="uom.group_uom" /> <field name="uom_id" groups="uom.group_uom" />
<field name="product_qty" /> <field name="product_qty" />
<field name="price_unit" /> <field name="price_unit" />
@@ -233,11 +230,7 @@
</group> </group>
</page> </page>
<page name="stock" string="Stock Moves"> <page name="stock" string="Stock Moves">
<field <field name="move_ids" nolabel="1" readonly="1" />
name="move_ids"
nolabel="1"
readonly="1"
/>
</page> </page>
<page name="quantities" string="Quantities"> <page name="quantities" string="Quantities">
<group> <group>
@@ -480,18 +473,10 @@
</group> </group>
</page> </page>
<page name="stock" string="Stock Moves"> <page name="stock" string="Stock Moves">
<field <field name="move_ids" nolabel="1" readonly="1" />
name="move_ids"
nolabel="1"
readonly="1"
/>
</page> </page>
<page name="quantities" string="Quantities"> <page name="quantities" string="Quantities">
<group <group name="quantities" col="4" string="Quantities">
name="quantities"
col="4"
string="Quantities"
>
<group name="receive"> <group name="receive">
<field name="qty_to_receive" /> <field name="qty_to_receive" />
<field name="qty_incoming" /> <field name="qty_incoming" />
@@ -561,10 +546,7 @@
help="My RMAs" help="My RMAs"
/> />
<separator /> <separator />
<group <group name="stock_quantities" groups="stock.group_stock_user">
name="stock_quantities"
groups="stock.group_stock_user"
>
<filter <filter
name="to_receive" name="to_receive"
domain="[('state','!=', 'done'),('qty_to_receive','>',0.0)]" domain="[('state','!=', 'done'),('qty_to_receive','>',0.0)]"
@@ -645,19 +627,13 @@
<field name="view_id" ref="view_rma_line_supplier_tree" /> <field name="view_id" ref="view_rma_line_supplier_tree" />
</record> </record>
<record <record id="action_rma_line_supplier_tree" model="ir.actions.act_window.view">
id="action_rma_line_supplier_tree"
model="ir.actions.act_window.view"
>
<field eval="3" name="sequence" /> <field eval="3" name="sequence" />
<field name="view_mode">tree</field> <field name="view_mode">tree</field>
<field name="act_window_id" ref="action_rma_supplier_lines" /> <field name="act_window_id" ref="action_rma_supplier_lines" />
</record> </record>
<record <record id="action_rma_line_supplier_form" model="ir.actions.act_window.view">
id="action_rma_line_supplier_form"
model="ir.actions.act_window.view"
>
<field eval="4" name="sequence" /> <field eval="4" name="sequence" />
<field name="view_mode">form</field> <field name="view_mode">form</field>
<field name="view_id" ref="view_rma_line_supplier_form" /> <field name="view_id" ref="view_rma_line_supplier_form" />

View File

@@ -7,11 +7,7 @@
<tree string="RMA"> <tree string="RMA">
<field name="name" /> <field name="name" />
<field name="reference" /> <field name="reference" />
<field <field name="partner_id" groups="base.group_user" string="Customer" />
name="partner_id"
groups="base.group_user"
string="Customer"
/>
<field name="date_rma" /> <field name="date_rma" />
</tree> </tree>
</field> </field>
@@ -24,11 +20,7 @@
<tree string="RMA"> <tree string="RMA">
<field name="name" /> <field name="name" />
<field name="reference" /> <field name="reference" />
<field <field name="partner_id" groups="base.group_user" string="Supplier" />
name="partner_id"
groups="base.group_user"
string="Supplier"
/>
<field name="date_rma" /> <field name="date_rma" />
</tree> </tree>
</field> </field>
@@ -75,11 +67,7 @@
icon="fa-list" icon="fa-list"
groups="rma.group_rma_customer_user" groups="rma.group_rma_customer_user"
> >
<field <field name="line_count" widget="statinfo" string="RMA Lines" />
name="line_count"
widget="statinfo"
string="RMA Lines"
/>
</button> </button>
<button <button
type="object" type="object"
@@ -147,10 +135,7 @@
name="assigned_to" name="assigned_to"
attrs="{'readonly':[('state', '!=', 'draft')]}" attrs="{'readonly':[('state', '!=', 'draft')]}"
/> />
<field <field name="company_id" groups="base.group_multi_company" />
name="company_id"
groups="base.group_multi_company"
/>
</group> </group>
</group> </group>
<notebook colspan="4"> <notebook colspan="4">
@@ -232,11 +217,7 @@
icon="fa-list" icon="fa-list"
groups="rma.group_rma_supplier_user" groups="rma.group_rma_supplier_user"
> >
<field <field name="line_count" widget="statinfo" string="RMA Lines" />
name="line_count"
widget="statinfo"
string="RMA Lines"
/>
</button> </button>
</div> </div>
<div class="oe_title" name="title"> <div class="oe_title" name="title">
@@ -293,10 +274,7 @@
name="assigned_to" name="assigned_to"
attrs="{'readonly':[('state', '!=', 'draft')]}" attrs="{'readonly':[('state', '!=', 'draft')]}"
/> />
<field <field name="company_id" groups="base.group_multi_company" />
name="company_id"
groups="base.group_multi_company"
/>
</group> </group>
</group> </group>
<notebook colspan="4"> <notebook colspan="4">

View File

@@ -13,10 +13,7 @@
</field> </field>
</record> </record>
<record <record id="stock_location_route_form_view_inherit_rma_stock" model="ir.ui.view">
id="stock_location_route_form_view_inherit_rma_stock"
model="ir.ui.view"
>
<field name="name">stock.location.route.form</field> <field name="name">stock.location.route.form</field>
<field name="inherit_id" ref="stock.stock_location_route_form_view" /> <field name="inherit_id" ref="stock.stock_location_route_form_view" />
<field name="model">stock.location.route</field> <field name="model">stock.location.route</field>

View File

@@ -5,10 +5,7 @@
<field name="model">stock.warehouse</field> <field name="model">stock.warehouse</field>
<field name="inherit_id" ref="stock.view_warehouse" /> <field name="inherit_id" ref="stock.view_warehouse" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<xpath <xpath expr="//field[@name='wh_output_stock_loc_id']" position="after">
expr="//field[@name='wh_output_stock_loc_id']"
position="after"
>
<field name="lot_rma_id" /> <field name="lot_rma_id" />
</xpath> </xpath>
<field name="resupply_wh_ids" position="after"> <field name="resupply_wh_ids" position="after">

View File

@@ -35,11 +35,7 @@
groups="stock.group_stock_multi_locations" groups="stock.group_stock_multi_locations"
/> />
<field name="create_date" groups="base.group_no_one" /> <field name="create_date" groups="base.group_no_one" />
<field <field name="date" string="Date" groups="base.group_no_one" />
name="date"
string="Date"
groups="base.group_no_one"
/>
<field name="date_expected" string="Date Expected" /> <field name="date_expected" string="Date Expected" />
<field name="state" /> <field name="state" />
</tree> </tree>
@@ -63,20 +59,14 @@
</field> </field>
</record> </record>
<record <record id="action_rma_add_stock_move_customer" model="ir.actions.act_window">
id="action_rma_add_stock_move_customer"
model="ir.actions.act_window"
>
<field name="name">Add from Stock Move</field> <field name="name">Add from Stock Move</field>
<field name="type">ir.actions.act_window</field> <field name="type">ir.actions.act_window</field>
<field name="res_model">rma_add_stock_move</field> <field name="res_model">rma_add_stock_move</field>
<field name="view_mode">form</field> <field name="view_mode">form</field>
<field name="target">new</field> <field name="target">new</field>
<field name="view_id" ref="view_rma_add_stock_move_customer" /> <field name="view_id" ref="view_rma_add_stock_move_customer" />
<field <field name="groups_id" eval="[(4, ref('rma.group_rma_customer_user'))]" />
name="groups_id"
eval="[(4, ref('rma.group_rma_customer_user'))]"
/>
</record> </record>
@@ -131,26 +121,17 @@
</field> </field>
</record> </record>
<record <record id="action_rma_add_stock_move_supplier" model="ir.actions.act_window">
id="action_rma_add_stock_move_supplier"
model="ir.actions.act_window"
>
<field name="name">Add from Stock Move</field> <field name="name">Add from Stock Move</field>
<field name="type">ir.actions.act_window</field> <field name="type">ir.actions.act_window</field>
<field name="res_model">rma_add_stock_move</field> <field name="res_model">rma_add_stock_move</field>
<field name="view_mode">form</field> <field name="view_mode">form</field>
<field name="target">new</field> <field name="target">new</field>
<field name="view_id" ref="view_rma_add_stock_move_supplier" /> <field name="view_id" ref="view_rma_add_stock_move_supplier" />
<field <field name="groups_id" eval="[(4, ref('rma.group_rma_supplier_user'))]" />
name="groups_id"
eval="[(4, ref('rma.group_rma_supplier_user'))]"
/>
</record> </record>
<record <record id="view_rma_add_stock_move_button_supplier_form" model="ir.ui.view">
id="view_rma_add_stock_move_button_supplier_form"
model="ir.ui.view"
>
<field name="name">rma.order.supplier.form - stock.move wizard</field> <field name="name">rma.order.supplier.form - stock.move wizard</field>
<field name="model">rma.order</field> <field name="model">rma.order</field>
<field name="inherit_id" ref="rma.view_rma_supplier_form" /> <field name="inherit_id" ref="rma.view_rma_supplier_form" />

View File

@@ -25,15 +25,8 @@
<newline /> <newline />
<group> <group>
<field name="item_ids" nolabel="1" colspan="2"> <field name="item_ids" nolabel="1" colspan="2">
<tree <tree string="Details" editable="bottom" create="false">
string="Details" <field name="line_id" options="{'no_open': true}" />
editable="bottom"
create="false"
>
<field
name="line_id"
options="{'no_open': true}"
/>
<field name="product_id" /> <field name="product_id" />
<field name="name" /> <field name="name" />
<field name="operation_id" /> <field name="operation_id" />
@@ -56,10 +49,7 @@
</field> </field>
</record> </record>
<record <record id="action_rma_order_line_make_supplier_rma" model="ir.actions.act_window">
id="action_rma_order_line_make_supplier_rma"
model="ir.actions.act_window"
>
<field name="name">Create Supplier RMA</field> <field name="name">Create Supplier RMA</field>
<field name="type">ir.actions.act_window</field> <field name="type">ir.actions.act_window</field>
<field name="res_model">rma.order.line.make.supplier.rma</field> <field name="res_model">rma.order.line.make.supplier.rma</field>

View File

@@ -17,11 +17,7 @@
icon="fa-eject" icon="fa-eject"
groups="rma.group_rma_customer_user,rma.group_rma_supplier_user" groups="rma.group_rma_customer_user,rma.group_rma_supplier_user"
> >
<field <field name="rma_count" widget="statinfo" string="RMA" />
name="rma_count"
widget="statinfo"
string="RMA"
/>
</button> </button>
</div> </div>
</field> </field>
@@ -39,9 +35,7 @@
<field name="name" position="after"> <field name="name" position="after">
<field name="rma_line_count" invisible="1" /> <field name="rma_line_count" invisible="1" />
<field name="rma_line_id" string="RMA line originated" /> <field name="rma_line_id" string="RMA line originated" />
<notebook <notebook attrs="{'invisible': [('rma_line_count', '=', 0)]}">
attrs="{'invisible': [('rma_line_count', '=', 0)]}"
>
<page string="RMA Lines"> <page string="RMA Lines">
<field name="rma_line_ids" /> <field name="rma_line_ids" />
</page> </page>

View File

@@ -3,10 +3,7 @@
License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl-3.0) --> License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl-3.0) -->
<odoo> <odoo>
<record <record id="action_rma_account_customer_lines" model="ir.actions.act_window">
id="action_rma_account_customer_lines"
model="ir.actions.act_window"
>
<field name="name">Customer RMA</field> <field name="name">Customer RMA</field>
<field name="res_model">rma.order.line</field> <field name="res_model">rma.order.line</field>
<field name="domain">[('type','=', 'customer')]</field> <field name="domain">[('type','=', 'customer')]</field>
@@ -18,9 +15,7 @@
<field name="name">Supplier RMA</field> <field name="name">Supplier RMA</field>
<field name="res_model">rma.order.line</field> <field name="res_model">rma.order.line</field>
<field name="domain">[('type','=', 'supplier')]</field> <field name="domain">[('type','=', 'supplier')]</field>
<field <field name="context">{"search_default_to_refund":1, "supplier":1}</field>
name="context"
>{"search_default_to_refund":1, "supplier":1}</field>
<field name="view_mode">tree,form</field> <field name="view_mode">tree,form</field>
<field name="view_id" ref="rma.view_rma_line_supplier_tree" /> <field name="view_id" ref="rma.view_rma_line_supplier_tree" />
</record> </record>

View File

@@ -21,11 +21,7 @@
icon="fa-pencil-square-o" icon="fa-pencil-square-o"
groups="account.group_account_user" groups="account.group_account_user"
> >
<field <field name="refund_count" widget="statinfo" string="Refunds" />
name="refund_count"
widget="statinfo"
string="Refunds"
/>
</button> </button>
</button> </button>
<group name="main_info" position="inside"> <group name="main_info" position="inside">
@@ -82,11 +78,7 @@
icon="fa-pencil-square-o" icon="fa-pencil-square-o"
groups="account.group_account_user" groups="account.group_account_user"
> >
<field <field name="refund_count" widget="statinfo" string="Refunds" />
name="refund_count"
widget="statinfo"
string="Refunds"
/>
</button> </button>
</button> </button>
<group name="main_info" position="inside"> <group name="main_info" position="inside">

View File

@@ -26,11 +26,7 @@
icon="fa-pencil-square-o" icon="fa-pencil-square-o"
groups="account.group_account_user" groups="account.group_account_user"
> >
<field <field name="invoice_count" widget="statinfo" string="Origin Inv" />
name="invoice_count"
widget="statinfo"
string="Origin Inv"
/>
</button> </button>
</button> </button>
<!-- <!--

View File

@@ -22,10 +22,7 @@
<tree string="Invoice Lines"> <tree string="Invoice Lines">
<field name="move_id" /> <field name="move_id" />
<field name="name" /> <field name="name" />
<field <field name="account_id" groups="account.group_account_user" />
name="account_id"
groups="account.group_account_user"
/>
<field name="quantity" /> <field name="quantity" />
<field name="product_id" /> <field name="product_id" />
<field name="product_uom_id" /> <field name="product_uom_id" />
@@ -75,10 +72,7 @@
<tree string="Invoice Lines"> <tree string="Invoice Lines">
<field name="move_id" /> <field name="move_id" />
<field name="name" /> <field name="name" />
<field <field name="account_id" groups="account.group_account_user" />
name="account_id"
groups="account.group_account_user"
/>
<field name="quantity" /> <field name="quantity" />
<field name="product_id" /> <field name="product_id" />
<field name="product_uom_id" /> <field name="product_uom_id" />
@@ -114,16 +108,10 @@
<field name="view_mode">form</field> <field name="view_mode">form</field>
<field name="target">new</field> <field name="target">new</field>
<field name="view_id" ref="view_rma_add_account_move" /> <field name="view_id" ref="view_rma_add_account_move" />
<field <field name="groups_id" eval="[(4, ref('rma.group_rma_customer_user'))]" />
name="groups_id"
eval="[(4, ref('rma.group_rma_customer_user'))]"
/>
</record> </record>
<record <record id="action_rma_add_account_move_supplier" model="ir.actions.act_window">
id="action_rma_add_account_move_supplier"
model="ir.actions.act_window"
>
<field name="name">Add Invoice</field> <field name="name">Add Invoice</field>
<field name="type">ir.actions.act_window</field> <field name="type">ir.actions.act_window</field>
<field name="res_model">rma_add_account_move</field> <field name="res_model">rma_add_account_move</field>
@@ -131,10 +119,7 @@
<field name="view_mode">form</field> <field name="view_mode">form</field>
<field name="target">new</field> <field name="target">new</field>
<field name="view_id" ref="view_rma_add_account_move_supplier" /> <field name="view_id" ref="view_rma_add_account_move_supplier" />
<field <field name="groups_id" eval="[(4, ref('rma.group_rma_supplier_user'))]" />
name="groups_id"
eval="[(4, ref('rma.group_rma_supplier_user'))]"
/>
</record> </record>
<record id="view_rma_add_account_move_form" model="ir.ui.view"> <record id="view_rma_add_account_move_form" model="ir.ui.view">

View File

@@ -32,11 +32,7 @@
type="object" type="object"
class="btn-primary" class="btn-primary"
/> />
<button <button string="Cancel" class="btn-default" special="cancel" />
string="Cancel"
class="btn-default"
special="cancel"
/>
</footer> </footer>
</form> </form>
</field> </field>
@@ -48,10 +44,7 @@
<field name="view_mode">tree,form</field> <field name="view_mode">tree,form</field>
<field name="view_id" ref="view_rma_refund" /> <field name="view_id" ref="view_rma_refund" />
<field name="binding_model_id" ref="rma.model_rma_order_line" /> <field name="binding_model_id" ref="rma.model_rma_order_line" />
<field <field name="groups_id" eval="[(4, ref('account.group_account_invoice'))]" />
name="groups_id"
eval="[(4, ref('account.group_account_invoice'))]"
/>
<field name="target">new</field> <field name="target">new</field>
</record> </record>

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1"> <odoo noupdate="1">
<record id="repair.seq_repair" model="ir.sequence"> <record id="repair.seq_repair" model="ir.sequence">

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8" ?>
<odoo> <odoo>
<record id="view_repair_order_form" model="ir.ui.view"> <record id="view_repair_order_form" model="ir.ui.view">
<field name="name">repair.order.form rma_repair</field> <field name="name">repair.order.form rma_repair</field>
<field name="model">repair.order</field> <field name="model">repair.order</field>
<field name="inherit_id" ref="repair.view_repair_order_form"/> <field name="inherit_id" ref="repair.view_repair_order_form" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<field name="guarantee_limit" position="after"> <field name="guarantee_limit" position="after">
<field name="rma_line_id"/> <field name="rma_line_id" />
<field name="under_warranty"/> <field name="under_warranty" />
</field> </field>
</field> </field>
</record> </record>

View File

@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8" ?>
<odoo> <odoo>
<record id="rma_operation_tree" model="ir.ui.view"> <record id="rma_operation_tree" model="ir.ui.view">
<field name="name">rma.operation.tree - rma_repair</field> <field name="name">rma.operation.tree - rma_repair</field>
<field name="model">rma.operation</field> <field name="model">rma.operation</field>
<field name="inherit_id" ref="rma.rma_operation_tree"/> <field name="inherit_id" ref="rma.rma_operation_tree" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<field name="delivery_policy" position="after"> <field name="delivery_policy" position="after">
<field name="repair_type"/> <field name="repair_type" />
</field> </field>
</field> </field>
</record> </record>
@@ -15,10 +15,10 @@
<record id="rma_operation_form" model="ir.ui.view"> <record id="rma_operation_form" model="ir.ui.view">
<field name="name">rma.operation.form - rma_repair</field> <field name="name">rma.operation.form - rma_repair</field>
<field name="model">rma.operation</field> <field name="model">rma.operation</field>
<field name="inherit_id" ref="rma.rma_operation_form"/> <field name="inherit_id" ref="rma.rma_operation_form" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<field name="delivery_policy" position="after"> <field name="delivery_policy" position="after">
<field name="repair_type"/> <field name="repair_type" />
</field> </field>
</field> </field>
</record> </record>

View File

@@ -1,34 +1,40 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8" ?>
<odoo> <odoo>
<record id="view_rma_line_form" model="ir.ui.view"> <record id="view_rma_line_form" model="ir.ui.view">
<field name="name">rma.order.line.form - rma_repair</field> <field name="name">rma.order.line.form - rma_repair</field>
<field name="model">rma.order.line</field> <field name="model">rma.order.line</field>
<field name="inherit_id" ref="rma.view_rma_line_form"/> <field name="inherit_id" ref="rma.view_rma_line_form" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<div name='button_box' position="inside"> <div name='button_box' position="inside">
<button type="object" name="action_view_repair_order" <button
class="oe_stat_button" type="object"
icon="fa-wrench" name="action_view_repair_order"
groups="stock.group_stock_user"> class="oe_stat_button"
<field name="repair_count" widget="statinfo" icon="fa-wrench"
string="Repair Orders"/> groups="stock.group_stock_user"
>
<field
name="repair_count"
widget="statinfo"
string="Repair Orders"
/>
</button> </button>
</div> </div>
<group name="quantities" position="inside"> <group name="quantities" position="inside">
<group> <group>
<field name="qty_to_repair"/> <field name="qty_to_repair" />
<field name="qty_under_repair"/> <field name="qty_under_repair" />
<field name="qty_to_pay"/> <field name="qty_to_pay" />
<field name="qty_repaired"/> <field name="qty_repaired" />
</group> </group>
</group> </group>
<field name="delivery_policy" position="after"> <field name="delivery_policy" position="after">
<field name="repair_type"/> <field name="repair_type" />
</field> </field>
<notebook position="inside"> <notebook position="inside">
<page name="repair" string="Repair Orders"> <page name="repair" string="Repair Orders">
<field name="repair_ids" nolabel="1"/> <field name="repair_ids" nolabel="1" />
</page> </page>
</notebook> </notebook>
</field> </field>
@@ -37,14 +43,16 @@
<record id="view_rma_line_button_repair_form" model="ir.ui.view"> <record id="view_rma_line_button_repair_form" model="ir.ui.view">
<field name="name">rma.order.line.form - rma_repair</field> <field name="name">rma.order.line.form - rma_repair</field>
<field name="model">rma.order.line</field> <field name="model">rma.order.line</field>
<field name="inherit_id" ref="rma.view_rma_line_button_form"/> <field name="inherit_id" ref="rma.view_rma_line_button_form" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<header position="inside"> <header position="inside">
<button name="%(action_rma_order_line_make_repair)d" <button
states="approved" name="%(action_rma_order_line_make_repair)d"
string="Create Repair Order" states="approved"
class="oe_highlight" string="Create Repair Order"
type="action"/> class="oe_highlight"
type="action"
/>
</header> </header>
</field> </field>
</record> </record>

View File

@@ -1,18 +1,24 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8" ?>
<odoo> <odoo>
<record id="view_rma_form" model="ir.ui.view"> <record id="view_rma_form" model="ir.ui.view">
<field name="name">rma.order.form - rma_repair</field> <field name="name">rma.order.form - rma_repair</field>
<field name="model">rma.order</field> <field name="model">rma.order</field>
<field name="inherit_id" ref="rma.view_rma_form"/> <field name="inherit_id" ref="rma.view_rma_form" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<div name="button_box" position="inside"> <div name="button_box" position="inside">
<button type="object" name="action_view_repair_order" <button
class="oe_stat_button" type="object"
icon="fa-wrench" name="action_view_repair_order"
groups="stock.group_stock_user"> class="oe_stat_button"
<field name="repair_count" widget="statinfo" icon="fa-wrench"
string="Repair Orders"/> groups="stock.group_stock_user"
>
<field
name="repair_count"
widget="statinfo"
string="Repair Orders"
/>
</button> </button>
</div> </div>
</field> </field>

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8" ?>
<odoo> <odoo>
<record id="view_rma_order_line_make_repair" model="ir.ui.view"> <record id="view_rma_order_line_make_repair" model="ir.ui.view">
@@ -7,43 +7,54 @@
<field name="type">form</field> <field name="type">form</field>
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Create Repair"> <form string="Create Repair">
<separator string="New Repair Orders details:"/> <separator string="New Repair Orders details:" />
<newline/> <newline />
<group> <group>
<field name="item_ids" nolabel="1" colspan="2"> <field name="item_ids" nolabel="1" colspan="2">
<tree string="Details" editable="bottom" create="false"> <tree string="Details" editable="bottom" create="false">
<field name="line_id" options="{'no_open': true}"/> <field name="line_id" options="{'no_open': true}" />
<field name="product_id"/> <field name="product_id" />
<field name="product_qty"/> <field name="product_qty" />
<field name="product_uom_id" groups="uom.group_uom"/> <field name="product_uom_id" groups="uom.group_uom" />
<field name="partner_id"/> <field name="partner_id" />
<field name="to_refurbish"/> <field name="to_refurbish" />
<field name="refurbish_product_id" attrs="{'required': [('to_refurbish', '=', True)]}"/> <field
<field name="location_id" groups="stock.group_stock_multi_locations"/> name="refurbish_product_id"
<field name="location_dest_id" groups="stock.group_stock_multi_locations"/> attrs="{'required': [('to_refurbish', '=', True)]}"
<field name="invoice_method"/> />
<field
name="location_id"
groups="stock.group_stock_multi_locations"
/>
<field
name="location_dest_id"
groups="stock.group_stock_multi_locations"
/>
<field name="invoice_method" />
</tree> </tree>
</field> </field>
</group> </group>
<newline/> <newline />
<footer> <footer>
<button name="make_repair_order" <button
string="Create Repair Orders" type="object" name="make_repair_order"
class="oe_highlight"/> string="Create Repair Orders"
<button special="cancel" string="Cancel" class="oe_link"/> type="object"
class="oe_highlight"
/>
<button special="cancel" string="Cancel" class="oe_link" />
</footer> </footer>
</form> </form>
</field> </field>
</record> </record>
<record id="action_rma_order_line_make_repair" <record id="action_rma_order_line_make_repair" model="ir.actions.act_window">
model="ir.actions.act_window">
<field name="name">Create Repair</field> <field name="name">Create Repair</field>
<field name="type">ir.actions.act_window</field> <field name="type">ir.actions.act_window</field>
<field name="res_model">rma.order.line.make.repair</field> <field name="res_model">rma.order.line.make.repair</field>
<field name="view_mode">form</field> <field name="view_mode">form</field>
<field name="target">new</field> <field name="target">new</field>
<field name="binding_model_id" ref="rma_repair.model_rma_order_line"/> <field name="binding_model_id" ref="rma_repair.model_rma_order_line" />
</record> </record>
</odoo> </odoo>

View File

@@ -127,10 +127,7 @@
<field name="inherit_id" ref="rma.view_rma_rma_line_filter" /> <field name="inherit_id" ref="rma.view_rma_rma_line_filter" />
<field name="arch" type="xml"> <field name="arch" type="xml">
<group name="stock_quantities" position="after"> <group name="stock_quantities" position="after">
<group <group name="sale_quantities" groups="sales_team.group_sale_salesman">
name="sale_quantities"
groups="sales_team.group_sale_salesman"
>
<filter <filter
domain="[('state','!=', 'done'),('qty_to_sell','>',0.0)]" domain="[('state','!=', 'done'),('qty_to_sell','>',0.0)]"
help="To Sell" help="To Sell"

View File

@@ -13,11 +13,7 @@
icon="fa-pencil-square-o" icon="fa-pencil-square-o"
groups="sales_team.group_sale_salesman" groups="sales_team.group_sale_salesman"
> >
<field <field name="sale_count" widget="statinfo" string="Origin SO" />
name="sale_count"
widget="statinfo"
string="Origin SO"
/>
</button> </button>
</div> </div>
</field> </field>

View File

@@ -38,11 +38,7 @@
attrs="{'invisible': [('rma_count', '=', 0)]}" attrs="{'invisible': [('rma_count', '=', 0)]}"
groups="rma.group_rma_customer_user" groups="rma.group_rma_customer_user"
> >
<field <field name="rma_count" widget="statinfo" string="RMA" />
name="rma_count"
widget="statinfo"
string="RMA"
/>
</button> </button>
</xpath> </xpath>
</data> </data>

View File

@@ -42,11 +42,7 @@
string="Unit of Measure" string="Unit of Measure"
groups="uom.group_uom" groups="uom.group_uom"
/> />
<field <field name="price_subtotal" sum="Total" widget="monetary" />
name="price_subtotal"
sum="Total"
widget="monetary"
/>
</tree> </tree>
</field> </field>

View File

@@ -33,10 +33,7 @@
<field name="product_id" /> <field name="product_id" />
<field name="name" /> <field name="name" />
<field name="product_qty" /> <field name="product_qty" />
<field <field name="product_uom_id" groups="uom.group_uom" />
name="product_uom_id"
groups="uom.group_uom"
/>
<field name="free_of_charge" /> <field name="free_of_charge" />
</tree> </tree>
</field> </field>
@@ -48,11 +45,7 @@
type="object" type="object"
class="oe_highlight" class="oe_highlight"
/> />
<button <button special="cancel" string="Cancel" class="oe_link" />
special="cancel"
string="Cancel"
class="oe_link"
/>
</footer> </footer>
</form> </form>
</field> </field>

View File

@@ -0,0 +1 @@
../../../../rma_repair

View File

@@ -0,0 +1,6 @@
import setuptools
setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)