From 85b89465f4de41f9a7fea136f2f0897b1da790fa Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期四, 08 一月 2026 19:57:22 +0800
Subject: [PATCH] 新增订单excel导入功能
---
src/main/webapp/static/js/common.js | 252 +++++++++++++++++++++++++++-----------------------
1 files changed, 135 insertions(+), 117 deletions(-)
diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js
index 98b9937..b826257 100644
--- a/src/main/webapp/static/js/common.js
+++ b/src/main/webapp/static/js/common.js
@@ -6,7 +6,7 @@
var detailWidth = '90%';
// 闈炵┖鍒ゆ柇
-function isEmpty(obj){
+function isEmpty(obj) {
return typeof obj == "undefined" || obj == null || obj === "";
}
@@ -34,7 +34,7 @@
if (p < 10) {
p = "00" + p;
}
- if (p < 100) {
+ if (p < 100) {
p = "0" + p;
}
return y + "-" + M + "-" + d + " " + h + ":" + m + ":" + s + "," + p;
@@ -54,7 +54,7 @@
// 娓呯悊瀵硅薄null鍊�
function reObject(data) {
for (var obj in data) {
- if (data[obj]===null){
+ if (data[obj] === null) {
delete data[obj];
}
}
@@ -71,26 +71,26 @@
}
// 鏉冮檺
-function limit(child){
- if (child == null){
+function limit(child) {
+ if (child == null) {
child = false;
}
- var param = (child?parent.window:window).location.href.split("?")[1];
+ var param = (child ? parent.window : window).location.href.split("?")[1];
if (null != param) {
var resourceId = param.split("=")[1];
$.ajax({
- url: baseUrl+"/power/menu/"+resourceId+"/auth",
- headers: {'token': localStorage.getItem('token')},
+ url: baseUrl + "/power/menu/" + resourceId + "/auth",
+ headers: { 'token': localStorage.getItem('token') },
method: 'GET',
async: false,
success: function (res) {
- if (res.code === 200){
- for(var i = 0, len = res.data.length; i < len; i++) {
- (child?parent:window).$('#'+res.data[i].code).css("display", "inline-block");
- (child?parent:window).$('.'+res.data[i].code).css("display", "inline-block");
+ if (res.code === 200) {
+ for (var i = 0, len = res.data.length; i < len; i++) {
+ (child ? parent : window).$('#' + res.data[i].code).css("display", "inline-block");
+ (child ? parent : window).$('.' + res.data[i].code).css("display", "inline-block");
}
- } else if (res.code === 403){
- top.location.href = baseUrl+"/";
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/";
} else {
layer.msg(res.msg)
}
@@ -113,15 +113,15 @@
url: url,
data: data,
dataType: 'json',
- header: {'token': localStorage.getItem('token')},
+ header: { 'token': localStorage.getItem('token') },
timeout: 10000,
cache: false,
success: function (res) {
- if (res.code === 200){
+ if (res.code === 200) {
callback(res);
- } else if (res.code === 403){
- top.location.href = baseUrl+"/";
- } else {
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/";
+ } else {
layer.msg(res.msg);
}
},
@@ -134,9 +134,9 @@
post: function (url, param, callback, type) {
var headerType;
if (type === 'json') {
- headerType = {'Content-Type': 'application/json'}
+ headerType = { 'Content-Type': 'application/json' }
} else {
- headerType = {'Content-Type': 'application/x-www-form-urlencoded'}
+ headerType = { 'Content-Type': 'application/x-www-form-urlencoded' }
}
headerType['token'] = localStorage.getItem('token');
http.toAjax({
@@ -148,11 +148,11 @@
timeout: 10000,
cache: false,
success: function (res) {
- if (res.code === 200){
+ if (res.code === 200) {
callback(res);
- } else if (res.code === 403){
- top.location.href = baseUrl+"/";
- } else {
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/";
+ } else {
layer.msg(res.msg);
}
},
@@ -172,126 +172,144 @@
/*************************************************************************************************************/
function arrRemove(arr, key, val) {
- for(var i=arr.length-1; i>=0; i--){
- if(arr[i][key] === val){
- arr.splice(i,1);
+ for (var i = arr.length - 1; i >= 0; i--) {
+ if (arr[i][key] === val) {
+ arr.splice(i, 1);
}
}
}
var matCols = [
- {field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', width: 180}
+ { field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', width: 180 }
// {field: 'id', align: 'center',title: 'ID'}
// ,{field: 'uuid', align: 'center',title: '缂栧彿'}
- ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', width: 200}
- ,{field: 'specs', align: 'center',title: '瑙勬牸'}
- ,{field: 'safeQty', align: 'center',title: '褰掗浂闃�鍊�'}
- ,{field: 'model', align: 'center',title: '浠g爜', hide: true}
- ,{field: 'color', align: 'center',title: '棰滆壊', hide: true}
- ,{field: 'brand', align: 'center',title: '鍝佺墝', hide: true}
- ,{field: 'upQty', align: 'center',title: '缁勬墭涓婇檺', hide: true}
- ,{field: 'unit', align: 'center',title: '鍗曚綅', hide: false}
- ,{field: 'price', align: 'center',title: '鍗曚环', hide: true}
- ,{field: 'sku', align: 'center',title: 'sku', hide: true}
- ,{field: 'units', align: 'center',title: '鍗曚綅閲�', hide: true}
- ,{field: 'barcode', align: 'center',title: '鏉$爜', hide: true}
- ,{field: 'origin', align: 'center',title: '浜у湴', hide: true}
- ,{field: 'manu', align: 'center',title: '鍘傚', hide: true}
- ,{field: 'manuDate', align: 'center',title: '鐢熶骇鏃ユ湡', hide: true}
- ,{field: 'itemNum', align: 'center',title: '鍝侀」鏁�', hide: true}
- ,{field: 'weight', align: 'center',title: '鍗曠鍑�閲�', hide: true}
- ,{field: 'length', align: 'center',title: '鍗曠姣涢噸', hide: true}
- ,{field: 'volume', align: 'center',title: '鍗曠浣撶Н', hide: true}
- ,{field: 'threeCode', align: 'center',title: '绠卞瓙灏哄', hide: true}
- ,{field: 'supp', align: 'center',title: '渚涘簲鍟�', hide: true}
- ,{field: 'suppCode', align: 'center',title: '渚涘簲鍟嗙紪鐮�', hide: true}
- ,{field: 'beBatch$', align: 'center',title: '鏄惁鎵规', hide: true}
- ,{field: 'deadTime', align: 'center',title: '淇濊川鏈�', hide: true}
- ,{field: 'deadWarn', align: 'center',title: '棰勮澶╂暟', hide: true}
- ,{field: 'source$', align: 'center',title: '鍒惰喘', hide: true}
- ,{field: 'check$', align: 'center',title: '瑕佹眰妫�楠�', hide: true}
- ,{field: 'danger$', align: 'center',title: '鍗遍櫓鍝�', hide: true}
+ , { field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', width: 200 }
+ , { field: 'specs', align: 'center', title: '瑙勬牸' }
+ , { field: 'safeQty', align: 'center', title: '褰掗浂闃�鍊�' , templet: function (d) {
+ var raw = d.safeQty;
+ if (raw === null || raw === undefined) return '';
+ if (typeof raw === 'string' && raw.trim() === '') return '';
+ var num = Number(raw);
+ if (!isFinite(num)) return '';
+ return num.toFixed(2);
+ }}
+ , { field: 'model', align: 'center', title: '浠g爜', hide: true }
+ , { field: 'color', align: 'center', title: '棰滆壊', hide: true }
+ , { field: 'brand', align: 'center', title: '鍝佺墝', hide: true }
+ , { field: 'upQty', align: 'center', title: '缁勬墭涓婇檺', hide: true }
+ , { field: 'unit', align: 'center', title: '鍗曚綅', hide: false }
+ , { field: 'price', align: 'center', title: '鍗曚环', hide: true }
+ , { field: 'sku', align: 'center', title: 'sku', hide: true }
+ , { field: 'units', align: 'center', title: '鍗曚綅閲�', hide: true }
+ , { field: 'barcode', align: 'center', title: '鏉$爜', hide: true }
+ , { field: 'origin', align: 'center', title: '浜у湴', hide: true }
+ , { field: 'manu', align: 'center', title: '鍘傚', hide: true }
+ , { field: 'manuDate', align: 'center', title: '鐢熶骇鏃ユ湡', hide: true }
+ , { field: 'itemNum', align: 'center', title: '鍝侀」鏁�', hide: true }
+ , { field: 'weight', align: 'center', title: '鍗曠鍑�閲�', hide: true }
+ , { field: 'length', align: 'center', title: '鍗曠姣涢噸', hide: true }
+ , {
+ field: 'volume', align: 'center', title: 'kg/cm', templet: function (d) {
+ var raw = d.volume;
+ if (raw === null || raw === undefined) return '';
+ if (typeof raw === 'string' && raw.trim() === '') return '';
+ var num = Number(raw);
+ if (!isFinite(num)) return '';
+ return num.toFixed(2);
+ }
+ }
+ , { field: 'threeCode', align: 'center', title: '绠卞瓙灏哄', hide: true }
+ , { field: 'supp', align: 'center', title: '渚涘簲鍟�', hide: true }
+ , { field: 'suppCode', align: 'center', title: '渚涘簲鍟嗙紪鐮�', hide: true }
+ , { field: 'beBatch$', align: 'center', title: '鏄惁鎵规', hide: true }
+ , { field: 'deadTime', align: 'center', title: '淇濊川鏈�', hide: true }
+ , { field: 'deadWarn', align: 'center', title: '棰勮澶╂暟', hide: true }
+ , { field: 'source$', align: 'center', title: '鍒惰喘', hide: true }
+ , { field: 'check$', align: 'center', title: '瑕佹眰妫�楠�', hide: true }
+ , { field: 'danger$', align: 'center', title: '鍗遍櫓鍝�', hide: true }
// ,{field: 'status$', align: 'center',title: '鐘舵��'}
// ,{field: 'createBy$', align: 'center',title: '娣诲姞浜哄憳'}
// ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
- ,{field: 'updateBy$', align: 'center',title: '淇敼浜哄憳', hide: true}
- ,{field: 'updateTime$', align: 'center',title: '淇敼鏃堕棿', hide: true}
- ,{field: 'memo', 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 }
]
var cacheCols = [
- {field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort:true}
- ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort:true}
- ,{field: 'anfme', align: 'center',title: '鏁伴噺', hide: false}
- ,{field: 'specs', align: 'center',title: '瑙勬牸', hide: false}
- ,{field: 'model', align: 'center',title: '浠g爜', hide: true}
- ,{field: 'color', align: 'center',title: '棰滆壊', hide: true}
- ,{field: 'brand', align: 'center',title: '鍝佺墝', hide: true}
- ,{field: 'unit', align: 'center',title: '鍗曚綅', hide: false}
- ,{field: 'batch', align: 'center',title: '璐у搧鐗瑰緛', sort:true}
- ,{field: 'frozen$', align: 'center',title: '鍐荤粨鍚�',hide: true,
- templet: function(d) {
+ { field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort: true }
+ , { field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort: true }
+ , { field: 'anfme', align: 'center', title: '鏁伴噺', hide: false }
+ , { field: 'specs', align: 'center', title: '瑙勬牸', hide: false }
+ , { field: 'model', align: 'center', title: '浠g爜', hide: true }
+ , { field: 'color', align: 'center', title: '棰滆壊', hide: true }
+ , { field: 'brand', align: 'center', title: '鍝佺墝', hide: true }
+ , { field: 'unit', align: 'center', title: '鍗曚綅', hide: false }
+ , { field: 'batch', align: 'center', title: '璐у搧鐗瑰緛', sort: true }
+ , {
+ field: 'frozen$', align: 'center', title: '鍐荤粨鍚�', hide: true,
+ templet: function (d) {
// 鏍规嵁鏉′欢鍒ゆ柇瀛椾綋棰滆壊
if (d.frozen$ === '宸插喕缁�') {
- return '<span style="color: #34a8de;">' +d.frozen$ + '</span>';
+ return '<span style="color: #34a8de;">' + d.frozen$ + '</span>';
} else {
- return '<span">' +d.frozen$ + '</span>';
+ return '<span">' + d.frozen$ + '</span>';
}
- }}
+ }
+ }
]
var detlCols = [
- {field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort:true}
- ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort:true}
- ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', hide: false}
- ,{field: 'batch', align: 'center',title: '璐у搧鐗瑰緛', sort:true}
- ,{field: 'anfme', align: 'center',title: '鏁伴噺', hide: false}
- ,{field: 'zpallet', align: 'center',title: '鎵樼洏鏉$爜', hide: false}
- ,{field: 'specs', align: 'center',title: '瑙勬牸', hide: false}
- ,{field: 'model', align: 'center',title: '浠g爜', hide: true}
- ,{field: 'color', align: 'center',title: '棰滆壊', hide: true}
- ,{field: 'brand', align: 'center',title: '鍝佺墝', hide: true}
- ,{field: 'unit', align: 'center',title: '鍗曚綅', hide: false}
- ,{field: 'price', align: 'center',title: '鍗曚环', hide: true}
- ,{field: 'sku', align: 'center',title: 'sku', hide: true}
- ,{field: 'units', align: 'center',title: '鍗曚綅閲�', hide: true}
- ,{field: 'barcode', align: 'center',title: '鏉$爜', hide: true}
- ,{field: 'origin', align: 'center',title: '浜у湴', hide: true}
- ,{field: 'manu', align: 'center',title: '鍘傚', hide: true}
- ,{field: 'manuDate', align: 'center',title: '鐢熶骇鏃ユ湡', hide: true}
- ,{field: 'itemNum', align: 'center',title: '鍝侀」鏁�', hide: true}
- ,{field: 'safeQty', align: 'center',title: '瀹夊叏搴撳瓨閲�', hide: true}
- ,{field: 'weight', align: 'center',title: '鍗曠鍑�閲�', hide: true}
- ,{field: 'length', align: 'center',title: '鍗曠姣涢噸', hide: true}
- ,{field: 'volume', align: 'center',title: '鍗曠浣撶Н', hide: true}
- ,{field: 'threeCode', align: 'center',title: '绠卞瓙灏哄', hide: true}
- ,{field: 'supp', align: 'center',title: '渚涘簲鍟�', hide: true}
- ,{field: 'suppCode', align: 'center',title: '渚涘簲鍟嗙紪鐮�', hide: true}
- ,{field: 'beBatch$', align: 'center',title: '鏄惁鎵规', hide: true}
- ,{field: 'deadTime', align: 'center',title: '淇濊川鏈�', hide: true}
- ,{field: 'deadWarn', align: 'center',title: '棰勮澶╂暟', hide: true}
- ,{field: 'source$', align: 'center',title: '鍒惰喘', hide: true}
- ,{field: 'check$', align: 'center',title: '瑕佹眰妫�楠�', hide: true}
- ,{field: 'danger$', align: 'center',title: '鍗遍櫓鍝�', hide: true}
- ,{field: 'frozen$', align: 'center',title: '鍐荤粨鍚�',hide: true,
- templet: function(d) {
+ { field: 'matnr', align: 'center', title: '鍟嗗搧缂栧彿锛堝搧鍙凤級', sort: true }
+ , { field: 'maktx', align: 'center', title: '鍟嗗搧鍚嶇О锛堝搧鍚嶏級', sort: true }
+ , { field: 'orderNo', align: 'center', title: '鍗曟嵁缂栧彿', hide: false }
+ , { field: 'batch', align: 'center', title: '璐у搧鐗瑰緛', sort: true }
+ , { field: 'anfme', align: 'center', title: '鏁伴噺', hide: false }
+ , { field: 'zpallet', align: 'center', title: '鎵樼洏鏉$爜', hide: false }
+ , { field: 'specs', align: 'center', title: '瑙勬牸', hide: false }
+ , { field: 'model', align: 'center', title: '浠g爜', hide: true }
+ , { field: 'color', align: 'center', title: '棰滆壊', hide: true }
+ , { field: 'brand', align: 'center', title: '鍝佺墝', hide: true }
+ , { field: 'unit', align: 'center', title: '鍗曚綅', hide: false }
+ , { field: 'price', align: 'center', title: '鍗曚环', hide: true }
+ , { field: 'sku', align: 'center', title: 'sku', hide: true }
+ , { field: 'units', align: 'center', title: '鍗曚綅閲�', hide: true }
+ , { field: 'barcode', align: 'center', title: '鏉$爜', hide: true }
+ , { field: 'origin', align: 'center', title: '浜у湴', hide: true }
+ , { field: 'manu', align: 'center', title: '鍘傚', hide: true }
+ , { field: 'manuDate', align: 'center', title: '鐢熶骇鏃ユ湡', hide: true }
+ , { field: 'itemNum', align: 'center', title: '鍝侀」鏁�', hide: true }
+ , { field: 'safeQty', align: 'center', title: '瀹夊叏搴撳瓨閲�', hide: true }
+ , { field: 'weight', align: 'center', title: '鍗曠鍑�閲�', hide: true }
+ , { field: 'length', align: 'center', title: '鍗曠姣涢噸', hide: true }
+ , { field: 'volume', align: 'center', title: '鍗曠浣撶Н', hide: true }
+ , { field: 'threeCode', align: 'center', title: '绠卞瓙灏哄', hide: true }
+ , { field: 'supp', align: 'center', title: '渚涘簲鍟�', hide: true }
+ , { field: 'suppCode', align: 'center', title: '渚涘簲鍟嗙紪鐮�', hide: true }
+ , { field: 'beBatch$', align: 'center', title: '鏄惁鎵规', hide: true }
+ , { field: 'deadTime', align: 'center', title: '淇濊川鏈�', hide: true }
+ , { field: 'deadWarn', align: 'center', title: '棰勮澶╂暟', hide: true }
+ , { field: 'source$', align: 'center', title: '鍒惰喘', hide: true }
+ , { field: 'check$', align: 'center', title: '瑕佹眰妫�楠�', hide: true }
+ , { field: 'danger$', align: 'center', title: '鍗遍櫓鍝�', hide: true }
+ , {
+ field: 'frozen$', align: 'center', title: '鍐荤粨鍚�', hide: true,
+ templet: function (d) {
// 鏍规嵁鏉′欢鍒ゆ柇瀛椾綋棰滆壊
if (d.frozen$ === '宸插喕缁�') {
- return '<span style="color: #34a8de;">' +d.frozen$ + '</span>';
+ return '<span style="color: #34a8de;">' + d.frozen$ + '</span>';
} else {
- return '<span">' +d.frozen$ + '</span>';
+ return '<span">' + d.frozen$ + '</span>';
}
- }}
+ }
+ }
]
-function getQueryVariable(variable)
-{
+function getQueryVariable(variable) {
var query = window.location.search.substring(1);
var vars = query.split("&");
- for (var i=0;i<vars.length;i++) {
+ for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
- if(pair[0] == variable){return pair[1];}
+ if (pair[0] == variable) { return pair[1]; }
}
- return(false);
+ return (false);
}
--
Gitblit v1.9.1