From 19c9d6fa6eb8cac0898886e1a9508f8a83792f3f Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期二, 08 十一月 2022 15:13:40 +0800 Subject: [PATCH] # --- src/main/webapp/views/order/order_more.html | 425 ++++++++++++++++++++++++++++++ src/main/webapp/static/js/order/order.js | 324 ++++++++++++++++------ src/main/webapp/static/js/common.js | 1 src/main/webapp/views/order/order.html | 90 ++++- 4 files changed, 726 insertions(+), 114 deletions(-) diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js index 4df8afd..9285287 100644 --- a/src/main/webapp/static/js/common.js +++ b/src/main/webapp/static/js/common.js @@ -262,3 +262,4 @@ var popupRight; var cstmrByMore; +var orderByMore; diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js index 895ec78..73503ce 100644 --- a/src/main/webapp/static/js/order/order.js +++ b/src/main/webapp/static/js/order/order.js @@ -1,29 +1,141 @@ var pageCurr; +var pageCount = 0; +var treeCond; +var admin; layui.config({ base: baseUrl + "/static/layui/lay/modules/" -}).use(['table','laydate', 'form', 'admin'], function(){ +}).extend({ + cascader: 'cascader/cascader', +}).use(['table','laydate', 'form', 'admin', 'xmSelect', 'element', 'cascader', 'tree', 'dropdown'], function(){ var table = layui.table; var $ = layui.jquery; 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: 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"); + break + case 3: + // 瀵煎嚭 Excel + layer.msg("鏉ヤ笉鍙婂仛锛岀瓑绛�", {icon: 6}); + break + default: + break + } + } + }); + + // 鏍戝舰鍥� + var organizationTree; + window.loadTree = function(condition){ + var loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/dept/user/tree/auth", + headers: {'token': localStorage.getItem('token')}, + data: { + 'condition': condition + }, + method: 'POST', + success: function (res) { + layer.close(loadIndex); + if (res.code === 200){ + organizationTree = tree.render({ + elem: '#organizationTree', + id: 'organizationTree', + onlyIconControl: true, + data: res.data, + click: function (obj) { + treeCond = { + 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} + }); + } + }); + treeData = res.data; + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg) + } + } + }) + } // 鏁版嵁娓叉煋 tableIns = table.render({ elem: '#order', headers: {token: localStorage.getItem('token')}, - url: baseUrl+'/order/list/auth', + url: baseUrl+'/order/page/auth', page: true, limit: 15, limits: [15, 30, 50, 100, 200, 500], - toolbar: '#toolbar', - cellMinWidth: 50, - height: 'full-120', + // cellMinWidth: 100, + height: 'full-148', + // size: 'sm', + skin: 'line', cols: [[ {type: 'checkbox'} - ,{field: 'id', align: 'center',title: 'ID'} - ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'} + // ,{field: 'id', align: 'center',title: 'ID'} + // ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'} ,{field: 'deptId$', align: 'center',title: '鎵�灞為儴闂�'} ,{field: 'userId$', align: 'center',title: '鎵�灞炰汉鍛�'} ,{field: 'cstmrId$', align: 'center',title: '鐢叉柟鍗曚綅'} @@ -33,18 +145,18 @@ ,{field: 'company$', align: 'center',title: '鎵�灞炲叕鍙�'} ,{field: 'remarks', align: 'center',title: '澶囨敞'} ,{field: 'director$', align: 'center',title: '璐熻矗浜�'} - ,{field: 'province', align: 'center',title: '鐪�'} - ,{field: 'city', align: 'center',title: '甯�'} - ,{field: 'district', align: 'center',title: '鍘�'} - ,{field: 'town', align: 'center',title: '闀�'} - ,{field: 'addr', align: 'center',title: '璇︾粏鍦板潃'} - ,{field: 'files', align: 'center',title: '闄勪欢'} - ,{field: 'status$', align: 'center',title: '鐘舵��'} - ,{field: 'createBy$', align: 'center',title: '娣诲姞浜哄憳'} - ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'} - ,{field: 'updateBy$', align: 'center',title: '淇敼浜哄憳'} - ,{field: 'updateTime$', align: 'center',title: '淇敼鏃堕棿'} - ,{field: 'memo', align: 'center',title: '娉ㄩ噴'} + ,{field: 'province', align: 'center',title: '鐪�', hide: true} + ,{field: 'city', align: 'center',title: '甯�', hide: true} + ,{field: 'district', align: 'center',title: '鍘�', hide: true} + ,{field: 'town', align: 'center',title: '闀�', hide: true} + ,{field: 'addr', align: 'center',title: '璇︾粏鍦板潃', hide: true} + ,{field: 'files', align: 'center',title: '闄勪欢', hide: true} + ,{field: 'status$', align: 'center',title: '鐘舵��', hide: true} + ,{field: 'createBy$', align: 'center',title: '娣诲姞浜哄憳', hide: true} + ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿', hide: true} + ,{field: 'updateBy$', align: 'center',title: '淇敼浜哄憳', hide: true} + ,{field: 'updateTime$', align: 'center',title: '淇敼鏃堕棿', hide: true} + ,{field: 'memo', align: 'center',title: '娉ㄩ噴', hide: true} ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120} ]], @@ -68,8 +180,26 @@ top.location.href = baseUrl+"/"; } pageCurr=curr; + pageCount = count; limit(); } + }); + + // 娣诲姞 + $("#orderAddBtn").click(function () { + showEditModel(); + }); + + // 鍒犻櫎 + form.on('submit(orderDel)', function (data) { + let checkStatus = layui.table.checkStatus('order').data; + if (checkStatus.length === 0) { + layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2}); + return; + } + del(checkStatus.map(function (d) { + return d.id; + })); }); // 鐩戝惉鎺掑簭浜嬩欢 @@ -86,67 +216,23 @@ }); }); - // 鐩戝惉澶村伐鍏锋爮浜嬩欢 - table.on('toolbar(order)', function (obj) { - var checkStatus = table.checkStatus(obj.config.id).data; - switch(obj.event) { - case 'addData': - showEditModel(); - break; - case 'deleteData': - if (checkStatus.length === 0) { - layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2}); - return; - } - del(checkStatus.map(function (d) { - return d.id; - })); - break; - case 'exportData': - admin.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){ - var titles=[]; - var fields=[]; - obj.config.cols[0].map(function (col) { - if (col.type === 'normal' && col.hide === false && col.toolbar == null) { - titles.push(col.title); - fields.push(col.field); - } - }); - var exportData = {}; - $.each($('#search-box [name]').serializeArray(), function() { - exportData[this.name] = this.value; - }); - var param = { - 'order': exportData, - 'fields': fields - }; - $.ajax({ - url: baseUrl+"/order/export/auth", - headers: {'token': localStorage.getItem('token')}, - data: JSON.stringify(param), - dataType:'json', - contentType:'application/json;charset=UTF-8', - method: 'POST', - success: function (res) { - layer.closeAll(); - if (res.code === 200) { - table.exportFile(titles,res.data,'xls'); - } else if (res.code === 403) { - top.location.href = baseUrl+"/"; - } else { - layer.msg(res.msg, {icon: 2}) - } - } - }); - }); - break; - } - }); // 鐩戝惉琛屽伐鍏蜂簨浠� table.on('tool(order)', function(obj){ var data = obj.data; switch (obj.event) { + case 'more': + top.orderByMore = data.id; + admin.popupRight({ + type: 1, + window: "top", + area: "1250px", + url: "order_more.html", + end: function () { + // $(".layui-laypage-btn")[0].click(); + } + }) + break; case 'edit': showEditModel(data); break; @@ -225,15 +311,10 @@ // 鎼滅储 form.on('submit(search)', function (data) { pageCurr = 1; + pageCount = 0; tableReload(false); }); - // 閲嶇疆 - form.on('submit(reset)', function (data) { - pageCurr = 1; - clearFormVal($('#search-box')); - tableReload(false); - }); // 鏃堕棿閫夋嫨鍣� function layDateRender(data) { @@ -258,6 +339,19 @@ } layDateRender(); + // 鐪佸競鍖洪�夋嫨 + function cascaderRender() { + cascader.render({ + elem: '#cascaderVal', + data: citysData, + itemHeight: '250px', + filterable: true, + onChange: function (values, data) { + // console.log(values);console.log(data); + } + }); + } + }); // 鍏抽棴鍔ㄤ綔 @@ -265,13 +359,63 @@ parent.layer.closeAll(); }); -function tableReload(child) { - var searchData = {}; - $.each($('#search-box [name]').serializeArray(), function() { - searchData[this.name] = this.value; +function tableReload() { + if (pageCount === 0) { + let searchData = {}; + $.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} + }); + } else { + $(".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 + "/order/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){ }); - tableIns.reload({ - where: searchData, - page: {curr: pageCurr} - }); +} +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}); } diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html index 1336cf4..74a0acb 100644 --- a/src/main/webapp/views/order/order.html +++ b/src/main/webapp/views/order/order.html @@ -9,51 +9,92 @@ <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all"> <link rel="stylesheet" href="../../static/css/cool.css" media="all"> + <link rel="stylesheet" href="../../static/css/tree.css" media="all"> + <style> + .nav-box { + position: absolute; + top: 1px; + left: 5px; + } + .nav-box-item { + display: inline-block; + vertical-align: middle; + margin-right: 5px; + } + + .layui-dropdown.layui-border-box.layui-panel.layui-anim.layui-anim-downbit,.layui-dropdown.layui-border-box.layui-panel.layui-anim.layui-anim-downbit * { + box-sizing:inherit; + } + + .layui-menu li { + width: inherit; + } + .layui-tree-icon { + height: 16px; + line-height: 15px; + width: 15px; + text-align: center; + border: 1px solid #c0c4cc; + } + + .site-dropdown-demo, + .site-dropdown-demo .layui-menu{background: #32363F;border-color: #484e58;} + .site-dropdown-demo .layui-menu li{color: #a1a8b8;} + .site-dropdown-demo .layui-menu li:hover{background-color: #32363F;} + .layui-menu-body-title>.layui-icon { + position: relative; + margin-right: 5px; + } + </style> </head> <body> +<!-- 鏂� --> <div class="layui-fluid"> - <div class="layui-card"> + <div class="layui-card" style="margin-bottom: 5px"> <div class="layui-card-body"> - <div class="layui-form toolbar" id="search-box"> + <div id="search-box" class="layui-form toolbar" style="display: flex;justify-content: flex-end;position: relative"> + <div class="nav-box"> + <div class="nav-box-item"> + <i class="layui-icon" style="color: #1890ff;font-weight: bold"></i> + </div> + <div class="nav-box-item"> + <button id="organization" style="border: none;padding-right: 35px;" class="layui-btn layui-btn-primary icon-btn"> + 鏈煡 + </button> + </div> + </div> <div class="layui-form-item"> <div class="layui-inline"> <div class="layui-input-inline"> - <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off"> - </div> - </div> - <div class="layui-inline" style="width: 300px"> - <div class="layui-input-inline"> - <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px"> - </div> - </div> - <div class="layui-inline"> - <div class="layui-input-inline"> - <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off"> + <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off" style="border-color: #e1e1e1"> </div> </div> <div class="layui-inline">  - <button class="layui-btn icon-btn" lay-filter="search" lay-submit> + <button class="layui-btn icon-btn layui-btn-sm" lay-filter="search" lay-submit> <i class="layui-icon"></i>鎼滅储 </button> - <button class="layui-btn icon-btn" lay-filter="reset" lay-submit> - <i class="layui-icon"></i>閲嶇疆 + <button id="orderAddBtn" class="layui-btn icon-btn btn-add layui-btn-sm"><i class="layui-icon"></i>娣诲姞 + </button> + <button class="layui-btn layui-btn-danger icon-btn layui-btn-sm" lay-filter="orderDel" lay-submit> + <i class="layui-icon"></i>鍒犻櫎 + </button> + <button id="data-btn" class="layui-btn layui-btn-primary layui-border-black icon-btn layui-btn-sm"> 鏁版嵁鍚屾 </button> </div> </div> </div> <table class="layui-hide" id="order" lay-filter="order"></table> + <input style="display:none" id="importExcel" type="file" onchange="upload(this)" > + </div> + </div> + <div class="layui-card" style="margin-bottom: 0"> + <div class="layui-card-body"> + 鐢叉柟璧勬枡锛氭暟鎹叧鑱旇鍗曪紝 + <span class="text-danger">璇峰嬁闅忔剰鍒犻櫎銆�</span> </div> </div> </div> - -<script type="text/html" id="toolbar"> - <div class="layui-btn-container"> - <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button> - <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">鍒犻櫎</button> - <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right">瀵煎嚭</button> - </div> -</script> <script type="text/html" id="operate"> <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a> @@ -64,6 +105,7 @@ <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> +<script type="text/javascript" src="../../static/layui/lay/modules/cascader/citys-data.js" charset="utf-8"></script> <script type="text/javascript" src="../../static/js/order/order.js" charset="utf-8"></script> </body> <!-- 琛ㄥ崟寮圭獥 --> diff --git a/src/main/webapp/views/order/order_more.html b/src/main/webapp/views/order/order_more.html new file mode 100644 index 0000000..0004463 --- /dev/null +++ b/src/main/webapp/views/order/order_more.html @@ -0,0 +1,425 @@ +<meta name="viewport" content="initial-scale=1.0, user-scalable=no"> +<style> + #formAdvForm { + background-color: #f3f3f3; + } + #formAdvForm .layui-form-item { + margin-top: 20px; + margin-bottom: 0; + } + + #formAdvForm .layui-form-item .layui-inline { + margin-bottom: 25px; + margin-right: 0; + } + + .form-group-bottom { + position: fixed; + left: 0; + right: 0; + bottom: 0; + padding: 10px 20px; + background-color: #fff; + box-shadow: 0 -1px 2px 0 rgba(0, 0, 0, .05); + } + + .card-body-item { + display: inline-block; + border-right: 1px solid #e0e0e0; + width: 250px; + padding: 0 30px 0 10px; + } + .header-desc { + overflow:hidden; + white-space: nowrap; + text-overflow: ellipsis; + -o-text-overflow:ellipsis; + } + +</style> +<!-- 姝f枃寮�濮� --> +<form class="layui-form" id="formAdvForm" lay-filter="formAdvForm" style="height: 100%"> + <div class="layui-fluid" style="padding-bottom: 75px;"> + <!-- 鏍囬 --> + <div class="layui-card"> + <div class="layui-card-header" style="padding-top: 5px; padding-bottom: 5px"> + <div> + <i class="layui-icon" style="font-size: 20px;color: #1890ff;font-weight: bold"></i> + <span id="form-name" style="margin: 0 6px;font-size: 18px;font-weight: bold;letter-spacing: 1px"></span> + </div> + </div> + <div class="layui-card-body"> + <div class="card-body-item"> + <div class="header-sub"> + 鐢佃瘽 + </div> + <div class="header-desc" id="form-tel"> + + </div> + </div> + + <div class="card-body-item" style="width: 400px"> + <div class="header-sub"> + 璇︾粏鍦板潃 + </div> + <div class="header-desc" id="form-addr"> + + </div> + </div> + + <div class="card-body-item"> + <div class="header-sub"> + 璐熻矗浜� + </div> + <div class="header-desc" id="form-director" style="color: #006fdb;"> + + </div> + </div> + </div> + </div> + <div class="layui-row"> + <!-- 鍩烘湰淇℃伅 --> + <div class="layui-col-md9"> + <div class="layui-card"> + <div class="layui-card-header"> + 鍩烘湰淇℃伅 + </div> + <div class="layui-card-body"> + + <div class="layui-form-item layui-row"> + <input name="id" type="hidden" /> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">瀹㈡埛浠e彿:</label> + <div class="layui-input-block"> + <input name="uuid" class="layui-input" disabled /> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">鎵�灞為儴闂�:</label> + <div class="layui-input-block"> + <input name="deptId$" class="layui-input" disabled /> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">瀹㈡埛绫诲埆:</label> + <div class="layui-input-block"> + <input name="cstmrType$" class="layui-input" disabled /> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">瀹㈡埛鍏崇郴:</label> + <div class="layui-input-block"> + <input name="rela" class="layui-input" disabled/> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">鐪佸競鍖�:</label> + <div class="layui-input-block"> + <input name="pcd$" class="layui-input" disabled /> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">瀹㈡埛鑱旂郴浜�:</label> + <div class="layui-input-block"> + <input name="contacts" class="layui-input" disabled /> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">鍖哄垎:</label> + <div class="layui-input-block"> + <input name="type$" class="layui-input" disabled /> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">澶囨敞:</label> + <div class="layui-input-block"> + <input name="remarks" class="layui-input" disabled /> + </div> + </div> + + <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;"> + <legend style="font-size: 13px">鍏朵粬</legend> + </fieldset> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">娣诲姞浜哄憳:</label> + <div class="layui-input-block"> + <input name="createBy$" class="layui-input" disabled/> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">淇敼浜哄憳:</label> + <div class="layui-input-block"> + <input name="updateBy$" class="layui-input" disabled/> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">娣诲姞鏃堕棿:</label> + <div class="layui-input-block"> + <input name="createTime$" class="layui-input icon-date" autocomplete="off" disabled/> + </div> + </div> + <div class="layui-inline layui-col-md6"> + <label class="layui-form-label">淇敼鏃堕棿:</label> + <div class="layui-input-block"> + <input name="updateTime$" class="layui-input icon-date" autocomplete="off" disabled/> + </div> + </div> + </div> + + </div> + </div> + </div> + <!-- 璺熻繘浜� --> + <div class="layui-col-md3" style="width: 24%;margin-left: 1%"> + <div class="layui-card"> + <div class="layui-card-header"> + <span>璺熻繘浜�</span> + <span lay-filter="followerAdd" lay-submit style="float: right;cursor: pointer;"> + <i class="layui-icon" style="font-size: 20px;color: #1890ff;"></i> + </span> + </div> + <div class="layui-card-body"> + <table id="followersTable" lay-filter="followersTable"></table> + </div> + </div> + </div> + </div> + </div> + + <div class="form-group-bottom text-right"> + <button class="layui-btn" lay-filter="refresh" lay-submit><i class="layui-icon"></i> 鍒锋柊 </button> + </div> + +</form> + +<script type="text/html" id="followerTabOperate"> + <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a> +</script> + +<!-- 璺熻繘浜� --> +<script type="text/html" id="followerEditDialog"> + <form id="followerEditForm" lay-filter="followerEditForm" class="layui-form model-form"> + <input name="experimentId" type="hidden"/> + <div class="layui-form-item" style="float: left;clear: none;margin-right: 20px"> + <label class="layui-form-label">閫夋嫨鎴愬憳</label> + <div class="layui-input-block"> + <div id="followersBox" name="followersBox"> + </div> + </div> + </div> + <div class="layui-form-item text-right" style="float: left;clear: none"> + <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button> + <button class="layui-btn" lay-filter="followerSubmit" lay-submit>淇濆瓨</button> + </div> + </form> +</script> + +<script> + var cstmrId = top.cstmrByMore; + $('.layui-layer-close').hide(); + layui.config({ + base: baseUrl + "/static/layui/lay/modules/" + }).extend({ + notice: 'notice/notice', + }).use(['form', 'table', 'laydate', 'notice', 'xmSelect'], function () { + var $ = layui.jquery; + var form = layui.form; + var table = layui.table; + var laydate = layui.laydate; + var notice = layui.notice; + var xmSelect = layui.xmSelect; + + form.render('select'); + + init(); + function init(){ + notice.msg('姝e湪杞藉叆鏁版嵁......', {icon: 4, position: "topRight"}); + $.ajax({ + url: baseUrl + "/cstmr/" + cstmrId + "/auth", + headers: {'token': localStorage.getItem('token')}, + method: 'GET', + success: function (res) { + notice.destroy(); + if (res.code === 200) { + let cstmr = res.data; + top.cstmrByMore = null; + $("#form-name").html(cstmr.name); + if (cstmr.tel) {$("#form-tel").html(cstmr.tel);} + if (cstmr.addr) {$("#form-addr").html(cstmr.addr);$("#form-addr").attr("title", cstmr.addr);} + if (cstmr.director$) {$("#form-director").html(cstmr.director$);} + // 璁惧鏄庣粏 + form.val('formAdvForm', cstmr); + // 璺熻繘浜� + initFollowers(cstmr.id); + layDateRender(); + } else if (res.code === 403) { + top.location.href = baseUrl + "/"; + } else { + layer.msg(res.msg, {icon: 2}) + } + } + }) + } + + /* 娓叉煋laydate */ + function layDateRender() { + laydate.render({ + elem: '#endTime', + type: 'datetime' + }); + } + layDateRender(); + + // 娓叉煋璺熻繘浜烘ā鍧� + function initFollowers(cstmrId) { + if (!cstmrId) { + return; + } + $.ajax({ + url: baseUrl+"/cstmr/followers/table/auth", + headers: {'token': localStorage.getItem('token')}, + data: { + cstmrId: cstmrId + }, + method: 'GET', + success: function (res) { + if (res.code === 200){ + var follTab = table.render({ + elem: '#followersTable', + data: res.data, + limit: 999, + height: 'full-408', + cols: [[ + {field: 'userName', title: '宸ヤ綔浜哄憳'}, + {fixed: 'right', title:'', align: 'center', toolbar: '#followerTabOperate', width: 70} + ]], + done: function (res, curr, count) { + $('#dictTable+.layui-table-view .layui-table-body tbody>tr:first').trigger('click'); + } + }); + // 鐩戝惉琛屽伐鍏蜂簨浠� + table.on('tool(followersTable)', function(obj){ + let data = obj.data; + switch (obj.event) { + case "del": + let loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/cstmr/followers/remove/auth", + headers: {'token': localStorage.getItem('token')}, + data: { + cstmrId: cstmrId, + userId: data.userId + }, + method: 'POST', + success: function (res) { + layer.close(loadIndex); + if (res.code === 200){ + initFollowers(cstmrId); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + } else { + layer.msg(res.msg, {icon: 2}); + } + } + }) + break; + } + }); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + }else { + layer.msg(res.msg, {icon: 2}) + } + } + }) + } + + // 娣诲姞璺熻繘浜� + var followerLayer; + form.on('submit(followerAdd)', function (data) { + if (followerLayer) {return;} + followerLayer = admin.open({ + type: 1, + offset: '150px', + area: '600px', + title: '娣诲姞璺熻繘浜�', + content: $('#followerEditDialog').html(), + success: function (layero, dIndex) { + // 琛ㄥ崟鎻愪氦浜嬩欢 + form.on('submit(followerSubmit)', function (data) { + let selectList = xmSelectIdx.getValue(); + if (selectList.length === 0) { + layer.msg("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�", {icon: 3}); + return false; + } + let loadIndex = layer.load(2); + $.ajax({ + url: baseUrl+"/cstmr/followers/add/auth", + headers: {'token': localStorage.getItem('token')}, + data: { + cstmrId: cstmrId, + followerIds: selectList.map(function (d) { + return d.value; + }) + }, + method: 'POST', + success: function (res) { + if (res.code === 200){ + layer.close(loadIndex); + initFollowers(cstmrId); + } else if (res.code === 403){ + top.location.href = baseUrl+"/"; + }else { + layer.msg(res.msg, {icon: 2}) + } + } + }) + layer.close(dIndex); + return false; + }); + let xmSelectIdx = xmSelect.render({ + el: '#followersBox', + style: { + width: '280px', + }, + autoRow: true, + toolbar: { show: true }, + filterable: true, + remoteSearch: true, + remoteMethod: function(val, cb, show){ + $.ajax({ + url: baseUrl+"/user/all/get/kv", + 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}); + } + } + }); + } + }) + // 寮圭獥涓嶅嚭鐜版粴鍔ㄦ潯 + $(layero).children('.layui-layer-content').css('overflow', 'visible'); + layui.form.render('select'); + }, + end: function () { + followerLayer = null; + } + }) + }); + + /* 鐩戝惉琛ㄥ崟鎻愪氦 */ + form.on('submit(refresh)', function (data) { + init(); + return false; + }); + + }) +</script> -- Gitblit v1.9.1