From bbee386dd3fc489099f4a40afb11692ac0972e84 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 17 十一月 2022 21:56:28 +0800
Subject: [PATCH] #
---
src/main/webapp/static/js/order/order.js | 423 ++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 322 insertions(+), 101 deletions(-)
diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js
index 895ec78..13807a5 100644
--- a/src/main/webapp/static/js/order/order.js
+++ b/src/main/webapp/static/js/order/order.js
@@ -1,50 +1,157 @@
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: 'deptId$', align: 'center',title: '鎵�灞為儴闂�'}
- ,{field: 'userId$', align: 'center',title: '鎵�灞炰汉鍛�'}
- ,{field: 'cstmrId$', align: 'center',title: '鐢叉柟鍗曚綅'}
- ,{field: 'uuid', align: 'center',title: '瀹㈡埛浠e彿'}
- ,{field: 'name', align: 'center',title: '瀹㈡埛鍚嶇О'}
- ,{field: 'money', align: 'center',title: '鎬婚噾棰�'}
- ,{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: 'name', align: 'left',title: '璺熻釜椤圭洰鍚嶇О', style: 'color: #1890ff;cursor:pointer', event: 'more', width: 300}
+ ,{field: 'uuid', align: 'left',title: '椤圭洰浠e彿'}
+ ,{field: 'cstmrId$', align: 'left',title: '鐢叉柟鍗曚綅', style: 'color: #1890ff;cursor:pointer', event: 'cstmrMore', templet:function(d){return emptyShow(d.cstmrId$)}}
+ ,{field: 'pcd$', align: 'left',title: '鎵�灞炲尯鍩�', templet:function(d){return emptyShow(d.pcd$)}}
+ ,{field: 'addr', align: 'left',title: '椤圭洰鍦板潃', templet:function(d){return emptyShow(d.addr)}}
+ ,{field: 'money', align: 'right',title: '椤圭洰鎬婚噾棰�', templet:function(d){return emptyShow(d.money)}}
+ ,{field: 'director$', align: 'left',title: '椤圭洰璐熻矗浜�', templet:function(d){return emptyShow(d.director$)}}
+ ,{field: 'remarks', align: 'left',title: '澶囨敞', templet:function(d){return emptyShow(d.remarks)}}
+ ,{field: 'createTime$', align: 'left',title: '娣诲姞鏃堕棿'}
+ ,{field: 'company$', 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: 'files', align: 'left',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}
]],
@@ -68,8 +175,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 +211,35 @@
});
});
- // 鐩戝惉澶村伐鍏锋爮浜嬩欢
- 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 'cstmrMore':
+ top.cstmrByMore = data.cstmrId;
+ admin.popupRight({
+ type: 1,
+ window: "top",
+ area: "1250px",
+ url: "../cstmr/cstmr_more.html",
+ end: function () {
+ // $(".layui-laypage-btn")[0].click();
+ }
+ })
+ break;
case 'edit':
showEditModel(data);
break;
@@ -160,13 +253,27 @@
function showEditModel(mData) {
admin.open({
type: 1,
- area: '600px',
- title: (mData ? '淇敼' : '娣诲姞') + '璁㈠崟鐘舵��',
+ area: '1500px',
+ title: (mData ? '淇敼' : '娣诲姞') + '璺熻釜椤圭洰',
content: $('#editDialog').html(),
success: function (layero, dIndex) {
+ let cstmrSel = loadCstmrSel();
+ let companySel = loadCompanySel();
+ if (mData) {
+ $('#cascaderVal').val(mData.pcd);
+ if (mData.cstmrId) { cstmrSel.setValue([{name: mData.cstmrId$, value: mData.cstmrId}]); }
+ if (mData.company) { companySel.setValue([{name: mData.company$, value: mData.company}]); }
+ }
layDateRender(mData);
+ cascaderRender();
form.val('detail', mData);
form.on('submit(editSubmit)', function (data) {
+ data.field.cstmrId = cstmrSel.getValue()[0] ? cstmrSel.getValue()[0].value : null;
+ data.field.company = companySel.getValue()[0] ? companySel.getValue()[0].value : null;
+ if (!data.field.company) {
+ layer.msg("鎵�灞炲叕鍙镐笉鑳戒负绌�", {icon: 2});
+ return false;
+ }
var loadIndex = layer.load(2);
$.ajax({
url: baseUrl+"/order/"+(mData?'update':'add')+"/auth",
@@ -225,15 +332,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 +360,75 @@
}
layDateRender();
+ // 鐪佸競鍖洪�夋嫨
+ function cascaderRender() {
+ cascader.render({
+ elem: '#cascaderVal',
+ data: citysData,
+ itemHeight: '250px',
+ filterable: true,
+ onChange: function (values, data) {
+ // console.log(values);console.log(data);
+ }
+ });
+ }
+
+ window.loadCstmrSel = function () {
+ return xmSelect.render({
+ el: '#cstmrXmlSel',
+ autoRow: true,
+ filterable: true,
+ remoteSearch: true,
+ radio: true,
+ remoteMethod: function (val, cb, show) {
+ $.ajax({
+ url: baseUrl + "/cstmr/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});
+ }
+ }
+ });
+ }
+ });
+ }
+
+ window.loadCompanySel = function () {
+ return xmSelect.render({
+ el: '#companyXmlSel',
+ autoRow: true,
+ filterable: true,
+ remoteSearch: true,
+ radio: true,
+ remoteMethod: function (val, cb, show) {
+ $.ajax({
+ url: baseUrl + "/company/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});
+ }
+ }
+ });
+ }
+ });
+ }
+
});
// 鍏抽棴鍔ㄤ綔
@@ -265,13 +436,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});
}
--
Gitblit v1.9.1