correction to assigned serial

This commit is contained in:
sinergia 2022-08-02 19:37:32 -05:00
parent 5566df2b5d
commit b657f5cd4d
4 changed files with 34 additions and 21 deletions

View File

@ -5,7 +5,6 @@ from trytond.model import (
from trytond.pyson import Eval, If from trytond.pyson import Eval, If
from trytond.transaction import Transaction from trytond.transaction import Transaction
from trytond.i18n import gettext from trytond.i18n import gettext
#from .exceptions import NotSequenceEquipment
from trytond.exceptions import UserError from trytond.exceptions import UserError
@ -27,9 +26,9 @@ class OpticalEquipment(Workflow, ModelSQL, ModelView):
code = fields.Char( code = fields.Char(
"Code", select=True,states={'readonly': True }) "Code", select=True,states={'readonly': True })
state = fields.Selection([ state = fields.Selection([('draft', "Draft"),
('draft', "Draft"),
('registred', "Registred"), ('registred', "Registred"),
('uncontrated', "UnContrated"),
('contrated', "Contrated") ('contrated', "Contrated")
], "State", ], "State",
required=True, readonly=True, sort=False) required=True, readonly=True, sort=False)
@ -97,6 +96,7 @@ class OpticalEquipment(Workflow, ModelSQL, ModelView):
depends=['propietary']) depends=['propietary'])
del _states_serial del _states_serial
@classmethod @classmethod
@ -104,7 +104,8 @@ class OpticalEquipment(Workflow, ModelSQL, ModelView):
super(OpticalEquipment, cls).__setup__() super(OpticalEquipment, cls).__setup__()
cls._transitions = ({ cls._transitions = ({
('draft', 'registred'), ('draft', 'registred'),
('registred', 'contrated'), ('registred', 'uncontrated'),
('uncontrated', 'contrated'),
}) })
cls._buttons.update({ cls._buttons.update({
'draft': { 'draft': {
@ -118,9 +119,10 @@ class OpticalEquipment(Workflow, ModelSQL, ModelView):
pool = Pool() pool = Pool()
Config = pool.get('optical_equipment.configuration') Config = pool.get('optical_equipment.configuration')
config = Config(1) config = Config(1)
for equipment in equipments: for equipment in equipments:
if config.equipment_sequence != None and not equipment.code: if config.equipment_sequence != None:
#if not equipment.code: if equipment.code == None: #if not equipment.code:
try: try:
equipment.code = config.equipment_sequence.get() equipment.code = config.equipment_sequence.get()
equipment.state = 'registred' equipment.state = 'registred'
@ -140,7 +142,6 @@ class OpticalEquipment(Workflow, ModelSQL, ModelView):
maintenancesEquipment = MaintenancesEquipment.search(['equipment', '=', self.id]) maintenancesEquipment = MaintenancesEquipment.search(['equipment', '=', self.id])
maintenances = [] maintenances = []
#raise UserError(str(maintenancesEquipment))
for key in maintenancesEquipment: for key in maintenancesEquipment:
maintenances.append(key.id) maintenances.append(key.id)

View File

@ -58,6 +58,16 @@
<field name="count" eval="True"/> <field name="count" eval="True"/>
<field name="act_window" ref="act_optical_equipment_form"/> <field name="act_window" ref="act_optical_equipment_form"/>
</record> </record>
<record model="ir.action.act_window.domain" id="act_optical_equipment_form_domain_uncontrated">
<field name="name">UnContrated</field>
<field name="sequence" eval="30"/>
<field name="domain"
eval="[('state', '=', 'uncontrated')]"
pyson="1"/>
<field name="count" eval="True"/>
<field name="act_window" ref="act_optical_equipment_form"/>
</record>
<record model="ir.action.act_window.domain" id="act_optical_equipment_form_domain_contrated"> <record model="ir.action.act_window.domain" id="act_optical_equipment_form_domain_contrated">
<field name="name">Contrated</field> <field name="name">Contrated</field>
<field name="sequence" eval="30"/> <field name="sequence" eval="30"/>

View File

@ -118,7 +118,7 @@ class SaleLine(metaclass=PoolMeta):
product_equipment = fields.Boolean("Product Equipment") product_equipment = fields.Boolean("Product Equipment")
equipment = fields.Many2One('optical_equipment.equipment', "Equipment", equipment = fields.Many2One('optical_equipment.equipment', "Equipment",
domain=[('state', '=', 'registred')], domain=[('state', '=', 'registred')],
states={'invisible': If(~Eval('product_equipment'), True)}) states={'invisible': If(~Eval('product_equipment'), True)},)
address_equipment = fields.Many2One('party.address', "Direccion") address_equipment = fields.Many2One('party.address', "Direccion")
unit_digits = fields.Function(fields.Integer('Unit Digits'), unit_digits = fields.Function(fields.Integer('Unit Digits'),
'on_change_with_unit_digits') 'on_change_with_unit_digits')

View File

@ -10,7 +10,6 @@ class Subscription(metaclass=PoolMeta):
equipments = fields.Many2Many('sale.subscription-optical_equipment.equipment', 'subscription', equipments = fields.Many2Many('sale.subscription-optical_equipment.equipment', 'subscription',
'equipment', "Equipments") 'equipment', "Equipments")
@classmethod @classmethod
@ModelView.button @ModelView.button
@Workflow.transition('running') @Workflow.transition('running')
@ -27,7 +26,10 @@ class SubscriptionEquipment(ModelSQL):
__name__ = 'sale.subscription-optical_equipment.equipment' __name__ = 'sale.subscription-optical_equipment.equipment'
subscription = fields.Many2One('sale.subscription', 'Subscription', select=True) subscription = fields.Many2One('sale.subscription', 'Subscription', select=True)
equipment = fields.Many2One('optical_equipment.equipment', 'Equipment', select=True) equipment = fields.Many2One('optical_equipment.equipment', 'Equipment', select=True,
domain=[('state', '=', 'registred'),
('state', '=', 'uncontrated')],
depends=['state'])
class Line(metaclass=PoolMeta): class Line(metaclass=PoolMeta):