update shipmentOut
This commit is contained in:
parent
7803f6402c
commit
c0291a0c11
44
move.py
44
move.py
@ -13,10 +13,12 @@ class Move(metaclass=PoolMeta):
|
|||||||
__name__ = "stock.move"
|
__name__ = "stock.move"
|
||||||
|
|
||||||
|
|
||||||
return_equipment = fields.Boolean("Devolución")
|
return_equipment = fields.Boolean("Devolución", states={'invisible': If(~Eval('product_equipment'), True),
|
||||||
|
'readonly': (Eval('state').in_(['cancelled', 'done'])),}
|
||||||
|
)
|
||||||
equipment = fields.Many2One('optical_equipment.equipment', "Equipment",
|
equipment = fields.Many2One('optical_equipment.equipment', "Equipment",
|
||||||
domain=[If(Eval('return_equipment', True),
|
domain=[If(Eval('return_equipment', True),
|
||||||
('state', 'in', ['uncontrated','contrated']),
|
('state', 'in', ['uncontrated','contrated']),
|
||||||
('state', '=', 'registred')),
|
('state', '=', 'registred')),
|
||||||
('product','=', Eval('product'))
|
('product','=', Eval('product'))
|
||||||
],
|
],
|
||||||
@ -30,6 +32,10 @@ class Move(metaclass=PoolMeta):
|
|||||||
'get_equipment_serial')
|
'get_equipment_serial')
|
||||||
product_equipment = fields.Function(fields.Boolean("It Equipment"),'get_product_equipment')
|
product_equipment = fields.Function(fields.Boolean("It Equipment"),'get_product_equipment')
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def __setup__(cls):
|
||||||
|
super(Move, cls).__setup__()
|
||||||
|
cls.origin.states['required']=True
|
||||||
|
|
||||||
@fields.depends('product')
|
@fields.depends('product')
|
||||||
def get_product_equipment(self, product):
|
def get_product_equipment(self, product):
|
||||||
@ -93,7 +99,6 @@ class ShipmentOut(metaclass=PoolMeta):
|
|||||||
Move = pool.get('stock.move')
|
Move = pool.get('stock.move')
|
||||||
Date = pool.get('ir.date')
|
Date = pool.get('ir.date')
|
||||||
Locations = pool.get('stock.location')
|
Locations = pool.get('stock.location')
|
||||||
|
|
||||||
Equipments = pool.get('optical_equipment.equipment')
|
Equipments = pool.get('optical_equipment.equipment')
|
||||||
for shipment in shipments:
|
for shipment in shipments:
|
||||||
for move in shipment.inventory_moves:
|
for move in shipment.inventory_moves:
|
||||||
@ -170,6 +175,8 @@ class ShipmentOut(metaclass=PoolMeta):
|
|||||||
maintenanceService.save()
|
maintenanceService.save()
|
||||||
else:
|
else:
|
||||||
maintenanceService = maintenanceService[0]
|
maintenanceService = maintenanceService[0]
|
||||||
|
maintenanceService.state = 'draft'
|
||||||
|
maintenanceService.save()
|
||||||
|
|
||||||
if serial == True:
|
if serial == True:
|
||||||
for move in shipment.inventory_moves:
|
for move in shipment.inventory_moves:
|
||||||
@ -231,7 +238,36 @@ class ShipmentOutReturn(metaclass=PoolMeta):
|
|||||||
service_maintenance_initial = fields.Boolean('Maintenance Initial', states={'readonly': True})
|
service_maintenance_initial = fields.Boolean('Maintenance Initial', states={'readonly': True})
|
||||||
sale_type = fields.Char('Type sale origin')
|
sale_type = fields.Char('Type sale origin')
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
@ModelView.button
|
||||||
|
@Workflow.transition('received')
|
||||||
|
@set_employee('received_by')
|
||||||
|
def receive(cls, shipments):
|
||||||
|
Move = Pool().get('stock.move')
|
||||||
|
Equipments = Pool().get('optical_equipment.equipment')
|
||||||
|
Locations = Pool().get('stock.location')
|
||||||
|
Move.do([m for s in shipments for m in s.incoming_moves])
|
||||||
|
for s in shipments:
|
||||||
|
for m in s.incoming_moves:
|
||||||
|
if m.equipment:
|
||||||
|
equipment = m.equipment
|
||||||
|
Id = equipment.id
|
||||||
|
equipment = Equipments.search(['id', '=',Id])[0]
|
||||||
|
equipment.propietary = s.company.party.id
|
||||||
|
equipment.propietary_address= s.company.party.addresses[0].id
|
||||||
|
equipment.location = m.to_location.id
|
||||||
|
equipment.state="registred"
|
||||||
|
equipment.save()
|
||||||
|
|
||||||
|
cls.create_inventory_moves(shipments)
|
||||||
|
# Set received state to allow done transition
|
||||||
|
cls.write(shipments, {'state': 'received'})
|
||||||
|
to_do = [s for s in shipments
|
||||||
|
if s.warehouse_storage == s.warehouse_input]
|
||||||
|
|
||||||
|
|
||||||
|
if to_do:
|
||||||
|
cls.done(to_do)
|
||||||
class PickingListDeliveryReport(CompanyReport):
|
class PickingListDeliveryReport(CompanyReport):
|
||||||
__name__ = 'stock.shipment.out.picking_list1'
|
__name__ = 'stock.shipment.out.picking_list1'
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user