mirror of
https://github.com/bringout/oca-ocb-core.git
synced 2026-04-21 03:32:05 +02:00
19.0 vanilla
This commit is contained in:
parent
d1963a3c3a
commit
2d3ee4855a
7430 changed files with 2687981 additions and 2965473 deletions
|
|
@ -9,7 +9,7 @@
|
|||
<div>
|
||||
<p class="tip_title">Tip: How to keep late receipts under control?</p>
|
||||
<p class="tip_content">When creating a purchase order, have a look at the vendor's <i>On Time Delivery</i> rate: the percentage of products shipped on time. If it is too low, activate the <i>automated reminders</i>. A few days before the due shipment, Odoo will send the vendor an email to ask confirmation of shipment dates and keep you informed in case of any delays. To get the vendor's performance statistics, click on the OTD rate.</p>
|
||||
<img src="https://download.odoocdn.com/digests/purchase/static/src/img/OTDPurchase.gif" class="illustration_border" />
|
||||
<img src="https://download.odoocdn.com/digests/purchase/static/src/img/milk-OTDPurchase.gif" width="540" class="illustration_border" />
|
||||
</div>
|
||||
</field>
|
||||
</record>
|
||||
|
|
|
|||
|
|
@ -5,8 +5,6 @@
|
|||
<field name="user_id" ref="base.user_root" />
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="doall">1</field>
|
||||
<field name="model_id" ref="model_purchase_order"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model._send_reminder_mail()</field>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,8 @@
|
|||
<field name="name">Purchase: Request For Quotation</field>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field name="subject">{{ object.company_id.name }} Order (Ref {{ object.name or 'n/a' }})</field>
|
||||
<field name="partner_to">{{ object.partner_id.id }}</field>
|
||||
<field name="partner_to" eval="False"/>
|
||||
<field name="use_default_to" eval="True"/>
|
||||
<field name="description">Sent manually to vendor to request a quotation</field>
|
||||
<field name="body_html" type="html">
|
||||
<div style="margin: 0px; padding: 0px;">
|
||||
|
|
@ -26,13 +27,11 @@
|
|||
Best regards,
|
||||
<t t-if="not is_html_empty(object.user_id.signature)">
|
||||
<br/><br/>
|
||||
<t t-out="object.user_id.signature or ''">--<br/>Mitchell Admin</t>
|
||||
<div>--<br/><t t-out="object.user_id.signature or ''">Mitchell Admin</t></div>
|
||||
</t>
|
||||
</p>
|
||||
</div></field>
|
||||
<field name="report_template" ref="report_purchase_quotation"/>
|
||||
<field name="report_name">RFQ_{{ (object.name or '').replace('/','_') }}</field>
|
||||
<field name="lang">{{ object.partner_id.lang }}</field>
|
||||
<field name="report_template_ids" eval="[(4, ref('purchase.report_purchase_quotation'))]"/>
|
||||
<field name="auto_delete" eval="True"/>
|
||||
</record>
|
||||
|
||||
|
|
@ -40,7 +39,8 @@
|
|||
<field name="name">Purchase: Purchase Order</field>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field name="subject">{{ object.company_id.name }} Order (Ref {{ object.name or 'n/a' }})</field>
|
||||
<field name="partner_to">{{ object.partner_id.id }}</field>
|
||||
<field name="partner_to" eval="False"/>
|
||||
<field name="use_default_to" eval="True"/>
|
||||
<field name="description">Sent to vendor with the purchase order in attachment</field>
|
||||
<field name="body_html" type="html">
|
||||
<div style="margin: 0px; padding: 0px;">
|
||||
|
|
@ -58,20 +58,23 @@
|
|||
from <t t-out="object.company_id.name or ''">YourCompany</t>.
|
||||
<br/><br/>
|
||||
<t t-if="object.date_planned">
|
||||
The receipt is expected for <span style="font-weight:bold;" t-out="format_date(object.get_localized_date_planned()) or ''">05/05/2021</span>.
|
||||
The receipt is expected for <span style="font-weight:bold;" t-out="format_date(object.date_planned) or ''">05/05/2021</span>.
|
||||
<br/><br/>
|
||||
Could you please acknowledge the receipt of this order?
|
||||
<br/><br/>
|
||||
<a t-att-href="object.get_acknowledge_url()"
|
||||
target="_blank"
|
||||
style="padding: 5px 10px; color: #FFFFFF; text-decoration: none; background-color: #875A7B; border: 1px solid #875A7B; border-radius: 3px">
|
||||
Acknowledge</a>
|
||||
</t>
|
||||
<t t-if="not is_html_empty(object.user_id.signature)">
|
||||
<br/><br/>
|
||||
<t t-out="object.user_id.signature or ''">--<br/>Mitchell Admin</t>
|
||||
<div>--<br/><t t-out="object.user_id.signature or ''">Mitchell Admin</t></div>
|
||||
</t>
|
||||
<br/><br/>
|
||||
</p>
|
||||
</div></field>
|
||||
<field name="report_template" ref="action_report_purchase_order"/>
|
||||
<field name="report_name">PO_{{ (object.name or '').replace('/','_') }}</field>
|
||||
<field name="lang">{{ object.partner_id.lang }}</field>
|
||||
<field name="report_template_ids" eval="[(4, ref('purchase.action_report_purchase_order'))]"/>
|
||||
<field name="auto_delete" eval="True"/>
|
||||
</record>
|
||||
|
||||
|
|
@ -80,7 +83,8 @@
|
|||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field name="email_from">{{ (object.user_id.email_formatted or user.email_formatted) }}</field>
|
||||
<field name="subject">{{ object.company_id.name }} Order (Ref {{ object.name or 'n/a' }})</field>
|
||||
<field name="partner_to">{{ object.partner_id.id }}</field>
|
||||
<field name="partner_to" eval="False"/>
|
||||
<field name="use_default_to" eval="True"/>
|
||||
<field name="description">Sent to vendors before expected arrival, based on the purchase order setting</field>
|
||||
<field name="body_html" type="html">
|
||||
<div style="margin: 0px; padding: 0px;">
|
||||
|
|
@ -96,22 +100,26 @@
|
|||
</t>
|
||||
is expected for
|
||||
<t t-if="object.date_planned">
|
||||
<span style="font-weight:bold;" t-out="format_date(object.get_localized_date_planned()) or ''">05/05/2021</span>.
|
||||
<span style="font-weight:bold;" t-out="format_date(object.date_planned) or ''">05/05/2021</span>.
|
||||
</t>
|
||||
<t t-else="">
|
||||
<span style="font-weight:bold;">undefined</span>.
|
||||
</t>
|
||||
Could you please confirm it will be delivered on time?
|
||||
<br/><br/>
|
||||
<a t-att-href="object.get_acknowledge_url()"
|
||||
target="_blank"
|
||||
style="padding: 5px 10px; color: #FFFFFF; text-decoration: none; background-color: #875A7B; border: 1px solid #875A7B; border-radius: 3px">
|
||||
Acknowledge</a>
|
||||
<br/><br/>
|
||||
<t t-if="not is_html_empty(object.user_id.signature)">
|
||||
<br/><br/>
|
||||
<t t-out="object.user_id.signature or ''">--<br/>Mitchell Admin</t>
|
||||
<div>--<br/><t t-out="object.user_id.signature or ''">Mitchell Admin</t></div>
|
||||
</t>
|
||||
<br/><br/>
|
||||
</p>
|
||||
</div></field>
|
||||
<field name="report_template" ref="action_report_purchase_order"/>
|
||||
<field name="report_name">PO_{{ (object.name or '').replace('/','_') }}</field>
|
||||
<field name="lang">{{ object.partner_id.lang }}</field>
|
||||
<field name="report_template_ids" eval="[(4, ref('purchase.action_report_purchase_order'))]"/>
|
||||
<field name="auto_delete" eval="True"/>
|
||||
</record>
|
||||
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
<ul>
|
||||
<li><t t-esc="line.product_id.display_name"/>:</li>
|
||||
Ordered Quantity: <t t-esc="line.product_qty" /> -> <t t-esc="float(product_qty)"/><br/>
|
||||
<t t-if='line.order_id.product_id.type in ("consu", "product")'>
|
||||
<t t-if='line.order_id.product_id.type != "consu"'>
|
||||
Received Quantity: <t t-esc="line.qty_received" /><br/>
|
||||
</t>
|
||||
Billed Quantity: <t t-esc="line.qty_invoiced"/>
|
||||
|
|
|
|||
|
|
@ -12,11 +12,6 @@
|
|||
<field name="default" eval="False"/>
|
||||
<field name="res_model">purchase.order</field>
|
||||
</record>
|
||||
<record id="mt_rfq_done" model="mail.message.subtype">
|
||||
<field name="name">RFQ Done</field>
|
||||
<field name="default" eval="False"/>
|
||||
<field name="res_model">purchase.order</field>
|
||||
</record>
|
||||
<record id="mt_rfq_sent" model="mail.message.subtype">
|
||||
<field name="name">RFQ Sent</field>
|
||||
<field name="default" eval="False"/>
|
||||
|
|
@ -42,18 +37,7 @@
|
|||
<field name="code">action = records.action_share()</field>
|
||||
</record>
|
||||
|
||||
<!-- Default value for company_dependant field -->
|
||||
<record forcecreate="True" id="receipt_reminder_email" model="ir.property">
|
||||
<field name="name">receipt_reminder_email</field>
|
||||
<field name="type" eval="'boolean'"/>
|
||||
<field name="fields_id" search="[('model','=','res.partner'),('name','=','receipt_reminder_email')]"/>
|
||||
<field eval="False" name="value"/>
|
||||
</record>
|
||||
<record forcecreate="True" id="reminder_date_before_receipt" model="ir.property">
|
||||
<field name="name">reminder_date_before_receipt</field>
|
||||
<field name="type" eval="'integer'"/>
|
||||
<field name="fields_id" search="[('model','=','res.partner'),('name','=','reminder_date_before_receipt')]"/>
|
||||
<field eval="1" name="value"/>
|
||||
</record>
|
||||
<!-- Fallback value for company_dependant field -->
|
||||
<function model="ir.default" name="set" eval="('res.partner', 'reminder_date_before_receipt', 1)"/>
|
||||
</data>
|
||||
</odoo>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,11 @@
|
|||
<data noupdate="1">
|
||||
|
||||
<record id="base.user_demo" model="res.users">
|
||||
<field eval="[(4, ref('group_purchase_user'))]" name="groups_id"/>
|
||||
<field name="group_ids" eval="[(3, ref('purchase.group_purchase_manager'))]"/>
|
||||
</record>
|
||||
|
||||
<record id="base.default_user_group" model="res.groups">
|
||||
<field name="implied_ids" eval="[(4, ref('purchase.group_purchase_manager'))]"/>
|
||||
</record>
|
||||
|
||||
<record id="base.res_partner_1" model="res.partner">
|
||||
|
|
@ -28,21 +32,21 @@
|
|||
'name': obj().env.ref('product.product_delivery_01').partner_ref,
|
||||
'price_unit': 79.80,
|
||||
'product_qty': 15.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=3)}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_25'),
|
||||
'name': obj().env.ref('product.product_product_25').partner_ref,
|
||||
'price_unit': 286.70,
|
||||
'product_qty': 5.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=3)}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_27'),
|
||||
'name': obj().env.ref('product.product_product_27').partner_ref,
|
||||
'price_unit': 99.00,
|
||||
'product_qty': 4.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=3)})
|
||||
]"/>
|
||||
</record>
|
||||
|
|
@ -57,14 +61,14 @@
|
|||
'name': obj().env.ref('product.product_delivery_02').partner_ref,
|
||||
'price_unit': 132.50,
|
||||
'product_qty': 20.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=1)}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_delivery_01'),
|
||||
'name': obj().env.ref('product.product_delivery_01').partner_ref,
|
||||
'price_unit': 89.0,
|
||||
'product_qty': 5.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=1)}),
|
||||
]"/>
|
||||
</record>
|
||||
|
|
@ -79,7 +83,7 @@
|
|||
'name': obj().env.ref('product.product_product_2').partner_ref,
|
||||
'price_unit': 25.50,
|
||||
'product_qty': 10.0,
|
||||
'product_uom': ref('uom.product_uom_hour'),
|
||||
'product_uom_id': ref('uom.product_uom_hour'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=1)}),
|
||||
]"/>
|
||||
</record>
|
||||
|
|
@ -94,21 +98,21 @@
|
|||
'name': obj().env.ref('product.product_delivery_02').partner_ref,
|
||||
'price_unit': 85.50,
|
||||
'product_qty': 6.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=5)}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_20'),
|
||||
'name': obj().env.ref('product.product_product_20').partner_ref,
|
||||
'price_unit': 1690.0,
|
||||
'product_qty': 5.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=5)}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_6'),
|
||||
'name': obj().env.ref('product.product_product_6').partner_ref,
|
||||
'price_unit': 800.0,
|
||||
'product_qty': 7.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today() + relativedelta(days=5)})
|
||||
]"/>
|
||||
</record>
|
||||
|
|
@ -127,14 +131,14 @@
|
|||
'name': obj().env.ref('product.product_product_22').partner_ref,
|
||||
'price_unit': 2010.0,
|
||||
'product_qty': 3.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today()}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_24'),
|
||||
'name': obj().env.ref('product.product_product_24').partner_ref,
|
||||
'price_unit': 876.0,
|
||||
'product_qty': 3.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today()}),
|
||||
]"/>
|
||||
</record>
|
||||
|
|
@ -149,21 +153,21 @@
|
|||
'name': obj().env.ref('product.product_delivery_02').partner_ref,
|
||||
'price_unit': 58.0,
|
||||
'product_qty': 9.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today()}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_delivery_01'),
|
||||
'name': obj().env.ref('product.product_delivery_01').partner_ref,
|
||||
'price_unit': 65.0,
|
||||
'product_qty': 3.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today()}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.consu_delivery_01'),
|
||||
'name': obj().env.ref('product.consu_delivery_01').partner_ref,
|
||||
'price_unit': 154.5,
|
||||
'product_qty': 4.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today()}),
|
||||
]"/>
|
||||
</record>
|
||||
|
|
@ -178,18 +182,86 @@
|
|||
'name': obj().env.ref('product.product_product_12').partner_ref,
|
||||
'price_unit': 130.5,
|
||||
'product_qty': 5.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today()}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_delivery_02'),
|
||||
'name': obj().env.ref('product.product_delivery_02').partner_ref,
|
||||
'price_unit': 38.0,
|
||||
'product_qty': 15.0,
|
||||
'product_uom': ref('uom.product_uom_unit'),
|
||||
'product_uom_id': ref('uom.product_uom_unit'),
|
||||
'date_planned': DateTime.today()}),
|
||||
]"/>
|
||||
</record>
|
||||
|
||||
<record id="purchase_order_8" model="purchase.order">
|
||||
<field name="partner_id" ref="base.res_partner_1"/>
|
||||
<field name="user_id" ref="base.user_admin"/>
|
||||
<field name="state">purchase</field>
|
||||
<field name="create_date" eval="DateTime.today() - relativedelta(days=20)"/>
|
||||
<field name="date_order" eval="DateTime.today() - relativedelta(days=5)"/>
|
||||
<field name="date_approve" eval="DateTime.today() - relativedelta(days=9)"/>
|
||||
<field name="order_line" model="purchase.order.line" eval="[(5, 0, 0),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_16'),
|
||||
'name': 'Drawer Black',
|
||||
'price_unit': 280.80,
|
||||
'product_qty': 15.0,
|
||||
'product_uom_id': ref('uom.product_uom_dozen'),
|
||||
'date_planned': time.strftime('%Y-%m-%d')}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_20'),
|
||||
'name': 'Flipover',
|
||||
'price_unit': 450.70,
|
||||
'product_qty': 5.0,
|
||||
'product_uom_id': ref('uom.product_uom_dozen'),
|
||||
'date_planned': time.strftime('%Y-%m-%d')})
|
||||
]"/>
|
||||
</record>
|
||||
|
||||
<record id="purchase_order_9" model="purchase.order">
|
||||
<field name="partner_id" ref="base.res_partner_3"/>
|
||||
<field name="user_id" ref="base.user_admin"/>
|
||||
<field name="state">purchase</field>
|
||||
<field name="create_date" eval="DateTime.today() - relativedelta(days=20)"/>
|
||||
<field name="date_order" eval="DateTime.today() - relativedelta(days=15)"/>
|
||||
<field name="date_approve" eval="DateTime.today() - relativedelta(days=5)"/>
|
||||
<field name="order_line" model="purchase.order.line" eval="[(5, 0, 0),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_8'),
|
||||
'name': 'Large Desk',
|
||||
'price_unit': 500.00,
|
||||
'product_qty': 20.0,
|
||||
'product_uom_id': ref('uom.product_uom_dozen'),
|
||||
'date_planned': time.strftime('%Y-%m-%d')}),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_5'),
|
||||
'name': 'Corner Desk Right Sit',
|
||||
'price_unit': 500.0,
|
||||
'product_qty': 5.0,
|
||||
'product_uom_id': ref('uom.product_uom_dozen'),
|
||||
'date_planned': time.strftime('%Y-%m-%d')}),
|
||||
]"/>
|
||||
</record>
|
||||
|
||||
<record id="purchase_order_10" model="purchase.order">
|
||||
<field name="partner_id" ref="base.res_partner_12"/>
|
||||
<field name="user_id" ref="base.user_admin"/>
|
||||
<field name="state">purchase</field>
|
||||
<field name="create_date" eval="DateTime.today() - relativedelta(days=20)"/>
|
||||
<field name="date_order" eval="DateTime.today() - relativedelta(days=15)"/>
|
||||
<field name="date_approve" eval="DateTime.today() - relativedelta(days=18)"/>
|
||||
<field name="order_line" model="purchase.order.line" eval="[(5, 0, 0),
|
||||
(0, 0, {
|
||||
'product_id': ref('product.product_product_12'),
|
||||
'name': 'Office Chair Black',
|
||||
'price_unit': 250.50,
|
||||
'product_qty': 10.0,
|
||||
'product_uom_id': ref('uom.product_uom_dozen'),
|
||||
'date_planned': time.strftime('%Y-%m-%d')}),
|
||||
]"/>
|
||||
</record>
|
||||
|
||||
<record id="purchase_activity_1" model="mail.activity">
|
||||
<field name="res_id" ref="purchase.purchase_order_2"/>
|
||||
<field name="res_model_id" ref="purchase.model_purchase_order"/>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<record id="purchase_tour" model="web_tour.tour">
|
||||
<field name="name">purchase_tour</field>
|
||||
<field name="sequence">40</field>
|
||||
</record>
|
||||
</odoo>
|
||||
Loading…
Add table
Add a link
Reference in a new issue