[IMP] stock_account: on picking type kanban card add

an indicator for pickings to be invoiced + action + filter.
This commit is contained in:
Nandan Jani
2015-03-19 12:41:20 +01:00
committed by Thibault Delavallée
parent 32fb2f0940
commit 633c166c77
3 changed files with 60 additions and 1 deletions
+1 -1
View File
@@ -1417,7 +1417,7 @@
<field name="count_picking_waiting"/> Waiting Availability
</a>
</t>
<a class="col-md-9 oe_kanban_stock_picking_type_list" name="%(action_picking_tree)d" type="action">Transfers</a>
<a class="col-md-9 oe_kanban_stock_picking_type_list" id="transfers" name="%(action_picking_tree)d" type="action">Transfers</a>
</div>
</div>
<div class="row">
+17
View File
@@ -319,3 +319,20 @@ class stock_picking(osv.osv):
if op.linked_move_operation_ids:
res.update({'price_unit': op.linked_move_operation_ids[-1].move_id.price_unit})
return res
class stock_picking_type(osv.Model):
_inherit = "stock.picking.type"
def _compute_count_picking_invoiced(self, cr, uid, ids, field_name, arg, context=None):
result = dict.fromkeys(ids, 0)
picking_data = self.pool['stock.picking'].read_group(
cr, uid, [('picking_type_id', 'in', ids), ('invoice_state', '=', '2binvoiced')],
['picking_type_id'], ['picking_type_id'], context=context)
for data in picking_data:
result[data['picking_type_id'][0]] = data['picking_type_id_count']
return result
_columns = {
'count_picking_invoiced': fields.function(_compute_count_picking_invoiced, type='integer'),
}
@@ -26,6 +26,17 @@
</field>
</record>
<record id="view_picking_search_inherit" model="ir.ui.view">
<field name="name">stock.picking.internal.search</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.view_picking_internal_search"/>
<field name="arch" type="xml">
<xpath expr="//filter[@name='waiting']" position="after">
<filter name="to_be_invoiced" string="To Be Invoiced" domain="[('invoice_state','=', '2binvoiced')]" help="To Be Invoiced Moves"/>
</xpath>
</field>
</record>
<record id="view_picking_inherit_tree2" model="ir.ui.view">
<field name="name">stock.picking.tree.inherit</field>
<field name="model">stock.picking</field>
@@ -95,5 +106,36 @@
</xpath>
</field>
</record>
<record id="action_picking_tree_invoice" model="ir.actions.act_window">
<field name="name">To Be Invoiced</field>
<field name="res_model">stock.picking</field>
<field name="type">ir.actions.act_window</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calendar</field>
<field name="domain"></field>
<field name="context">{
'search_default_picking_type_id': [active_id],
'default_picking_type_id': active_id,
'contact_display': 'partner_address',
'search_default_to_be_invoiced': 1,
}
</field>
<field name="search_view_id" ref="view_picking_search_inherit"/>
</record>
<record id="view_stock_picking_kanban_inherit" model="ir.ui.view">
<field name="name">stock.picking.type.kanban</field>
<field name="model">stock.picking.type</field>
<field name="inherit_id" ref="stock.stock_picking_type_kanban"/>
<field name="arch" type="xml">
<xpath expr="//a[@id='transfers']" position="before">
<a name="%(action_picking_tree_invoice)d" type="action" class="col-md-12" t-if="record.count_picking_invoiced.raw_value &gt; 0">
<field name="count_picking_invoiced"/> To Be Invoiced
</a>
</xpath>
</field>
</record>
</data>
</openerp>