会议同步日程
This commit is contained in:
+26
-11
@@ -305,22 +305,37 @@ class RoomBooking(models.Model):
|
||||
|
||||
@api.model_create_multi
|
||||
def create(self, vals_list):
|
||||
for vals in vals_list:
|
||||
bookings = super().create(vals_list)
|
||||
for booking in bookings:
|
||||
# 提取参会人员ID列表
|
||||
room_users_ids = []
|
||||
if booking.room_users_ids:
|
||||
room_users_ids = booking.room_users_ids.ids
|
||||
|
||||
# 提取当前经办人ID列表
|
||||
self_users_ids = []
|
||||
if booking.self_users_ids:
|
||||
self_users_ids = booking.self_users_ids.ids
|
||||
|
||||
# 根据参会人员查找对应的员工
|
||||
employee_records = self.env['hr.employee']
|
||||
if room_users_ids:
|
||||
employee_records = self.env['hr.employee'].search([('user_id', 'in', room_users_ids)])
|
||||
|
||||
self.env['yuthon.will.task'].create({
|
||||
'name': vals['name'],
|
||||
'start_date': datetime.strptime(vals['start_datetime'], '%Y-%m-%d %H:%M:%S').date(),
|
||||
'name': booking.name,
|
||||
'start_date': booking.start_datetime.date(),
|
||||
'task_type': 'meet',
|
||||
'priority': 'important',
|
||||
'room_booking_id': self.id,
|
||||
'employee_ids': [
|
||||
(6, 0, self.env['hr.employee'].search([('user_id', 'in', vals['room_users_ids'])]).ids)],
|
||||
'room_booking_id': booking.id,
|
||||
'employee_ids': [(6, 0, employee_records.ids)],
|
||||
'task_state': 'will',
|
||||
'address': self.env['room.room'].browse(vals['room_id']).name,
|
||||
'remarks': vals.get('meeting_data', ''),
|
||||
'users_ids': [(6, 0, vals['room_users_ids'])],
|
||||
'self_users_ids': [(6, 0, vals['self_users_ids'])],
|
||||
'address': booking.room_id.name if booking.room_id else '',
|
||||
'remarks': booking.meeting_data or '',
|
||||
'users_ids': [(6, 0, room_users_ids)],
|
||||
'self_users_ids': [(6, 0, self_users_ids)],
|
||||
})
|
||||
return super().create(vals_list)
|
||||
return bookings
|
||||
|
||||
# @api.model
|
||||
# def create(self, vals):
|
||||
|
||||
Reference in New Issue
Block a user