Trade Finance - Adjustment on sub-limit
This commit is contained in:
@@ -194,7 +194,9 @@ class FacilityLimit(ModelSQL, ModelView):
|
||||
_rec_name = 'name'
|
||||
|
||||
facility = fields.Many2One('trade_finance.facility', 'Facility',
|
||||
required=True, ondelete='CASCADE')
|
||||
required=True, ondelete='CASCADE',
|
||||
states={'readonly': Bool(Eval('parent'))},
|
||||
depends=['parent'])
|
||||
parent = fields.Many2One('trade_finance.facility_limit', 'Parent Limit',
|
||||
ondelete='RESTRICT',
|
||||
domain=[('facility', '=', Eval('facility'))],
|
||||
@@ -212,7 +214,9 @@ class FacilityLimit(ModelSQL, ModelView):
|
||||
sequence = fields.Integer('Sequence')
|
||||
|
||||
is_global = fields.Function(fields.Boolean('Global Limit'),
|
||||
'get_is_global')
|
||||
'get_is_global',
|
||||
states={'invisible': Bool(Eval('parent'))},
|
||||
depends=['parent'])
|
||||
|
||||
haircuts = fields.One2Many('trade_finance.facility_limit_haircut', 'limit',
|
||||
'Haircuts')
|
||||
@@ -232,6 +236,15 @@ class FacilityLimit(ModelSQL, ModelView):
|
||||
def default_sequence():
|
||||
return 10
|
||||
|
||||
@classmethod
|
||||
def create(cls, vlist):
|
||||
vlist = [v.copy() for v in vlist]
|
||||
for values in vlist:
|
||||
if values.get('parent') and not values.get('facility'):
|
||||
parent = cls(values['parent'])
|
||||
values['facility'] = parent.facility.id
|
||||
return super().create(vlist)
|
||||
|
||||
def get_is_global(self, name):
|
||||
return self.parent is None
|
||||
|
||||
|
||||
Reference in New Issue
Block a user