33 lines
994 B
Python
33 lines
994 B
Python
# -*- coding: utf-8 -*-
|
|
from datetime import datetime, timedelta, time
|
|
from email.policy import default
|
|
|
|
from odoo import models, fields, api, _
|
|
from odoo.exceptions import UserError, ValidationError
|
|
import re
|
|
from odoo.tools.misc import format_date
|
|
|
|
|
|
class InheritIrAttachment(models.Model):
|
|
_inherit = 'ir.attachment'
|
|
|
|
public = fields.Boolean(string='公共文档', default=True)
|
|
|
|
file_size_display = fields.Char(string="File Size", compute="_compute_file_size_display")
|
|
|
|
@api.depends('file_size')
|
|
def _compute_file_size_display(self):
|
|
for rec in self:
|
|
size = rec.file_size or 0
|
|
if size < 1024:
|
|
rec.file_size_display = f"{size} B"
|
|
elif size < 1024 ** 2:
|
|
rec.file_size_display = f"{size / 1024:.2f} KB"
|
|
elif size < 1024 ** 3:
|
|
rec.file_size_display = f"{size / 1024 ** 2:.2f} MB"
|
|
else:
|
|
rec.file_size_display = f"{size / 1024 ** 3:.2f} GB"
|
|
|
|
|
|
|