diff --git a/room/models/room_booking.py b/room/models/room_booking.py index 765a2280c..e0185e2c3 100644 --- a/room/models/room_booking.py +++ b/room/models/room_booking.py @@ -97,22 +97,22 @@ class RoomBooking(models.Model): self.room_users_ids = [(5, 0, 0)] self.host = False - @api.model_create_multi - def create(self, vals_list): - bookings = super(RoomBooking, self).create(vals_list) - for room, bookings in bookings.grouped("room_id").items(): - room._notify_booking_view("create", bookings) - data = vals_list[0] - if data.get('partner_ids'): - self.env['calendar.event'].create({ - 'name': data['name'], - 'start': data['start_datetime'], - 'stop': data['stop_datetime'], - 'partner_ids': data['partner_ids'], - 'sth_type': 'meet', - 'room_booking_id': bookings.id, - }) - return bookings + # @api.model_create_multi + # def create(self, vals_list): + # bookings = super(RoomBooking, self).create(vals_list) + # for room, bookings in bookings.grouped("room_id").items(): + # room._notify_booking_view("create", bookings) + # data = vals_list[0] + # if data.get('partner_ids'): + # self.env['calendar.event'].create({ + # 'name': data['name'], + # 'start': data['start_datetime'], + # 'stop': data['stop_datetime'], + # 'partner_ids': data['partner_ids'], + # 'sth_type': 'meet', + # 'room_booking_id': bookings.id, + # }) + # return bookings @api.onchange('room_id') def onchange_meeting_data(self): diff --git a/soong_workflow/models/soong_workflow_mixin.py b/soong_workflow/models/soong_workflow_mixin.py index 755a4ec4e..362393236 100644 --- a/soong_workflow/models/soong_workflow_mixin.py +++ b/soong_workflow/models/soong_workflow_mixin.py @@ -110,15 +110,15 @@ class SoongWorkflowMixin(models.AbstractModel): next_log = all_sorted_logs[current_log_index + 1] if next_log.approval_state == "0": record.is_back = True - if record._name in ['yuthon.official.incoming.normal', 'yuthon.sub.enterprises']: - current_user_in_logs2 = any(log.done_by.id == self.env.uid for log in record.log_ids2) - organizer_user_in_logs = any(log.done_by.id == self.env.user.id for log in record.log_ids.filtered(lambda l: l.name == '承办')) - all_handling_logs_approval_0 = all(log.approval_state == '0' for log in record.log_ids.filtered(lambda l: l.name == '承办')) - all_logs2_approval_0 = all(log.approval_state == '0' for log in record.log_ids2) - if all_logs2_approval_0 and all_handling_logs_approval_0 and not current_user_in_logs2 and not organizer_user_in_logs: - record.is_back = True - else: - record.is_back = False + if record._name in ['yuthon.official.incoming.normal', 'yuthon.sub.enterprises']: + current_user_in_logs2 = any(log.done_by.id == self.env.uid for log in record.log_ids2) + organizer_user_in_logs = any(log.done_by.id == self.env.user.id for log in record.log_ids.filtered(lambda l: l.name == '承办')) + all_handling_logs_approval_0 = all(log.approval_state == '0' for log in record.log_ids.filtered(lambda l: l.name == '承办')) + all_logs2_approval_0 = all(log.approval_state == '0' for log in record.log_ids2) + if all_logs2_approval_0 and all_handling_logs_approval_0 and not current_user_in_logs2 and not organizer_user_in_logs: + record.is_back = True + else: + record.is_back = False def _compute_is_active(self): current_user_id = self.env.user.id diff --git a/soong_workflow/views/soong_workflow_record.xml b/soong_workflow/views/soong_workflow_record.xml index d05c9d68f..6f11673be 100644 --- a/soong_workflow/views/soong_workflow_record.xml +++ b/soong_workflow/views/soong_workflow_record.xml @@ -17,21 +17,26 @@ - - + + - + - - - - - - - + + + + + + + @@ -57,16 +62,17 @@ - + - - + + - + @@ -81,13 +87,16 @@ decoration-danger="approve_state == 'end'" delete="false" create="false" default_order="write_date2 desc, id desc" expand="1" limit="10">
-
- + - + @@ -104,10 +113,13 @@ -