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"></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"></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