Files
Odoo-Modules/fusion_canada_post/models/stock_picking.py
gsinghpal f81e0cd918 changes
2026-03-09 23:45:00 -04:00

35 lines
1.1 KiB
Python

from odoo import models, fields
class StockPicking(models.Model):
_inherit = 'stock.picking'
fusion_cp_shipment_count = fields.Integer(
string='CP Shipments',
compute='_compute_fusion_cp_shipment_count',
)
def _compute_fusion_cp_shipment_count(self):
Shipment = self.env['fusion.cp.shipment']
for picking in self:
picking.fusion_cp_shipment_count = Shipment.search_count(
[('picking_id', '=', picking.id)]
)
def action_view_fusion_cp_shipments(self):
self.ensure_one()
shipments = self.env['fusion.cp.shipment'].search(
[('picking_id', '=', self.id)]
)
action = {
'type': 'ir.actions.act_window',
'name': 'Canada Post Shipments',
'res_model': 'fusion.cp.shipment',
'view_mode': 'list,form',
'domain': [('picking_id', '=', self.id)],
}
if len(shipments) == 1:
action['view_mode'] = 'form'
action['res_id'] = shipments.id
return action