|
@@ -63,6 +63,10 @@ export const useTaskLogsData = () => {
|
|
|
const [isModalOpen, setIsModalOpen] = useState(false);
|
|
const [isModalOpen, setIsModalOpen] = useState(false);
|
|
|
const [modalContent, setModalContent] = useState('');
|
|
const [modalContent, setModalContent] = useState('');
|
|
|
|
|
|
|
|
|
|
+ // 新增:视频预览弹窗状态
|
|
|
|
|
+ const [isVideoModalOpen, setIsVideoModalOpen] = useState(false);
|
|
|
|
|
+ const [videoUrl, setVideoUrl] = useState('');
|
|
|
|
|
+
|
|
|
// Form state
|
|
// Form state
|
|
|
const [formApi, setFormApi] = useState(null);
|
|
const [formApi, setFormApi] = useState(null);
|
|
|
let now = new Date();
|
|
let now = new Date();
|
|
@@ -243,6 +247,12 @@ export const useTaskLogsData = () => {
|
|
|
setIsModalOpen(true);
|
|
setIsModalOpen(true);
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+ // 新增:打开视频预览弹窗
|
|
|
|
|
+ const openVideoModal = (url) => {
|
|
|
|
|
+ setVideoUrl(url);
|
|
|
|
|
+ setIsVideoModalOpen(true);
|
|
|
|
|
+ };
|
|
|
|
|
+
|
|
|
// Initialize data
|
|
// Initialize data
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
|
const localPageSize = parseInt(localStorage.getItem('task-page-size')) || ITEMS_PER_PAGE;
|
|
const localPageSize = parseInt(localStorage.getItem('task-page-size')) || ITEMS_PER_PAGE;
|
|
@@ -264,6 +274,11 @@ export const useTaskLogsData = () => {
|
|
|
setIsModalOpen,
|
|
setIsModalOpen,
|
|
|
modalContent,
|
|
modalContent,
|
|
|
|
|
|
|
|
|
|
+ // 新增:视频弹窗状态
|
|
|
|
|
+ isVideoModalOpen,
|
|
|
|
|
+ setIsVideoModalOpen,
|
|
|
|
|
+ videoUrl,
|
|
|
|
|
+
|
|
|
// Form state
|
|
// Form state
|
|
|
formApi,
|
|
formApi,
|
|
|
setFormApi,
|
|
setFormApi,
|
|
@@ -290,6 +305,7 @@ export const useTaskLogsData = () => {
|
|
|
refresh,
|
|
refresh,
|
|
|
copyText,
|
|
copyText,
|
|
|
openContentModal,
|
|
openContentModal,
|
|
|
|
|
+ openVideoModal, // 新增
|
|
|
enrichLogs,
|
|
enrichLogs,
|
|
|
syncPageData,
|
|
syncPageData,
|
|
|
|
|
|