mirror of
https://github.com/bringout/oca-ocb-sale.git
synced 2026-04-27 19:12:06 +02:00
Initial commit: Sale packages
This commit is contained in:
commit
14e3d26998
6469 changed files with 2479670 additions and 0 deletions
|
|
@ -0,0 +1,30 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<template id="report_invoice_document" inherit_id="account.report_invoice_document">
|
||||
<xpath expr="//td[@name='account_invoice_line_name']" position="inside">
|
||||
<t t-set="pos_orders" t-value="o.sudo().pos_order_ids"/>
|
||||
<t t-if="pos_orders">
|
||||
<div style="margin-left:15px; font-style: italic">
|
||||
<t t-set="down_payment_product" t-value="pos_orders[0].config_id.down_payment_product_id"/>
|
||||
<t t-if="line.product_id == down_payment_product">
|
||||
<t t-set="sale_orders" t-value="pos_orders[0].lines.filtered(lambda l: l.product_id == down_payment_product and l.price_subtotal_incl == line.price_total).mapped('sale_order_origin_id')"/>
|
||||
<t t-if="sale_orders">
|
||||
<t t-set="sale_order" t-value="sale_orders[0]"/>
|
||||
<t t-foreach="sale_order.order_line" t-as="sale_order_line">
|
||||
<t t-if="sale_order_line.product_id != down_payment_product">
|
||||
<div>
|
||||
<span style="margin-right: 5px;"><t t-esc="int(sale_order_line.product_uom_qty)"/>x</span>
|
||||
<span t-esc="sale_order_line.name" />
|
||||
<span style="margin: 0px 5px;">:</span>
|
||||
<t t-esc="sale_order_line.price_total" t-options='{"widget": "monetary", "display_currency": o.currency_id}'/>
|
||||
</div>
|
||||
</t>
|
||||
</t>
|
||||
<div style="font-weight: bold">From <t t-esc="sale_order.name"/> </div>
|
||||
</t>
|
||||
</t>
|
||||
</div>
|
||||
</t>
|
||||
</xpath>
|
||||
</template>
|
||||
</odoo>
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0"?>
|
||||
<odoo>
|
||||
<data>
|
||||
<record id="view_pos_order_form_inherit_pos_sale" model="ir.ui.view">
|
||||
<field name="name">pos.order.form.pos.sale</field>
|
||||
<field name="model">pos.order</field>
|
||||
<field name="inherit_id" ref="point_of_sale.view_pos_pos_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@name='action_view_invoice']" position="before">
|
||||
<button type="object"
|
||||
name="action_view_sale_order"
|
||||
class="oe_stat_button"
|
||||
icon="fa-shopping-basket"
|
||||
attrs="{'invisible': [('sale_order_count', '=', 0)]}" groups="sales_team.group_sale_salesman">
|
||||
<div class="o_field_widget o_stat_info">
|
||||
<span class="o_stat_value">
|
||||
<field name="sale_order_count" widget="statinfo" nolabel="1" class="mr4" /> Transfered<br/>
|
||||
from Sale
|
||||
</span>
|
||||
</div>
|
||||
</button>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
|
||||
<record id="res_config_settings_view_form" model="ir.ui.view">
|
||||
<field name="name">res.config.settings.view.form.inherit.pos_sale</field>
|
||||
<field name="model">res.config.settings</field>
|
||||
<field name="inherit_id" ref="point_of_sale.res_config_settings_view_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<div id="pos_accounting_section" position="after">
|
||||
<h2>Sales</h2>
|
||||
<div class="row mt16 o_settings_container">
|
||||
<div class="col-12 col-lg-6 o_setting_box">
|
||||
<div class="o_setting_right_pane">
|
||||
<span class="o_form_label">Sales Team</span>
|
||||
<div class="text-muted">
|
||||
Sales are reported to the following sales team
|
||||
</div>
|
||||
<div class="content-group mt16">
|
||||
<field name="pos_crm_team_id" kanban_view_ref="%(sales_team.crm_team_view_kanban)s" domain="['|', ('company_id', '=', company_id), ('company_id', '=', False)]"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 col-lg-6 o_setting_box">
|
||||
<div class="o_setting_right_pane">
|
||||
<span class="o_form_label">Down Payment Product</span>
|
||||
<div class="text-muted">
|
||||
This product will be applied when down payment is made
|
||||
</div>
|
||||
<div class="content-group mt16">
|
||||
<field
|
||||
name="pos_down_payment_product_id"
|
||||
domain="[('type', '=', 'service'), '|', ('company_id', '=', company_id), ('company_id', '=', False)]"
|
||||
context="{'default_detailed_type': 'service', 'default_taxes_id': False }"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0"?>
|
||||
<odoo>
|
||||
<data>
|
||||
<record id="view_order_form_inherit_pos_sale" model="ir.ui.view">
|
||||
<field name="name">sale.order.form.pos.sale</field>
|
||||
<field name="model">sale.order</field>
|
||||
<field name="inherit_id" ref="sale.view_order_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@name='action_view_invoice']" position="before">
|
||||
<button type="object"
|
||||
name="action_view_pos_order"
|
||||
class="oe_stat_button"
|
||||
icon="fa-shopping-basket"
|
||||
attrs="{'invisible': [('pos_order_count', '=', 0)]}" groups="point_of_sale.group_pos_user">
|
||||
<div class="o_field_widget o_stat_info">
|
||||
<span class="o_stat_value">
|
||||
<field name="pos_order_count" widget="statinfo" nolabel="1" class="mr4" /> Transfered<br/>
|
||||
to POS
|
||||
</span>
|
||||
</div>
|
||||
</button>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<record id="view_pos_session_search_inherit_pos_sale" model="ir.ui.view">
|
||||
<field name="name">pos.session.search.view</field>
|
||||
<field name="model">pos.session</field>
|
||||
<field name="inherit_id" ref="point_of_sale.view_pos_session_search"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='config_id']" position="after">
|
||||
<field name="crm_team_id" kanban_view_ref="%(sales_team.crm_team_view_kanban)s"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="pos_session_action_from_crm_team" model="ir.actions.act_window">
|
||||
<field name="name">Open Sessions</field>
|
||||
<field name="binding_model_id" ref="sales_team.model_crm_team"/>
|
||||
<field name="res_model">pos.session</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="context">{'search_default_open_sessions': True, 'search_default_crm_team_id': active_id}</field>
|
||||
</record>
|
||||
|
||||
<record id="view_pos_config_search_inherit_pos_sale" model="ir.ui.view">
|
||||
<field name="name">pos.config.search.view</field>
|
||||
<field name="model">pos.config</field>
|
||||
<field name="inherit_id" ref="point_of_sale.view_pos_config_search"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='name']" position="after">
|
||||
<field name="crm_team_id" kanban_view_ref="%(sales_team.crm_team_view_kanban)s"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="crm_team_view_kanban_dashboard" model="ir.ui.view">
|
||||
<field name="name">crm.team.view.kanban.dashboard.inherit.pos</field>
|
||||
<field name="model">crm.team</field>
|
||||
<field name="inherit_id" ref="sales_team.crm_team_view_kanban_dashboard"/>
|
||||
<field name="arch" type="xml">
|
||||
<data>
|
||||
<xpath expr="//t[@name='first_options']" position="before">
|
||||
<div class="row" t-if="record.pos_sessions_open_count.raw_value" groups="point_of_sale.group_pos_user">
|
||||
<div class="col-8">
|
||||
<a name="%(pos_session_action_from_crm_team)d" type="action">
|
||||
<field name="pos_sessions_open_count"/>
|
||||
<t t-if="record.pos_sessions_open_count.raw_value == 1">Session Running</t>
|
||||
<t t-else="">Sessions Running</t>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-4 text-end">
|
||||
<field name="pos_order_amount_total" widget="monetary"/>
|
||||
</div>
|
||||
</div>
|
||||
</xpath>
|
||||
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<template id="message_body" inherit_id="stock.message_body">
|
||||
<xpath expr="//t[contains(@t-if, 'move.state')]" position="inside">
|
||||
<t groups="point_of_sale.group_pos_user">
|
||||
<t t-set="pos_orders" t-value="move.sale_line_id.pos_order_line_ids.mapped('order_id')" />
|
||||
<t t-if="len(pos_orders)">
|
||||
<li>
|
||||
Delivered from
|
||||
<t t-foreach="pos_orders" t-as="pos_order">
|
||||
<a href="#" t-att-data-oe-model="pos_order._name" t-att-data-oe-id="pos_order.id">
|
||||
<t t-esc="pos_order.display_name" />
|
||||
</a><span t-if="pos_orders.ids[-1:] != pos_order.ids">, </span>
|
||||
</t>
|
||||
</li>
|
||||
</t>
|
||||
</t>
|
||||
</xpath>
|
||||
</template>
|
||||
</odoo>
|
||||
Loading…
Add table
Add a link
Reference in a new issue