[ADD] sale.order: delivery time, payment terms
This commit is contained in:
parent
3e0e724986
commit
cf38fcb1b6
@ -18,5 +18,6 @@
|
|||||||
"views/res_partner.xml",
|
"views/res_partner.xml",
|
||||||
"wizard/res_partner_contract_wizard.xml",
|
"wizard/res_partner_contract_wizard.xml",
|
||||||
"data/fields_default.xml",
|
"data/fields_default.xml",
|
||||||
|
"data/payment_terms.xml",
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
@ -81,8 +81,6 @@ action = ctx
|
|||||||
|
|
||||||
# Aliases
|
# Aliases
|
||||||
self = record
|
self = record
|
||||||
partner = self.contract_id.partner_id # res.partner
|
|
||||||
seller = self.contract_id.company_id
|
|
||||||
order = self.order_id
|
order = self.order_id
|
||||||
|
|
||||||
# Functions
|
# Functions
|
||||||
@ -92,11 +90,11 @@ modf = self.modf
|
|||||||
ctx = {
|
ctx = {
|
||||||
"contract_number": self.contract_id.name,
|
"contract_number": self.contract_id.name,
|
||||||
|
|
||||||
"seller_inn": seller.inn,
|
"amount_whole": 0,
|
||||||
"seller_kpp": seller.kpp,
|
"amount_fractional": 0,
|
||||||
|
|
||||||
"partner_inn": partner.inn,
|
"delivery_term": False,
|
||||||
"partner_kpp": partner.kpp,
|
"delivery_time": False,
|
||||||
}
|
}
|
||||||
|
|
||||||
if order:
|
if order:
|
||||||
@ -106,6 +104,9 @@ if order:
|
|||||||
ctx.update({
|
ctx.update({
|
||||||
"amount_whole": whole,
|
"amount_whole": whole,
|
||||||
"amount_fractional": fractional,
|
"amount_fractional": fractional,
|
||||||
|
|
||||||
|
"delivery_term": order.payment_term_id.name,
|
||||||
|
"delivery_time": order.delivery_time,
|
||||||
})
|
})
|
||||||
|
|
||||||
action = ctx
|
action = ctx
|
||||||
|
27
data/payment_terms.xml
Normal file
27
data/payment_terms.xml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<odoo>
|
||||||
|
<data noupdate="0">
|
||||||
|
|
||||||
|
<record id="payment_term_prepaid" model="account.payment.term">
|
||||||
|
<field name="name">Prepaid</field>
|
||||||
|
<field name="note">Payment terms: 100% Prepaid</field>
|
||||||
|
<field name="sequence">1</field>
|
||||||
|
</record>
|
||||||
|
<record id="payment_term_postpayment" model="account.payment.term">
|
||||||
|
<field name="name">Postpaid</field>
|
||||||
|
<field name="note">Payment terms: Postpaid</field>
|
||||||
|
<field name="sequence">2</field>
|
||||||
|
</record>
|
||||||
|
<record id="payment_term_partial_2" model="account.payment.term">
|
||||||
|
<field name="name">2 stages</field>
|
||||||
|
<field name="note">Payment terms: Partial 2 Stages</field>
|
||||||
|
<field name="sequence">3</field>
|
||||||
|
</record>
|
||||||
|
<record id="payment_term_partial_3" model="account.payment.term">
|
||||||
|
<field name="name">3 stages</field>
|
||||||
|
<field name="note">Payment terms: Partial 3 Stages</field>
|
||||||
|
<field name="sequence">4</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
@ -3,3 +3,4 @@ from . import res_partner_contract
|
|||||||
from . import res_partner_contract_annex
|
from . import res_partner_contract_annex
|
||||||
from . import res_partner_contract_field
|
from . import res_partner_contract_field
|
||||||
from . import res_partner_contract_field_transient
|
from . import res_partner_contract_field_transient
|
||||||
|
from . import sale_order
|
||||||
|
26
models/sale_order.py
Normal file
26
models/sale_order.py
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
from odoo import api, fields, models
|
||||||
|
|
||||||
|
|
||||||
|
class SaleOrder(models.Model):
|
||||||
|
_inherit = 'sale.order'
|
||||||
|
|
||||||
|
delivery_time = fields.Integer(
|
||||||
|
string='Delivery Time',
|
||||||
|
default=45,
|
||||||
|
)
|
||||||
|
# Extend default field
|
||||||
|
payment_term_id = fields.Many2one(
|
||||||
|
'account.payment.term',
|
||||||
|
domain=lambda self: [('id', 'in', self._get_payment_terms())]
|
||||||
|
)
|
||||||
|
|
||||||
|
@api.multi
|
||||||
|
def _get_payment_terms(self):
|
||||||
|
ref = self.env.ref
|
||||||
|
terms = (
|
||||||
|
ref('client_contracts.payment_term_prepaid').id,
|
||||||
|
ref('client_contracts.payment_term_postpayment').id,
|
||||||
|
ref('client_contracts.payment_term_partial_2').id,
|
||||||
|
ref('client_contracts.payment_term_partial_3').id,
|
||||||
|
)
|
||||||
|
return terms
|
Loading…
x
Reference in New Issue
Block a user