From bf3ca182355ecd8671cfb5c438ad94be2e21d9c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= <9664676+pengyuthon@user.noreply.gitee.com> Date: Tue, 10 Mar 2026 12:02:06 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yuthon_catering/controllers/restaurant.py | 22 +++++++++++-------- .../models/inherit_room_booking.py | 17 +++++++++++++- 2 files changed, 29 insertions(+), 10 deletions(-) diff --git a/yuthon_catering/controllers/restaurant.py b/yuthon_catering/controllers/restaurant.py index d366a0f38..46bcca492 100644 --- a/yuthon_catering/controllers/restaurant.py +++ b/yuthon_catering/controllers/restaurant.py @@ -51,15 +51,19 @@ class RestaurantController(Controller): _logger.info(f'---当前获取数据--{user_id}---') _logger.info(f'---当前获取数据--{employee.id}---{employee.name}') menu_date = kwargs.get('menu_date', date.today()) - record = request.env['yuthon.catering'].create({ - 'date': menu_date, - 'employee_id': employee.id, - 'breakfast': kwargs.get('breakfast') == 'true', - 'lunch': kwargs.get('lunch') == 'true', - 'menu_day_id': kwargs.get('menu_id'), - 'state': 'confirmed' - }) - if record: + existing_record = request.env['yuthon.catering'].search([ + ('date', '=', menu_date), + ('employee_id', '=', employee.id) + ], limit=1) + if not existing_record: + record = request.env['yuthon.catering'].create({ + 'date': menu_date, + 'employee_id': employee.id, + 'breakfast': kwargs.get('breakfast') == 'true', + 'lunch': kwargs.get('lunch') == 'true', + 'menu_day_id': kwargs.get('menu_id'), + 'state': 'confirmed' + }) catering_data = { 'id': record.id, 'user_id': employee.user_id.id, diff --git a/yuthon_will_task/models/inherit_room_booking.py b/yuthon_will_task/models/inherit_room_booking.py index bf18ef0a9..6633e263d 100644 --- a/yuthon_will_task/models/inherit_room_booking.py +++ b/yuthon_will_task/models/inherit_room_booking.py @@ -28,11 +28,26 @@ class InheritRoomBooking(models.Model): task_time_ids = self.env['yuthon.task.time'].search([('name', '=', '30分钟')]) new_record = super(InheritRoomBooking, self).create(vals) employee_list = [] + user_list = [] if new_record.room_users_ids: + user_list.extend(new_record.room_users_ids.ids) for user_id in new_record.room_users_ids: if user_id.employee_id: employee_list.append(user_id.employee_id.id) + if new_record.recorder_ids: + employee_list.extend(new_record.recorder_ids.ids) + for emp in new_record.recorder_ids: + if emp.user_id: + user_list.append(emp.user_id.id) + + if new_record.host: + employee_list.append(new_record.host.id) + if new_record.host.user_id: + user_list.append(new_record.host.user_id.id) + employee_list = list(set(employee_list)) + user_list = list(set(user_list)) + def get_hour_selection(datetime_obj): if not datetime_obj: return None @@ -68,7 +83,7 @@ class InheritRoomBooking(models.Model): request_hour_to = get_hour_selection(new_record.stop_datetime) self.env['yuthon.will.task'].sudo().create({ 'name': new_record.name, - 'users_ids': [(6, 0, new_record.room_users_ids.ids)], + 'users_ids': [(6, 0, user_list)], 'employee_ids': [(6, 0, employee_list)], 'task_time_ids': [(6, 0, task_time_ids.ids)], 'start_date': start_date, From c61d51bdde311471daedbe4b28d6a8a67d540011 Mon Sep 17 00:00:00 2001 From: pengyuthon Date: Tue, 10 Mar 2026 12:09:50 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=B0=8F=E7=BA=A2=E7=82=B9=E5=88=B7?= =?UTF-8?q?=E6=96=B0=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sun_badge_menu/static/src/webclient/navbar/navbar.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sun_badge_menu/static/src/webclient/navbar/navbar.js b/sun_badge_menu/static/src/webclient/navbar/navbar.js index f7011b82d..2c587965e 100644 --- a/sun_badge_menu/static/src/webclient/navbar/navbar.js +++ b/sun_badge_menu/static/src/webclient/navbar/navbar.js @@ -5,7 +5,7 @@ import { patch } from "@web/core/utils/patch"; import { deepCopy } from "@web/core/utils/objects"; import { useService } from "@web/core/utils/hooks"; import { url } from "@web/core/utils/urls"; -// import { clickRefreshButton } from "../actions/client_actions" +import { clickRefreshButton } from "../actions/client_actions" const WKF_NOTIFY_TYPE = 'wkf_notify' From bf6f46fab5c9a7f46fadf588dabb78e9e82d0f60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= <9664676+pengyuthon@user.noreply.gitee.com> Date: Tue, 10 Mar 2026 12:09:52 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yuthon_will_task/models/inherit_room_booking.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/yuthon_will_task/models/inherit_room_booking.py b/yuthon_will_task/models/inherit_room_booking.py index 6633e263d..d746f52e2 100644 --- a/yuthon_will_task/models/inherit_room_booking.py +++ b/yuthon_will_task/models/inherit_room_booking.py @@ -81,7 +81,7 @@ class InheritRoomBooking(models.Model): start_date = start_datetime.date() request_hour_from = get_hour_selection(new_record.start_datetime) request_hour_to = get_hour_selection(new_record.stop_datetime) - self.env['yuthon.will.task'].sudo().create({ + task_id = self.env['yuthon.will.task'].sudo().create({ 'name': new_record.name, 'users_ids': [(6, 0, user_list)], 'employee_ids': [(6, 0, employee_list)], @@ -94,4 +94,5 @@ class InheritRoomBooking(models.Model): 'task_type': 'meet', 'task_state': 'will', }) + task_id._onchange_employee_ids() return new_record