openerp-community-reviewer team mailing list archive
-
openerp-community-reviewer team
-
Mailing list archive
-
Message #03068
lp:~camptocamp/carriers-deliveries/7.0-delivery_carrier_label_dispatch-output-file-yvr into lp:carriers-deliveries
Yannick Vaucher @ Camptocamp has proposed merging lp:~camptocamp/carriers-deliveries/7.0-delivery_carrier_label_dispatch-output-file-yvr into lp:carriers-deliveries with lp:~camptocamp/carriers-deliveries/7.0-add-delivery_carrier_label_dispatch-yvr as a prerequisite.
Requested reviews:
Stock and Logistic Core Editors (stock-logistic-core-editors)
For more details, see:
https://code.launchpad.net/~camptocamp/carriers-deliveries/7.0-delivery_carrier_label_dispatch-output-file-yvr/+merge/202444
--
https://code.launchpad.net/~camptocamp/carriers-deliveries/7.0-delivery_carrier_label_dispatch-output-file-yvr/+merge/202444
Your team Stock and Logistic Core Editors is requested to review the proposed merge of lp:~camptocamp/carriers-deliveries/7.0-delivery_carrier_label_dispatch-output-file-yvr into lp:carriers-deliveries.
=== modified file 'delivery_carrier_label_dispatch/wizard/generate_labels.py'
--- delivery_carrier_label_dispatch/wizard/generate_labels.py 2014-01-21 12:31:55 +0000
+++ delivery_carrier_label_dispatch/wizard/generate_labels.py 2014-01-21 12:31:55 +0000
@@ -40,7 +40,6 @@
_columns = {
'dispatch_ids': fields.many2many('picking.dispatch',
string='Picking Dispatch'),
- 'label_pdf_file': fields.binary('Labels file'),
}
_defaults = {
@@ -52,40 +51,42 @@
Call the creation of the delivery carrier label
of the missing labels and get the existing ones
Then merge all of them in a single PDF
+
"""
this = self.browse(cr, uid, ids, context=context)[0]
if not this.dispatch_ids:
raise orm.except_orm(_('Error'), _('No picking dispatch selected'))
picking_out_obj = self.pool.get('stock.picking.out')
-
- # flatten all picking in one list to keep the order in case
- # there are multiple dispatch or if pickings
- # have been ordered to ease packaging
- pickings = [(pick, pick.get_pdf_label()[pick.id])
- for dispatch in this.dispatch_ids
- for pick in dispatch.related_picking_ids]
- # get picking ids for which we want to generate pdf label
- picking_ids = [pick.id for pick, pdf in pickings
- if not pdf]
- # generate missing picking labels
- picking_out_obj.action_generate_carrier_label(cr, uid,
- picking_ids,
- #file_type='pdf',
- context=context)
-
- # Get all pdf files adding the newly generated ones
- data_list = [pdf or pick.get_pdf_label()[pick.id]
- for pick, pdf in pickings]
- pdf_list = [data.decode('base64') for data in data_list if data]
- pdf_file = assemble_pdf(pdf_list)
- this.write({'label_pdf_file': pdf_file.encode('base64')})
+ attachment_obj = self.pool.get('ir.attachment')
+
+ for dispatch in this.dispatch_ids:
+ # flatten all picking in one list to keep the order in case
+ # if pickings have been ordered to ease packaging
+ pickings = [(pick, pick.get_pdf_label()[pick.id])
+ for pick in dispatch.related_picking_ids]
+ # get picking ids for which we want to generate pdf label
+ picking_ids = [pick.id for pick, pdf in pickings
+ if not pdf]
+ # generate missing picking labels
+ picking_out_obj.action_generate_carrier_label(cr, uid,
+ picking_ids,
+ #file_type='pdf',
+ context=context)
+ # Get all pdf files adding the newly generated ones
+ data_list = [pdf or pick.get_pdf_label()[pick.id]
+ for pick, pdf in pickings]
+ pdf_list = [data.decode('base64') for data in data_list if data]
+
+ pdf_file = assemble_pdf(pdf_list)
+ data = {
+ 'name': dispatch.name,
+ 'res_id': dispatch.id,
+ 'res_model': 'picking.dispatch',
+ 'datas': pdf_file.encode('base64'),
+ }
+ attachment_obj.create(cr, uid, data, context=context)
+
return {
- 'type': 'ir.actions.act_window',
- 'res_model': 'delivery.carrier.label.generate',
- 'view_mode': 'form',
- 'view_type': 'form',
- 'res_id': this.id,
- 'views': [(False, 'form')],
- 'target': 'new',
+ 'type': 'ir.actions.act_window_close',
}
=== modified file 'delivery_carrier_label_dispatch/wizard/generate_labels_view.xml'
--- delivery_carrier_label_dispatch/wizard/generate_labels_view.xml 2014-01-21 12:31:55 +0000
+++ delivery_carrier_label_dispatch/wizard/generate_labels_view.xml 2014-01-21 12:31:55 +0000
@@ -7,14 +7,10 @@
<field name="model">delivery.carrier.label.generate</field>
<field name="arch" type="xml">
<form string="Generate Carriers Labels" version="7.0">
-
<group>
+ <label string="This wizard creates an attachement on each selected dispatch containing picking labels"/>
<field name="dispatch_ids"/>
</group>
- <separator string="Labels"/>
- <group>
- <field name="label_pdf_file" filename="picking_labels.pdf"/>
- </group>
<footer>
<button name="action_generate_labels" string="Generate Labels" type="object" icon="gtk-execute" class="oe_highlight"/>
or
Follow ups