IMP benefit
This commit is contained in:
parent
0b33f49cbb
commit
579c3a9387
|
|
@ -61,6 +61,7 @@
|
|||
'wizards/service_refuse_reason_wizard.xml',
|
||||
'wizards/reason_for_return_wizard.xml',
|
||||
'wizards/visit_location_otp_wizard_view.xml',
|
||||
'views/benefit_vehicle_model.xml',
|
||||
'views/actions_and_menus.xml',
|
||||
],
|
||||
'external_dependencies': {
|
||||
|
|
|
|||
|
|
@ -7924,6 +7924,7 @@ msgstr "الاجتماعات"
|
|||
#: model:ir.model.fields,field_description:odex_benefit.field_exception_wizard__member_id
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__member_ids
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_ir_attachment__member_id
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__member_id
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_member_disabilities__member_id
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_member_diseases__member_id
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_member_hobbies__member_id
|
||||
|
|
@ -8410,6 +8411,7 @@ msgstr "نهاية الوقت المعين للنشاط"
|
|||
#: model:ir.model.fields,field_description:odex_benefit.field_receive_food_surplus__name
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_res_city__name
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_res_country_city__name
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_benefit_vehicle_model__name
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_res_districts__name
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_rooms_categories__name
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_rooms_items__name
|
||||
|
|
@ -8427,6 +8429,7 @@ msgstr "نهاية الوقت المعين للنشاط"
|
|||
#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form
|
||||
#: model_terms:ir.ui.view,arch_db:odex_benefit.view_benefit_category_form
|
||||
#: model_terms:ir.ui.view,arch_db:odex_benefit.view_benefit_housing_form
|
||||
#: model_terms:ir.ui.view,arch_db:odex_benefit.benefit_vehicle_model_form_view
|
||||
msgid "Name"
|
||||
msgstr "الاسم"
|
||||
|
||||
|
|
@ -15148,4 +15151,49 @@ msgstr "هل لديه إعاقة؟"
|
|||
#. module: odex_benefit
|
||||
#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form
|
||||
msgid "Basic Information"
|
||||
msgstr "المعلومات الأساسية"
|
||||
msgstr "المعلومات الأساسية"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.actions.act_window,name:odex_benefit.benefit_vehicle_model_action
|
||||
#: model:ir.model,name:odex_benefit.model_benefit_vehicle_model
|
||||
#: model:ir.ui.menu,name:odex_benefit.benefit_vehicle_model_menu
|
||||
#: 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 "موديل المركبات"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: code:addons/odex_benefit/models/benefit_vehicle_model.py:0
|
||||
#: model:ir.model.constraint,message:odex_benefit.constraint_benefit_vehicle_model_name_unique
|
||||
#, python-format
|
||||
msgid "The name must be unique."
|
||||
msgstr "يجب أن يكون اسم الموديل فريداً."
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model_terms:ir.actions.act_window,help:odex_benefit.benefit_vehicle_model_action
|
||||
msgid "Create the First Vehicle Model"
|
||||
msgstr "إنشاء أول موديل للمركبات"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.ui.menu,name:odex_benefit.benefit_vehicle_model_settings_menu
|
||||
msgid "Vehicle Settings"
|
||||
msgstr "إعدادات المركبات"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__application_form
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__application_form_filename
|
||||
msgid "Application Form"
|
||||
msgstr "الاستمارة"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__driving_license
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__driving_license_filename
|
||||
msgid "Driving License"
|
||||
msgstr "رخصة القيادة"
|
||||
|
||||
#. module: odex_benefit
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__owner_identity
|
||||
#: model:ir.model.fields,field_description:odex_benefit.field_cars_line__owner_identity_filename
|
||||
msgid "Owner Identity"
|
||||
msgstr "هوية المالك"
|
||||
|
||||
|
|
|
|||
|
|
@ -36,4 +36,5 @@ from . import seasonal_service
|
|||
from . import res_users
|
||||
from . import res_partner
|
||||
from . import job_settings
|
||||
from . import death_reason_settings
|
||||
from . import death_reason_settings
|
||||
from . import benefit_vehicle_model
|
||||
|
|
@ -591,15 +591,22 @@ class Cars(models.Model):
|
|||
|
||||
name = fields.Char()
|
||||
benefit_id = fields.Many2one('grant.benefit')
|
||||
car_model = fields.Char()
|
||||
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
|
||||
image_1 = fields.Binary(string="", )
|
||||
image_2 = fields.Binary(string="", )
|
||||
image_3 = fields.Binary(string="", )
|
||||
|
||||
application_form = fields.Binary(string="Application Form", attachment=True)
|
||||
application_form_filename = fields.Char(string="Application Form")
|
||||
|
||||
driving_license = fields.Binary(string="Driving License", attachment=True)
|
||||
driving_license_filename = fields.Char(string="Driving License")
|
||||
|
||||
owner_identity = fields.Binary(string="Owner Identity", attachment=True)
|
||||
owner_identity_filename = fields.Char(string="Owner Identity")
|
||||
|
||||
|
||||
class TrainingType(models.Model):
|
||||
|
|
|
|||
|
|
@ -0,0 +1,14 @@
|
|||
from odoo import fields, models,api,_
|
||||
from odoo.exceptions import UserError, ValidationError
|
||||
|
||||
class BenefitVehicleModel(models.Model):
|
||||
_name = 'benefit.vehicle.model'
|
||||
_description = "Vehicle Model"
|
||||
_inherit = ['mail.thread', 'mail.activity.mixin']
|
||||
|
||||
name = fields.Char(string="Name", required=True, tracking=True)
|
||||
active = fields.Boolean(default=True)
|
||||
|
||||
_sql_constraints = [
|
||||
("name_unique", "unique(name)", _("The name must be unique.")),
|
||||
]
|
||||
|
|
@ -158,4 +158,5 @@ access_death_reason_settings,access_death_reason_settings,model_death_reason_set
|
|||
access_death_reason_settings_manager,access_death_reason_settings.manager,model_death_reason_settings,odex_benefit.group_benefit_manager,1,1,1,1
|
||||
access_grant_benefit_portal_user,access_grant_benefit_portal_user,model_grant_benefit,base.group_portal,1,1,1,1
|
||||
access_visit_location_otp_wizard,access_visit_location_otp_wizard,model_visit_location_otp_wizard,,1,1,1,1
|
||||
access_visit_skip_otp_wizard,access_visit_skip_otp_wizard,model_visit_skip_otp_wizard,,1,1,1,1
|
||||
access_visit_skip_otp_wizard,access_visit_skip_otp_wizard,model_visit_skip_otp_wizard,,1,1,1,1
|
||||
access_benefit_vehicle_model,access_benefit_vehicle_model,model_benefit_vehicle_model,,1,1,1,1
|
||||
|
|
|
@ -333,6 +333,15 @@
|
|||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window" id="benefit_vehicle_model_action">
|
||||
<field name="name">Vehicle Model</field>
|
||||
<field name="res_model">benefit.vehicle.model</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="help" type="html">
|
||||
<p class="oe_view_nocontent_create">Create the First Vehicle Model</p>
|
||||
</field>
|
||||
</record>
|
||||
<!-- Attachments Settings Action -->
|
||||
<record model="ir.actions.act_window" id="attachments_settings_action">
|
||||
<field name="name">Attachments Settings</field>
|
||||
|
|
@ -787,6 +796,9 @@
|
|||
<!-- <menuitem id="benefit_black_list_menu" name="Beneficiaries Black List" sequence="5"-->
|
||||
<!-- parent="benefit_main_menu" action="grant_benefit_black_list_action"/>-->
|
||||
<!--<===============================================================================>-->
|
||||
<!--benefit vehicle model-->
|
||||
<menuitem id="benefit_vehicle_model_settings_menu" name="Vehicle Settings" parent="odex_benefit.benefit_tools" sequence="4"/>
|
||||
<menuitem id='benefit_vehicle_model_menu' name='Vehicle Model' parent='benefit_vehicle_model_settings_menu' action="benefit_vehicle_model_action" sequence="1"/>
|
||||
<!--social search-->
|
||||
<!--اللجان-->
|
||||
<menuitem id="social_search_settings_menu" name="Social Search Settings" parent="odex_benefit.benefit_tools" sequence="4"/>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,44 @@
|
|||
<odoo>
|
||||
<data>
|
||||
<record id="benefit_vehicle_model_form_view" model="ir.ui.view">
|
||||
<field name="name">benefit.vehicle.model.form</field>
|
||||
<field name="model">benefit.vehicle.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Vehicle Model">
|
||||
<sheet>
|
||||
<div class="oe_title">
|
||||
<h1>
|
||||
<h1>
|
||||
<field placeholder="Name" name="name"/>
|
||||
</h1>
|
||||
</h1>
|
||||
</div>
|
||||
</sheet>
|
||||
<div class="oe_chatter">
|
||||
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
|
||||
<field name="activity_ids"/>
|
||||
<field name="message_ids" widget="mail_thread"/>
|
||||
</div>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
<record id="benefit_vehicle_model_tree" model="ir.ui.view">
|
||||
<field name="name">benefit.vehicle.model.tree</field>
|
||||
<field name="model">benefit.vehicle.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Vehicle Model">
|
||||
<field name="name"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
<record id="benefit_vehicle_model_search_view" model="ir.ui.view">
|
||||
<field name="name">benefit.vehicle.model.search</field>
|
||||
<field name="model">benefit.vehicle.model</field>
|
||||
<field name="arch" type="xml">
|
||||
<search>
|
||||
<field name="name"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
|
|
@ -741,7 +741,8 @@
|
|||
<field name="member_education_status_ids" mode="tree,form"/>
|
||||
</page>
|
||||
<page string="Attachments">
|
||||
<field name="attachment_ids" widget="one2many_list" mode="tree" options="{'no_open': True}">
|
||||
<field name="attachment_ids" widget="one2many_list" mode="tree"
|
||||
options="{'no_open': True}">
|
||||
<tree editable="bottom" delete="0">
|
||||
<field name="name" string="Attachment Name"
|
||||
attrs="{'readonly':[('is_default','=',True)]}"
|
||||
|
|
@ -788,7 +789,8 @@
|
|||
</field>
|
||||
</page>
|
||||
<page string="Attachments">
|
||||
<field name="attachment_ids" widget="one2many_list" mode="tree" options="{'no_open': True}"
|
||||
<field name="attachment_ids" widget="one2many_list" mode="tree"
|
||||
options="{'no_open': True}"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<tree editable="bottom" delete="0">
|
||||
<field name="name" attrs="{'readonly':[('is_default','=',True)]}"
|
||||
|
|
@ -917,81 +919,82 @@
|
|||
</form>
|
||||
</page>
|
||||
<page string="Family Loans">
|
||||
<group>
|
||||
<field name="family_debits_ids"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<form string="Family Loans">
|
||||
<sheet>
|
||||
<field name="family_debits_ids"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<form string="Family Loans">
|
||||
<sheet>
|
||||
<group>
|
||||
<group>
|
||||
<group>
|
||||
<field name="loan_giver" options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="loan_amount"/>
|
||||
<field name="number_of_installments"/>
|
||||
<field name="loan_total_paid"/>
|
||||
<field name="loan_remaining"/>
|
||||
<field name="monthly_installment"/>
|
||||
<field name="loan_attach"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="last_paid_amount"/>
|
||||
<field name="last_paid_amount_date"/>
|
||||
<field name="loan_reason" options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="description"/>
|
||||
<field name="benefit_id" invisible="1"/>
|
||||
<field name="loan_start_date"/>
|
||||
<field name="loan_end_date"/>
|
||||
</group>
|
||||
<field name="loan_giver"
|
||||
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="loan_amount"/>
|
||||
<field name="number_of_installments"/>
|
||||
<field name="loan_total_paid"/>
|
||||
<field name="loan_remaining"/>
|
||||
<field name="monthly_installment"/>
|
||||
<field name="loan_attach"/>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
<tree>
|
||||
<field name="loan_giver"/>
|
||||
<field name="loan_amount"/>
|
||||
<button name="action_accept" type="object" string="Accept"
|
||||
class="oe_highlight"
|
||||
attrs="{'invisible':[('state','=','accepted')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<button name="action_refuse" type="object" string="Refuse"
|
||||
class="oe_highlight" attrs="{'invisible':[('state','=','refused')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<field name="state" readonly="1" force_save="1" widget="badge"
|
||||
decoration-success="state in ['accepted']"
|
||||
decoration-danger="state in ['refused']"/>
|
||||
</tree>
|
||||
</field>
|
||||
</group>
|
||||
<group>
|
||||
<field name="last_paid_amount"/>
|
||||
<field name="last_paid_amount_date"/>
|
||||
<field name="loan_reason"
|
||||
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="description"/>
|
||||
<field name="benefit_id" invisible="1"/>
|
||||
<field name="loan_start_date"/>
|
||||
<field name="loan_end_date"/>
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
<tree>
|
||||
<field name="loan_giver"/>
|
||||
<field name="loan_amount"/>
|
||||
<button name="action_accept" type="object" string="Accept"
|
||||
class="oe_highlight"
|
||||
attrs="{'invisible':[('state','=','accepted')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<button name="action_refuse" type="object" string="Refuse"
|
||||
class="oe_highlight" attrs="{'invisible':[('state','=','refused')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<field name="state" readonly="1" force_save="1" widget="badge"
|
||||
decoration-success="state in ['accepted']"
|
||||
decoration-danger="state in ['refused']"/>
|
||||
</tree>
|
||||
</field>
|
||||
</page>
|
||||
<page string="expenses">
|
||||
<group>
|
||||
<field name="expenses_ids"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<tree editable="top">
|
||||
<field name="benefit_id" invisible="1"/>
|
||||
<field name="expenses_type" invisible="1"/>
|
||||
<field name="expenses_type_custom" options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="note"/>
|
||||
<field name="amount" sum="amount"/>
|
||||
<button name="action_accept" type="object" string="Accept"
|
||||
class="oe_highlight"
|
||||
attrs="{'invisible':[('state','=','accepted')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<button name="action_refuse" type="object" string="Refuse"
|
||||
class="oe_highlight" attrs="{'invisible':[('state','=','refused')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<field name="state" readonly="1" force_save="1" widget="badge"
|
||||
decoration-warning="state in ['waiting']"
|
||||
decoration-success="state in ['accepted']"
|
||||
decoration-danger="state in ['refused']"/>
|
||||
</tree>
|
||||
</field>
|
||||
</group>
|
||||
<field name="expenses_ids"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<tree editable="top">
|
||||
<field name="benefit_id" invisible="1"/>
|
||||
<field name="expenses_type" invisible="1"/>
|
||||
<field name="expenses_type_custom"
|
||||
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="note"/>
|
||||
<field name="amount" sum="amount"/>
|
||||
<button name="action_accept" type="object" string="Accept"
|
||||
class="oe_highlight"
|
||||
attrs="{'invisible':[('state','=','accepted')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<button name="action_refuse" type="object" string="Refuse"
|
||||
class="oe_highlight" attrs="{'invisible':[('state','=','refused')]}"
|
||||
groups="odex_benefit.group_accept_income_and_expenses"/>
|
||||
<field name="state" readonly="1" force_save="1" widget="badge"
|
||||
decoration-warning="state in ['waiting']"
|
||||
decoration-success="state in ['accepted']"
|
||||
decoration-danger="state in ['refused']"/>
|
||||
</tree>
|
||||
</field>
|
||||
</page>
|
||||
<page string="Income and salary">
|
||||
<field name="salary_ids" context="{'default_state': 'accepted'}" mode="tree" options="{'no_open': True}"
|
||||
<field name="salary_ids" context="{'default_state': 'accepted'}" mode="tree"
|
||||
options="{'no_open': True}"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<tree editable="bottom" delete="0">
|
||||
<field name="benefit_id" invisible="1"/>
|
||||
<field name="income_type" options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="income_type"
|
||||
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="salary_amount"/>
|
||||
<field name="salary_attach" widget="many2many_attachment_preview"/>
|
||||
<field name="attach_start_date"/>
|
||||
|
|
@ -1186,7 +1189,8 @@
|
|||
>
|
||||
<group>
|
||||
<group>
|
||||
<field name="suspend_reason" options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="suspend_reason"
|
||||
options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="suspend_description"/>
|
||||
</group>
|
||||
<group>
|
||||
|
|
@ -1220,20 +1224,22 @@
|
|||
</group>
|
||||
</page>
|
||||
<page string="Family Cars">
|
||||
<group>
|
||||
<field name="car_ids"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<tree editable="bottom">
|
||||
<field name="benefit_id" invisible="1"/>
|
||||
<field name="name"/>
|
||||
<field name="car_model"/>
|
||||
<field name="status"/>
|
||||
<field name="image_1"/>
|
||||
<field name="image_2"/>
|
||||
<field name="image_3"/>
|
||||
</tree>
|
||||
</field>
|
||||
</group>
|
||||
<field name="car_ids"
|
||||
attrs="{'readonly':[('state','not in',['draft','new','complete_info'])]}">
|
||||
<tree editable="bottom">
|
||||
<field name="benefit_id" invisible="1"/>
|
||||
<field name="member_id" options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="name"/>
|
||||
<field name="car_model" options="{'no_create': True, 'no_create_edit': True,'no_quick_create': True, 'no_open': True}"/>
|
||||
<field name="status"/>
|
||||
<field name="application_form" widget="binary" filename="application_form_filename"/>
|
||||
<field name="application_form_filename" invisible="1"/>
|
||||
<field name="driving_license" widget="binary" filename="driving_license_filename"/>
|
||||
<field name="driving_license_filename" invisible="1"/>
|
||||
<field name="owner_identity" widget="binary" filename="owner_identity_filename"/>
|
||||
<field name="owner_identity_filename" invisible="1"/>
|
||||
</tree>
|
||||
</field>
|
||||
</page>
|
||||
<page string="Configuration" groups="odex_benefit.group_benefit_manager" invisible="1">
|
||||
<!-- <group col="4">-->
|
||||
|
|
|
|||
Loading…
Reference in New Issue