Skip to content

Commit

Permalink
[IMP] rma_delivery: add default in carrier
Browse files Browse the repository at this point in the history
  • Loading branch information
mariadforgeflow committed Oct 18, 2022
1 parent ea1721b commit 6c4d990
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 5 deletions.
14 changes: 12 additions & 2 deletions rma_delivery/models/rma_operation.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,16 @@ class RmaOperation(models.Model):

_inherit = "rma.operation"

default_carrier_id = fields.Many2one(
comodel_name="delivery.carrier", string="Default carrier", required=False
default_carrier_id_in = fields.Many2one(
comodel_name="delivery.carrier",
string="Default Recepit carrier",
required=False,
domain="['|', ('company_id', '=', company_id), ('company_id', '=', False)]",
)

default_carrier_id_out = fields.Many2one(
comodel_name="delivery.carrier",
string="Default Delivery carrier",
required=False,
domain="['|', ('company_id', '=', company_id), ('company_id', '=', False)]",
)
5 changes: 4 additions & 1 deletion rma_delivery/views/rma_operation_view.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,11 @@
<field name="model">rma.operation</field>
<field name="inherit_id" ref="rma.rma_operation_form" />
<field name="arch" type="xml">
<xpath expr="//field[@name='receipt_policy']" position="after">
<field name="default_carrier_id_in" options="{'no_create': True}" />
</xpath>
<xpath expr="//field[@name='delivery_policy']" position="after">
<field name="default_carrier_id" options="{'no_create': True}" />
<field name="default_carrier_id_out" options="{'no_create': True}" />
</xpath>
</field>
</record>
Expand Down
9 changes: 7 additions & 2 deletions rma_delivery/wizard/rma_make_picking.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,13 @@ class RmaMakePicking(models.TransientModel):
def _create_picking(self):
res = super()._create_picking()
for line in self.mapped("item_ids.line_id").filtered(
lambda x: x.operation_id.default_carrier_id
lambda x: x.operation_id.default_carrier_id_out
):
pickings = line._get_out_pickings().filtered(lambda x: not x.carrier_id)
pickings.write({"carrier_id": line.operation_id.default_carrier_id.id})
pickings.write({"carrier_id": line.operation_id.default_carrier_id_out.id})
for line in self.mapped("item_ids.line_id").filtered(
lambda x: x.operation_id.default_carrier_id_in
):
pickings = line._get_in_pickings().filtered(lambda x: not x.carrier_id)
pickings.write({"carrier_id": line.operation_id.default_carrier_id_in.id})
return res

0 comments on commit 6c4d990

Please sign in to comment.