Merge pull request #5786 from expsa/you_dev_odex25_benefit

You dev odex25 benefit
This commit is contained in:
kchyounes19 2025-12-22 10:43:24 +01:00 committed by GitHub
commit 24e02787e4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 68 additions and 11 deletions

View File

@ -2789,7 +2789,7 @@ msgstr ""
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__car_model
msgid "Car Model"
msgstr "موديل السيارة"
msgstr "نوع السيارة"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_education_status__case_study
@ -8344,7 +8344,6 @@ msgstr "نهاية الوقت المعين للنشاط"
#: model:ir.model.fields,field_description:odex_benefit.field_benefits_needs__city_name
#: model:ir.model.fields,field_description:odex_benefit.field_benefits_needs__name
#: model:ir.model.fields,field_description:odex_benefit.field_benefits_representative__name
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__name
#: model:ir.model.fields,field_description:odex_benefit.field_changes_requests__name
#: model:ir.model.fields,field_description:odex_benefit.field_cloth_size__name
#: model:ir.model.fields,field_description:odex_benefit.field_cloth_type__name
@ -8415,6 +8414,11 @@ msgstr "نهاية الوقت المعين للنشاط"
msgid "Name"
msgstr "الاسم"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__name
msgid "Name"
msgstr "موديل السيارة"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_education_status__name
msgid "Sequence"
@ -15149,7 +15153,7 @@ msgstr "المعلومات الأساسية"
#: model_terms:ir.ui.view,arch_db:odex_benefit.benefit_vehicle_model_form_view
#: model_terms:ir.ui.view,arch_db:odex_benefit.benefit_vehicle_model_tree
msgid "Vehicle Model"
msgstr "موديل المركبات"
msgstr "أنواع السيارات"
#. module: odex_benefit
#: code:addons/odex_benefit/models/benefit_vehicle_model.py:0
@ -15161,7 +15165,7 @@ msgstr "يجب أن يكون اسم الموديل فريداً."
#. module: odex_benefit
#: model_terms:ir.actions.act_window,help:odex_benefit.benefit_vehicle_model_action
msgid "Create the First Vehicle Model"
msgstr "إنشاء أول موديل للمركبات"
msgstr "إنشاء أول نوع للسيارات"
#. module: odex_benefit
#: model:ir.ui.menu,name:odex_benefit.benefit_vehicle_model_settings_menu
@ -16697,7 +16701,7 @@ msgstr "بيانات السيارة"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__car_name
msgid "Car Name"
msgstr "اسم السيارة"
msgstr "موديل السيارة"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__car_owner_id
@ -16707,7 +16711,7 @@ msgstr "اسم المالك"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__car_model_id
msgid "Car model"
msgstr "موديل السيارة"
msgstr "نوع السيارة"
#. module: odex_benefit
#: model:ir.model.fields.selection,name:odex_benefit.selection__services_settings__max_limit_type__none
@ -17879,7 +17883,25 @@ msgstr "لم يتم العثور على سجل الفرد."
msgid "Reason for return"
msgstr "سبب الإعادة"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__is_driver_family_member
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__is_driver_family_member
msgid "Is Driver Family Member?"
msgstr "هل السائق من أفراد الأسرة؟"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__driver_name
#: model:ir.model.fields,field_description:odex_benefit.field_service_request__driver_name
msgid "Driver Name"
msgstr "اسم السائق"
#. module: odex_benefit
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__purchased_by_association
msgid "Purchased by the Association?"
msgstr "تم الشراء من قبل الجمعية؟"
#. module: odex_benefit
#: model:ir.model.fields,help:odex_benefit.field_cars_line__purchased_by_association
msgid "Indicates whether the car was purchased by the association"
msgstr "يشير إلى ما إذا تم شراء السيارة من قبل الجمعية"

View File

