index.tsx 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import React from 'react';
  2. import { Modal, Descriptions } from 'antd';
  3. import { GzhPlanDataType } from '../../hooks/useGzhPlanList';
  4. import dayjs from 'dayjs';
  5. interface PunlishPlanDetailModalProps {
  6. visible: boolean;
  7. onCancel: () => void;
  8. planData: GzhPlanDataType;
  9. }
  10. const PunlishPlanDetailModal: React.FC<PunlishPlanDetailModalProps> = ({
  11. visible,
  12. onCancel,
  13. planData,
  14. }) => {
  15. return (
  16. planData && visible && <Modal
  17. title="发布计划详情"
  18. open={true}
  19. destroyOnClose
  20. onCancel={onCancel}
  21. footer={null}
  22. width={800}
  23. >
  24. <Descriptions column={1} bordered>
  25. <Descriptions.Item label="场景">{planData?.scene === 0 ? '关注回复' : '自动回复'}</Descriptions.Item>
  26. <Descriptions.Item label="公众号名称">{planData.accountName}</Descriptions.Item>
  27. <Descriptions.Item label="视频列表">
  28. {planData.videoList?.map((video, index) => (
  29. <div key={video.videoId} style={{ marginBottom: '16px' }}>
  30. <p>视频 {index + 1}: {video.customTitle || video.title}</p>
  31. <img
  32. src={video.customCover || video.cover}
  33. alt={`视频${index + 1}封面`}
  34. style={{ maxWidth: '150px' }}
  35. />
  36. </div>
  37. ))}
  38. </Descriptions.Item>
  39. <Descriptions.Item label="发布时间">{dayjs(planData.createTimestamp).format('YYYY-MM-DD HH:mm:ss')}</Descriptions.Item>
  40. <Descriptions.Item label="发布方">{planData.publishStage === 0 ? '平台发布' : '用户发布'}</Descriptions.Item>
  41. </Descriptions>
  42. </Modal>
  43. );
  44. };
  45. export default PunlishPlanDetailModal;