tab 'equipment' in purchase invisible if product not is a equipment
This commit is contained in:
parent
274a095b72
commit
5058a46c37
67
purchase.py
67
purchase.py
@ -51,71 +51,11 @@ class Purchase(metaclass=PoolMeta):
|
||||
purchase.equipment_available = True
|
||||
cls.save(purchases)
|
||||
#raise UserError(str(purchase.equipment_available))
|
||||
|
||||
else:
|
||||
raise InvalidNumberPurchases(
|
||||
gettext('purchase.msg_invalid_number_purchases'))
|
||||
|
||||
|
||||
|
||||
|
||||
"""
|
||||
@classmethod
|
||||
@ModelView.button
|
||||
def process(cls, purchases):
|
||||
pool = Pool()
|
||||
Equipment = pool.get('optical_equipment.equipment')
|
||||
#raise UserError(str(type(Equipment)))
|
||||
Line = pool.get('purchase.line')
|
||||
lines = []
|
||||
process, done = [], []
|
||||
cls.lock(purchases)
|
||||
for purchase in purchases:
|
||||
if purchase.state not in {'confirmed', 'processing', 'done'}:
|
||||
continue
|
||||
purchase.create_invoice()
|
||||
purchase.set_invoice_state()
|
||||
purchase.create_move('in')
|
||||
return_moves = purchase.create_move('return')
|
||||
if return_moves:
|
||||
purchase.create_return_shipment(return_moves)
|
||||
purchase.set_shipment_state()
|
||||
#raise UserError(str(dir(purchase)))
|
||||
#equipment = Equipment()
|
||||
for line in purchase.lines:
|
||||
#raise UserError(str(dir(line)))
|
||||
equipment = Equipment(
|
||||
company=line.company,
|
||||
equipment_type=line.product.equipment_type,
|
||||
party_address=line.address_equipment,
|
||||
product=line.product,
|
||||
risk=line.product.risk,
|
||||
use=line.product.use,
|
||||
biomedical_class=line.product.biomedical_class,
|
||||
calibration=line.product.calibration,
|
||||
refurbish=line.refurbish,
|
||||
serial=line.serial_equipment,
|
||||
software_version=line.product.software_version,
|
||||
)
|
||||
equipment.save()
|
||||
#raise UserError(str([equipment.serial, equipment.software_version]))
|
||||
line.set_actual_quantity()
|
||||
lines.append(line)
|
||||
|
||||
if purchase.is_done():
|
||||
if purchase.state != 'done':
|
||||
if purchase.state == 'confirmed':
|
||||
process.append(purchase)
|
||||
done.append(purchase)
|
||||
elif purchase.state != 'processing':
|
||||
process.append(purchase)
|
||||
Line.save(lines)
|
||||
if process:
|
||||
cls.proceed(process)
|
||||
if done:
|
||||
cls.do(done)
|
||||
"""
|
||||
|
||||
class Line(metaclass=PoolMeta):
|
||||
__name__ = 'purchase.line'
|
||||
|
||||
@ -123,3 +63,10 @@ class Line(metaclass=PoolMeta):
|
||||
serial_equipment = fields.Char("Serial", size=None, required=True)
|
||||
refurbish = fields.Boolean("Refurbish")
|
||||
|
||||
@classmethod
|
||||
def view_attributes(cls):
|
||||
return super(Line, cls).view_attributes() + [
|
||||
('//page[@id="equipment"]', 'states', {
|
||||
'invisible': ~Eval('line.product.equipment'),
|
||||
})]
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user