This commit is contained in:
李鹏宇
2026-05-25 18:27:46 +08:00
parent c1e33acbf2
commit 94a6f0203a
3 changed files with 28 additions and 26 deletions
@@ -12,22 +12,19 @@
<templates>
<t t-name="kanban-box">
<div class="oe_module_vignette">
<div class="oe_module_desc" style="display: flex; justify-content: space-between;">
<div class="o_left_container" style="flex: 1; max-width: 50%;">
<div class="oe_module_desc">
<div class="o_left_container">
<h4 class="o_kanban_record_title">
<field name="name"/>
</h4>
<p class="oe_module_name">
<br/>
</p>
<div class="oe_module_action" t-if="!selection_mode">
<button type="object" class="btn btn-primary btn-sm" name="create_request" style="display: inline-block; margin-right: 10px;">新建审批</button>
<button type="object" class="btn btn-success btn-sm" name="action_download_excel_template" t-if="record.excel_template.raw_value" style="display: inline-block;">下载模板</button>
<div class="oe_module_action" t-if="!selection_mode" style="white-space: nowrap;">
<button type="object" class="btn btn-primary btn-sm" name="create_request" style="margin-right: 20px !important;">新建审批</button>
<button type="object" class="btn btn-success btn-sm" name="action_download_excel_template" t-if="record.excel_template.raw_value">下载模板</button>
</div>
</div>
<div class="o_right_container" style="flex: 1; max-width: 55%; margin-left: 16px; border-left: 1px solid #eee; padding-left: 16px;">
<field name="text" options="{'mode': 'readonly'}" style="white-space: normal; word-wrap: break-word;"/>
</div>
</div>
</div>
</t>
+20 -15
View File
@@ -65,34 +65,34 @@ class RoomBooking(models.Model):
meeting_type_name = str(record.meeting_type_id.name).strip()
if '党' in meeting_type_name:
if meet.issue_library_id.is_party and not meet.issue_library_id.is_party_passed:
meet.issue_library_id.party_char = str(
record.start_datetime.date()) + record.meeting_type_id.name
party_value = str(record.start_datetime.date()) + record.meeting_type_id.name
meet.issue_library_id.party_char = f'<span style="background:#FFEBE8;color:#D32F2F;padding:2px 8px;border-radius:4px;">{party_value}</span>'
meet.issue_library_id.issue_state_party = 'meeting'
meet.issue_library_id.issue_state = False
if '班子' in meeting_type_name:
if meet.issue_library_id.is_class and not meet.issue_library_id.is_class_passed:
meet.issue_library_id.class_char = str(
record.start_datetime.date()) + f'第{record.number_of_meetings}次' + record.meeting_type_id.name
class_value = str(record.start_datetime.date()) + f'第{record.number_of_meetings}次' + record.meeting_type_id.name
meet.issue_library_id.class_char = f'<span style="background:#E3F2FD;color:#1565C0;padding:2px 8px;border-radius:4px;">{class_value}</span>'
meet.issue_library_id.issue_state_class = 'meeting'
meet.issue_library_id.issue_state = False
if '董事' in meeting_type_name:
if meet.issue_library_id.is_boss and not meet.issue_library_id.is_boss_passed:
meet.issue_library_id.boss_char = str(
record.start_datetime.date()) + record.meeting_type_id.name
boss_value = str(record.start_datetime.date()) + record.meeting_type_id.name
meet.issue_library_id.boss_char = f'<span style="background:#F3F4F6;color:#4B5563;padding:2px 8px;border-radius:4px;">{boss_value}</span>'
meet.issue_library_id.issue_state_boss = 'meeting'
meet.issue_library_id.issue_state = False
elif '套' in meeting_type_name:
if meet.issue_library_id.is_party and (meet.issue_library_id.is_party_passed == 'reject' or not meet.issue_library_id.is_party_passed):
meet.issue_library_id.party_char = str(
record.start_datetime.date()) + record.meeting_type_id.name
party_value = str(record.start_datetime.date()) + record.meeting_type_id.name
meet.issue_library_id.party_char = f'<span style="background:#FFEBE8;color:#D32F2F;padding:2px 8px;border-radius:4px;">{party_value}</span>'
meet.issue_library_id.issue_state_party = 'meeting'
meet.issue_library_id.issue_state = False
elif meet.issue_library_id.is_class and (meet.issue_library_id.is_class_passed == 'r eject' or not meet.issue_library_id.is_class_passed):
meet.issue_library_id.class_char = str(
record.start_datetime.date()) + f'第{record.number_of_meetings}次' + record.meeting_type_id.name
class_value = str(record.start_datetime.date()) + f'第{record.number_of_meetings}次' + record.meeting_type_id.name
meet.issue_library_id.class_char = f'<span style="background:#E3F2FD;color:#1565C0;padding:2px 8px;border-radius:4px;">{class_value}</span>'
meet.issue_library_id.issue_state_class = 'meeting'
meet.issue_library_id.issue_state = False
@@ -371,7 +371,8 @@ class IssueMeetingLine(models.Model):
clean_party_char = original_party_char
for suffix in suffix_list:
clean_party_char = clean_party_char.removesuffix(suffix)
record.issue_library_id.party_char = clean_party_char + agree_name
clean_party_char = clean_party_char.replace('</span>', '').replace('<span style="background:#FFEBE8;color:#D32F2F;padding:2px 8px;border-radius:4px;">', '')
record.issue_library_id.party_char = f'<span style="background:#FFEBE8;color:#D32F2F;padding:2px 8px;border-radius:4px;">{clean_party_char + agree_name}</span>'
record.issue_library_id.issue_state_party = 'on_meet'
# 3. 班子会相关
@@ -383,7 +384,8 @@ class IssueMeetingLine(models.Model):
clean_class_char = original_class_char
for suffix in suffix_list:
clean_class_char = clean_class_char.removesuffix(suffix)
record.issue_library_id.class_char = clean_class_char + agree_name
clean_class_char = clean_class_char.replace('</span>', '').replace('<span style="background:#E3F2FD;color:#1565C0;padding:2px 8px;border-radius:4px;">', '')
record.issue_library_id.class_char = f'<span style="background:#E3F2FD;color:#1565C0;padding:2px 8px;border-radius:4px;">{clean_class_char + agree_name}</span>'
record.issue_library_id.issue_state_class = 'on_meet'
# 4. 董事会相关
@@ -394,7 +396,8 @@ class IssueMeetingLine(models.Model):
clean_boss_char = original_boss_char
for suffix in suffix_list:
clean_boss_char = clean_boss_char.removesuffix(suffix)
record.issue_library_id.boss_char = clean_boss_char + agree_name
clean_boss_char = clean_boss_char.replace('</span>', '').replace('<span style="background:#F3F4F6;color:#4B5563;padding:2px 8px;border-radius:4px;">', '')
record.issue_library_id.boss_char = f'<span style="background:#F3F4F6;color:#4B5563;padding:2px 8px;border-radius:4px;">{clean_boss_char + agree_name}</span>'
record.issue_library_id.issue_state_boss = 'on_meet'
# 套开相关
@@ -410,7 +413,8 @@ class IssueMeetingLine(models.Model):
clean_party_char = original_party_char
for suffix in suffix_list:
clean_party_char = clean_party_char.removesuffix(suffix)
record.issue_library_id.party_char = clean_party_char + agree_name
clean_party_char = clean_party_char.replace('</span>', '').replace('<span style="background:#FFEBE8;color:#D32F2F;padding:2px 8px;border-radius:4px;">', '')
record.issue_library_id.party_char = f'<span style="background:#FFEBE8;color:#D32F2F;padding:2px 8px;border-radius:4px;">{clean_party_char + agree_name}</span>'
record.issue_library_id.issue_state_party = 'on_meet' if is_push else 'will'
elif (record.issue_library_id.is_class and
@@ -422,7 +426,8 @@ class IssueMeetingLine(models.Model):
clean_class_char = original_class_char
for suffix in suffix_list:
clean_class_char = clean_class_char.removesuffix(suffix)
record.issue_library_id.class_char = clean_class_char + agree_name
clean_class_char = clean_class_char.replace('</span>', '').replace('<span style="background:#E3F2FD;color:#1565C0;padding:2px 8px;border-radius:4px;">', '')
record.issue_library_id.class_char = f'<span style="background:#E3F2FD;color:#1565C0;padding:2px 8px;border-radius:4px;">{clean_class_char + agree_name}</span>'
record.issue_library_id.issue_state_class = 'on_meet' if is_push else 'will'
def unlink(self):
+3 -3
View File
@@ -55,11 +55,11 @@ class IssueLibrary(models.Model):
default='will', string="会议状态")
is_party = fields.Boolean(string="党总支", store=True)
party_char = fields.Char(string=' ')
party_char = fields.Html(string=' ')
is_class = fields.Boolean(string="班子会", store=True)
class_char = fields.Char(string=' ')
class_char = fields.Html(string=' ')
is_boss = fields.Boolean(string="董事会", store=True)
boss_char = fields.Char(string=' ')
boss_char = fields.Html(string=' ')
is_note = fields.Boolean(string="上级单位",store=True)
is_district_state = fields.Boolean(string="区国资局", store=True)
is_district_government = fields.Boolean(string="区政府", store=True)