#!/usr/bin/env python # -*- coding: utf-8 -*- import sys sys.path.insert(0, 'ruoyi-fastapi-backend') from datetime import date, datetime from fastapi.encoders import jsonable_encoder # 测试各种日期格式 test_cases = [ {'name': 'normal date', 'date': date(2026, 1, 12)}, {'name': 'normal datetime', 'date': datetime(2026, 4, 15, 13, 27, 44)}, {'name': 'min date', 'date': date(1, 1, 1)}, {'name': 'min datetime', 'date': datetime(1, 1, 1, 0, 0, 0)}, {'name': 'max date', 'date': date(9999, 12, 31)}, ] for tc in test_cases: try: result = jsonable_encoder({'date': tc['date']}) print(f"[OK] {tc['name']}: {result}") except Exception as e: print(f"[ERR] {tc['name']}: {e}") # 测试包含中文的数据 data = { 'receiptNo': '2026内检509', 'receiptDate': date(2026, 1, 12), 'createTime': datetime(2026, 4, 15, 13, 27, 44), 'samples': [ {'sampleId': 3879, 'createTime': datetime(2026, 4, 15, 13, 27, 44)} ] } try: result = jsonable_encoder(data) print(f"\n[OK] Full data encoding success") except Exception as e: import traceback print(f"\n[ERR] Full data encoding failed: {e}") traceback.print_exc()