From 21c986ab8042c7bc6ba2a40ecf839fb6cf521d15 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期一, 07 十一月 2022 15:09:15 +0800
Subject: [PATCH] #

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

diff --git a/src/main/webapp/static/js/cstmr/cstmr.js b/src/main/webapp/static/js/cstmr/cstmr.js
index 70fd30e..b72ce78 100644
--- a/src/main/webapp/static/js/cstmr/cstmr.js
+++ b/src/main/webapp/static/js/cstmr/cstmr.js
@@ -1,5 +1,7 @@
 var pageCurr;
 var pageCount = 0;
+var treeCond;
+var admin;
 layui.config({
     base: baseUrl + "/static/layui/lay/modules/"
 }).extend({
@@ -10,24 +12,75 @@
     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: '#slrassa'
+        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%);'
+        ,style: 'width: 370px; height: 350px; 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
+                    $("#importExcel").trigger("click");
+                    // let arrFileHandle = await window.showOpenFilePicker()
+                    // let file = await arrFileHandle[0].getFile();
+                    // upload(file);
+                    break
+                case 3:
+                    // 瀵煎嚭 Excel
+                    layer.msg("鏉ヤ笉鍙婂仛锛岀瓑绛�", {icon: 6});
+                    break
+                default:
+                    break
+            }
+        }
+    });
+
     // 鏍戝舰鍥�
     var organizationTree;
-    var selObj;
     window.loadTree = function(condition){
         var loadIndex = layer.load(2);
         $.ajax({
@@ -46,10 +99,14 @@
                         onlyIconControl: true,
                         data: res.data,
                         click: function (obj) {
-                            console.log(obj)
-                            selObj = obj;
+                            treeCond = {
+                                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}
@@ -82,14 +139,14 @@
             {type: 'checkbox'}
             // ,{field: 'id', align: 'center',title: 'ID'}
             // ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'}
-            ,{field: 'name', align: 'left',title: '瀹㈡埛鍚嶇О', style: 'color: #1890ff;cursor:pointer', event: 'more'}
+            ,{field: 'name', align: 'left',title: '瀹㈡埛鍚嶇О', style: 'color: #1890ff;cursor:pointer', event: 'more', width: 350}
             ,{field: 'uuid', align: 'left',title: '瀹㈡埛浠e彿'}
             ,{field: 'addr', align: 'left',title: '璇︾粏鍦板潃', templet:function(d){return emptyShow(d.addr)}}
             ,{field: 'tel', align: 'left',title: '鐢佃瘽', templet:function(d){return emptyShow(d.tel)}}
             ,{field: 'remarks', align: 'left',title: '澶囨敞', templet:function(d){return emptyShow(d.remarks)}}
-            ,{field: 'createTime$', align: 'left',title: '娣诲姞鏃堕棿'}
-            ,{field: 'userId$', align: 'left',title: '娣诲姞浜哄憳'}
             ,{field: 'cstmrType$', align: 'left',title: '瀹㈡埛绫诲埆'}
+            ,{field: 'userId$', align: 'left',title: '娣诲姞浜哄憳'}
+            ,{field: 'createTime$', align: 'left',title: '娣诲姞鏃堕棿'}
             ,{field: 'deptId$', align: 'left',title: '鎵�灞為儴闂�', hide: true}
             ,{field: 'simple', align: 'left',title: '瀹㈡埛绠�绉�', hide: true}
             ,{field: 'rela', align: 'left',title: '瀹㈡埛鍏崇郴', hide: true}
@@ -170,6 +227,7 @@
         var data = obj.data;
         switch (obj.event) {
             case 'more':
+                // layer.msg("鏉ヤ笉鍙婂仛锛岀瓑绛�", {icon: 6});
                 top.cstmrByMore = data.id;
                 admin.popupRight({
                     type: 1,
@@ -263,6 +321,7 @@
     // 鎼滅储
     form.on('submit(search)', function (data) {
         pageCurr = 1;
+        pageCount = 0;
         tableReload();
     });
 
@@ -297,8 +356,7 @@
             itemHeight: '250px',
             filterable: true,
             onChange: function (values, data) {
-                // console.log(values);
-                // console.log(data);
+                // console.log(values);console.log(data);
             }
         });
     }
@@ -316,6 +374,9 @@
         $.each($('#search-box [name]').serializeArray(), function() {
             searchData[this.name] = this.value;
         });
+        if (treeCond) {
+            searchData[treeCond.key] = treeCond.val;
+        }
         tableIns.reload({
             where: searchData,
             page: {curr: pageCurr}
@@ -324,3 +385,46 @@
         $(".layui-laypage-btn")[0].click();
     }
 }
+
+function upload(obj){
+    if(!obj.files) {
+        return;
+    }
+    var file = obj.files[0];
+    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});
+        tableReload();
+    } else {
+        alert(res.msg);
+        // layer.msg(res.msg, {icon: 2});
+    }
+}
+function uploadFailed(evt) {
+    let res = JSON.parse(evt.target.responseText);
+    alert(res.msg);
+    // layer.msg(res.msg, {icon: 2});
+}

--
Gitblit v1.9.1