[ADD] account, account_voucher, mrp, purchase, stock : new mobile-friendly kanban for one2many in form view

This commit is contained in:
Martin Geubelle
2015-05-22 17:54:33 +02:00
parent 1bd79bfeaf
commit c2dcc89ef0
5 changed files with 72 additions and 20 deletions
+29 -4
View File
@@ -160,18 +160,18 @@
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
<div class="col-xs-6">
<strong><field name="partner_id"/></strong>
<strong><span><t t-esc="record.partner_id.value"/></span></strong>
</div>
<div class="col-xs-6">
<strong class="pull-right text-right"><field name="amount_total_signed"/></strong>
<strong><span class="pull-right text-right"><t t-esc="record.amount_total_signed.value"/></span></strong>
</div>
</div>
<div class="row">
<div class="col-xs-6 text-muted">
<field name="number"/> <field name="date_invoice"/>
<span><t t-esc="record.number.value"/> <t t-esc="record.date_invoice.value"/></span>
</div>
<div class="col-xs-6">
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['proforma', 'proforma2', 'open'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['paid'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><field name="state"/></span>
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['proforma', 'proforma2', 'open'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['paid'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><t t-esc="record.state.value"/></span>
</div>
</div>
</div>
@@ -418,6 +418,31 @@
<field name="price_subtotal"/>
<field name="currency_id" invisible="1"/>
</tree>
<kanban class="o_kanban_mobile o_kanban_one2many">
<field name="product_id"/>
<field name="price_subtotal"/>
<field name="quantity"/>
<field name="uos_id" groups="product.group_uom"/>
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
<div class="col-xs-12">
<strong><span><t t-esc="record.product_id.value or 'None'"/></span></strong>
</div>
</div>
<div class="row">
<div class="col-xs-8 text-muted">
<span><t t-esc="record.quantity.value"/> <t t-esc="record.uos_id.value"/></span>
</div>
<div class="col-xs-4 text-muted">
<span class="text-right"><t t-esc="record.price_subtotal.value"/></span>
</div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
<group class="oe_subtotal_footer oe_right">
<field name="amount_untaxed"/>
@@ -51,18 +51,18 @@
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
<div class="col-xs-6">
<strong><field name="partner_id"/></strong>
<strong><span><t t-esc="record.partner_id.value"/></span></strong>
</div>
<div class="col-xs-6">
<strong class="pull-right text-right"><field name="amount"/></strong>
<strong><span class="pull-right text-right"><t t-esc="record.amount.value"/></span></strong>
</div>
</div>
<div class="row">
<div class="col-xs-6 text-muted">
<field name="number"/> <field name="date"/>
<span><t t-esc="record.number.value"/> <t t-esc="record.date.value"/></span>
</div>
<div class="col-xs-6">
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['proforma'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['posted'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><field name="state"/></span>
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['proforma'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['posted'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><t t-esc="record.state.value"/></span>
</div>
</div>
</div>
+4 -4
View File
@@ -639,18 +639,18 @@
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
<div class="col-xs-6">
<strong><field name="product_id"/></strong>
<strong><span><t t-esc="record.product_id.value"/></span></strong>
</div>
<div class="col-xs-6">
<strong class="pull-right text-right"><field name="product_qty"/> <field name="product_uom"/></strong>
<strong><span class="pull-right text-right"><t t-esc="record.product_qty.value"/> <t t-esc="record.product_uom.value"/></span></strong>
</div>
</div>
<div class="row">
<div class="col-xs-6 text-muted">
<field name="name"/> <t t-esc="record.date_planned.value and record.date_planned.value.split(' ')[0] or False"/>
<span><t t-esc="record.name.value"/> <t t-esc="record.date_planned.value and record.date_planned.value.split(' ')[0] or False"/></span>
</div>
<div class="col-xs-6">
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['confirmed'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><field name="state"/></span>
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['confirmed'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><t t-esc="record.state.value"/></span>
</div>
</div>
</div>
+4 -4
View File
@@ -366,18 +366,18 @@
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
<div class="col-xs-6">
<strong><field name="partner_id"/></strong>
<strong><span><t t-esc="record.partner_id.value"/></span></strong>
</div>
<div class="col-xs-6">
<strong class="pull-right text-right"><field name="amount_total"/></strong>
<strong><span class="pull-right text-right"><t t-esc="record.amount_total.value"/></span></strong>
</div>
</div>
<div class="row">
<div class="col-xs-6">
<field name="name"/> <t t-esc="record.date_order.value and record.date_order.value.split(' ')[0] or False"/>
<span><t t-esc="record.name.value"/> <t t-esc="record.date_order.value and record.date_order.value.split(' ')[0] or False"/></span>
</div>
<div class="col-xs-6">
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['except_picking', 'except_invoice'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['approved'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><field name="state"/></span>
<span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['except_picking', 'except_invoice'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['approved'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><t t-esc="record.state.value"/></span>
</div>
</div>
</div>
+31 -4
View File
@@ -641,15 +641,15 @@
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
<div class="col-xs-6">
<strong><field name="name"/></strong>
<strong><span><t t-esc="record.name.value"/></span></strong>
</div>
<div class="col-xs-6">
<strong class="pull-right text-right"><span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['waiting', 'confirmed', 'partially_available'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><field name="state"/></span></strong>
<strong><span t-attf-class="pull-right text-right label #{['draft', 'cancel'].indexOf(record.state.raw_value) > -1 ? 'label-default' : ['none'].indexOf(record.state.raw_value) > -1 ? 'label-danger' : ['waiting', 'confirmed', 'partially_available'].indexOf(record.state.raw_value) > -1 ? 'label-warning' : ['done'].indexOf(record.state.raw_value) > -1 ? 'label-success' : 'label-primary'}"><t t-esc="record.state.value"/></span></strong>
</div>
</div>
<div class="row text-muted">
<div class="col-xs-6">
<span><field name="partner_id"/></span>
<span><t t-esc="record.partner_id.value"/></span>
</div>
<div class="col-xs-6">
<span class="pull-right text-right"><t t-esc="record.date.value and record.date.value.split(' ')[0] or False"/></span>
@@ -729,7 +729,34 @@
<notebook>
<page string="Products">
<separator string="Stock Moves" attrs="{'invisible': [('pack_operation_exist', '=', False)]}"/>
<field name="move_lines" context="{'address_in_id': partner_id, 'form_view_ref':'stock.view_move_picking_form', 'tree_view_ref':'stock.view_move_picking_tree', 'default_picking_type_id': picking_type_id}"/>
<field name="move_lines" context="{'address_in_id': partner_id, 'form_view_ref':'stock.view_move_picking_form', 'tree_view_ref':'stock.view_move_picking_tree', 'default_picking_type_id': picking_type_id}">
<kanban class="o_kanban_mobile o_kanban_one2many">
<field name="product_id"/>
<field name="availability"/>
<field name="product_uom_qty"/>
<field name="product_uom"/>
<field name="location_dest_id"/>
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="row">
<div class="col-xs-12">
<strong><span><t t-esc="record.product_id.value"/></span></strong>
</div>
</div>
<div class="row">
<div class="col-xs-8 text-muted">
<span><t t-esc="record.availability.value"/> on <t t-esc="record.product_uom_qty.value"/> <t t-esc="record.product_uom.value"/></span>
</div>
<div class="col-xs-4 text-muted">
<span class="pull-right text-right"><t t-esc="record.location_dest_id.value"/></span>
</div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
<field name="pack_operation_exist" invisible="1"/>
<field name="note" placeholder="Add an internal note..." class="oe_inline"/>
</page>