[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:
@@ -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)
|
||||
|
||||
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user