From 06119d711a6b8a613e37c8368b076efcb52cb3e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= Date: Thu, 8 Jan 2026 18:06:25 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yuthon_base/models/ir_model.py | 13 ++++++++- yuthon_base/security/ir.model.access.csv | 1 + yuthon_base/views/ir_cron_act_views.xml | 29 +++++++++++++++++++ ...roperty_lease_contract_print_templates.xml | 12 ++++---- 4 files changed, 49 insertions(+), 6 deletions(-) diff --git a/yuthon_base/models/ir_model.py b/yuthon_base/models/ir_model.py index 901d73965..e6a557ab8 100644 --- a/yuthon_base/models/ir_model.py +++ b/yuthon_base/models/ir_model.py @@ -1,5 +1,5 @@ from odoo import fields, models, api - +from odoo import api, fields, models class IrModelFields(models.Model): _inherit = 'ir.model.fields' @@ -9,3 +9,14 @@ class IrModelFields(models.Model): return name.startswith('x_') or name.endswith('_pinyin') +class UsersHomeBatchWizard(models.TransientModel): + _name = "users.home.batch.wizard" + _description = "Batch Update User Home" + + + user_ids = fields.Many2many("res.users", string="选中员工", default=lambda self: self.env.context.get("active_ids", [])) + action_id = fields.Many2one('ir.actions.actions', string="动作") + + def confirm(self): + for user in self.user_ids: + user.write({'action_id': self.action_id.id}) diff --git a/yuthon_base/security/ir.model.access.csv b/yuthon_base/security/ir.model.access.csv index abc9f248e..cc8505a56 100644 --- a/yuthon_base/security/ir.model.access.csv +++ b/yuthon_base/security/ir.model.access.csv @@ -2,3 +2,4 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_system_version,system_version,model_system_version,base.group_system,1,1,1,1 access_ir_cron_type,ir.cron.type,model_ir_cron_type,base.group_system,1,1,1,1 access_yuthon_timed_tasks,yuthon.timed.tasks,model_yuthon_timed_tasks,base.group_system,1,1,1,1 +access_users_home_batch_wizard,access_users_home_batch_wizard,model_users_home_batch_wizard,base.group_user,1,1,1,1 \ No newline at end of file diff --git a/yuthon_base/views/ir_cron_act_views.xml b/yuthon_base/views/ir_cron_act_views.xml index 4b0df02b2..fb301dc4d 100644 --- a/yuthon_base/views/ir_cron_act_views.xml +++ b/yuthon_base/views/ir_cron_act_views.xml @@ -42,5 +42,34 @@ tree,form [('cron_type_id.name', '=', '出勤')] + + users.home.batch.wizard.form + users.home.batch.wizard + +
+ + + + + + + +
+
+ +
+
+ + + 批量更新首页 + users.home.batch.wizard + form + + new + + list + diff --git a/yuthon_property_approval/report/property_lease_contract_print_templates.xml b/yuthon_property_approval/report/property_lease_contract_print_templates.xml index 38d8e01a3..9d924d14a 100644 --- a/yuthon_property_approval/report/property_lease_contract_print_templates.xml +++ b/yuthon_property_approval/report/property_lease_contract_print_templates.xml @@ -35,8 +35,8 @@ } /* 审批详情列宽(匹配上方表格的5列结构) */ .approval-col1 { width: 20%; } /* 匹配上方"合同编号"等标题列宽度 */ - .approval-col2 { width: 40%; } /* 匹配上方内容列宽度 */ - .approval-col3 { width: 40%; } /* 匹配上方内容列宽度 */ + .approval-col2 { width: 40%; border-right: none !important; } /* 匹配上方内容列宽度 */ + .approval-col3 { width: 40%; border-left: none !important; } /* 匹配上方内容列宽度 */
租赁合同审批单
@@ -123,7 +123,7 @@ - + 审批详情 @@ -131,8 +131,10 @@ - - + + + +