[IMP] odex_benefit: IMP benefit
This commit is contained in:
parent
f0612b8803
commit
089a96aa19
|
|
@ -9841,7 +9841,6 @@ msgstr "احتساب قيمة الإيجار"
|
|||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__rent_attachment
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__member_rent_attachment
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__rent_attachment
|
||||
msgid "Rent Attachment"
|
||||
msgstr "مرفق عقد الإيجار"
|
||||
|
|
@ -9852,14 +9851,12 @@ msgid "Rent Contract Information"
|
|||
msgstr "معلومات عقد الإيجار"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__member_rent_contract_number
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__rent_contract_number
|
||||
msgid "Rent Contract Number"
|
||||
msgstr "رقم العقد"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__rent_end_date
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__member_rent_end_date
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__rent_end_date
|
||||
msgid "Rent End Date"
|
||||
msgstr "تاريخ نهاية العقد"
|
||||
|
|
@ -9891,7 +9888,6 @@ msgstr "سكن مشترك إيجار"
|
|||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__rent_start_date
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__member_rent_start_date
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__rent_start_date
|
||||
msgid "Rent Start Date"
|
||||
msgstr "تاريخ بداية العقد"
|
||||
|
|
|
|||
|
|
@ -1040,9 +1040,4 @@ class RentContract(models.Model):
|
|||
def _onchange_landlord_type(self):
|
||||
for rec in self:
|
||||
if rec.landlord_type == 'family':
|
||||
rec.member_id = False
|
||||
|
||||
@api.onchange('contract_type')
|
||||
def _onchange_contract_type(self):
|
||||
if self.contract_type == 'unlimited':
|
||||
self.end_date = False
|
||||
rec.member_id = False
|
||||
|
|
@ -76,13 +76,6 @@ class ServiceRequest(models.Model):
|
|||
rent_payment_date_exception = fields.Boolean(string='Rent Payment Date Exception?')
|
||||
start = fields.Date(string="Start Date")
|
||||
end = fields.Date(string='End Date')
|
||||
# Rent details for member
|
||||
member_rent_contract_number = fields.Char(string="Rent Contract Number")
|
||||
member_rent_start_date = fields.Date(string='Rent Start Date')
|
||||
member_rent_end_date = fields.Date(string='Rent End Date')
|
||||
member_rent_attachment = fields.Many2many('ir.attachment', 'rel_member_rent_attachment_service_request',
|
||||
'service_request_id',
|
||||
'attachment_id', string='Rent Attachment')
|
||||
added_amount_if_mother_dead = fields.Float(string="Added Amount (If mother dead)",
|
||||
compute="_get_added_amount_if_mother_dead")
|
||||
attachment_lines = fields.One2many(
|
||||
|
|
@ -488,7 +481,7 @@ class ServiceRequest(models.Model):
|
|||
raise UserError(_('You cannot delete this record'))
|
||||
return super(ServiceRequest, self).unlink()
|
||||
|
||||
@api.depends('family_id','member_id','benefit_type')
|
||||
@api.depends('family_id', 'member_id', 'benefit_type')
|
||||
def _compute_rent_details(self):
|
||||
for rec in self:
|
||||
contract = False
|
||||
|
|
@ -774,12 +767,35 @@ class ServiceRequest(models.Model):
|
|||
for rec in self:
|
||||
if rec.service_type != 'rent':
|
||||
continue
|
||||
if rec.start and rec.end and rec.rent_start_date and rec.rent_end_date:
|
||||
if not (rec.rent_start_date <= rec.start <= rec.rent_end_date and
|
||||
rec.rent_start_date <= rec.end <= rec.rent_end_date):
|
||||
raise UserError(_(
|
||||
"The Start Date and End Date must be within the Rent Start Date and Rent End Date range."
|
||||
))
|
||||
# if rec.start and rec.end and rec.rent_start_date and rec.rent_end_date:
|
||||
# if not (rec.rent_start_date <= rec.start <= rec.rent_end_date and
|
||||
# rec.rent_start_date <= rec.end <= rec.rent_end_date):
|
||||
# raise UserError(_(
|
||||
# "The Start Date and End Date must be within the Rent Start Date and Rent End Date range."
|
||||
# ))
|
||||
|
||||
contract = rec.family_id.current_rent_contract_id if rec.benefit_type == 'family' else False
|
||||
if rec.benefit_type == 'member' and rec.member_id:
|
||||
member_contracts = rec.family_id.rent_contract_ids.filtered(
|
||||
lambda c: c.state == 'active' and c.member_id == rec.member_id and c.landlord_type == 'member'
|
||||
).sorted('start_date', reverse=True)
|
||||
contract = member_contracts[:1] or False
|
||||
|
||||
if contract:
|
||||
if contract.contract_type == 'fixed':
|
||||
if rec.start and rec.end and rec.rent_start_date and rec.rent_end_date:
|
||||
if not (rec.rent_start_date <= rec.start <= rec.rent_end_date and
|
||||
rec.rent_start_date <= rec.end <= rec.rent_end_date):
|
||||
raise UserError(
|
||||
_("Requested rent period must be fully within the contract period "
|
||||
"because the contract is fixed-term.")
|
||||
)
|
||||
else:
|
||||
if rec.start and rec.rent_start_date:
|
||||
if rec.start <= rec.rent_start_date:
|
||||
raise UserError(
|
||||
_("Requested start date cannot be before the contract start date.")
|
||||
)
|
||||
if rec.payment_type and rec.start and rec.end:
|
||||
months_map = {
|
||||
'1': 12, # yearly
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@
|
|||
<group>
|
||||
<field name="is_benefit" string="Is Benefit" widget="boolean_toggle"/>
|
||||
</group>
|
||||
<group>
|
||||
<group invisible="1">
|
||||
<field name="expenses_ids">
|
||||
<tree editable="bottom">
|
||||
<field name="category_id" invisible="1"/>
|
||||
|
|
@ -1011,6 +1011,9 @@
|
|||
<tree>
|
||||
<field name="branch" context="{'hierarchical_naming': False}"/>
|
||||
<field name="branch_type"/>
|
||||
<field name="manager_id"/>
|
||||
<field name="operation_manager_id"/>
|
||||
<field name="has_employees"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
|
|
|||
|
|
@ -336,40 +336,19 @@
|
|||
attrs="{'required':[('service_type','=','rent')]}"/>
|
||||
<!--Family Rent-->
|
||||
<field name="rent_contract_number"
|
||||
attrs="{'invisible':[('benefit_type','!=','family')]}"
|
||||
force_save="1"/>
|
||||
<field name="rent_start_date"
|
||||
attrs="{'invisible':[('benefit_type','!=','family')]}"
|
||||
force_save="1"/>
|
||||
<field name="rent_end_date"
|
||||
attrs="{'invisible':[('benefit_type','!=','family')]}"
|
||||
force_save="1"/>
|
||||
|
||||
<field name="rent_amount"
|
||||
attrs="{'invisible':[('benefit_type','!=','family')]}"
|
||||
force_save="1"/>
|
||||
<field name="rent_amount_payment"
|
||||
attrs="{'invisible':[('benefit_type','!=','family')]}"
|
||||
force_save="1"/>
|
||||
<field name="payment_type"
|
||||
attrs="{'invisible':[('benefit_type','!=','family')]}"
|
||||
force_save="1"/>
|
||||
<field name="rent_attachment" widget="many2many_attachment_preview"
|
||||
attrs="{'invisible':[('benefit_type','!=','family')]}"
|
||||
force_save="1"/>
|
||||
<!--Member Rent-->
|
||||
<field name="member_rent_contract_number"
|
||||
attrs="{'invisible':[('benefit_type','!=','member')]}"
|
||||
force_save="1"/>
|
||||
<field name="member_rent_start_date"
|
||||
attrs="{'invisible':[('benefit_type','!=','member')]}"
|
||||
force_save="1"/>
|
||||
<field name="member_rent_end_date"
|
||||
attrs="{'invisible':[('benefit_type','!=','member')]}"
|
||||
force_save="1"/>
|
||||
<field name="member_rent_attachment"
|
||||
widget="many2many_attachment_preview"
|
||||
attrs="{'invisible':[('benefit_type','!=','member')]}"
|
||||
force_save="1"/>
|
||||
</group>
|
||||
<group attrs="{'invisible':[('benefit_type','!=','family')]}">
|
||||
|
|
|
|||
Loading…
Reference in New Issue