From 51889b97a85b070cbb80a5bb2893149c80448d5d Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期二, 30 十二月 2025 16:31:15 +0800
Subject: [PATCH] #导出优化
---
src/main/webapp/static/js/basArmMastExp/basArmMastExp.js | 132 ++++++++++++++++++++++++++-----------------
1 files changed, 79 insertions(+), 53 deletions(-)
diff --git a/src/main/webapp/static/js/basArmMastExp/basArmMastExp.js b/src/main/webapp/static/js/basArmMastExp/basArmMastExp.js
index d7db239..6c4cab8 100644
--- a/src/main/webapp/static/js/basArmMastExp/basArmMastExp.js
+++ b/src/main/webapp/static/js/basArmMastExp/basArmMastExp.js
@@ -8,10 +8,9 @@
var layDate = layui.laydate;
var form = layui.form;
var admin = layui.admin;
-
// 鏁版嵁娓叉煋
tableIns = table.render({
- elem: '#basArmMast',
+ elem: '#basArmMastExp',
headers: {token: localStorage.getItem('token')},
url: baseUrl+'/basArmMast/list/auth',
page: true,
@@ -21,42 +20,81 @@
cellMinWidth: 50,
height: 'full-120',
cols: [[
- {type: 'checkbox'}
- ,
- {field: 'id', align: 'center',title: 'ID',hide: true}
- ,{field: 'armNo', align: 'center',title: '鏈烘鑷傜紪鍙�',hide: false}
- ,{field: 'orderNo', align: 'center',title: '璁㈠崟鍙�',hide: false}
- ,{field: 'armDirection', align: 'center',title: '鎿嶄綔鏂瑰悜',hide: true}
- ,{field: 'staNo', align: 'center',title: '缁堢偣',hide: false}
- ,{field: 'sortingLine', align: 'center',title: '璧风偣',hide: false}
- ,{field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿',hide: false}
- ,{field: 'sku', align: 'center',title: 'sku',hide: true}
- // ,{field: 'po', align: 'center',title: 'po',hide: false}
- // ,{field: 'upc', align: 'center',title: 'upc',hide: false}
- // ,{field: 'status', align: 'center',title: '浣滀笟鐘舵��',hide: true}
- // ,{field: 'status$', align: 'center',title: '浣滀笟鐘舵��',hide: false}
- // ,{field: 'bindingTags', align: 'center',title: '鍒嗘嫞缁戝畾鏍囪',hide: false}
- // ,{field: 'priority', align: 'center',title: '浼樺厛绾�',hide: true}
- // ,{field: 'supplier', align: 'center',title: '璐ф簮',hide: false}
- ,{field: 'ctns', align: 'center',title: '鎬荤鏁�',hide: true}
- // ,{field: 'createTime', align: 'center',title: '鏃堕棿鎴�',hide: true}
- // ,{field: 'barcode', align: 'center',title: '鎵樼洏鐮�',hide: false}
- // ,{field: 'armError', align: 'center',title: '寮傚父浠g爜',hide: true}
- // ,{field: 'armMsg', align: 'center',title: '寮傚父淇℃伅',hide: true}
-
- ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120}
+ {type: 'checkbox'},
+ {field: 'armNo', align: 'center', title: '鏈烘鑷傜紪鍙�'},
+ {field: 'orderNo', align: 'center', title: '璁㈠崟鍙�'},
+ {field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿'},
+ {field: 'po', align: 'center', title: 'PO'},
+ {field: 'upc', align: 'center', title: 'UPC'},
+ {field: 'sortingLine', align: 'center', title: '璧风偣'},
+ {field: 'status', align: 'center', title: '浣滀笟鐘舵��', templet: function(d){
+ return '2.鍗曠爜瀹屾垚绛夊緟鎵樼洏瀹屾垚'; // 鍥犱负鐜板湪鍙樉绀虹姸鎬�2锛屽浐瀹氭樉绀�
+ }},
+ {field: 'barcode', align: 'center', title: '鎵樼洏鐮�'},
+ {field: 'supplier', align: 'center', title: '璐ф簮'},
+ {field: 'quantity', align: 'center', title: '鏁伴噺', sort: true, style: 'background-color: #fffbe6; font-weight: bold;'}, // 楂樹寒鏄剧ず鏁伴噺
+ // {fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 120}
]],
request: {
pageName: 'curr',
pageSize: 'limit'
},
parseData: function (res) {
- return {
- 'code': res.code,
- 'msg': res.msg,
- 'count': res.data.total,
- 'data': res.data.records
+ if (res.code !== 200) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': 0,
+ 'data': []
+ };
}
+
+ var records = res.data.records || [];
+ var groupMap = new Map(); // 鐢ㄦ潵姹囨�荤姸鎬佷负2鐨勬暟鎹�
+
+ records.forEach(function(item) {
+ // 鍙鐞嗙姸鎬佷负2鐨勮褰曪紝鍏朵粬鐘舵�佺洿鎺ュ拷鐣ワ紙闅愯棌锛�
+ if (String(item.status) === '2') {
+ // 鐢熸垚鍞竴鏍囪瘑锛�5涓瓧娈电粍鍚堬級
+ var key = [
+ item.armNo || '',
+ item.sortingLine || '',
+ item.barcode || '',
+ item.matnr || '',
+ item.orderNo || ''
+ ].join('|||||'); // 鐢ㄥ涓獆鍒嗛殧锛岄伩鍏嶅瓧娈靛�煎啿绐�
+
+ if (groupMap.has(key)) {
+ // 宸插瓨鍦ㄧ浉鍚岀粍鍚堬紝鏁伴噺+1
+ groupMap.get(key).quantity += 1;
+ } else {
+ // 鏂扮粍鍚堬紝鍒涘缓涓�鏉℃眹鎬昏褰�
+ groupMap.set(key, {
+ armNo: item.armNo,
+ orderNo: item.orderNo,
+ matnr: item.matnr,
+ po: item.po || '',
+ upc: item.upc || '',
+ sortingLine: item.sortingLine,
+ barcode: item.barcode,
+ supplier: item.supplier || '',
+ status: '2', // 鍥哄畾鏄剧ず涓�2
+ quantity: 1 // 鍒濆鏁伴噺1
+ });
+ }
+ }
+ // 鐘舵�佷笉涓�2鐨勮褰曠洿鎺ヨ烦杩囷紝涓嶅姞鍏ヤ换浣曟暟鎹�
+ });
+
+ // 杞崲涓烘暟缁�
+ var finalData = Array.from(groupMap.values());
+
+ return {
+ 'code': 200,
+ 'msg': res.msg,
+ 'count': finalData.length, // 鍒嗛〉鎬绘暟 = 鍚堝苟鍚庣殑琛屾暟
+ 'data': finalData
+ };
},
response: {
statusCode: 200
@@ -69,7 +107,6 @@
limit();
}
});
-
// 鐩戝惉鎺掑簭浜嬩欢
table.on('sort(basArmMast)', function (obj) {
var searchData = {};
@@ -83,7 +120,6 @@
page: {curr: 1}
});
});
-
// 鐩戝惉澶村伐鍏锋爮浜嬩欢
table.on('toolbar(basArmMast)', function (obj) {
var checkStatus = table.checkStatus(obj.config.id).data;
@@ -92,14 +128,14 @@
showEditModel();
break;
case 'deleteData':
- if (checkStatus.length === 0) {
- layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
- return;
- }
- del(checkStatus.map(function (d) {
- return d.id;
- }));
- break;
+ 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=[];
@@ -140,7 +176,6 @@
break;
}
});
-
// 鐩戝惉琛屽伐鍏蜂簨浠�
table.on('tool(basArmMast)', function(obj){
var data = obj.data;
@@ -153,7 +188,6 @@
break;
}
});
-
/* 寮圭獥 - 鏂板銆佷慨鏀� */
function showEditModel(mData) {
admin.open({
@@ -191,7 +225,6 @@
}
});
}
-
/* 鍒犻櫎 */
function del(ids) {
layer.confirm('纭畾瑕佸垹闄ら�変腑鏁版嵁鍚楋紵', {
@@ -219,20 +252,17 @@
})
});
}
-
// 鎼滅储
form.on('submit(search)', function (data) {
pageCurr = 1;
tableReload(false);
});
-
// 閲嶇疆
form.on('submit(reset)', function (data) {
pageCurr = 1;
clearFormVal($('#search-box'));
tableReload(false);
});
-
// 鏃堕棿閫夋嫨鍣�
function layDateRender(data) {
setTimeout(function () {
@@ -241,18 +271,14 @@
,type: 'datetime'
,range: true
});
-
}, 300);
}
layDateRender();
-
});
-
// 鍏抽棴鍔ㄤ綔
$(document).on('click','#data-detail-close', function () {
parent.layer.closeAll();
});
-
function tableReload(child) {
var searchData = {};
$.each($('#search-box [name]').serializeArray(), function() {
@@ -261,5 +287,5 @@
tableIns.reload({
where: searchData,
page: {curr: pageCurr}
- });
-}
+ });
+}
\ No newline at end of file
--
Gitblit v1.9.1