From a0a86fe66cb969c1a7d6c45fbe5b6d97159894a7 Mon Sep 17 00:00:00 2001 From: XuanHuyen Date: Wed, 2 Apr 2025 15:39:01 +0700 Subject: [PATCH] workflow model student --- academy_management/models/academy_student.py | 13 ++++++++++++- academy_management/views/academy_student_views.xml | 7 +++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/academy_management/models/academy_student.py b/academy_management/models/academy_student.py index 4dbc704..d5408b6 100644 --- a/academy_management/models/academy_student.py +++ b/academy_management/models/academy_student.py @@ -10,6 +10,11 @@ class AcademyStudent(models.Model): email = fields.Char(string='Email') phone = fields.Char(string='Số điện thoại') course_ids = fields.Many2many('academy.course', string='Các khóa học học sinh đăng ký') + state = fields.Selection([ + ('draft', 'Mới đăng ký'), + ('confirmed', 'Đã xác nhận'), + ('graduated', 'Đã tốt nghiệp'), + ], string='Trạng thái', default='draft') _sql_constraints = [( 'code_unique', @@ -22,4 +27,10 @@ class AcademyStudent(models.Model): for vals in vals_list: if vals.get('code', _(' ')) == _(' '): vals['code'] = self.env['ir.sequence'].next_by_code('academy.student') or 'HS001' - return super().create(vals_list) \ No newline at end of file + return super().create(vals_list) + + def action_confirm(self): + self.state = 'confirmed' + + def action_graduate(self): + self.state = 'graduated' diff --git a/academy_management/views/academy_student_views.xml b/academy_management/views/academy_student_views.xml index dcfff9a..be8641b 100644 --- a/academy_management/views/academy_student_views.xml +++ b/academy_management/views/academy_student_views.xml @@ -6,6 +6,13 @@ academy.student
+
+