解决bug
This commit is contained in:
@@ -4,7 +4,7 @@ from concurrent.futures import ThreadPoolExecutor
|
||||
import os
|
||||
import json
|
||||
import uuid
|
||||
from datetime import datetime, timedelta
|
||||
from datetime import datetime
|
||||
from flask import Blueprint, render_template, jsonify, request, current_app, session
|
||||
from pathlib import Path
|
||||
from werkzeug.utils import secure_filename
|
||||
@@ -141,12 +141,17 @@ def api_create_task():
|
||||
data['task_id'] = str(uuid.uuid4())
|
||||
data['creator_id'] = username
|
||||
|
||||
# 处理recurring_time
|
||||
if 'recurring_time' in data and data['recurring_time']:
|
||||
if isinstance(data['recurring_time'], timedelta):
|
||||
hours = data['recurring_time'].seconds // 3600
|
||||
minutes = (data['recurring_time'].seconds % 3600) // 60
|
||||
data['recurring_time'] = f"{hours:02d}:{minutes:02d}"
|
||||
# 确保 content_miniprogram 是 JSON 字符串
|
||||
if 'content_miniprogram' in data and isinstance(data['content_miniprogram'], dict):
|
||||
data['content_miniprogram'] = json.dumps(data['content_miniprogram'])
|
||||
|
||||
# 确保 groups 是 JSON 字符串
|
||||
if 'groups' in data and isinstance(data['groups'], list):
|
||||
data['groups'] = json.dumps(data['groups'])
|
||||
|
||||
# 确保 preview_recipients 是 JSON 字符串
|
||||
if 'preview_recipients' in data and isinstance(data['preview_recipients'], list):
|
||||
data['preview_recipients'] = json.dumps(data['preview_recipients'])
|
||||
|
||||
# 创建任务
|
||||
db = current_app.dashboard_server.task_db
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
from typing import List, Dict, Optional, Tuple
|
||||
from datetime import timedelta
|
||||
|
||||
from db.base import BaseDBOperator
|
||||
from db.connection import DBConnectionManager
|
||||
@@ -109,13 +108,6 @@ class TaskDBOperator(BaseDBOperator):
|
||||
groups = json.dumps(task_data.get('groups', []))
|
||||
preview_recipients = json.dumps(task_data.get('preview_recipients', []))
|
||||
|
||||
# 处理recurring_time
|
||||
recurring_time = task_data.get('recurring_time')
|
||||
if recurring_time and isinstance(recurring_time, timedelta):
|
||||
hours = recurring_time.seconds // 3600
|
||||
minutes = (recurring_time.seconds % 3600) // 60
|
||||
recurring_time = f"{hours:02d}:{minutes:02d}"
|
||||
|
||||
params = (
|
||||
task_data['task_id'],
|
||||
task_data['name'],
|
||||
@@ -123,7 +115,7 @@ class TaskDBOperator(BaseDBOperator):
|
||||
task_data['schedule_time'],
|
||||
task_data.get('recurring_interval'),
|
||||
task_data.get('recurring_end'),
|
||||
recurring_time,
|
||||
task_data.get('recurring_time'),
|
||||
task_data.get('weekly_days'),
|
||||
task_data.get('monthly_day'),
|
||||
task_data.get('content_text'),
|
||||
|
||||
Reference in New Issue
Block a user