diff --git a/odex25_benefit/odex_benefit/models/benefit.py b/odex25_benefit/odex_benefit/models/benefit.py
index 9ccc26cb7..004088da5 100644
--- a/odex25_benefit/odex_benefit/models/benefit.py
+++ b/odex25_benefit/odex_benefit/models/benefit.py
@@ -391,7 +391,7 @@ class GrantBenefitProfile(models.Model):
total_income = fields.Float('Total Income', compute="get_total_income", store=True)
benefit_member_count = fields.Integer(string="Members count", compute="get_members_count")
non_member_count = fields.Integer(string="Non Benefit Members count", compute="get_non_members_count")
- member_income = fields.Integer(string="Member Income Average", compute="get_member_income",store=True,tracking=True)
+ member_income = fields.Float(string="Member Income Average", compute="get_member_income",store=True,tracking=True)
request_activity_id = fields.Many2one('mail.activity')
state = fields.Selection([
('draft', 'Draft'),
@@ -646,6 +646,15 @@ class GrantBenefitProfile(models.Model):
)
current_rent_contract_id = fields.Many2one('rent.contract',string='Current Active Rent Contract',compute='_compute_current_rent_contract',store=True,)
notes = fields.Html(string='Notes', tracking=True)
+ color = fields.Integer(string="Color Index",related='benefit_category_id.color')
+ decoration_color = fields.Selection([
+ ('danger', 'Red'),
+ ('success', 'Green'),
+ ('warning', 'Orange'),
+ ('info', 'Blue'),
+ ('primary', 'Primary'),
+ ('muted', 'Muted'),
+ ], default='info',related='benefit_category_id.decoration_color')
_sql_constraints = [
('unique_code', "unique (code) WHERE state NOT IN ('draft', 'new')", 'This code already exists')
@@ -1617,7 +1626,7 @@ class GrantBenefitProfile(models.Model):
self.partner_id.send_sms_notification(message, self.phone)
for rec in self:
visits = self.env['visit.location'].search([('benefit_id', '=', rec.id),('state', 'not in', ['close', 'done'])])
- if rec.action_type == 'new' and not rec.benefit_category_id.is_benefit:
+ if not rec.benefit_category_id.is_benefit:
raise ValidationError(_("The procedure cannot be continued; the family is not a beneficiary."))
if rec.action_type == 'new' and visits:
raise ValidationError(_("Please complete your pending visits before proceeding."))
@@ -2301,14 +2310,16 @@ class GrantBenefitProfile(models.Model):
@api.depends('benefit_member_count','total_income','total_expenses')
def get_member_income(self):
for ben in self:
+ income = 0.0
family_income = ben.total_income - ben.total_expenses
if ben.benefit_member_count:
if ben.benefit_member_count > 3:
- ben.member_income = family_income / ben.benefit_member_count
+ income = family_income / ben.benefit_member_count
elif ben.benefit_member_count <= 3:
- ben.member_income = family_income / 3
+ income = family_income / 3
else:
- ben.member_income = family_income
+ income = family_income
+ ben.member_income = income
@api.depends("member_income")
def get_benefit_category(self):
diff --git a/odex25_benefit/odex_benefit/models/benefit_config.py b/odex25_benefit/odex_benefit/models/benefit_config.py
index ef046bf52..02f911940 100644
--- a/odex25_benefit/odex_benefit/models/benefit_config.py
+++ b/odex25_benefit/odex_benefit/models/benefit_config.py
@@ -29,6 +29,16 @@ class BenefitCategory(models.Model):
state = fields.Selection([('draft', 'Draft'),
('approve', 'Approved'),
('rejected', 'Rejected'), ], default='draft')
+ color = fields.Integer(string="Color Index", default=0)
+ decoration_color = fields.Selection([
+ ('danger', 'Red'),
+ ('success', 'Green'),
+ ('warning', 'Orange'),
+ ('info', 'Blue'),
+ ('primary', 'Primary'),
+ ('muted', 'Muted'),
+ ])
+
def get_benefits_total(self):
for rec in self:
@@ -754,6 +764,7 @@ class SuspendReason(models.Model):
need_service_manager_approval = fields.Boolean(
string="Needs Service Manager Approval"
)
+ check_all_members_non_benefit = fields.Boolean(string="Check All Members Non-Benefit",default=False)
class ReturnReason(models.Model):
_name = "return.reason"
@@ -1024,8 +1035,8 @@ class RentContract(models.Model):
('1', 'Yearly'),
('2', 'Half-yearly'),
('4', 'Quarterly'),
- ('5', 'Monthly'),
- ], string='Payment Type', required=True)
+ ('12', 'Monthly'),
+ ], string='Payment Type', required=True, default='2')
rent_amount = fields.Float(string='Rent Amount', required=True)
contract_attachment = fields.Many2many(
'ir.attachment', 'rent_contract_attachment_rel',
diff --git a/odex25_benefit/odex_benefit/models/service_request.py b/odex25_benefit/odex_benefit/models/service_request.py
index afc5390b6..bc1f11f08 100644
--- a/odex25_benefit/odex_benefit/models/service_request.py
+++ b/odex25_benefit/odex_benefit/models/service_request.py
@@ -437,14 +437,10 @@ class ServiceRequest(models.Model):
else:
rec.has_money_field_is_appearance = False
- @api.depends('family_id.mother_marital_conf', 'family_id.replacement_mother_marital_conf')
+ @api.depends('family_id.mother_marital_conf')
def _compute_is_orphan(self):
for rec in self:
- if not rec.family_id.add_replacement_mother:
- mother_dead = bool(getattr(rec.family_id.mother_marital_conf, 'is_dead', False))
- else:
- mother_dead = bool(getattr(rec.family_id.replacement_mother_marital_conf, 'is_dead', False))
- rec.is_orphan = mother_dead
+ rec.is_orphan = bool(getattr(rec.family_id.mother_marital_conf, 'is_dead', False))
def _expand_states(self, states, domain, order):
return [key for key, val in type(self).state.selection]
diff --git a/odex25_benefit/odex_benefit/views/benefit_config_view.xml b/odex25_benefit/odex_benefit/views/benefit_config_view.xml
index 43bdbe8ac..91bf5c5f3 100644
--- a/odex25_benefit/odex_benefit/views/benefit_config_view.xml
+++ b/odex25_benefit/odex_benefit/views/benefit_config_view.xml
@@ -41,7 +41,12 @@
-
+
+
+
+
+
+
@@ -918,6 +923,8 @@
attrs="{'invisible': [('is_stop_reason','=',False),('is_resume_reason','=',False)]}"/>
+
@@ -1530,7 +1537,7 @@
-
+
diff --git a/odex25_benefit/odex_benefit/views/benefit_view.xml b/odex25_benefit/odex_benefit/views/benefit_view.xml
index 4456a28a1..9fbe3ab74 100644
--- a/odex25_benefit/odex_benefit/views/benefit_view.xml
+++ b/odex25_benefit/odex_benefit/views/benefit_view.xml
@@ -435,16 +435,31 @@
+
+
+
-
-
+
@@ -39,7 +39,7 @@
-
+