From a9315d03ef67e604ce896fc1f70638b1d57a4d6c Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期四, 03 八月 2023 12:52:15 +0800
Subject: [PATCH] #核价管理功能完善

---
 src/main/webapp/static/js/plan/plan.js |   80 ++++++++++++++++++++++++++++++++++++---
 1 files changed, 73 insertions(+), 7 deletions(-)

diff --git a/src/main/webapp/static/js/plan/plan.js b/src/main/webapp/static/js/plan/plan.js
index 5f095b0..ae1fe6b 100644
--- a/src/main/webapp/static/js/plan/plan.js
+++ b/src/main/webapp/static/js/plan/plan.js
@@ -3,7 +3,6 @@
 var treeCond;
 var admin;
 var planNeedXmlSelData;
-var planNeedXmlFileId;
 layui.config({
     base: baseUrl + "/static/layui/lay/modules/"
 }).extend({
@@ -198,17 +197,19 @@
         }
     });
 
-    //婕旂ず澶氭枃浠跺垪琛�
+    //澶氭枃浠跺垪琛�
     var uploadListIns = upload.render({
         elem: '#data-btn-file2'
         ,elemList: $('#data-btn-file3') //鍒楄〃鍏冪礌瀵硅薄
-        ,url: '/plan/insert/file/auth' //姝ゅ鐢ㄧ殑鏄涓夋柟鐨� http 璇锋眰婕旂ず锛屽疄闄呬娇鐢ㄦ椂鏀规垚鎮ㄨ嚜宸辩殑涓婁紶鎺ュ彛鍗冲彲銆�
+        ,url: '/plan/insert/file/auth'
         ,accept: 'file'
         ,multiple: true
-        ,number: 3
+        ,number: 10
         ,auto: false
         ,bindAction: '#testListAction'
         ,choose: function(obj){
+            // 璧嬪��
+            this.data.planId=$('.layui-layer-title').text()
             var that = this;
             var files = this.files = obj.pushFile(); //灏嗘瘡娆¢�夋嫨鐨勬枃浠惰拷鍔犲埌鏂囦欢闃熷垪
             //璇诲彇鏈湴鏂囦欢
@@ -220,6 +221,7 @@
                     ,'<td>'
                     ,'<button class="layui-btn layui-btn-xs demo-reload layui-hide">閲嶄紶</button>'
                     ,'<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">鍒犻櫎</button>'
+                    ,'<button id="file-download" class="layui-btn layui-btn-xs demo-reload layui-hide">涓嬭浇</button>'
                     ,'</td>'
                     ,'</tr>'].join(''));
 
@@ -259,7 +261,7 @@
                 ,tds = tr.children();
             tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //鏄剧ず閲嶄紶
         }
-        ,progress: function(n, elem, e, index){ //娉ㄦ剰锛歩ndex 鍙傛暟涓� layui 2.6.6 鏂板
+        ,progress: function(n, elem, e, index){
             element.progress('progress-demo-'+ index, n + '%'); //鎵ц杩涘害鏉°�俷 鍗充负杩斿洖鐨勮繘搴︾櫨鍒嗘瘮
         }
     });
@@ -534,16 +536,80 @@
             case "uploadLink":
                 // 鎵撳紑寮圭獥
                 // 鏋勫缓甯﹀弬鏁扮殑鍐呭
-                planNeedXmlFileId = data.id;
                 layer.open({
                     type: 1,
-                    title: '涓婁紶鏂囦欢',
+                    title: '涓婁紶鏂囦欢-'+data.id,
                     content: $('#myModal')
+                });
+                // 鑾峰彇璺緞涓嬬殑鏂囦欢鍒楄〃锛屼娇鐢� jQuery 鐨� ajax 鏂规硶
+                $.ajax({
+                    url: '/plan/view/file/auth',
+                    data:{
+                        planId:data.id
+                    },
+                    success: function(response) {
+                        if (response.code==200){
+                            var targetTable = document.getElementById("data-btn-file3");
+                            // var targetTable1 = document.getElementById("layui-layer2");
+                            // // 鑾峰彇鏂囨湰鍐呭
+                            // var text = targetTable1.textContent.trim();
+                            // console.log(text); // 杈撳嚭 '涓婁紶鏂囦欢-20'
+                            targetTable.innerHTML = '';
+                            // 灏嗚幏鍙栧埌鐨勬枃浠跺垪琛ㄦ坊鍔犲埌鏂囦欢闃熷垪涓繘琛屾樉绀�
+                            response.data.forEach(function(file,index) {
+                                // 鍒涘缓tr鍏冪礌
+                                var tr = document.createElement("tr");
+                                tr.id = "upload-"+index;
+                                tr.innerHTML = '<td>' + file.name + '</td>'
+                                    + '<td>' + (file.size / 1024).toFixed(1) + 'kb</td>'
+                                    // + '<td><div class="layui-progress" lay-filter="progress-demo-' + index ,100 + '%'+ '"><div class="layui-progress-bar" lay-percent=""></div></div></td>'
+                                    + '<td>'+'宸插畬鎴�'+'</td>'
+                                    + '<td>'
+                                    + '<button class="layui-btn layui-btn-xs demo-reload layui-hide">閲嶄紶</button>'
+                                    // + '<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">鍒犻櫎</button>'
+                                    + '<a href="' + file.path + '" download class="layui-btn layui-btn-xs layui-btn-primary">涓嬭浇</a>'
+                                    + '</td>';
+                                // 灏唗r鍏冪礌娣诲姞鍒扮洰鏍噒able涓�
+                                targetTable.appendChild(tr);
+                            });
+                        }else {
+                            console.log('Failed to get file list error.');
+                        }
+                    },
+                    error: function() {
+                        console.log('Failed to get file list.');
+                    }
                 });
                 break;
         }
     });
 
+    // 鐐瑰嚮涓嬭浇鎸夐挳鏃惰Е鍙戞枃浠朵笅杞�
+    $('#data-btn-file3').on('click', 'a', function() {
+        var downloadUrl = $(this).attr('href');
+        console.log(downloadUrl)
+        // 鍙戣捣 AJAX 璇锋眰锛岃幏鍙栨枃浠�
+        $.ajax({
+            url: '/plan/download/file/auth',
+            type: 'POST',
+            data: { downloadUrl: downloadUrl },  // 浼犻�掍笅杞介摼鎺ヤ綔涓哄弬鏁�
+            success: function(response) {
+                console.log(response)
+                // window.open(baseUrl+response.msg)
+                // 鍒涘缓涓�涓狟lob瀵硅薄
+                var blob = new Blob([response]);
+                // 浣跨敤FileSaver淇濆瓨鏂囦欢
+                var fileName = downloadUrl.substring(downloadUrl.lastIndexOf('\\') + 1);
+                console.log(fileName)
+                saveAs(blob, fileName);
+            },
+            error: function() {
+                layer.msg('璇锋眰鏂囦欢涓嬭浇澶辫触');
+            }
+        });
+        return false;  // 闃绘榛樿鐨勯摼鎺ヨ烦杞涓�
+    });
+
     function approval(planId, plannerId, dIdx) {
         let loadIndex = layer.load(2);
         $.ajax({

--
Gitblit v1.9.1