diff --git a/room/models/room_booking.py b/room/models/room_booking.py
index ff103cc26..e7d4a8b4b 100644
--- a/room/models/room_booking.py
+++ b/room/models/room_booking.py
@@ -89,17 +89,19 @@ class RoomBooking(models.Model):
def compute_room_users_ids(self):
users_role_list = department_users_list = []
# 部门人员
- for depart in self.department_ids:
- department_users_data = self.env['hr.employee'].search([('department_id', '=', depart.id.origin)])
- department_users_list = [de.user_id.id for de in department_users_data]
+ if self.department_ids:
+ for depart in self.department_ids:
+ department_users_data = self.env['hr.employee'].search([('department_id', '=', depart.id.origin)])
+ department_users_list = [de.user_id.id for de in department_users_data]
# 人员
employee_users_list = self.employee_ids.user_id.ids
# 角色人员
- for user_id in self.users_role_ids:
- department_users_data = self.env['hr.employee'].search([('user_role_id', '=', user_id.id)])
- users_role_list = [ro.user_id.id for ro in department_users_data]
+ if self.users_role_ids:
+ for user_id in self.users_role_ids:
+ department_users_data = self.env['hr.employee'].search([('user_role_id', '=', user_id.id.origin)])
+ users_role_list = [ro.user_id.id for ro in department_users_data]
publish_user_list = department_users_list + employee_users_list + users_role_list
- self.room_users_ids = [(6, 0, publish_user_list)]
+ self.room_users_ids = [(6, 0, list(set(publish_user_list)))]
def meet_notice(self):
if self.is_notice:
diff --git a/yuthon_hr_employee/models/yuthon_hr_department.py b/yuthon_hr_employee/models/yuthon_hr_department.py
index a34c73e9c..290ea8497 100644
--- a/yuthon_hr_employee/models/yuthon_hr_department.py
+++ b/yuthon_hr_employee/models/yuthon_hr_department.py
@@ -14,4 +14,14 @@ class YuthonHrDepartment(models.Model):
is_global_department = fields.Boolean(string="是否全局部门")
create_time = fields.Datetime(string="创建时间", default=fields.Datetime.now)
end_time = fields.Datetime(string="结束时间")
- department_code = fields.Char(string="部门序号")
+ department_code = fields.Char(string="部门序号", store=True)
+
+ @api.onchange('department_code', 'parent_id')
+ def _onchange_department_code(self):
+ """
+ 序号应该计算,级联修改和删除。后期再优化
+ :return:
+ """
+ for code in self:
+ if code.parent_id:
+ code.department_code = code.parent_id.department_code + code.department_code
\ No newline at end of file
diff --git a/yuthon_hr_employee/views/yuthon_hr_department_views.xml b/yuthon_hr_employee/views/yuthon_hr_department_views.xml
index 8f2c8fd4e..f1ab1fcca 100644
--- a/yuthon_hr_employee/views/yuthon_hr_department_views.xml
+++ b/yuthon_hr_employee/views/yuthon_hr_department_views.xml
@@ -1,5 +1,9 @@
+
+ tree,kanban,hierarchy,form
+
+
yuthon.hr.department.inherit
hr.department
@@ -21,4 +25,5 @@
+
\ No newline at end of file
diff --git a/yuthon_hr_employee/views/yuthon_hr_employee_views.xml b/yuthon_hr_employee/views/yuthon_hr_employee_views.xml
index 5f8c07127..edcf82b76 100644
--- a/yuthon_hr_employee/views/yuthon_hr_employee_views.xml
+++ b/yuthon_hr_employee/views/yuthon_hr_employee_views.xml
@@ -242,4 +242,9 @@
code
action = model.action_hr_employee()
+
+
+ tree,kanban,form,activity,graph,pivot,hierarchy
+
+
\ No newline at end of file