mirror of
https://github.com/OCA/pms.git
synced 2025-01-29 00:17:45 +02:00
[ADD]l10n_es_SII: Add README
This commit is contained in:
@@ -76,7 +76,7 @@ class TestPmsFolioInvoice(TestPms):
|
||||
self.partner_id = self.env["res.partner"].create(
|
||||
{
|
||||
"name": "Miguel",
|
||||
"vat": "ES123456789",
|
||||
"vat": "45224522J",
|
||||
"country_id": self.env.ref("base.es").id,
|
||||
"city": "Madrid",
|
||||
"zip": "28013",
|
||||
@@ -755,7 +755,7 @@ class TestPmsFolioInvoice(TestPms):
|
||||
self.partner_id2 = self.env["res.partner"].create(
|
||||
{
|
||||
"name": "Sara",
|
||||
"vat": "ES123456787",
|
||||
"vat": "54235544A",
|
||||
"country_id": self.env.ref("base.es").id,
|
||||
"city": "Madrid",
|
||||
"zip": "28013",
|
||||
|
||||
@@ -2989,10 +2989,14 @@ class TestPmsReservations(TestPms):
|
||||
# ACTION
|
||||
reservation.action_cancel()
|
||||
reservation.flush()
|
||||
expected_price = (
|
||||
self.service.price_total
|
||||
+ self.board_service.price_total * reservation.adults
|
||||
) - reservation.services_discount
|
||||
expected_price = round(
|
||||
(
|
||||
self.service.price_total
|
||||
+ self.board_service.price_total * reservation.adults
|
||||
)
|
||||
- reservation.services_discount,
|
||||
2,
|
||||
)
|
||||
|
||||
# ASSERT
|
||||
self.assertEqual(
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
"partner_contact_nationality",
|
||||
"base_iso3166",
|
||||
"queue_job",
|
||||
"l10n_es_aeat",
|
||||
"l10n_es_aeat_partner_identification",
|
||||
],
|
||||
"external_dependencies": {
|
||||
"python": [
|
||||
|
||||
@@ -42,5 +42,36 @@ else:
|
||||
</field>
|
||||
<!-- <field name="has_unique_numbers">True</field>-->
|
||||
</record>
|
||||
|
||||
<!-- aeat document type mapped -->
|
||||
|
||||
<record id="pms_l10n_es.document_type_dni" model="res.partner.id_category">
|
||||
<field name="aeat_identification_type">02</field>
|
||||
</record>
|
||||
<record
|
||||
id="pms.document_type_spanish_residence"
|
||||
model="res.partner.id_category"
|
||||
>
|
||||
<field name="aeat_identification_type">05</field>
|
||||
</record>
|
||||
<record
|
||||
id="pms.document_type_european_residence"
|
||||
model="res.partner.id_category"
|
||||
>
|
||||
<field name="aeat_identification_type">05</field>
|
||||
</record>
|
||||
<record id="pms.document_type_passport" model="res.partner.id_category">
|
||||
<field name="aeat_identification_type">03</field>
|
||||
</record>
|
||||
<record id="pms.document_type_driving_license" model="res.partner.id_category">
|
||||
<field name="aeat_identification_type">06</field>
|
||||
</record>
|
||||
<record
|
||||
id="pms.document_type_identification_document"
|
||||
model="res.partner.id_category"
|
||||
>
|
||||
<field name="aeat_identification_type">06</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</odoo>
|
||||
|
||||
@@ -41,7 +41,7 @@ class ResPartner(models.Model):
|
||||
not self.vat
|
||||
or not self.country_id
|
||||
or not self.city
|
||||
or not (self.street and self.street2)
|
||||
or not (self.street or self.street2)
|
||||
):
|
||||
return False
|
||||
return True
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
from . import models
|
||||
@@ -1,37 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<!-- default partner simplified invoices -->
|
||||
<record id="pms.various_pms_partner" model="res.partner">
|
||||
<field name="aeat_anonymous_cash_customer">True</field>
|
||||
</record>
|
||||
<!-- aeat document type mapped -->
|
||||
<record id="pms_l10n_es.document_type_dni" model="res.partner.id_category">
|
||||
<field name="aeat_identification_type">02</field>
|
||||
</record>
|
||||
<record
|
||||
id="pms.document_type_spanish_residence"
|
||||
model="res.partner.id_category"
|
||||
>
|
||||
<field name="aeat_identification_type">05</field>
|
||||
</record>
|
||||
<record
|
||||
id="pms.document_type_european_residence"
|
||||
model="res.partner.id_category"
|
||||
>
|
||||
<field name="aeat_identification_type">05</field>
|
||||
</record>
|
||||
<record id="pms.document_type_passport" model="res.partner.id_category">
|
||||
<field name="aeat_identification_type">03</field>
|
||||
</record>
|
||||
<record id="pms.document_type_driving_license" model="res.partner.id_category">
|
||||
<field name="aeat_identification_type">06</field>
|
||||
</record>
|
||||
<record
|
||||
id="pms.document_type_identification_document"
|
||||
model="res.partner.id_category"
|
||||
>
|
||||
<field name="aeat_identification_type">06</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -1,2 +0,0 @@
|
||||
from . import res_partner_id_category
|
||||
from . import res_partner
|
||||
@@ -1,69 +0,0 @@
|
||||
from odoo import api, fields, models
|
||||
|
||||
|
||||
class ResPartner(models.Model):
|
||||
_inherit = "res.partner"
|
||||
|
||||
vat = fields.Char(
|
||||
readonly=False,
|
||||
store=True,
|
||||
compute="_compute_vat",
|
||||
)
|
||||
aeat_identification_type = fields.Selection(
|
||||
readonly=False,
|
||||
store=True,
|
||||
compute="_compute_aeat_identification_type",
|
||||
)
|
||||
aeat_identification = fields.Char(
|
||||
readonly=False,
|
||||
store=True,
|
||||
compute="_compute_aeat_identification",
|
||||
)
|
||||
|
||||
@api.depends(
|
||||
"id_numbers",
|
||||
"id_numbers.category_id",
|
||||
"id_numbers.category_id.aeat_identification_type",
|
||||
)
|
||||
def _compute_aeat_identification_type(self):
|
||||
if hasattr(super(), "_compute_aeat_identification_type"):
|
||||
super()._compute_aeat_identification_type()
|
||||
for record in self:
|
||||
# Passport ("03"), Residential cert. ("04") and Another document ("05")
|
||||
# are setted in aeat identificacion type.
|
||||
# NIF/VAT ("02") are setted in partner vat field compute
|
||||
document = record.id_numbers.filtered(
|
||||
lambda i: i.category_id.aeat_identification_type in ["03", "05", "06"]
|
||||
)
|
||||
if document and not record.vat:
|
||||
record.aeat_identification_type = document[
|
||||
0
|
||||
].category_id.aeat_identification_type
|
||||
elif not record.aeat_identification_type or record.vat:
|
||||
record.aeat_identification_type = False
|
||||
|
||||
@api.depends("id_numbers", "id_numbers.name")
|
||||
def _compute_aeat_identification(self):
|
||||
if hasattr(super(), "_compute_aeat_identification"):
|
||||
super()._compute_aeat_identification()
|
||||
for record in self:
|
||||
document = record.id_numbers.filtered(
|
||||
lambda i: i.category_id.aeat_identification_type in ["03", "05", "06"]
|
||||
)
|
||||
if document:
|
||||
record.aeat_identification = document[0].name
|
||||
elif not record.aeat_identification:
|
||||
record.aeat_identification = False
|
||||
|
||||
@api.depends("id_numbers", "id_numbers.name")
|
||||
def _compute_vat(self):
|
||||
if hasattr(super(), "_compute_vat"):
|
||||
super()._compute_vat()
|
||||
for record in self:
|
||||
vat = record.id_numbers.filtered(
|
||||
lambda i: i.category_id.aeat_identification_type == "02"
|
||||
)
|
||||
if vat:
|
||||
record.vat = vat[0].name
|
||||
elif not record.vat:
|
||||
record.vat = False
|
||||
@@ -1,26 +0,0 @@
|
||||
from odoo import fields, models
|
||||
|
||||
|
||||
class ResPartnerIdCategory(models.Model):
|
||||
_inherit = "res.partner.id_category"
|
||||
|
||||
aeat_identification_type = fields.Selection(
|
||||
string="AEAT Identification type equivalent",
|
||||
help=(
|
||||
"Used to specify an identification type to send to SII. Normally for "
|
||||
"sending national and export invoices to SII where the customer country "
|
||||
"is not Spain, it would calculate an identification type of 04 if the VAT "
|
||||
"field is filled and 06 if it was not. This field is to specify "
|
||||
"types of 03 through 05, in the event that the customer doesn't identify "
|
||||
"with a foreign VAT and instead with their passport "
|
||||
"or residential certificate. If there is no value it will work as before."
|
||||
),
|
||||
selection=[
|
||||
("02", "NIF - VAT"),
|
||||
("03", "Passport"),
|
||||
("04", "Official document from the original country"),
|
||||
("05", "Residential certificate"),
|
||||
("06", "Another document"),
|
||||
("07", "Not registered on census"),
|
||||
],
|
||||
)
|
||||
@@ -1 +0,0 @@
|
||||
Set automatically SII fields from Checkin document Partners
|
||||
@@ -1,2 +0,0 @@
|
||||
When you create a new checkin document, this is copied to aeat identification type
|
||||
Set the various client like a anonimous AEAT
|
||||
@@ -1,15 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<odoo>
|
||||
<record id="view_partner_id_category_form" model="ir.ui.view">
|
||||
<field name="model">res.partner.id_category</field>
|
||||
<field
|
||||
name="inherit_id"
|
||||
ref="partner_identification.view_partner_id_category_form"
|
||||
/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='code']" position="after">
|
||||
<field name="aeat_identification_type" />
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
@@ -1,6 +1,6 @@
|
||||
==============================
|
||||
Payment Acquirer Multiproperty
|
||||
==============================
|
||||
========================
|
||||
PMS AEAT SII Integration
|
||||
========================
|
||||
|
||||
.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
!! This file is generated by oca-gen-addon-readme !!
|
||||
@@ -14,10 +14,10 @@ Payment Acquirer Multiproperty
|
||||
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
||||
:alt: License: AGPL-3
|
||||
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fpms-lightgray.png?logo=github
|
||||
:target: https://github.com/OCA/pms/tree/14.0/payment_acquirer_multi_pms_properties
|
||||
:target: https://github.com/OCA/pms/tree/14.0/pms_l10n_es_sii
|
||||
:alt: OCA/pms
|
||||
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
||||
:target: https://translation.odoo-community.org/projects/pms-14-0/pms-14-0-payment_acquirer_multi_pms_properties
|
||||
:target: https://translation.odoo-community.org/projects/pms-14-0/pms-14-0-pms_l10n_es_sii
|
||||
:alt: Translate me on Weblate
|
||||
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
|
||||
:target: https://runbot.odoo-community.org/runbot/293/14.0
|
||||
@@ -25,7 +25,7 @@ Payment Acquirer Multiproperty
|
||||
|
||||
|badge1| |badge2| |badge3| |badge4| |badge5|
|
||||
|
||||
Set the pms property in the payment acquirer to filter on website payments
|
||||
Set the pms various contact like anonymous SII aeat
|
||||
|
||||
**Table of contents**
|
||||
|
||||
@@ -35,8 +35,7 @@ Set the pms property in the payment acquirer to filter on website payments
|
||||
Usage
|
||||
=====
|
||||
|
||||
Sets one or more properties in the payment acquirer so that payment method is only available for documents of those properties.
|
||||
If you leave it blank, it will be available to everyone.
|
||||
Nothing to do
|
||||
|
||||
Bug Tracker
|
||||
===========
|
||||
@@ -44,7 +43,7 @@ Bug Tracker
|
||||
Bugs are tracked on `GitHub Issues <https://github.com/OCA/pms/issues>`_.
|
||||
In case of trouble, please check there if your issue has already been reported.
|
||||
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
||||
`feedback <https://github.com/OCA/pms/issues/new?body=module:%20payment_acquirer_multi_pms_properties%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
||||
`feedback <https://github.com/OCA/pms/issues/new?body=module:%20pms_l10n_es_sii%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
||||
|
||||
Do not contact contributors directly about support or help with technical issues.
|
||||
|
||||
@@ -76,6 +75,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
|
||||
mission is to support the collaborative development of Odoo features and
|
||||
promote its widespread use.
|
||||
|
||||
This module is part of the `OCA/pms <https://github.com/OCA/pms/tree/14.0/payment_acquirer_multi_pms_properties>`_ project on GitHub.
|
||||
This module is part of the `OCA/pms <https://github.com/OCA/pms/tree/14.0/pms_l10n_es_sii>`_ project on GitHub.
|
||||
|
||||
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
||||
1
pms_l10n_es_sii/__init__.py
Normal file
1
pms_l10n_es_sii/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
# License AGPL-3 - See https://www.gnu.org/licenses/agpl-3.0.html
|
||||
@@ -9,9 +9,9 @@
|
||||
"version": "14.0.1.0.2",
|
||||
"license": "AGPL-3",
|
||||
"depends": [
|
||||
"pms",
|
||||
"l10n_es_aeat_sii_oca",
|
||||
"l10n_es_aeat_partner_identification",
|
||||
],
|
||||
"data": ["data/pms_data.xml", "views/res_partner_id_category.xml"],
|
||||
"data": ["data/pms_data.xml"],
|
||||
"installable": True,
|
||||
}
|
||||
9
pms_l10n_es_sii/data/pms_data.xml
Normal file
9
pms_l10n_es_sii/data/pms_data.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<!-- default partner simplified invoices -->
|
||||
<record id="pms.various_pms_partner" model="res.partner">
|
||||
<field name="aeat_anonymous_cash_customer">True</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
1
pms_l10n_es_sii/readme/DESCRIPTION.rst
Normal file
1
pms_l10n_es_sii/readme/DESCRIPTION.rst
Normal file
@@ -0,0 +1 @@
|
||||
Set the pms various contact like anonymous SII aeat
|
||||
1
pms_l10n_es_sii/readme/USAGE.rst
Normal file
1
pms_l10n_es_sii/readme/USAGE.rst
Normal file
@@ -0,0 +1 @@
|
||||
Nothing to do
|
||||
|
Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 9.2 KiB |
@@ -3,8 +3,8 @@
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.15.1: http://docutils.sourceforge.net/" />
|
||||
<title>Payment Acquirer Multiproperty</title>
|
||||
<meta name="generator" content="Docutils: http://docutils.sourceforge.net/" />
|
||||
<title>PMS AEAT SII Integration</title>
|
||||
<style type="text/css">
|
||||
|
||||
/*
|
||||
@@ -360,15 +360,15 @@ ul.auto-toc {
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="document" id="payment-acquirer-multiproperty">
|
||||
<h1 class="title">Payment Acquirer Multiproperty</h1>
|
||||
<div class="document" id="pms-aeat-sii-integration">
|
||||
<h1 class="title">PMS AEAT SII Integration</h1>
|
||||
|
||||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
!! This file is generated by oca-gen-addon-readme !!
|
||||
!! changes will be overwritten. !!
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/pms/tree/14.0/payment_acquirer_multi_pms_properties"><img alt="OCA/pms" src="https://img.shields.io/badge/github-OCA%2Fpms-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/pms-14-0/pms-14-0-payment_acquirer_multi_pms_properties"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/293/14.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
||||
<p>Set the pms property in the payment acquirer to filter on website payments</p>
|
||||
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/pms/tree/14.0/pms_l10n_es_sii"><img alt="OCA/pms" src="https://img.shields.io/badge/github-OCA%2Fpms-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/pms-14-0/pms-14-0-pms_l10n_es_sii"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/293/14.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
||||
<p>Set the pms various contact like anonymous SII aeat</p>
|
||||
<p><strong>Table of contents</strong></p>
|
||||
<div class="contents local topic" id="contents">
|
||||
<ul class="simple">
|
||||
@@ -384,15 +384,14 @@ ul.auto-toc {
|
||||
</div>
|
||||
<div class="section" id="usage">
|
||||
<h1><a class="toc-backref" href="#id1">Usage</a></h1>
|
||||
<p>Sets one or more properties in the payment acquirer so that payment method is only available for documents of those properties.
|
||||
If you leave it blank, it will be available to everyone.</p>
|
||||
<p>Nothing to do</p>
|
||||
</div>
|
||||
<div class="section" id="bug-tracker">
|
||||
<h1><a class="toc-backref" href="#id2">Bug Tracker</a></h1>
|
||||
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/pms/issues">GitHub Issues</a>.
|
||||
In case of trouble, please check there if your issue has already been reported.
|
||||
If you spotted it first, help us smashing it by providing a detailed and welcomed
|
||||
<a class="reference external" href="https://github.com/OCA/pms/issues/new?body=module:%20payment_acquirer_multi_pms_properties%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||
<a class="reference external" href="https://github.com/OCA/pms/issues/new?body=module:%20pms_l10n_es_sii%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
||||
</div>
|
||||
<div class="section" id="credits">
|
||||
@@ -419,7 +418,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
|
||||
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
|
||||
mission is to support the collaborative development of Odoo features and
|
||||
promote its widespread use.</p>
|
||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/pms/tree/14.0/payment_acquirer_multi_pms_properties">OCA/pms</a> project on GitHub.</p>
|
||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/pms/tree/14.0/pms_l10n_es_sii">OCA/pms</a> project on GitHub.</p>
|
||||
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1 +0,0 @@
|
||||
../../../../pms_l10n_es_SII
|
||||
1
setup/pms_l10n_es_sii/odoo/addons/pms_l10n_es_sii
Symbolic link
1
setup/pms_l10n_es_sii/odoo/addons/pms_l10n_es_sii
Symbolic link
@@ -0,0 +1 @@
|
||||
../../../../pms_l10n_es_sii
|
||||
Reference in New Issue
Block a user