[IMP] delivery,sale: Delivery Cost Improvement on sale, Task id-584

bzr revid: mso@mso-20100423115016-feh97hnjecr03m9p
This commit is contained in:
mso 2010-04-23 17:20:16 +05:30
parent 620fb3c029
commit dd8501d463
4 changed files with 36 additions and 15 deletions

View File

@ -28,6 +28,17 @@ class delivery_carrier(osv.osv):
_name = "delivery.carrier" _name = "delivery.carrier"
_description = "Carrier and delivery grids" _description = "Carrier and delivery grids"
def name_get(self, cr, uid, ids, context={}):
if not len(ids):
return []
order_id = context.get('order_id',False)
if not order_id:
res = super(delivery_carrier, self).name_get(cr, uid, ids, context=context)
else:
order = self.pool.get('sale.order').browse(cr, uid, [order_id])[0]
currency = order.partner_id.property_product_pricelist.currency_id.name or ''
res = [(r['id'], r['name']+' ('+(str(r['price']))+' '+currency+')') for r in self.read(cr, uid, ids, ['name', 'price'], context)]
return res
def get_price(self, cr, uid, ids, field_name, arg=None, context={}): def get_price(self, cr, uid, ids, field_name, arg=None, context={}):
res={} res={}
sale_obj=self.pool.get('sale.order') sale_obj=self.pool.get('sale.order')
@ -94,9 +105,7 @@ class delivery_grid(osv.osv):
} }
_order = 'sequence' _order = 'sequence'
def get_price(self, cr, uid, id, order, dt, context): def get_price(self, cr, uid, id, order, dt, context):
total = 0 total = 0
weight = 0 weight = 0
volume = 0 volume = 0
@ -112,7 +121,6 @@ class delivery_grid(osv.osv):
def get_price_from_picking(self, cr, uid, id, total, weight, volume, context={}): def get_price_from_picking(self, cr, uid, id, total, weight, volume, context={}):
grid = self.browse(cr, uid, id, context) grid = self.browse(cr, uid, id, context)
price = 0.0 price = 0.0
ok = False ok = False

View File

@ -289,5 +289,16 @@
</field> </field>
</record> </record>
<record model="ir.ui.view" id="edit_project_multicompany">
<field name="name">sale.order.multicompany</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="/form/notebook/page[@string='Sale Order']/group[1]/button[@name='button_dummy']" position="after">
<button name="%(action_delivery_cost)d" states="draft" string="Delivery Costs" type="action" icon="gtk-execute" context="{'order_id':id}"/>
</xpath>
</field>
</record>
</data> </data>
</openerp> </openerp>

View File

@ -11,8 +11,9 @@
<field name="arch" type="xml"> <field name="arch" type="xml">
<form string="Create Deliveries"> <form string="Create Deliveries">
<separator colspan="4" string="Delivery Method" /> <separator colspan="4" string="Delivery Method" />
<field name="carrier_id"/> <field name="carrier_id" widget="selection"/>
<newline/> <newline/>
<separator colspan="4"/>
<group col="2" colspan="4"> <group col="2" colspan="4">
<button icon='gtk-cancel' special="cancel" <button icon='gtk-cancel' special="cancel"
string="Cancel" /> string="Cancel" />
@ -22,15 +23,16 @@
</form> </form>
</field> </field>
</record> </record>
<!--
<act_window name="Delivery Costs" <record id="action_delivery_cost" model="ir.actions.act_window">
res_model="delivery.sale.order" <field name="name">Delivery Costs</field>
src_model="sale.order" <field name="type">ir.actions.act_window</field>
view_mode="form" <field name="res_model">delivery.sale.order</field>
target="new" <field name="view_type">form</field>
key2="client_action_multi" <field name="view_mode">form</field>
id="act_delivery_cost"/> <field name="view_id" ref="view_make_delivery_wizard"/>
--> <field name="target">new</field>
</record>
</data> </data>
</openerp> </openerp>

View File

@ -188,7 +188,7 @@
</tree> </tree>
</field> </field>
<newline/> <newline/>
<group col="7" colspan="4"> <group col="8" colspan="5">
<field name="amount_untaxed" sum="Untaxed amount"/> <field name="amount_untaxed" sum="Untaxed amount"/>
<field name="amount_tax"/> <field name="amount_tax"/>
<field name="amount_total" sum="Total amount"/> <field name="amount_total" sum="Total amount"/>