@ -600,19 +600,32 @@ class Cars(models.Model):
name = fields.Char()
benefit_id = fields.Many2one('grant.benefit')
is_driver_family_member = fields.Boolean(string="Is Driver Family Member?", default=True)
driver_name = fields.Char(string="Driver Name")
member_id = fields.Many2one('family.member',domain="[('benefit_id','=',benefit_id)]", string="Member")
car_model = fields.Many2one('benefit.vehicle.model', ondelete='restrict')
status = fields.Selection(
string='',
selection=[('good', 'Good'),
('bad', 'bad'), ],
required=False, ) # TODO
required=False,default='good' ) # TODO
purchased_by_association = fields.Boolean(
string="Purchased by the Association?",
default=False,
help="Indicates whether the car was purchased by the association"
)
application_form = fields.Many2many('ir.attachment','cars_application_form_rel', 'cars_id','attachment_id',string="Application Form")
driving_license = fields.Many2many('ir.attachment','cars_driving_license_rel','cars_id','attachment_id',string="Driving License")
owner_identity = fields.Many2many('ir.attachment','cars_owner_identity_rel','cars_id', 'attachment_id',string="Owner Identity")
@api.onchange('is_driver_family_member')
def _onchange_is_driver_family_member(self):
for rec in self:
if rec.is_driver_family_member:
rec.driver_name = False
else:
rec.member_id = False
class TrainingType(models.Model):
_name = 'training.type'

View File

@ -194,6 +194,8 @@ class ServiceRequest(models.Model):
string="Driving License")
owner_identity = fields.Many2many('ir.attachment', 'request_owner_identity_rel', 'request_id', 'attachment_id',
string="Owner Identity")
is_driver_family_member = fields.Boolean(string="Is Driver Family Member?", default=True)
driver_name = fields.Char(string="Driver Name")
seasonal_service_id = fields.Many2one('seasonal.service', string='Seasonal Service', ondelete='cascade')
is_seasonal = fields.Boolean(string='Is Seasonal Service?', related='service_cat.is_seasonal_service')
is_in_kind = fields.Boolean(string="In Kind", default=False)
@ -251,6 +253,14 @@ class ServiceRequest(models.Model):
</div>
"""
@api.onchange('is_driver_family_member')
def _onchange_is_driver_family_member(self):
for rec in self:
if rec.is_driver_family_member:
rec.driver_name = False
else:
rec.car_owner_id = False
def _build_info_table(self, title, rows):
field_name_label = _("Field Name")
value_label = _("Value")
@ -632,6 +642,9 @@ class ServiceRequest(models.Model):
'name': rec.car_name,
'member_id': rec.car_owner_id.id,
'car_model': rec.car_model_id.id,
'is_driver_family_member': rec.is_driver_family_member,
'driver_name': rec.driver_name,
'purchased_by_association': True,
}
car = self.env['cars.line'].create(car_vals)
if rec.application_form:

View File

@ -1819,7 +1819,7 @@
</group>
</group>
<group string="Resume">
<group >
<group>
<field name="resume_reason_id"
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
<field name="resume_date"/>
@ -1858,8 +1858,12 @@
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
<tree editable="bottom">
<field name="benefit_id" invisible="1"/>
<field name="member_id" required="1"
<field name="is_driver_family_member" widget="boolean_toggle"/>
<field name="member_id" force_save="1"
attrs="{'readonly': [('is_driver_family_member', '=', False)], 'required': [('is_driver_family_member', '=', True)]}"
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
<field name="driver_name" force_save="1"
attrs="{'readonly': [('is_driver_family_member', '=', True)], 'required': [('is_driver_family_member', '=', False)]}"/>
<field name="name" required="1"/>
<field name="car_model" required="1"
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
@ -1867,6 +1871,7 @@
<field name="application_form" widget="many2many_attachment_preview"/>
<field name="driving_license" widget="many2many_attachment_preview"/>
<field name="owner_identity" widget="many2many_attachment_preview"/>
<field name="purchased_by_association" widget="boolean_toggle" readonly="1"/>
</tree>
</field>
</page>

View File

@ -433,8 +433,12 @@
<page string="Car Information" attrs="{'invisible':[('service_type', '!=', 'buy_car')]}">
<group>
<group>
<field name="is_driver_family_member" widget="boolean_toggle"/>
<field name="driver_name"
attrs="{'invisible': [('is_driver_family_member', '=', True)], 'required': [('is_driver_family_member', '=', False)]}"/>
<field name="car_owner_id"
attrs="{'invisible': [('is_driver_family_member', '=', False)], 'required': [('is_driver_family_member', '=', True)]}"/>
<field name="car_name"/>
<field name="car_owner_id"/>
<field name="car_model_id"/>
</group>
<group>