[MERGE] merged a branch with small improvements in test, demo data and usability of delivery module

bzr revid: qdp-launchpad@openerp.com-20131230082144-vsrvvs9bzwmdad4x
This commit is contained in:
Quentin (OpenERP) 2013-12-30 09:21:44 +01:00
commit e68c45c3f4
3 changed files with 58 additions and 15 deletions

View File

@ -50,12 +50,6 @@
<field name="partner_id" ref="res_partner_23"/>
<field name="product_id" ref="product_product_delivery"/>
</record>
<record id="sale.sale_order_6" model="sale.order">
<field name="carrier_id" ref="normal_delivery_carrier"/>
</record>
<record id="sale.sale_order_2" model="sale.order">
<field name="carrier_id" ref="free_delivery_carrier"/>
</record>
<!-- Carrier Grids -->
@ -91,5 +85,11 @@
<field eval="0" name="list_price"/>
<field eval="0" name="standard_price"/>
</record>
<record forcecreate="True" id="property_delivery_carrier" model="ir.property">
<field name="name">property_delivery_carrier</field>
<field name="fields_id" search="[('model','=','res.partner'),('name','=','property_delivery_carrier')]"/>
<field name="value" eval="'delivery.carrier,'+str(ref('normal_delivery_carrier'))"/>
</record>
</data>
</openerp>

View File

@ -1,28 +1,47 @@
-
In order to test Carrier Cost,
-
Create sale order with Normal Delivery Charges
-
!record {model: sale.order, id: sale_normal_delivery_charges}:
partner_id: base.res_partner_18
partner_invoice_id: base.res_partner_18
partner_shipping_id: base.res_partner_18
pricelist_id: product.list0
order_policy: 'picking'
order_line:
- name: 'PC Assamble + 2GB RAM'
product_id: product.product_product_4
product_uom_qty: 1
product_uos_qty: 1
product_uom: product.product_uom_unit
price_unit: 750.00
carrier_id: normal_delivery_carrier
-
I add delivery cost in Sale order.
-
!python {model: sale.order}: |
self.delivery_set(cr, uid, [ref("sale.sale_order_6")], context=context)
self.delivery_set(cr, uid, [ref("sale_normal_delivery_charges")], context=context)
-
I check sale order after added delivery cost.
-
!python {model: sale.order.line}: |
line_ids = self.search(cr, uid, [('order_id','=', ref('sale.sale_order_6')), ('product_id','=', ref('product_product_delivery'))])
line_ids = self.search(cr, uid, [('order_id','=', ref('sale_normal_delivery_charges')), ('product_id','=', ref('product_product_delivery'))])
assert len(line_ids), "Delivery cost is not Added"
line_data = self.browse(cr ,uid ,line_ids[0] ,context)
assert line_data.price_subtotal == 10, "Delivey cost is not correspond."
-
I confirm the sale order.
-
!workflow {model: sale.order, action: order_confirm, ref: sale.sale_order_6}
!workflow {model: sale.order, action: order_confirm, ref: sale_normal_delivery_charges}
-
I create Invoice from shipment.
-
!python {model: stock.invoice.onshipping}: |
sale = self.pool.get('sale.order')
sale_order = sale.browse(cr, uid, ref("sale.sale_order_6"))
sale_order = sale.browse(cr, uid, ref("sale_normal_delivery_charges"))
ship_ids = [x.id for x in sale_order.picking_ids]
wiz_id = self.create(cr, uid, {'journal_id': ref('account.sales_journal')},
{'active_ids': ship_ids, 'active_model': 'stock.picking'})
@ -35,21 +54,45 @@
import openerp.report
from openerp import tools
sale = self.pool.get('sale.order')
sale_order = sale.browse(cr, uid, ref("sale.sale_order_6"))
sale_order = sale.browse(cr, uid, ref("sale_normal_delivery_charges"))
ship_ids = [x.id for x in sale_order.picking_ids]
data, format = openerp.report.render_report(cr, uid, ship_ids, 'sale.shipping', {}, {})
if tools.config['test_report_directory']:
file(os.path.join(tools.config['test_report_directory'], 'delivery-shipping'+format), 'wb+').write(data)
-
Create one more sale order with Free Delivery Charges
-
!record {model: sale.order, id: sale_free_delivery_charges}:
partner_id: base.res_partner_7
partner_invoice_id: base.res_partner_address_13
partner_shipping_id: base.res_partner_address_13
pricelist_id: product.list0
order_policy: 'manual'
order_line:
- name: 'Service on demand'
product_id: product.product_product_consultant
product_uom_qty: 24
product_uos_qty: 24
product_uom: product.product_uom_hour
price_unit: 75.00
order_line:
- name: 'On Site Assistance'
product_id: product.product_product_2
product_uom_qty: 30
product_uos_qty: 30
product_uom: product.product_uom_hour
price_unit: 38.25
carrier_id: free_delivery_carrier
-
I add free delivery cost in Sale order.
-
!python {model: sale.order}: |
self.delivery_set(cr, uid, [ref("sale.sale_order_2")], context=context)
self.delivery_set(cr, uid, [ref("sale_free_delivery_charges")], context=context)
-
I check sale order after added delivery cost.
-
!python {model: sale.order.line}: |
line_ids = self.search(cr, uid, [('order_id','=', ref('sale.sale_order_2')), ('product_id','=', ref('product_product_delivery'))])
line_ids = self.search(cr, uid, [('order_id','=', ref('sale_free_delivery_charges')), ('product_id','=', ref('product_product_delivery'))])
assert len(line_ids), "Delivery cost is not Added"
line_data = self.browse(cr ,uid ,line_ids[0] ,context)
assert line_data.price_subtotal == 0, "Delivey cost is not correspond."

View File

@ -30,14 +30,14 @@
</div>
</xpath>
<xpath expr="//label[@string='Default Options']" position="replace">
<label for="id" string="Default Options" attrs="{'invisible':['|',('group_invoice_so_lines','=',False),('group_invoice_deli_orders','=',False),('group_invoice_so_lines','=',False), ('group_invoice_deli_orders','=',False),('task_work','=',False), ('module_account_analytic_analysis','=',False)]}"/>
<label for="id" string="Default Options"/>
</xpath>
<xpath expr="//div[@name='time_unit']" position="before">
<div attrs="{'invisible':['|',('group_invoice_so_lines','=',False),('group_invoice_deli_orders','=',False)],'required': ['|',('group_invoice_so_lines','=',True),('group_invoice_deli_orders','=',True)]}">
<label for="default_order_policy"/>
<field name="default_order_policy" class="oe_inline"/>
</div>
<div attrs="{'invisible':[('group_invoice_so_lines','=',False), ('group_invoice_deli_orders','=',False)]}">
<div>
<field name="module_delivery" class="oe_inline"/>
<label for="module_delivery"/>
</div>