44 lines
1.3 KiB
Python
44 lines
1.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
from __future__ import print_function, unicode_literals, absolute_import, division
|
|
import math
|
|
from datetime import datetime
|
|
|
|
from peewee import DateTimeField, BooleanField, TextField, AutoField
|
|
|
|
from domain_admin.model.base_model import BaseModel
|
|
from domain_admin.utils import datetime_util
|
|
|
|
|
|
class LogSchedulerModel(BaseModel):
|
|
"""日志"""
|
|
id = AutoField(primary_key=True)
|
|
|
|
# 状态
|
|
status = BooleanField(default=False)
|
|
|
|
# 执行结果
|
|
error_message = TextField(default='')
|
|
|
|
# 创建时间
|
|
create_time = DateTimeField(default=datetime.now)
|
|
|
|
# 更新时间
|
|
update_time = DateTimeField(default=None, null=True)
|
|
|
|
class Meta:
|
|
table_name = 'log_scheduler'
|
|
|
|
@property
|
|
def total_time(self):
|
|
if isinstance(self.update_time, datetime) and isinstance(self.create_time, datetime):
|
|
return datetime_util.get_timestamp(self.update_time) - datetime_util.get_timestamp(self.create_time)
|
|
elif isinstance(self.create_time, datetime):
|
|
return datetime_util.get_timestamp(datetime.now()) - datetime_util.get_timestamp(self.create_time)
|
|
else:
|
|
return 0
|
|
|
|
@property
|
|
def total_time_label(self):
|
|
if self.total_time:
|
|
return datetime_util.seconds_for_human(self.total_time)
|