This commit is contained in:
aaron 2025-02-23 22:34:25 +08:00
parent db1e2710bf
commit 72ed31076f
3 changed files with 14 additions and 2 deletions

View File

@ -1,6 +1,8 @@
# 使用Python 3.10作为基础镜像
FROM python:3.10-slim
# 设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 清空所有默认源
RUN rm -rf /etc/apt/sources.list.d/* && \
rm -f /etc/apt/sources.list

View File

@ -6,10 +6,12 @@ from typing import TypeVar, Generic
from fastapi import status
import json
from decimal import Decimal
from app.core.utils import CommonUtils
class CustomJSONEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, datetime):
return obj.strftime('%Y-%m-%d %H:%M:%S')
return CommonUtils.get_asia_datetime(obj)
if isinstance(obj, time):
return obj.strftime('%H:%M:%S')
elif isinstance(obj, date):

View File

@ -7,7 +7,15 @@ class CommonUtils:
"""工具类"""
@staticmethod
def get_current_time(timezone='Asia/Shanghai'):
def get_asia_datetime(my_datetime: datetime, timezone='Asia/Shanghai') -> str:
"""
将时间转换为UTF-8编码
"""
tz = pytz.timezone(timezone)
return my_datetime.astimezone(tz).strftime('%Y-%m-%d %H:%M:%S')
@staticmethod
def get_current_time(timezone='Asia/Shanghai') -> str:
"""
获取指定时区的当前时间
:param timezone: 时区名称默认为上海时区东八区