This commit is contained in:
李鹏宇
2026-03-31 17:15:37 +08:00
@@ -73,10 +73,18 @@ class YuthonMedicalManage(models.Model):
], order='start_date desc', limit=1)
rule = valid_rules
# 基础额度计算(根据年龄递增规则)
id_card = employee.identification_id.strip() if employee.identification_id else ''
birth_str = id_card[6:14]
birth_date = datetime.strptime(birth_str, '%Y%m%d').date()
# 计算周岁(今天 - 出生日期)
today = fields.Date.today()
age = 0
if birth_date:
age = today.year - birth_date.year
base_quota = rule.base_amount
if employee.old >= rule.starting_age and rule.increase_interval_years > 0 and rule.increment_amount > 0:
exceed_age_years = employee.old - rule.starting_age
if age >= rule.starting_age and rule.increase_interval_years > 0 and rule.increment_amount > 0:
exceed_age_years = age - rule.starting_age
increment_times = exceed_age_years // rule.increase_interval_years
base_quota += rule.increment_amount * increment_times