[IMP] : black, isort, prettier

This commit is contained in:
Pedro M. Baeza
2020-07-13 18:28:03 +02:00
committed by Francisco Ivan Anton Prieto
parent 15423b63cd
commit a2f71595bf
46 changed files with 2703 additions and 2811 deletions

View File

@@ -6,7 +6,7 @@ from odoo import api, fields, models
class ContractContractTerminate(models.TransientModel):
_name = 'contract.contract.terminate'
_name = "contract.contract.terminate"
_description = "Terminate Contract Wizard"
contract_id = fields.Many2one(

View File

@@ -1,34 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2020 ACSONE SA/NV
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
<odoo>
<record model="ir.ui.view" id="contract_contract_terminate_form_view">
<field name="model">contract.contract.terminate</field>
<field name="arch" type="xml">
<form string="Contract Contract Terminate">
<group>
<field name="contract_id" invisible="True"/>
<field name="terminate_comment_required" invisible="True"/>
<field name="terminate_date"/>
<field name="terminate_reason_id" widget="selection"/>
<field name="terminate_comment" attrs="{'required': [('terminate_comment_required', '=', True)]}"/>
<field name="contract_id" invisible="True" />
<field name="terminate_comment_required" invisible="True" />
<field name="terminate_date" />
<field name="terminate_reason_id" widget="selection" />
<field
name="terminate_comment"
attrs="{'required': [('terminate_comment_required', '=', True)]}"
/>
</group>
<footer>
<button name="terminate_contract"
string="Terminate Contract"
class="btn-primary"
confirm="Are you sure you want to terminate this contract?"
type="object"/>
<button string="Cancel"
class="btn-default"
special="cancel"/>
<button
name="terminate_contract"
string="Terminate Contract"
class="btn-primary"
confirm="Are you sure you want to terminate this contract?"
type="object"
/>
<button string="Cancel" class="btn-default" special="cancel" />
</footer>
</form>
</field>
</record>
</odoo>

View File

@@ -6,12 +6,12 @@ from odoo import api, fields, models
class ContractLineWizard(models.TransientModel):
_name = 'contract.line.wizard'
_description = 'Contract Line Wizard'
_name = "contract.line.wizard"
_description = "Contract Line Wizard"
date_start = fields.Date(string='Date Start')
date_end = fields.Date(string='Date End')
recurring_next_date = fields.Date(string='Next Invoice Date')
date_start = fields.Date(string="Date Start")
date_end = fields.Date(string="Date End")
recurring_next_date = fields.Date(string="Next Invoice Date")
is_auto_renew = fields.Boolean(string="Auto Renew", default=False)
manual_renew_needed = fields.Boolean(
string="Manual renew needed",

View File

@@ -1,100 +1,114 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2018 ACSONE SA/NV
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
<odoo>
<record model="ir.ui.view" id="contract_line_wizard_stop_form_view">
<field name="name">contract.line.stop.wizard.form (in contract)</field>
<field name="model">contract.line.wizard</field>
<field name="arch" type="xml">
<form>
<group>
<field name="contract_line_id" invisible="True"/>
<field string="Stop Date" name="date_end" required="True"/>
<field string="Is suspension without end date" name="manual_renew_needed"/>
<field name="contract_line_id" invisible="True" />
<field string="Stop Date" name="date_end" required="True" />
<field
string="Is suspension without end date"
name="manual_renew_needed"
/>
</group>
<footer>
<button name="stop"
string="Validate"
class="btn-primary"
type="object"/>
<button string="Cancel"
class="btn-default"
special="cancel"/>
<button
name="stop"
string="Validate"
class="btn-primary"
type="object"
/>
<button string="Cancel" class="btn-default" special="cancel" />
</footer>
</form>
</field>
</record>
<record model="ir.ui.view" id="contract_line_wizard_plan_successor_form_view">
<field name="name">contract.line.plan_successor.wizard.form (in contract)</field>
<field
name="name"
>contract.line.plan_successor.wizard.form (in contract)</field>
<field name="model">contract.line.wizard</field>
<field name="arch" type="xml">
<form>
<group>
<field name="contract_line_id" invisible="True"/>
<field name="date_start" required="True"/>
<field name="date_end" attrs="{'required': [('is_auto_renew', '=', True)]}"/>
<field name="is_auto_renew"/>
<field name="contract_line_id" invisible="True" />
<field name="date_start" required="True" />
<field
name="date_end"
attrs="{'required': [('is_auto_renew', '=', True)]}"
/>
<field name="is_auto_renew" />
</group>
<footer>
<button name="plan_successor"
string="Validate"
class="btn-primary"
type="object"/>
<button string="Cancel"
class="btn-default"
special="cancel"/>
<button
name="plan_successor"
string="Validate"
class="btn-primary"
type="object"
/>
<button string="Cancel" class="btn-default" special="cancel" />
</footer>
</form>
</field>
</record>
<record model="ir.ui.view" id="contract_line_wizard_stop_plan_successor_form_view">
<field name="name">contract.line.stop_plan_successor.wizard.form (in contract)</field>
<field
name="name"
>contract.line.stop_plan_successor.wizard.form (in contract)</field>
<field name="model">contract.line.wizard</field>
<field name="arch" type="xml">
<form>
<group>
<field name="contract_line_id" invisible="True"/>
<field string="Suspension Start Date" name="date_start" required="True"/>
<field string="Suspension End Date" name="date_end" required="True"/>
<field name="is_auto_renew" invisible="1"/>
<field name="contract_line_id" invisible="True" />
<field
string="Suspension Start Date"
name="date_start"
required="True"
/>
<field
string="Suspension End Date"
name="date_end"
required="True"
/>
<field name="is_auto_renew" invisible="1" />
</group>
<footer>
<button name="stop_plan_successor"
string="Validate"
class="btn-primary"
type="object"/>
<button string="Cancel"
class="btn-default"
special="cancel"/>
<button
name="stop_plan_successor"
string="Validate"
class="btn-primary"
type="object"
/>
<button string="Cancel" class="btn-default" special="cancel" />
</footer>
</form>
</field>
</record>
<record model="ir.ui.view" id="contract_line_wizard_uncancel_form_view">
<field name="name">contract.line.stop_plan_successor.wizard.form (in contract)</field>
<field
name="name"
>contract.line.stop_plan_successor.wizard.form (in contract)</field>
<field name="model">contract.line.wizard</field>
<field name="arch" type="xml">
<form>
<group>
<field name="contract_line_id" invisible="True"/>
<field name="recurring_next_date" required="True"/>
<field name="contract_line_id" invisible="True" />
<field name="recurring_next_date" required="True" />
</group>
<footer>
<button name="uncancel"
string="Validate"
class="btn-primary"
type="object"/>
<button string="Cancel"
class="btn-default"
special="cancel"/>
<button
name="uncancel"
string="Validate"
class="btn-primary"
type="object"
/>
<button string="Cancel" class="btn-default" special="cancel" />
</footer>
</form>
</field>
</record>
</odoo>

View File

@@ -1,40 +1,38 @@
# Copyright 2019 ACSONE SA/NV
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo import api, fields, models, _
from odoo import _, api, fields, models
class ContractManuallyCreateInvoice(models.TransientModel):
_name = 'contract.manually.create.invoice'
_description = 'Contract Manually Create Invoice Wizard'
_name = "contract.manually.create.invoice"
_description = "Contract Manually Create Invoice Wizard"
invoice_date = fields.Date(string="Invoice Date", required=True)
contract_to_invoice_count = fields.Integer(
compute="_compute_contract_to_invoice_ids"
)
contract_to_invoice_ids = fields.Many2many(
comodel_name="contract.contract",
compute="_compute_contract_to_invoice_ids",
comodel_name="contract.contract", compute="_compute_contract_to_invoice_ids",
)
contract_type = fields.Selection(
selection=[('sale', 'Customer'), ('purchase', 'Supplier')],
default='sale',
selection=[("sale", "Customer"), ("purchase", "Supplier")],
default="sale",
required=True,
)
@api.depends('invoice_date')
@api.depends("invoice_date")
def _compute_contract_to_invoice_ids(self):
if not self.invoice_date:
# trick to show no invoice when no date has been entered yet
contract_to_invoice_domain = [('id', '=', False)]
contract_to_invoice_domain = [("id", "=", False)]
else:
contract_to_invoice_domain = self.env[
'contract.contract'
"contract.contract"
]._get_contracts_to_invoice_domain(self.invoice_date)
self.contract_to_invoice_ids = self.env['contract.contract'].search(
contract_to_invoice_domain
+ [('contract_type', '=', self.contract_type)]
self.contract_to_invoice_ids = self.env["contract.contract"].search(
contract_to_invoice_domain + [("contract_type", "=", self.contract_type)]
)
self.contract_to_invoice_count = len(self.contract_to_invoice_ids)
@@ -45,7 +43,7 @@ class ContractManuallyCreateInvoice(models.TransientModel):
"type": "ir.actions.act_window",
"name": _("Contracts to invoice"),
"res_model": "contract.contract",
"domain": [('id', 'in', self.contract_to_invoice_ids.ids)],
"domain": [("id", "in", self.contract_to_invoice_ids.ids)],
"view_mode": "tree,form",
"context": self.env.context,
}
@@ -53,14 +51,14 @@ class ContractManuallyCreateInvoice(models.TransientModel):
@api.multi
def create_invoice(self):
self.ensure_one()
invoices = self.env['account.invoice']
invoices = self.env["account.invoice"]
for contract in self.contract_to_invoice_ids:
invoices |= contract.recurring_create_invoice()
return {
"type": "ir.actions.act_window",
"name": _("Invoices"),
"res_model": "account.invoice",
"domain": [('id', 'in', invoices.ids)],
"domain": [("id", "in", invoices.ids)],
"view_mode": "tree,form",
"context": self.env.context,
}

View File

@@ -1,79 +1,91 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2019 ACSONE SA/NV
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
<odoo>
<record model="ir.ui.view" id="contract_manually_create_invoice_form_view">
<field name="model">contract.manually.create.invoice</field>
<field name="arch" type="xml">
<form string="Contract Manually Create Invoice">
<group>
<group>
<field name="invoice_date"/>
<field name="contract_type" invisible="1"/>
<field name="invoice_date" />
<field name="contract_type" invisible="1" />
</group>
<group>
<button name="action_show_contract_to_invoice" type="object"
class="btn-link"
attrs="{'invisible': [('contract_to_invoice_count', '=', 0)]}">
<field name="contract_to_invoice_count"/>
<span attrs="{'invisible': [('contract_to_invoice_count', '&gt;', 1)]}">
<button
name="action_show_contract_to_invoice"
type="object"
class="btn-link"
attrs="{'invisible': [('contract_to_invoice_count', '=', 0)]}"
>
<field name="contract_to_invoice_count" />
<span
attrs="{'invisible': [('contract_to_invoice_count', '&gt;', 1)]}"
>
contract to invoice
</span>
<span attrs="{'invisible': [('contract_to_invoice_count', '&lt;', 1)]}">
<span
attrs="{'invisible': [('contract_to_invoice_count', '&lt;', 1)]}"
>
contracts to invoice
</span>
</button>
</group>
</group>
<footer>
<button name="create_invoice"
attrs="{'invisible': [('contract_to_invoice_count', '=', 0)]}"
string="Create Invoices"
class="btn-primary"
type="object"/>
<button string="Cancel"
class="btn-default"
special="cancel"/>
<button
name="create_invoice"
attrs="{'invisible': [('contract_to_invoice_count', '=', 0)]}"
string="Create Invoices"
class="btn-primary"
type="object"
/>
<button string="Cancel" class="btn-default" special="cancel" />
</footer>
</form>
</field>
</record>
<record model="ir.actions.act_window"
id="sale_contract_manually_create_invoice_act_window">
<record
model="ir.actions.act_window"
id="sale_contract_manually_create_invoice_act_window"
>
<field name="name">Manually Invoice Sale Contracts</field>
<field name="res_model">contract.manually.create.invoice</field>
<field name="view_mode">form</field>
<field name="context">{'default_contract_type': 'sale'}</field>
<field name="target">new</field>
</record>
<record model="ir.ui.menu" id="sale_contract_manually_create_invoice_menu">
<field name="name">Manually Invoice Sale Contracts</field>
<field name="parent_id" ref="account.menu_finance_receivables"/>
<field name="groups_id" eval="[(6, 0, [ref('account.group_account_manager')])]"/>
<field name="action"
ref="sale_contract_manually_create_invoice_act_window"/>
<field name="sequence" eval="999"/>
<field name="parent_id" ref="account.menu_finance_receivables" />
<field
name="groups_id"
eval="[(6, 0, [ref('account.group_account_manager')])]"
/>
<field name="action" ref="sale_contract_manually_create_invoice_act_window" />
<field name="sequence" eval="999" />
</record>
<record model="ir.actions.act_window"
id="purchase_contract_manually_create_invoice_act_window">
<record
model="ir.actions.act_window"
id="purchase_contract_manually_create_invoice_act_window"
>
<field name="name">Manually Invoice Purchase Contracts</field>
<field name="res_model">contract.manually.create.invoice</field>
<field name="view_mode">form</field>
<field name="context">{'default_contract_type': 'purchase'}</field>
<field name="target">new</field>
</record>
<record model="ir.ui.menu" id="purchase_contract_manually_create_invoice_menu">
<field name="name">Manually Invoice Purchase Contracts</field>
<field name="parent_id" ref="account.menu_finance_payables"/>
<field name="groups_id" eval="[(6, 0, [ref('account.group_account_manager')])]"/>
<field name="action"
ref="purchase_contract_manually_create_invoice_act_window"/>
<field name="sequence" eval="999"/>
<field name="parent_id" ref="account.menu_finance_payables" />
<field
name="groups_id"
eval="[(6, 0, [ref('account.group_account_manager')])]"
/>
<field
name="action"
ref="purchase_contract_manually_create_invoice_act_window"
/>
<field name="sequence" eval="999" />
</record>
</odoo>