[IMP] delivery: allow recompute when not in draft

closes odoo/odoo#32213

Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
This commit is contained in:
Pierre Masereel
2019-04-01 12:47:25 +00:00
parent 4483121739
commit 4c9fa084b4
2 changed files with 6 additions and 8 deletions
+3 -5
View File
@@ -43,10 +43,7 @@ class SaleOrder(models.Model):
self._remove_delivery_line()
for order in self:
if order.state not in ('draft', 'sent'):
raise UserError(_('You can add delivery price only on unconfirmed quotations.'))
else:
order._create_delivery_line(carrier, amount, price_unit_in_description=self.carrier_id.invoice_policy == 'real')
order._create_delivery_line(carrier, amount, price_unit_in_description=self.carrier_id.invoice_policy == 'real')
return True
def action_open_delivery_wizard(self):
@@ -66,7 +63,8 @@ class SaleOrder(models.Model):
}
def recompute_delivery_cost(self):
delivery_line = self.order_line.filtered('is_delivery')
self.ensure_one()
delivery_line = self.order_line.filtered('is_delivery')[:1]
res = self.carrier_id.rate_shipment(self)
if res.get('success'):
self.delivery_message = res.get('warning_message', False)
+3 -3
View File
@@ -308,20 +308,20 @@
string="Add a shipping method"
name="action_open_delivery_wizard"
type="object"
attrs="{'invisible': ['|', '|', ('order_line', '=', []), ('delivery_set', '=', True), ('state', 'not in', ('draft', 'sent'))]}"
attrs="{'invisible': ['|', ('order_line', '=', []), ('delivery_set', '=', True)]}"
/>
<button
string="Recompute shipping cost"
name="recompute_delivery_cost"
type="object"
class="text-warning btn-secondary"
attrs="{'invisible': ['|', '|', ('recompute_delivery_price', '=', False), ('delivery_set', '=', False), ('state', 'not in', ('draft', 'sent'))]}"
attrs="{'invisible': ['|', ('recompute_delivery_price', '=', False), ('delivery_set', '=', False)]}"
/>
<button
string="Recompute shipping cost"
name="recompute_delivery_cost"
type="object"
attrs="{'invisible': ['|', '|', ('recompute_delivery_price', '=', True), ('delivery_set', '=', False), ('state', 'not in', ('draft', 'sent'))]}"
attrs="{'invisible': ['|', ('recompute_delivery_price', '=', True), ('delivery_set', '=', False)]}"
/>
</div>
</xpath>