Merge branch 'master' into dev_zhou

# Conflicts:
#	soong_workflow/wizard/soong_workflow_comment_wizard.py
This commit is contained in:
李鹏宇
2026-01-15 16:20:28 +08:00
8 changed files with 46 additions and 17 deletions
@@ -64,6 +64,7 @@ patch(ListRenderer.prototype, {
const groupHeaders = [...table.querySelectorAll('tbody tr.o_group_header')];
const setStyle = (element, left, z = 10) => {
if (!element) return;
element.classList.add('position-sticky', 'o_column_freeze');
Object.assign(element.style, {
left: `${left}px`,
@@ -72,6 +73,7 @@ patch(ListRenderer.prototype, {
};
const removeStyle = (element) => {
if (!element) return;
element.classList.remove('position-sticky', 'o_column_freeze');
element.style.left = '';
element.style.zIndex = '';
@@ -450,8 +450,8 @@ class SoongWorkflowCommentWizard(models.TransientModel):
target_url = f'https://oa.thtzjt.com/web#id={record_id.id}&cids=2&active_id={action_id.id}&model={record_id._name}&view_type=form'
url = self.sudo().env["wecom.apps"].generate_oauth_login_url(target_url, category='oa')
result_data = self.sudo().env["wecom.apps"].sync_send_message_textcard(category='oa',
user_id='18562027762',
title=record_id._description,
user_id=employee.wecom_userid,
title= record_id._description if 'Purchase Order' != record_id._description else '采购订单',
description="标题: {}\n".format(
record_id.name) + self.env.user.name + ' ' + str(
fields.Datetime.now() + timedelta(
@@ -21,9 +21,9 @@
overflow-x: auto;
overflow-y: visible;
}
.table-responsive {
overflow: visible;
}
// .table-responsive {
// overflow: visible;
// }
.o_list_view .table-responsive .table thead {
z-index: 20;
}
@@ -82,7 +82,7 @@
<attribute name="invisible">1</attribute>
</xpath>
<xpath expr="//field[@name='department_id']" position="after">
<!-- <field name="allowed_user_ids" invisible="1"/>-->
<field name="allowed_user_ids" invisible="1"/>
<field name="number"/>
<field name="establishment_quotas"/>
<field name="no_of_employee" string="在编人数"/>
@@ -6,7 +6,7 @@
<t t-foreach="docs" t-as="doc">
<t t-call="web.external_layout">
<style type="text/css">
/* 核心修改:表格宽度改为800px固定值,添加margin:0 auto居中 */
/* 核心修改:表格宽度改为800px固定值,添加margin:0 auto居中 */
table { border-collapse: collapse; width: 800px; margin: 0 auto; table-layout: fixed; }
td { border: 1px solid #000; padding: 6px; text-align: center; }
.title {
@@ -18,21 +18,21 @@
.header-cell { font-weight: bold; background-color: #d4e6f1;}
.dept-container { width: 800px; margin: 0 auto 10px auto; font-weight:bold; text-align:left; }
/* 新增:附件清单左对齐 */
/* 新增:附件清单左对齐 */
.attachment-list { text-align: left; }
/* 新增:隐藏意见和审批人之间的竖边框 */
/* 新增:隐藏意见和审批人之间的竖边框 */
.no-right-border { border-right: none !important; }
.no-left-border { border-left: none !important; }
</style>
<!-- 合同审查单标题 - 不在表格内 -->
<div class="title" style="text-align:center; font-weight:bold; font-size:18px; padding:12px 0; margin-bottom:10px;">
合同审查单
会审意见表
</div>
<!-- 承办部门 - 不在表格内(修改:使用新增的样式类,宽度与表格一致) -->
<!-- 承办部门 - 不在表格内(修改:使用新增的样式类,宽度与表格一致) -->
<div class="dept-container">
<strong>承办部门:</strong><span t-esc="doc.department_id.name"/>
<strong>承办部门:</strong><span t-esc="doc.department_id.name"/>
</div>
<table>
@@ -47,6 +47,22 @@
<td colspan="3"><span t-esc="doc.name"/></td>
</tr>
<tr>
<td class="header-cell"><strong>审批类型</strong></td>
<td colspan="3">
<span t-if="doc.approval_type == 'contract'">合同</span>
<span t-if="doc.approval_type == 'charter'">章程</span>
</td>
</tr>
<tr t-if="doc.approval_type == 'contract'">
<td class="header-cell"><strong>业务类型</strong></td>
<td colspan="3" class="attachment-list">
<t t-foreach="doc.information_categories_ids" t-as="category">
<span t-esc="category.name"/>
<t t-if="not category_last">, </t>
</t>
</td>
</tr>
<tr t-if="doc.approval_type == 'contract'">
<td class="header-cell"><strong>合同类型</strong></td>
<td><span t-esc="doc.contract_type.name"/></td>
<td class="header-cell"><strong>合同金额</strong></td>
@@ -54,11 +70,19 @@
</tr>
<tr>
<td class="header-cell"><strong>情况说明</strong></td>
<td colspan="3"><span t-esc="doc.remarks"/></td>
<td colspan="3" class="attachment-list"><span t-esc="doc.remarks"/></td>
</tr>
<tr t-if="doc.lawyer_opinion_ids">
<td class="header-cell"><strong>律师意见</strong></td>
<td colspan="3" class="attachment-list">
<t t-foreach="doc.lawyer_opinion_ids" t-as="lawyer_att">
<div><t t-esc="lawyer_att.name"/></div>
</t>
</td>
</tr>
<tr>
<td class="header-cell"><strong>附件清单</strong></td>
<!-- 核心修改:添加附件清单左对齐类 -->
<!-- 核心修改:添加附件清单左对齐类 -->
<td colspan="3" class="attachment-list">
<t t-foreach="doc.documents_ids" t-as="att">
<div><t t-esc="att.name"/></div>
@@ -71,9 +95,9 @@
<t t-foreach="doc.log_ids.sorted('sequence')" t-as="log">
<tr>
<td colspan="1"><span t-esc="log.name"/></td>
<!-- 核心修改:隐藏意见列右侧边框 -->
<!-- 核心修改:隐藏意见列右侧边框 -->
<td class="no-right-border" colspan="2"><span t-esc="log.comment"/></td>
<!-- 核心修改:隐藏审批人列左侧边框 -->
<!-- 核心修改:隐藏审批人列左侧边框 -->
<td class="no-left-border" colspan="1">
<t t-if="log.done_by">
<span t-esc="log.done_by.name"/> <span t-esc="log.lase_click_date and log.lase_click_date.strftime('%Y-%m-%d')"/>
+2
View File
@@ -14,8 +14,10 @@ class OfficialType(models.Model):
class MainFlats(models.Model):
_name = 'main.flats'
_description = '主送/抄送单位'
_order = 'sequence'
name = fields.Char(string="主送/抄送单位")
sequence = fields.Integer(string='排序序号')
class CopyFlats(models.Model):
@@ -20,6 +20,7 @@
<field name="model">main.flats</field>
<field name="arch" type="xml">
<tree string="主送/抄送单位" editable="bottom">
<field name="sequence"/>
<field name="name"/>
</tree>
</field>
@@ -94,7 +94,7 @@
</group>
<group>
<field name="official_documents_ids" widget="preview_many2many"/>
</group>>
</group>
<group>
<field name="type_stamp_ids" widget="many2many_tags" options="{'no_create': True, 'no_open': True}" invisible="is_chapter == 'no' or not is_chapter"/>
<field name="scope_chapter_ids" widget="many2many_tags" options="{'no_create': True, 'no_open': True}" invisible="is_chapter == 'no' or not is_chapter"/>