From afa3bc1e2f39f66f59ee9b15d6af16593acdc9a4 Mon Sep 17 00:00:00 2001
From: LSH
Date: 星期六, 02 十二月 2023 10:38:27 +0800
Subject: [PATCH] #

---
 src/main/webapp/static/js/priOnline2/priOnline.js |  330 ++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 293 insertions(+), 37 deletions(-)

diff --git a/src/main/webapp/static/js/priOnline2/priOnline.js b/src/main/webapp/static/js/priOnline2/priOnline.js
index e520e86..8c1411d 100644
--- a/src/main/webapp/static/js/priOnline2/priOnline.js
+++ b/src/main/webapp/static/js/priOnline2/priOnline.js
@@ -1,11 +1,25 @@
 var pageCurr;
 var admin;
 var treeCond;
+let nowUserId2 = 0;
+fPriOnline();
+function fPriOnline() {
+    layui.jquery.ajax({
+        url: baseUrl + "/dashboard/user/id/popup/auth",
+        data:{token : localStorage.getItem('token')},
+        method: 'GET',
+        success: function (res) {
+            if (res.code === 200) {
+                nowUserId2 = res.data;
+            }
+        }
+    })
+}
 layui.config({
     base: baseUrl + "/static/layui/lay/modules/"
 }).extend({
     cascader: 'cascader/cascader',
-}).use(['table','laydate', 'form', 'admin', 'xmSelect', 'element', 'cascader', 'tree', 'dropdown'], function() {
+}).use(['table', 'laydate', 'form', 'admin', 'xmSelect', 'element', 'cascader', 'tree', 'dropdown','element'], function () {
     var table = layui.table;
     var $ = layui.jquery;
     var layer = layui.layer;
@@ -13,6 +27,7 @@
     var tree = layui.tree;
     var form = layui.form;
     var dropdown = layui.dropdown;
+    var element = layui.element;
     admin = layui.admin;
 
     $('#organization').html(localStorage.getItem('nickname') + ' <i class="layui-icon">&#xe61a;</i>');
@@ -29,13 +44,14 @@
 
     // 鏍戝舰鍥�
     var organizationTree;
-    window.loadTree = function (condition) {
+    window.loadTree = function (condition,allSwitch) {
         var loadIndex = layer.load(2);
         $.ajax({
             url: baseUrl + "/dept/user/tree/auth",
             headers: {'token': localStorage.getItem('token')},
             data: {
-                'condition': condition
+                'condition': condition,
+                'allSwitch': allSwitch
             },
             method: 'POST',
             success: function (res) {
@@ -83,7 +99,7 @@
         cellMinWidth: 150,
         cols: [[
             {type: 'checkbox', fixed: 'left'}
-            , {field: 'id', title: 'ID', sort: true, align: 'center', fixed: 'left', width: 80, hide: true}
+            , {field: 'id', title: 'ID', sort: true, align: 'center', fixed: 'left', width: 80, hide: true, sort:true}
             , {
                 field: 'templateName',
                 align: 'center',
@@ -91,10 +107,10 @@
                 style: 'color: #1890ff;cursor:pointer',
                 event: 'moreCstmr',
                 width: 350,
-                hide: false
+                hide: false, sort:true
             }
             , {field: 'cstmrId$', align: 'center', title: '瀹㈡埛id', hide: true}
-            , {field: 'orderNum', align: 'center', title: '鏍镐环鍗曞彿', hide: false}
+            , {field: 'orderNum', align: 'center', title: '鏍镐环鍗曞彿', hide: false, sort:true}
             , {
                 field: 'planId$',
                 align: 'center',
@@ -103,10 +119,8 @@
                 event: 'morePlan',
                 hide: false
             }
-            , {field: 'itemId', align: 'center', title: '瑙勫垝鍗曞彿', hide: true}
-            , {field: 'createTime$', align: 'center', title: '鍒涘缓鏃堕棿'}
-            , {field: 'updateTime$', align: 'center', title: '鏇存柊鏃堕棿'}
-            , {field: 'status$', align: 'center', title: '鐘舵��'}
+            , {field: 'itemId', align: 'center', title: '瑙勫垝鍗旾D', hide: true, sort:true}
+            , {field: 'statusAll$', align: 'center',title: '鐘舵��'}
             // ,{field: 'memberId$', align: 'center',title: ''}
             , {
                 field: 'settle$',
@@ -116,9 +130,20 @@
                 event: 'more',
                 hide: false
             }
-            , {field: 'user$', align: 'center', title: '涓氬姟鍛�'}
-            , {field: 'updateUserId$', align: 'center', title: '鏇存柊浜哄憳'}
-            , {field: 'checkDataStatus$', align: 'center', title: '鎶ヤ环鏁版嵁'}
+            , {field: 'settleSize', align: 'center', title: '娴佺▼闀垮害', hide: true}
+            , {field: 'user$', align: 'center', title: '涓氬姟鍛�', hide: false}
+            , {field: 'deptId$', align: 'center', title: '閮ㄩ棬', hide: true}
+            , {field: 'checkDataStatus$', align: 'center', title: '鎶ヤ环鏁版嵁', hide: false,width: 80}
+            , {field: 'createTime$', align: 'center', title: '鍒涘缓鏃堕棿', hide: true,width: 120}
+            , {field: 'updateUserId$', align: 'center', title: '鏇存柊浜哄憳', hide: false,width: 80}
+            , {field: 'updateTime$', align: 'center', title: '鏇存柊鏃堕棿', hide: false,width: 120}
+            ,{field: 'assistantHostSign$', align: 'left',title: '涓诲壇鏍囪', hide: false,width: 80}
+            ,{field: 'assistantHostSign', align: 'left',title: '涓诲壇鏍囪', hide: true,width: 80}
+            ,{field: 'hostPlanId', align: 'left',title: '涓籌D', hide: true,width: 80}
+            ,{field: 'assistantPlanId', align: 'left',title: '鍓疘D', hide: true,width: 80}
+            ,{field: 'nowUserId', title: 'nowUserId', hide: true, templet:function(){return nowUserId2}}
+            ,{field: 'userId',title: 'userId', hide: true}
+            ,{field: 'memberId',title: 'memberId', hide: true}
             , {fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 350}
         ]],
         request: {
@@ -126,6 +151,9 @@
             pageSize: 'limit'
         },
         parseData: function (res) {
+            res.data.records.forEach((item,index) => {
+                item.nowUserId = nowUserId2
+            })
             return {
                 'code': res.code,
                 'msg': res.msg,
@@ -174,6 +202,9 @@
         switch (obj.event) {
             case 'addBlank':
                 showEditModel();
+                break;
+            case 'addBlank2':
+                showEditModel2();
                 break;
             case 'refreshData':
                 tableIns.reload({
@@ -254,6 +285,101 @@
         }
     });
 
+    $("#data-btn-file2").on("click", (e) => {
+        $("#data-btn-upload").click()
+    });
+
+    var _uploadFile = null
+    //鍝嶅簲涓婁紶
+    $("#data-btn-upload").on("change",(evt) => {
+        var files = evt.target.files;
+        if(files==null || files.length==0){
+            alert("No files wait for import");
+            return;
+        }
+
+        var file = files[0]
+
+        var tr = $(['<tr id="upload-">'
+            ,'<td id="upload-filename-id-'+ file.lastModified + '">' + file.name +'</td>'
+            ,'<td>'+ (file.size/1014).toFixed(1) +'kb</td>'
+            ,'<td id="upload-filename-userName-'+ '">' +'</td>'
+            ,'<td id="upload-file-id-' + file.lastModified + '"><div class="layui-progress layui-progress-big" lay-showPercent="true" lay-filter="progress-demo-'+ file.lastModified +'"><div class="layui-progress-bar" lay-percent=""></div></div></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>'
+            ,'<button id="file-download" class="layui-btn layui-btn-xs demo-reload layui-hide">涓嬭浇</button>'
+            ,'</td>'
+            ,'</tr>'].join(''));
+
+        //鍒犻櫎
+        tr.find('.demo-delete').on('click', function(){
+            tr.remove();
+            $("#data-btn-upload").val("")
+            _uploadFile = null
+        });
+
+        $('#data-btn-file3').append(tr)
+
+        element.progress('progress-demo-'+ file.lastModified, '0%'); //鎵ц杩涘害鏉°��
+        element.init();
+
+        _uploadFile = file
+    })
+
+    //寮�濮嬩笂浼�
+    $("#testListAction").on("click", async (e) => {
+        if (_uploadFile == null) {
+            return false;
+        }
+
+        var index = layer.load(1, {
+            shadeClose: false,
+            title: '涓婁紶涓�..',
+            shade: [0.5,'#000']
+        });
+
+        var file = _uploadFile
+
+        putObject(file,(p) => {
+            element.progress('progress-demo-'+ file.lastModified, (Math.round(p * 100)) + "%"); //鎵ц杩涘害鏉°��
+        }).then((result) => {
+            var filename = result.name
+            layer.msg('涓婁紶鎴愬姛', {icon: 1});
+            $("#upload-file-id-" + file.lastModified).html("涓婁紶鎴愬姛")
+            $("#upload-filename-id-" + file.lastModified).html(filename)
+            let token = localStorage.getItem("token");
+            $.ajax({
+                url: baseUrl+"/pri/online/url/insert/file/auth",
+                headers: {'token': localStorage.getItem('token')},
+                data: {
+                    'planId': $('.layui-layer-title').text(),
+                    'filename': filename,
+                    'filesize': file.size
+                },
+                method: 'POST',
+                success: function (res) {
+                    if (res.code === 200){
+                        layer.close(index)
+                        // console.log(res)
+                    } else if (res.code === 403){
+                        top.location.href = baseUrl+"/";
+                    } else {
+                        layer.msg(res.msg)
+                    }
+                }
+            });
+        }).catch((e) => {
+            // console.log(e)
+            layer.msg('涓婁紶澶辫触', {icon: 2});
+            $("#upload-file-id-" + file.lastModified).html("涓婁紶澶辫触")
+        })
+
+        //娓呯┖file
+        $("#data-btn-upload").val("")
+        _uploadFile = null
+    });
+
     // 鐩戝惉琛屽伐鍏蜂簨浠�
     table.on('tool(priOnline)', function (obj) {
         var data = obj.data;
@@ -266,6 +392,7 @@
                     title: data.name
                 }, function (i) {
                     layer.close(i);
+                    // console.log(data)
                     approvalEnd(data.id);
                 });
                 break;
@@ -276,13 +403,14 @@
                     offset: '200px',
                     title: data.name
                 }, function (i) {
+                    // console.log(data)
                     layer.close(i);
-                    // 鎸囧畾瑙勫垝鍛�
-                    if (data.settle === 1) {
+                    // 鎸囧畾妯℃澘
+                    if (((data.settle === 1 && data.settleSize===3) || (data.settle===2 && data.settleSize===4)) && data.assistantHostSign==0) {
                         admin.open({
                             type: 1,
                             area: '300px',
-                            title: '閫夋嫨瑙勫垝鍛�',
+                            title: '閫夋嫨鎶ヤ环妯℃澘',
                             content: $('#plannerListDialog').html(),
                             success: function (layero, dIndex) {
                                 let plannerSel = xmSelect.render({
@@ -500,7 +628,69 @@
                     }
                 });
                 break;
+            case "uploadLink":
+                // 鎵撳紑寮圭獥
+                // 鏋勫缓甯﹀弬鏁扮殑鍐呭
+                var planIdSign = data.itemId;
+                if (data.assistantHostSign==1){
+                    planIdSign = data.hostPlanId;
+                }
+                layer.open({
+                    type: 1,
+                    title: '涓婁紶鏂囦欢-'+planIdSign+'-'+data.id,
+                    content: $('#myModal'),
+
+                });
+                // 鑾峰彇璺緞涓嬬殑鏂囦欢鍒楄〃锛屼娇鐢� jQuery 鐨� ajax 鏂规硶
+                $.ajax({
+                    url: '/pri/online/url/view/file/auth',
+                    headers: {'token': localStorage.getItem('token')},
+                    data:{
+                        planId:planIdSign,
+                        planIdI:data.itemId
+                    },
+                    success: function(response) {
+                        if (response.code==200){
+                            var targetTable = document.getElementById("data-btn-file3");
+                            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>' + file.userName + '</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() {
+        // console.log(this)
+        var downloadUrl = $(this).attr('href');
+        let url = getObjectUrl(downloadUrl)
+        layer.msg("鍑嗗涓嬭浇涓�", {icon: 1});
+        location.href = url
+        return false;  // 闃绘榛樿鐨勯摼鎺ヨ烦杞涓�
     });
 
     // 鎼滅储
@@ -543,6 +733,42 @@
         });
     }
 
+    // /* 寮圭獥 - 鏂板銆佷慨鏀� */
+    // function showEditModel2(mData) {
+    //     admin.open({
+    //         type: 1,
+    //         area: '800px',
+    //         title: '鎺ュ彇' + '鏍镐环',
+    //         content: $('#editDialogHJ').html(),
+    //         success: function (layero, dIndex) {
+    //             let loadNameXml = loadNameXmlSel()
+    //             form.val('detailHJ', mData);
+    //             form.on('submit(editSubmitHJ)', function (data) {
+    //                 data.field.id = loadNameXml.getValue()[0] ? loadNameXml.getValue()[0].id : null;
+    //                 $.ajax({
+    //                     url: baseUrl+"/priOnline2/HJ/add/auth",
+    //                     headers: {'token': localStorage.getItem('token')},
+    //                     data: data.field,
+    //                     method: 'POST',
+    //                     success: function (res) {
+    //                         if (res.code === 200){
+    //                             layer.close(dIndex);
+    //                             layer.msg(res.msg, {icon: 1});
+    //                             tableReload()
+    //                         } else if (res.code === 403){
+    //                             top.location.href = baseUrl+"/";
+    //                         }else {
+    //                             layer.msg(res.msg, {icon: 2});
+    //                         }
+    //                     }
+    //                 })
+    //             });
+    //             $(layero).children('.layui-layer-content').css('overflow', 'visible');
+    //             layui.form.render('select');
+    //         }
+    //     });
+    // }
+
     //鏇存柊form
     function showEditForm(mData) {
         admin.open({
@@ -581,10 +807,11 @@
             }
         });
     }
-    function approvalEnd(planId, plannerId, dIdx) {
+
+    function approvalEnd(priOnlineId, plannerId, dIdx) {
         let loadIndex = layer.load(2);
         $.ajax({
-            url: baseUrl+"/priOnline2/approvalEnd/auth",
+            url: baseUrl + "/priOnline2/approvalEnd/auth",
             headers: {'token': localStorage.getItem('token')},
             data: {
                 priOnlineId: priOnlineId,
@@ -596,11 +823,11 @@
                     layer.close(dIdx);
                 }
                 layer.close(loadIndex);
-                if (res.code === 200){
+                if (res.code === 200) {
                     layer.msg(res.msg, {icon: 1});
                     tableReload();
-                } else if (res.code === 403){
-                    top.location.href = baseUrl+"/";
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/";
                 } else {
                     layer.msg(res.msg, {icon: 2});
                 }
@@ -611,7 +838,7 @@
     function approval(priOnlineId, plannerId, dIdx) {
         let loadIndex = layer.load(2);
         $.ajax({
-            url: baseUrl+"/priOnline2/approval/auth",
+            url: baseUrl + "/priOnline2/approval/auth",
             headers: {'token': localStorage.getItem('token')},
             data: {
                 priOnlineId: priOnlineId,
@@ -623,11 +850,11 @@
                     layer.close(dIdx);
                 }
                 layer.close(loadIndex);
-                if (res.code === 200){
+                if (res.code === 200) {
                     layer.msg(res.msg, {icon: 1});
                     tableReload();
-                } else if (res.code === 403){
-                    top.location.href = baseUrl+"/";
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/";
                 } else {
                     layer.msg(res.msg, {icon: 2});
                 }
@@ -635,16 +862,45 @@
         })
     }
 
+    // window.loadNameXmlSel = function () {
+    //     return xmSelect.render({
+    //         el: '#nameXmlSel',
+    //         autoRow: true,
+    //         filterable: true,
+    //         remoteSearch: true,
+    //         clickClose: true,
+    //         radio: true,
+    //         remoteMethod: function (val, cb, show) {
+    //             $.ajax({
+    //                 url: baseUrl + "/priOnline2/HJ/search/auth",
+    //                 headers: {'token': localStorage.getItem('token')},
+    //                 data: {
+    //                     condition: val
+    //                 },
+    //                 method: 'POST',
+    //                 success: function (res) {
+    //                     if (res.code === 200) {
+    //                         cb(res.data)
+    //                     } else {
+    //                         cb([]);
+    //                         layer.msg(res.msg, {icon: 2});
+    //                     }
+    //                 }
+    //             });
+    //         }
+    //     });
+    // }
+
 });
 
 // 鍏抽棴鍔ㄤ綔
-$(document).on('click','#data-detail-close', function () {
+$(document).on('click', '#data-detail-close', function () {
     parent.layer.closeAll();
 });
 
 function tableReload(child) {
     var searchData = {};
-    $.each($('#search-box [name]').serializeArray(), function() {
+    $.each($('#search-box [name]').serializeArray(), function () {
         searchData[this.name] = this.value;
     });
     (child ? parent.tableIns : tableIns).reload({
@@ -654,14 +910,14 @@
         },
         done: function (res, curr, count) {
             if (res.code === 403) {
-                top.location.href = baseUrl+"/";
+                top.location.href = baseUrl + "/";
             }
-            pageCurr=curr;
+            pageCurr = curr;
             if (res.data.length === 0 && count !== 0) {
                 tableIns.reload({
                     where: searchData,
                     page: {
-                        curr: pageCurr-1
+                        curr: pageCurr - 1
                     }
                 });
                 pageCurr -= 1;
@@ -675,9 +931,9 @@
     for (var val in data) {
         var find = el.find(":input[id='" + val + "']");
         find.val(data[val]);
-        if (showImg){
+        if (showImg) {
             var next = find.next();
-            if (next.get(0)){
+            if (next.get(0)) {
                 if (next.get(0).localName === "img") {
                     find.hide();
                     next.attr("src", data[val]);
@@ -697,13 +953,13 @@
 
 function detailScreen(index) {
     var detail = layer.getChildFrame('#data-detail', index);
-    var height = detail.height()+60;
-    if (height > ($(window).height()*0.9)) {
-        height = ($(window).height()*0.9);
+    var height = detail.height() + 60;
+    if (height > ($(window).height() * 0.9)) {
+        height = ($(window).height() * 0.9);
     }
     layer.style(index, {
-        top: (($(window).height()-height)/3)+"px",
-        height: height+'px'
+        top: (($(window).height() - height) / 3) + "px",
+        height: height + 'px'
     });
     $(".layui-layer-shade").remove();
 }

--
Gitblit v1.9.1