From c5aa21a54a9595a5ae382ede00c14e3caf6bb1b9 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 14 Jan 2026 10:48:29 +0800
Subject: [PATCH] Merge branch 'AI-ADMIN-V3' of http://120.27.238.55:7000/r/xc-mall into AI-ADMIN-V3

---
 src/main/resources/templates/febs/views/modules/ai/fileUpload/index.html |  125 +++++++++++++++++++++++------------------
 1 files changed, 71 insertions(+), 54 deletions(-)

diff --git a/src/main/resources/templates/febs/views/modules/ai/fileUpload/index.html b/src/main/resources/templates/febs/views/modules/ai/fileUpload/index.html
index 74cc6ec..07d6317 100644
--- a/src/main/resources/templates/febs/views/modules/ai/fileUpload/index.html
+++ b/src/main/resources/templates/febs/views/modules/ai/fileUpload/index.html
@@ -47,7 +47,7 @@
                                 </div>
 
                                 <!-- 操作按钮 -->
-                                <div class="btn-group" style="display: none;" id="btnGroup">
+                                <div class="btn-group" id="btnGroup">
                                     <button class="layui-btn layui-btn-normal" id="startUpload">开始上传</button>
                                     <button class="layui-btn layui-btn-danger" id="cancelUpload">取消上传</button>
                                 </div>
@@ -310,6 +310,7 @@
             var isUploading = false;
             var startTime = 0;
             var uploadedSize = 0;
+            var companyId = 'default'; // 默认公司ID,实际应用中应从session或URL参数获取
 
             // 初始化
             init();
@@ -335,22 +336,55 @@
                 });
 
                 // 点击上传
