From e6a2b78ffe066d2f32a878df5eb6588d0e8ebff2 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期日, 18 九月 2022 20:11:49 +0800
Subject: [PATCH] #

---
 src/main/webapp/static/js/cstmr/cstmr.js |  117 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 106 insertions(+), 11 deletions(-)

diff --git a/src/main/webapp/static/js/cstmr/cstmr.js b/src/main/webapp/static/js/cstmr/cstmr.js
index 73b0d1e..dc0405e 100644
--- a/src/main/webapp/static/js/cstmr/cstmr.js
+++ b/src/main/webapp/static/js/cstmr/cstmr.js
@@ -1,6 +1,7 @@
 var pageCurr;
 var pageCount = 0;
 var treeCond;
+var admin;
 layui.config({
     base: baseUrl + "/static/layui/lay/modules/"
 }).extend({
@@ -11,18 +12,69 @@
     var layer = layui.layer;
     var layDate = layui.laydate;
     var form = layui.form;
-    var admin = layui.admin;
+    admin = layui.admin;
     var xmSelect = layui.xmSelect;
     var cascader = layui.cascader;
     var tree = layui.tree;
     var dropdown = layui.dropdown;
 
+    $('#organization').html(localStorage.getItem('nickname') + ' <i class="layui-icon">&#xe61a;</i>');
+
+    // 閮ㄩ棬浜哄憳 绛涢��
     dropdown.render({
         elem: '#organization'
         ,content: ['<div id="organizationTree" style="height: calc(100vh - 525px);border: none"></div>'].join('')
         ,style: 'width: 370px; height: 500px; padding: 0 15px; box-shadow: 1px 1px 30px rgb(0 0 0 / 12%);'
         ,ready: function(){
             loadTree();
+        }
+    });
+
+    // 鏁版嵁鍚屾
+    dropdown.render({
+        elem: '#data-btn'
+        ,align: 'right'
+        ,style: 'border-radius: 5px;'
+        ,className: 'site-dropdown-demo'
+        ,data: [
+            {
+                title: '妯℃澘涓嬭浇'
+                ,templet: '<i class="layui-icon layui-icon-template-1"></i>{{d.title}}'
+                ,id: 1
+            },
+            {
+                title: '瀵煎叆 Excel'
+                ,templet: '<i class="layui-icon layui-icon-upload"></i>{{d.title}}'
+                ,id: 2
+            },
+            {type: '-'}, //鍒嗗壊绾�
+            {
+                title: '瀵煎嚭 Excel'
+                ,templet: '<i class="layui-icon layui-icon-export"></i>{{d.title}}'
+                ,id: 3
+            }
+        ]
+        ,click: async function(item){
+            switch (item.id) {
+                case 1:
+                    // 妯℃澘涓嬭浇
+                    layer.load(1, {shade: [0.1,'#fff']});
+                    location.href = baseUrl + "/mould/鐢叉柟鍗曚綅瀵煎叆妯℃澘.xls";
+                    layer.closeAll('loading');
+                    break
+                case 2:
+                    // 瀵煎叆 Excel
+                    let arrFileHandle = await window.showOpenFilePicker()
+                    let file = await arrFileHandle[0].getFile();
+                    upload(file);
+                    break
+                case 3:
+                    // 瀵煎嚭 Excel
+                    layer.msg("鏉ヤ笉鍙婂仛锛岀瓑绛�", {icon: 6});
+                    break
+                default:
+                    break
+            }
         }
     });
 
@@ -50,8 +102,10 @@
                                 key: obj.data.key,
                                 val: obj.data.id
                             }
+                            $('#organization').html(obj.data.title + ' <i class="layui-icon">&#xe61a;</i>');
                             $('#organizationTree').find('.ew-tree-click').removeClass('ew-tree-click');
                             $(obj.elem).children('.layui-tree-entry').addClass('ew-tree-click');
+                            clearFormVal($('#search-box'));
                             tableIns.reload({
                                 where: {[obj.data.key]: obj.data.id},
                                 page: {curr: 1}
@@ -172,16 +226,17 @@
         var data = obj.data;
         switch (obj.event) {
             case 'more':
-                top.cstmrByMore = data.id;
-                admin.popupRight({
-                    type: 1,
-                    window: "top",
-                    area: "1250px",
-                    url: "cstmr_more.html",
-                    end: function () {
-                        $(".layui-laypage-btn")[0].click();
-                    }
-                })
+                layer.msg("鏉ヤ笉鍙婂仛锛岀瓑绛�", {icon: 6});
+                // top.cstmrByMore = data.id;
+                // admin.popupRight({
+                //     type: 1,
+                //     window: "top","
+                //     area: "1250px",
+                //     url: "cstmr_more.html",
+                //     end: function () {
+                //         $(".layui-laypage-btn")[0].click();
+                //     }
+                // })
                 break;
             case 'edit':
                 showEditModel(data);
@@ -329,3 +384,43 @@
         $(".layui-laypage-btn")[0].click();
     }
 }
+
+function upload(file){
+    if(!file) {
+        return;
+    }
+    admin.confirm('纭鍚屾 [' + file.name +'] 鏂囦欢鍚楋紵', function (index) {
+        layer.load(1, {shade: [0.1,'#fff']});
+        var url = baseUrl + "/cstmr/excel/import/auth";
+        var form = new FormData();
+        form.append("file", file);
+        let xhr = new XMLHttpRequest();
+        xhr.open("post", url, true);
+        xhr.setRequestHeader('token', localStorage.getItem('token'));
+        xhr.onload = uploadComplete;
+        xhr.onerror =  uploadFailed;
+        xhr.onloadend = function () {
+            layer.closeAll('loading');
+        };
+        // xhr.upload.onprogress = progressFunction;
+        xhr.upload.onloadstart = function(){
+            ot = new Date().getTime();
+            oloaded = 0;
+        };
+        xhr.send(form);
+    }, function(index){
+    });
+}
+function uploadComplete(evt) {
+    let res = JSON.parse(evt.target.responseText);
+    if(res.code === 200) {
+        layer.msg(res.msg, {icon: 1});
+        tableIns.refresh();
+    } else {
+        layer.msg(res.msg, {icon: 2});
+    }
+}
+function uploadFailed(evt) {
+    let res = JSON.parse(evt.target.responseText);
+    layer.msg(res.msg, {icon: 2});
+}

--
Gitblit v1.9.1