This commit is contained in:
李鹏宇
2025-05-03 10:30:22 +08:00
parent 2e60e666b2
commit 3307ea6bde
10 changed files with 17 additions and 65 deletions
+7
View File
@@ -36,6 +36,7 @@ class RoomBooking(models.Model):
required=True)
meeting_type_id = fields.Many2one('room.meeting.type', string="会议类型")
room_users_ids = fields.Many2many('res.users', string="出席人员")
room_users_names = fields.Char(string="出席人员char", compute="_compute_room_users", store=True)
other_company_id = fields.Many2one('res.partner', string="外部公司")
host = fields.Many2one('res.users', string="主持人")
stationed_group = fields.Boolean(string="驻组参会")
@@ -55,6 +56,12 @@ class RoomBooking(models.Model):
# 关联流程
relevancy_type = fields.Selection([('none', '无')], string="关联流程类型")
@api.depends('room_users_ids')
def _compute_room_users(self):
for i in self:
employee_list = [rec.name for rec in i.room_users_ids]
i.room_users_names = ','.join(employee_list)
@api.onchange('meeting_type_id')
def _onchange_meeting_type_id(self):
if self.meeting_type_id:
+4 -10
View File
@@ -32,6 +32,8 @@
string="Bookings"
plan="0">
<templates>
<field name="name"/>
<field name="room_users_names"/>
<div t-name="gantt-popover">
<div class="o_gantt_popover">
<ul class="ps-1 mb-0 list-unstyled">
@@ -44,18 +46,10 @@
<i class="fa fa-long-arrow-right" title="Until"/>
<t t-out="stop_datetime.toFormat(' f')"/>
</li>
<li>
<li>
<strong>参会人员:</strong>
<t t-out="room_users_names"/>
</li>
<li class="o_gantt_popover_content_item mt-2">
<strong>出席人员:</strong>
<t t-if="room_users_ids">
<t t-foreach="room_users_ids" t-as="user">
<t t-if="!loop.first">, </t>
<t t-out="user[1]"/>
</t>
</t>
</li>
</ul>
</div>
</div>
+1 -2
View File
@@ -1,2 +1 @@
from . import models
from . import wizard
from . import models
-1
View File
@@ -15,7 +15,6 @@
'views/yuthon_will_task_views.xml',
'views/yuthon_task_time_views.xml',
'views/yuthon_task_menu.xml',
'wizard/task_room_wizard.xml',
],
'assets': {
'web.assets_backend': [
@@ -1,7 +1,6 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_yuthon_task_time,yuthon_task_time,model_yuthon_task_time,yuthon_will_task.group_yuthon_will_task_user,1,1,1,1
access_yuthon_will_task,yuthon_will_task,model_yuthon_will_task,yuthon_will_task.group_yuthon_will_task_user,1,1,1,1
access_task_room_wizard,task_room_wizard,model_task_room_wizard,yuthon_will_task.group_yuthon_will_task_user,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_yuthon_task_time yuthon_task_time model_yuthon_task_time yuthon_will_task.group_yuthon_will_task_user 1 1 1 1
3 access_yuthon_will_task yuthon_will_task model_yuthon_will_task yuthon_will_task.group_yuthon_will_task_user 1 1 1 1
access_task_room_wizard task_room_wizard model_task_room_wizard yuthon_will_task.group_yuthon_will_task_user 1 1 1 1
4
5
6
@@ -5,11 +5,11 @@
<field name="name">日程组</field>
</record>
<record id="group_yuthon_will_task_user" model="res.groups">
<field name="name">日程用户</field>
<field name="name">日程-用户</field>
<field name="category_id" ref="module_yuthon_will_task"/>
</record>
<record id="group_yuthon_will_task_leader" model="res.groups">
<field name="name">日程组管理员</field>
<field name="name">日程-管理员</field>
<field name="category_id" ref="module_yuthon_will_task"/>
<field name="implied_ids" eval="[(4, ref('group_yuthon_will_task_user'))]"/>
</record>
@@ -10,12 +10,12 @@ export class CustomTaskListController extends ListController {
openTaskForm() {
this.actionService.doAction({
type: 'ir.actions.act_window',
res_model: 'task.room.wizard',
res_model: 'yuthon.will.task',
name: '日程会议',
view_mode: 'form',
view_type: 'form',
views: [[false, 'form']],
target: 'new',
target: 'current',
context: {},
});
}
@@ -27,7 +27,7 @@ export class CustomTaskListController extends ListController {
view_mode: 'form',
view_type: 'form',
views: [[false, 'form']],
target: 'new',
target: 'current',
context: {},
});
}
-1
View File
@@ -1 +0,0 @@
from . import task_room_wizard
@@ -1,25 +0,0 @@
from odoo import api, fields, models
class TaskRoomWizard(models.Model):
_name = 'task.room.wizard'
_description = '安排日程会议弹窗'
def create_will_task(self):
form_id = self.env.ref('yuthon_will_task.view_yuthon_will_task_form').id
return {
"type": "ir.actions.act_window",
"name": "日程安排",
"res_model": "yuthon.will.task",
"views": [[form_id, "form"]],
}
def create_room(self):
form_id = self.env.ref('room.room_booking_view_form').id
return {
"type": "ir.actions.act_window",
"name": "会议安排",
"res_model": "room.booking",
"views": [[form_id, "form"]],
}
@@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_task_room_wizard" model="ir.ui.view">
<field name="name">安排日程会议</field>
<field name="model">task.room.wizard</field>
<field name="arch" type="xml">
<form string="安排日程会议">
<group col="2">
<group>
<button name="create_will_task" type="object" string="日程" class="btn btn-primary button_width"/>
</group>
<group>
<button name="create_room" type="object" string="会议" class="btn btn-primary button_width"/>
</group>
</group>
<footer/>
</form>
</field>
</record>
</odoo>