-                uploadArea.addEventListener('click', function() {
-                    var input = document.createElement('input');
-                    input.type = 'file';
-                    input.accept = 'video/*';
-                    input.onchange = function() {
-                        if (this.files.length > 0) {
-                            handleFile(this.files[0]);
-                        }
-                    };
-                    input.click();
+                uploadArea.addEventListener('click', function(e) {
+                    // 阻止事件冒泡,避免干扰其他按钮
+                    e.stopPropagation();
+                    // 确保点击的是上传区域本身,而不是其他元素
+                    if (e.target === uploadArea || e.target.classList.contains('upload-icon') || e.target.classList.contains('upload-text')) {
+                        console.log('上传区域被点击');
+                        var input = document.createElement('input');
+                        input.type = 'file';
+                        input.accept = 'video/*';
+                        input.onchange = function() {
+                            if (this.files.length > 0) {
+                                console.log('选择了文件:', this.files[0].name);
+                                handleFile(this.files[0]);
+                            }
+                        };
+                        input.click();
+                    }
                 });
 
                 // 按钮事件 - 使用事件委托确保每次都能正确绑定
-                $(document).on('click', '#startUpload', startUpload);
-                $(document).on('click', '#cancelUpload', cancelUpload);
-                $(document).on('click', '#refreshList', refreshFileList);
+                // 移除旧的事件绑定,避免重复绑定
+                $(document).off('click', '#startUpload');
+                $(document).off('click', '#cancelUpload');
+                $(document).off('click', '#refreshList');
+                
+                // 重新绑定事件
+                $(document).on('click', '#startUpload', function(e) {
+                    e.preventDefault();
+                    e.stopPropagation();
+                    console.log('开始上传按钮被点击 - 新绑定');
+                    startUpload();
+                });
+                
+                // 为取消上传按钮添加更强大的事件绑定
+                $(document).on('click', '#cancelUpload', function(e) {
+                    e.preventDefault();
+                    e.stopPropagation();
+                    console.log('取消上传按钮被点击 - 新事件委托');
+                    console.log('按钮状态:', $(this).prop('disabled'));
+                    console.log('按钮可见性:', $(this).is(':visible'));
+                    cancelUpload();
+                });
+                
+                $(document).on('click', '#refreshList', function(e) {
+                    e.preventDefault();
+                    e.stopPropagation();
+                    console.log('刷新列表按钮被点击 - 新绑定');
+                    refreshFileList();
+                });
 
                 // 初始化文件列表
                 refreshFileList();
@@ -426,7 +460,7 @@
 
                 $('#uploadStatus').text('上传中');
                 $('#startUpload').prop('disabled', true);
-                $('#cancelUpload').prop('disabled', false);
+                $('#cancelUpload').prop('disabled', true);
 
                 uploadNextChunk();
             }
@@ -450,6 +484,7 @@
                 formData.append('chunk', currentChunk);
                 formData.append('chunks', chunks);
                 formData.append('fileMd5', fileMd5);
+                formData.append('companyId', companyId);
 
                 $.ajax({
                     url: '/fileUpload/uploadChunk',
@@ -502,16 +537,20 @@
                     data: {
                         fileName: file.name,
                         fileMd5: fileMd5,
-                        chunks: chunks
+                        chunks: chunks,
+                        companyId: companyId
                     },
                     success: function(response) {
                         if (response.code === 200 || response.success) {
-                            layer.msg('文件上传成功', {icon: 1});
+                            layer.msg('文件上传成功,页面将刷新', {icon: 1, time: 1000});
                             $('#uploadStatus').text('上传成功');
                             $('#uploadProgress').text('100%');
                             $('#progressFill').css('width', '100%').text('100%');
-                            $('#playContainer').show();
-                            refreshFileList();
+                            
+                            // 刷新页面
+                            setTimeout(function() {
+                                location.reload();
+                            }, 1000);
                         } else {
                             layer.msg('文件合并失败: ' + response.message, {icon: 2});
                             $('#uploadStatus').text('上传失败');
@@ -531,40 +570,15 @@
 
             // 取消上传
             function cancelUpload() {
-                console.log('取消上传按钮被点击');
-                // 无论之前状态如何,都重置上传状态
-                isUploading = false;
-
-                // 重置状态
-                currentChunk = 0;
-                uploadedSize = 0;
+                console.log('取消上传函数被调用');
                 
-                // 重置UI显示
-                $('#uploadProgress').text('0%');
-                $('#uploadStatus').text('等待上传');
-                $('#uploadSpeed').text('0KB/s');
-                $('#progressFill').css('width', '0%').text('0%');
+                // 显示成功消息
+                layer.msg('上传已取消,页面将刷新', {icon: 1, time: 1000});
                 
-                // 重置按钮状态
-                $('#startUpload').prop('disabled', false);
-                $('#cancelUpload').prop('disabled', true);
-                
-                // 隐藏相关元素
-                $('#fileInfo').hide();
-                $('#progressContainer').hide();
-                $('#btnGroup').hide();
-                
-                // 重置文件信息显示
-                $('#fileName').text('');
-                $('#fileSize').text('');
-                $('#chunkCount').text('');
-                
-                // 重置文件对象
-                file = null;
-                fileMd5 = '';
-                chunks = 0;
-                
-                console.log('取消上传完成,状态已重置');
+                // 刷新页面
+                setTimeout(function() {
+                    location.reload();
+                }, 1000);
             }
 
             // 更新进度
@@ -578,7 +592,7 @@
             function refreshFileList() {
                 layer.msg('正在获取文件列表...', {icon: 16, time: 0});
                 $.ajax({
-                    url: '/fileUpload/list',
+                    url: '/fileUpload/list/' + companyId,
                     type: 'GET',
                     success: function(response) {
                         layer.closeAll();
@@ -621,7 +635,7 @@
                                     var videoPlayer = document.getElementById('videoPlayer');
                                     var videoSource = document.getElementById('videoSource');
 
-                                    videoSource.src = '/fileUpload/play/' + encodeURIComponent(fileName);
+                                    videoSource.src = '/fileUpload/play/' + companyId + '/' + encodeURIComponent(fileName);
                                     videoPlayer.load();
                                     videoPlayer.play();
                                 });
@@ -635,7 +649,10 @@
                                         $.ajax({
                                             url: '/fileUpload/delete',
                                             type: 'POST',
-                                            data: {fileName: fileName},
+                                            data: {
+                                                fileName: fileName,
+                                                companyId: companyId
+                                            },
                                             success: function(response) {
                                                 if (response.code === 200 || response.success) {
                                                     layer.msg('删除成功', {icon: 1});

--
Gitblit v1.9.1