add change propietary in maintenance service
This commit is contained in:
parent
739032bd8e
commit
56f9eb92a0
@ -28,6 +28,7 @@ def register():
|
||||
maintenance.AgendedInitial,
|
||||
maintenance.ReAgended,
|
||||
maintenance.ServiceMaintenanceAgended,
|
||||
maintenance.ChangePropietaryMaintenance,
|
||||
move.Move,
|
||||
move.ShipmentOut,
|
||||
move.ShipmentInternal,
|
||||
@ -41,5 +42,7 @@ def register():
|
||||
maintenance.AssingAgended,
|
||||
maintenance.ReAssingAgended,
|
||||
maintenance.CreateContract,
|
||||
maintenance.NewPropietaryMaintenance,
|
||||
equipment.NewPropietary,
|
||||
|
||||
module='optical_equipment', type_='wizard')
|
||||
|
@ -379,5 +379,6 @@ class ChangeEquipment(ModelSQL):
|
||||
'Change Equipment'
|
||||
__name__ = 'optical_equipment.equipment-change_propietary.form'
|
||||
|
||||
maintenance_service = fields.Many2One('optical_equipment_maintenance.service', "Maintenance Service")
|
||||
equipment = fields.Many2One('optical_equipment.equipment', 'Equipment')
|
||||
change = fields.Many2One('optical_equipment.change_propietary.form', 'Change')
|
||||
|
@ -1080,3 +1080,53 @@ class CreateContract(Wizard):
|
||||
price_contract=maintenance_service.sale_origin.sale.total_amount
|
||||
)
|
||||
contract.save()
|
||||
|
||||
class ChangePropietaryMaintenance(ModelView):
|
||||
'Change of Propietary Equipment'
|
||||
__name__ = 'optical_equipment.change_propietary_maintenance.form'
|
||||
|
||||
old_propietary = fields.Many2One('party.party', 'Old Propietary',
|
||||
states={'required': True})
|
||||
maintenance_service = fields.Many2Many('optical_equipment_maintenance.service', None, None, "Maintenance Service",
|
||||
domain=[('propietary', '=', Eval('old_propietary'))],
|
||||
depends=['old_propietary'])
|
||||
new_propietary = fields.Many2One('party.party', "New Propietary",
|
||||
states={'required': True})
|
||||
new_address = fields.Many2One('party.address', "New Address", required=True,
|
||||
domain=[('party', '=', Eval('new_propietary'))],
|
||||
states={'required': True})
|
||||
change_date = fields.Date("Change Date", readonly=True)
|
||||
|
||||
@classmethod
|
||||
def default_change_date(cls):
|
||||
pool = Pool()
|
||||
Date = pool.get('ir.date')
|
||||
return Date.today()
|
||||
|
||||
|
||||
class NewPropietaryMaintenance(Wizard):
|
||||
'Change Propietary'
|
||||
__name__ = 'optical_equipment.change_propietary_maintenance'
|
||||
|
||||
start = StateView('optical_equipment.change_propietary_maintenance.form',
|
||||
'optical_equipment.change_propietary_maintenance_view_form',[
|
||||
Button('Cancel', 'end', 'tryton-cancel'),
|
||||
Button('Create', 'change_propietary', 'tryton-ok', default=True),
|
||||
])
|
||||
change_propietary = StateAction('optical_equipment.act_optical_equipment_form')
|
||||
|
||||
def do_change_propietary(self, action):
|
||||
old_propietary = self.start.old_propietary
|
||||
services = self.start.maintenance_service
|
||||
new_propietary = self.start.new_propietary
|
||||
new_address = self.start.new_address
|
||||
|
||||
for service in services:
|
||||
service.propietary = new_propietary
|
||||
service.propietary_address = new_address
|
||||
service.save()
|
||||
for maintenance in service.lines:
|
||||
maintenance.propietary = new_propietary
|
||||
maintenance.propietary_address = new_address
|
||||
maintenance.save()
|
||||
|
||||
|
@ -18,6 +18,11 @@
|
||||
<field name="type">form</field>
|
||||
<field name="name">maintenance_form</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="change_propietary_maintenance_view_form">
|
||||
<field name="model">optical_equipment.change_propietary_maintenance.form</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">change_propietary_maintenance_form</field>
|
||||
</record>
|
||||
<record model="ir.action.act_window" id="act_maintenance_service_form">
|
||||
<field name="name">Services Maintenance</field>
|
||||
<field name="res_model">optical_equipment_maintenance.service</field>
|
||||
@ -265,6 +270,16 @@
|
||||
<field name="model">optical_equipment_maintenance.service,-1</field>
|
||||
<field name="action" ref="report_maintenance_timeline"/>
|
||||
</record>
|
||||
<record model="ir.action.wizard" id="equipment_change_propietary_maintenance">
|
||||
<field name="name">Change Propietary Maintenance</field>
|
||||
<field name="wiz_name">optical_equipment.change_propietary_maintenance</field>
|
||||
<field name="model">optical_equipment_maintenance.service</field>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="equipment_change_propietary_maintenance_keyword">
|
||||
<field name="keyword">form_action</field>
|
||||
<field name="model">optical_equipment_maintenance.service,-1</field>
|
||||
<field name="action" ref="equipment_change_propietary_maintenance"/>
|
||||
</record>
|
||||
<menuitem parent="menu_equipment"
|
||||
action="act_maintenance_service_form"
|
||||
sequence="20"
|
||||
|
3
sale.py
3
sale.py
@ -50,6 +50,9 @@ class Sale(metaclass=PoolMeta):
|
||||
def __setup__(cls):
|
||||
super(Sale, cls).__setup__()
|
||||
cls.contact.states['required']=True
|
||||
cls.description.states['required']=True
|
||||
cls.sale_date.states['required']=True
|
||||
cls.payment_term.states['required']=True
|
||||
cls._buttons.update({
|
||||
'draft': {
|
||||
'invisible': (Eval('state').in_(
|
||||
|
Loading…
Reference in New Issue
Block a user