-
{index + 1}
-
@@ -70,18 +79,19 @@ export default function NewMomentsSyncTask() {
const [currentStep, setCurrentStep] = useState(1);
const [loading, setLoading] = useState(false);
const [deviceDialogOpen, setDeviceDialogOpen] = useState(false);
- const [contentLibraryDialogOpen, setContentLibraryDialogOpen] = useState(false);
+ const [contentLibraryDialogOpen, setContentLibraryDialogOpen] =
+ useState(false);
const [formData, setFormData] = useState({
- taskName: '',
- startTime: '06:00',
- endTime: '23:59',
+ taskName: "",
+ startTime: "06:00",
+ endTime: "23:59",
syncCount: 5,
interval: 30, // 同步间隔,单位:分钟
- accountType: 'business' as 'business' | 'personal',
+ accountType: "business" as "business" | "personal",
enabled: true,
selectedDevices: [] as string[],
selectedLibraries: [] as string[],
- contentTypes: ['text', 'image', 'video'] as ContentType[],
+ contentTypes: ["text", "image", "video"] as ContentType[],
targetTags: [] as string[],
filterKeywords: [] as string[],
});
@@ -109,21 +119,21 @@ export default function NewMomentsSyncTask() {
if (taskData) {
setFormData({
taskName: taskData.name,
- startTime: taskData.timeRange?.start || '06:00',
- endTime: taskData.timeRange?.end || '23:59',
- syncCount: taskData.maxSyncPerDay || 5,
+ startTime: taskData.timeRange?.start || "06:00",
+ endTime: taskData.timeRange?.end || "23:59",
+ syncCount: taskData?.config?.syncCount || 0,
interval: taskData.syncInterval || 30,
- accountType: taskData.syncMode === 'auto' ? 'business' : 'personal',
+ accountType: taskData.syncMode === "auto" ? "business" : "personal",
enabled: taskData.status === 1,
selectedDevices: taskData.devices || [],
selectedLibraries: taskData.contentLib ? [taskData.contentLib] : [],
- contentTypes: taskData.contentTypes || ['text', 'image', 'video'],
+ contentTypes: taskData.contentTypes || ["text", "image", "video"],
targetTags: taskData.targetTags || [],
filterKeywords: taskData.filterKeywords || [],
});
}
} catch (error) {
- toast({ title: '获取任务详情失败', variant: 'destructive' });
+ toast({ title: "获取任务详情失败", variant: "destructive" });
} finally {
setLoading(false);
}
@@ -137,15 +147,15 @@ export default function NewMomentsSyncTask() {
const handleComplete = async () => {
if (!formData.taskName.trim()) {
- toast({ title: '请输入任务名称', variant: 'destructive' });
+ toast({ title: "请输入任务名称", variant: "destructive" });
return;
}
if (formData.selectedDevices.length === 0) {
- toast({ title: '请选择设备', variant: 'destructive' });
+ toast({ title: "请选择设备", variant: "destructive" });
return;
}
if (formData.selectedLibraries.length === 0) {
- toast({ title: '请选择内容库', variant: 'destructive' });
+ toast({ title: "请选择内容库", variant: "destructive" });
return;
}
@@ -157,10 +167,10 @@ export default function NewMomentsSyncTask() {
contentLibraries: formData.selectedLibraries,
syncInterval: formData.interval,
syncCount: formData.syncCount,
- syncType: formData.accountType === 'business' ? 1 : 2,
+ syncType: formData.accountType === "business" ? 1 : 2,
startTime: formData.startTime,
endTime: formData.endTime,
- accountType: formData.accountType === 'business' ? 1 : 2,
+ accountType: formData.accountType === "business" ? 1 : 2,
contentTypes: formData.contentTypes,
targetTags: formData.targetTags,
filterKeywords: formData.filterKeywords,
@@ -171,15 +181,18 @@ export default function NewMomentsSyncTask() {
id,
...taskData,
});
- toast({ title: '更新成功' });
+ toast({ title: "更新成功" });
navigate(`/workspace/moments-sync/${id}`);
} else {
await createMomentsSyncTask(taskData);
- toast({ title: '创建成功' });
- navigate('/workspace/moments-sync');
+ toast({ title: "创建成功" });
+ navigate("/workspace/moments-sync");
}
} catch (error) {
- toast({ title: isEditMode ? '更新失败' : '创建失败', variant: 'destructive' });
+ toast({
+ title: isEditMode ? "更新失败" : "创建失败",
+ variant: "destructive",
+ });
} finally {
setLoading(false);
}
@@ -202,8 +215,12 @@ export default function NewMomentsSyncTask() {
每日同步数量
-
@@ -297,7 +328,9 @@ export default function NewMomentsSyncTask() {
是否启用
handleUpdateFormData({ enabled: checked })}
+ onCheckedChange={(checked) =>
+ handleUpdateFormData({ enabled: checked })
+ }
className="data-[state=checked]:bg-blue-600 h-7 w-12"
/>
@@ -316,7 +349,12 @@ export default function NewMomentsSyncTask() {
-
navigate(-1)} className="hover:bg-gray-50">
+ navigate(-1)}
+ className="hover:bg-gray-50"
+ >
新建朋友圈同步
@@ -327,7 +365,7 @@ export default function NewMomentsSyncTask() {
{currentStep === 1 && renderBasicSettings()}
-
+
{currentStep === 2 && (
setDeviceDialogOpen(true)}
readOnly
/>
-
+
{formData.selectedDevices.length > 0 && (
已选设备:{formData.selectedDevices.length} 个
)}
-
+
-
+
上一步
-
+
)}
-
+
{currentStep === 3 && (
setContentLibraryDialogOpen(true)}
readOnly
/>
-
+
{formData.selectedLibraries.length > 0 && (
已选内容库:{formData.selectedLibraries.length} 个
)}
-
+
-
+
上一步
- {loading ? '创建中...' : '完成'}
+ {loading ? "创建中..." : "完成"}
-
+
);
-}
\ No newline at end of file
+}