diff --git a/Cunkebao/app/content/[id]/materials/new/page.tsx b/Cunkebao/app/content/[id]/materials/new/page.tsx index cedcd54d..4ce99179 100644 --- a/Cunkebao/app/content/[id]/materials/new/page.tsx +++ b/Cunkebao/app/content/[id]/materials/new/page.tsx @@ -106,7 +106,7 @@ export default function NewMaterialPage({ params }: { params: { id: string } }) const response = await api.post('/v1/content/library/create-item', payload) if (response.code === 200) { showToast("创建成功", "success") - router.push(`/content/${params.id}/materials`) + router.push(`/content/${params.id}/materials`) } else { showToast(response.msg || "创建失败", "error") } @@ -152,7 +152,7 @@ export default function NewMaterialPage({ params }: { params: { id: string } }) -
+
@@ -252,7 +252,7 @@ export default function NewMaterialPage({ params }: { params: { id: string } }) - setUrl(e.target.value)} @@ -286,7 +286,7 @@ export default function NewMaterialPage({ params }: { params: { id: string } }) 上传视频 )} - + {videoUrl && ( )} @@ -329,19 +329,19 @@ export default function NewMaterialPage({ params }: { params: { id: string } }) className="object-cover" />
- + > + +
- ))} - - + ))} + + )} )} diff --git a/Cunkebao/app/workspace/traffic-distribution/new/components/target-settings-step.tsx b/Cunkebao/app/workspace/traffic-distribution/new/components/target-settings-step.tsx index f161dc4b..93be1813 100644 --- a/Cunkebao/app/workspace/traffic-distribution/new/components/target-settings-step.tsx +++ b/Cunkebao/app/workspace/traffic-distribution/new/components/target-settings-step.tsx @@ -40,13 +40,11 @@ export default function TargetSettingsStep({ onNext, onBack, initialData = {}, s const [deviceDialogOpen, setDeviceDialogOpen] = useState(false) const [statusFilter, setStatusFilter] = useState("all") - // 每次弹窗打开时,同步主表单的 devices(转为字符串数组) + // 每次 initialData.devices 变化时,同步 selectedDeviceIds useEffect(() => { - if (deviceDialogOpen) { - const ids = Array.isArray(initialData.devices) ? initialData.devices.map(String) : []; - setSelectedDeviceIds(ids); - } - }, [deviceDialogOpen, initialData.devices]) + const ids = Array.isArray(initialData.devices) ? initialData.devices.map(String) : []; + setSelectedDeviceIds(ids); + }, [initialData.devices]) useEffect(() => { setLoading(true) @@ -66,7 +64,7 @@ export default function TargetSettingsStep({ onNext, onBack, initialData = {}, s }) const handleSubmit = () => { - onNext({ devices: Array.isArray(initialData.devices) ? initialData.devices : [] }) + onNext({ devices: selectedDeviceIds }) } // 弹窗内确认选择 @@ -85,7 +83,7 @@ export default function TargetSettingsStep({ onNext, onBack, initialData = {}, s 0 ? `已选择${initialData.devices.length}个设备` : ''} + value={selectedDeviceIds.length > 0 ? `已选择${selectedDeviceIds.length}个设备` : ''} readOnly className="pl-10 cursor-pointer" onClick={() => setDeviceDialogOpen(true)} @@ -93,10 +91,10 @@ export default function TargetSettingsStep({ onNext, onBack, initialData = {}, s
- {Array.isArray(initialData.devices) && initialData.devices.length === 0 ? ( + {selectedDeviceIds.length === 0 ? (
未选择设备
) : ( -
已选设备:{Array.isArray(initialData.devices) ? initialData.devices.length : 0} 个
+
已选设备:{selectedDeviceIds.length} 个
)}
diff --git a/Cunkebao/app/workspace/traffic-distribution/new/page.tsx b/Cunkebao/app/workspace/traffic-distribution/new/page.tsx index 7f39b176..9446d63a 100644 --- a/Cunkebao/app/workspace/traffic-distribution/new/page.tsx +++ b/Cunkebao/app/workspace/traffic-distribution/new/page.tsx @@ -27,6 +27,7 @@ interface FormData { targetSettings: { targetGroups: string[] targets: string[] + devices?: string[] } trafficPool: { deviceIds: number[] @@ -65,6 +66,7 @@ export default function NewTrafficDistribution() { poolIds: [], }, }) + const [devices, setDevices] = useState([]) const steps = [ { id: 1, title: "基本信息", icon: }, @@ -78,7 +80,8 @@ export default function NewTrafficDistribution() { } const handleTargetSettingsNext = (data: FormData["targetSettings"]) => { - setFormData((prev) => ({ ...prev, targetSettings: data })) + setFormData((prev) => ({ ...prev, targetSettings: { ...data } })) + setDevices(data.devices || []) setCurrentStep(2) } @@ -154,11 +157,17 @@ export default function NewTrafficDistribution() { onNext={handleTargetSettingsNext} onBack={handleTargetSettingsBack} initialData={formData.targetSettings} + setDevices={setDevices} /> )} {currentStep === 2 && ( - + )}