From 026245895bdd18ab647a8a35649dc162c7927c8e Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期三, 23 十一月 2022 13:05:34 +0800
Subject: [PATCH] #
---
src/main/webapp/static/js/cstmr/cstmr.js | 268 +++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 228 insertions(+), 40 deletions(-)
diff --git a/src/main/webapp/static/js/cstmr/cstmr.js b/src/main/webapp/static/js/cstmr/cstmr.js
index 603e30f..d53d7a0 100644
--- a/src/main/webapp/static/js/cstmr/cstmr.js
+++ b/src/main/webapp/static/js/cstmr/cstmr.js
@@ -1,58 +1,168 @@
var pageCurr;
-var pageCount;
+var pageCount = 0;
+var treeCond;
+var admin;
layui.config({
base: baseUrl + "/static/layui/lay/modules/"
}).extend({
- dropdown: 'dropdown/dropdown',
-}).use(['table','laydate', 'form', 'admin', 'xmSelect', 'dropdown', 'element'], function(){
+ 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");
+ // 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;
+ 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: '#cstmr',
headers: {token: localStorage.getItem('token')},
- url: baseUrl+'/cstmr/list/auth',
+ url: baseUrl+'/cstmr/page/auth',
page: true,
limit: 15,
limits: [15, 30, 50, 100, 200, 500],
- cellMinWidth: 100,
- height: 'full-145',
+ // cellMinWidth: 100,
+ height: 'full-148',
// size: 'sm',
skin: 'line',
cols: [[
{type: 'checkbox'}
// ,{field: 'id', align: 'center',title: 'ID'}
// ,{field: 'hostId$', align: 'center',title: '鎵�灞炲晢鎴�'}
- ,{field: 'name', align: 'center',title: '瀹㈡埛鍚嶇О'}
- ,{field: 'uuid', align: 'center',title: '瀹㈡埛浠e彿'}
- ,{field: 'addr', align: 'center',title: '璇︾粏鍦板潃'}
- ,{field: 'tel', align: 'center',title: '鐢佃瘽'}
- ,{field: 'remarks', align: 'center',title: '澶囨敞'}
- ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
- ,{field: 'userId$', align: 'center',title: '娣诲姞浜哄憳'}
- ,{field: 'cstmrType$', align: 'center',title: '瀹㈡埛绫诲埆'}
- ,{field: 'deptId$', align: 'center',title: '鎵�灞為儴闂�', hide: true}
- ,{field: 'simple', align: 'center',title: '瀹㈡埛绠�绉�', hide: true}
- ,{field: 'rela', align: 'center',title: '瀹㈡埛鍏崇郴', hide: true}
- ,{field: 'contacts', align: 'center',title: '瀹㈡埛鑱旂郴浜�', hide: true}
- ,{field: 'director$', align: 'center',title: '璐熻矗浜�', hide: true}
- ,{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: 'type$', align: 'center',title: '鍖哄垎', hide: true}
- ,{field: 'files', align: 'center',title: '闄勪欢', hide: true}
- ,{field: 'status$', align: 'center',title: '鐘舵��', hide: true}
+ ,{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: '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}
+ ,{field: 'contacts', align: 'left',title: '瀹㈡埛鑱旂郴浜�', hide: true}
+ ,{field: 'director$', align: 'left',title: '璐熻矗浜�', hide: true}
+ ,{field: 'province', align: 'left',title: '鐪�', hide: true}
+ ,{field: 'city', align: 'left',title: '甯�', hide: true}
+ ,{field: 'district', align: 'left',title: '鍘�', hide: true}
+ ,{field: 'town', align: 'left',title: '闀�', hide: true}
+ ,{field: 'type$', align: 'left',title: '鍖哄垎', hide: true}
+ ,{field: 'files', align: 'left',title: '闄勪欢', hide: true}
+ ,{field: 'status$', align: 'left',title: '鐘舵��', hide: true}
// ,{field: 'createBy$', 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}
+ ,{field: 'updateBy$', align: 'left',title: '淇敼浜哄憳', hide: true}
+ ,{field: 'updateTime$', align: 'left',title: '淇敼鏃堕棿', hide: true}
+ ,{field: 'memo', align: 'left',title: '娉ㄩ噴', hide: true}
,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120}
]],
@@ -98,7 +208,6 @@
}));
});
-
// 鐩戝惉鎺掑簭浜嬩欢
table.on('sort(cstmr)', function (obj) {
var searchData = {};
@@ -113,11 +222,22 @@
});
});
-
// 鐩戝惉琛屽伐鍏蜂簨浠�
table.on('tool(cstmr)', function(obj){
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();
+ }
+ })
+ break;
case 'edit':
showEditModel(data);
break;
@@ -135,7 +255,11 @@
title: (mData ? '淇敼' : '娣诲姞') + '鐢叉柟鍗曚綅',
content: $('#editDialog').html(),
success: function (layero, dIndex) {
+ if (mData) {
+ $('#cascaderVal').val(mData.pcd);
+ }
layDateRender(mData);
+ cascaderRender();
form.val('detail', mData);
form.on('submit(editSubmit)', function (data) {
var loadIndex = layer.load(2);
@@ -149,7 +273,7 @@
if (res.code === 200){
layer.close(dIndex);
layer.msg(res.msg, {icon: 1});
- tableReload();
+ tableReload()
} else if (res.code === 403){
top.location.href = baseUrl+"/";
}else {
@@ -196,6 +320,7 @@
// 鎼滅储
form.on('submit(search)', function (data) {
pageCurr = 1;
+ pageCount = 0;
tableReload();
});
@@ -222,6 +347,19 @@
}
layDateRender();
+ // 鐪佸競鍖洪�夋嫨
+ function cascaderRender() {
+ cascader.render({
+ elem: '#cascaderVal',
+ data: citysData,
+ itemHeight: '250px',
+ filterable: true,
+ onChange: function (values, data) {
+ // console.log(values);console.log(data);
+ }
+ });
+ }
+
});
// 鍏抽棴鍔ㄤ綔
@@ -230,12 +368,62 @@
});
function tableReload() {
- var searchData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
- searchData[this.name] = this.value;
+ 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 + "/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){
});
- 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});
}
--
Gitblit v1.9.1