From 4b4db960821387e8e29151ca15a1a7a2825f5f6f Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@DESKTOP-JIE70N9>
Date: 星期五, 20 六月 2025 16:31:10 +0800
Subject: [PATCH] Merge branch 'master' of http://47.95.120.53:8083/r/JC34WMS
---
Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs | 89 +++++++++++++++++++++++++++++---------------
1 files changed, 58 insertions(+), 31 deletions(-)
diff --git a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
index edf83da..880f59b 100644
--- a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
@@ -353,12 +353,27 @@
detailModel.LotNo = maxLotNo;
}
}
- if (model.Type == "0" || model.Type == "1" || model.Type == "2" || model.Type == "3" || model.Type == "4" && model.Type == "8")
+ //if (model.Type == "0" || model.Type == "1" || model.Type == "2" || model.Type == "3" || model.Type == "4" && model.Type == "8")
+ //{
+ // if (string.IsNullOrWhiteSpace(detailModel.LotNo))
+ // {
+ // throw new Exception("褰撳墠鍗曟嵁绫诲瀷鎵规涓嶅彲涓虹┖!");
+ // }
+ //}
+ detailModel.BoxCodeStr = detailModel.LotNo;
+ if (string.IsNullOrWhiteSpace(detailModel.LotNo))
{
- if (string.IsNullOrWhiteSpace(detailModel.LotNo))
+ string toDayTime = DateTime.Now.ToString("yyyyMM");
+ var maxBoxCodeStr = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.IsDel == "0" && m.BoxCodeStr.Contains("BK") && m.CreateTime.ToString("yyyyMMdd") == DateTime.Now.ToString("yyyyMMdd")).Max(m => m.BoxCodeStr);
+ if(string.IsNullOrWhiteSpace(maxBoxCodeStr))
{
- throw new Exception("褰撳墠鍗曟嵁绫诲瀷鎵规涓嶅彲涓虹┖!");
+ maxBoxCodeStr = "BK" + toDayTime.Substring(2, 4) + "0001";
}
+ else
+ {
+ maxBoxCodeStr = "BK" + (int.Parse(maxBoxCodeStr.Replace("BK", "")) + 1).ToString();
+ }
+ detailModel.BoxCodeStr = maxBoxCodeStr;
}
// 鍒ゆ柇鏄惁宸插瓨鍦ㄥ綋鍓嶆槑缁�
@@ -412,7 +427,7 @@
SkuNo = detailModel.SkuNo,
SkuName = detailModel.SkuName,
Standard = detailModel.Standard,
- LotNo = detailModel.LotNo.Trim(),
+ LotNo = detailModel.LotNo == null ? "" : detailModel.LotNo.Trim(),
LotText = detailModel.LotText,
Qty = (decimal)detailModel.Qty,
PackagNo = detailModel.PackagNo,
@@ -428,6 +443,7 @@
InspectStatus = "0",
Lot1 = lot1, //鐢熶骇鏃ユ湡
Lot2 = lot2, // 杩囨湡鏃ユ湡
+ BoxCodeStr = detailModel.BoxCodeStr,
UDF1 = detailModel.UDF1,
UDF2 = detailModel.UDF2,
UDF3 = detailModel.UDF3,
@@ -553,13 +569,13 @@
return strMessage;
}
- if (model.Type == "0" || model.Type == "2" || model.Type == "3" || model.Type == "4")
- {
- if (string.IsNullOrWhiteSpace(detailModel.LotNo))
- {
- throw new Exception("褰撳墠鍗曟嵁绫诲瀷鎵规涓嶅彲涓虹┖!");
- }
- }
+ //if (model.Type == "0" || model.Type == "2" || model.Type == "3" || model.Type == "4")
+ //{
+ // if (string.IsNullOrWhiteSpace(detailModel.LotNo))
+ // {
+ // throw new Exception("褰撳墠鍗曟嵁绫诲瀷鎵规涓嶅彲涓虹┖!");
+ // }
+ //}
if (TypeLot.Contains(model.Type))
{
@@ -589,29 +605,39 @@
//鐢熸垚鑷湁鎵规
if (detailModel.Id == 0 || detailModel.Id == null || string.IsNullOrWhiteSpace(detailModel.LotNo))
{
- var notice = Db.Queryable<BllArrivalNotice>().Where(m => m.IsDel == "0" && TypeLot.Contains(m.Type)).Select(m => m.ASNNo).ToList();
- if (string.IsNullOrWhiteSpace(maxLotNo))
+ //var notice = Db.Queryable<BllArrivalNotice>().Where(m => m.IsDel == "0" && TypeLot.Contains(m.Type)).Select(m => m.ASNNo).ToList();
+ //if (string.IsNullOrWhiteSpace(maxLotNo))
+ //{
+ // maxLotNo = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.IsDel == "0" && !string.IsNullOrWhiteSpace(m.LotNo) && notice.Contains(m.ASNNo)).Max(m => m.LotNo);
+ //}
+ //if (string.IsNullOrWhiteSpace(maxLotNo))
+ //{
+ // maxLotNo = toDayTime.Substring(2, 6) + "0001";
+ //}
+ //else
+ //{
+ // var lotStr = maxLotNo.Substring(0, 6);
+ // var timeStr = toDayTime.Substring(2, 6);
+ // if (lotStr == timeStr)
+ // {
+ // maxLotNo = toDayTime.Substring(2, 6) + (int.Parse(maxLotNo.Substring(6, 4)) + 1).ToString().PadLeft(4, '0');
+ // }
+ // else
+ // {
+ // maxLotNo = timeStr + "0001";
+ // }
+ //}
+ //detailModel.LotNo = maxLotNo;
+ var maxBoxCodeStr = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.IsDel == "0" && m.BoxCodeStr.Contains("BK") && m.CreateTime.ToString("yyyyMMdd") == DateTime.Now.ToString("yyyyMMdd")).Max(m => m.BoxCodeStr);
+ if (string.IsNullOrWhiteSpace(maxBoxCodeStr))
{
- maxLotNo = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.IsDel == "0" && !string.IsNullOrWhiteSpace(m.LotNo) && notice.Contains(m.ASNNo)).Max(m => m.LotNo);
- }
- if (string.IsNullOrWhiteSpace(maxLotNo))
- {
- maxLotNo = toDayTime.Substring(2, 6) + "0001";
+ maxBoxCodeStr = "BK" + toDayTime.Substring(2, 4) + "0001";
}
else
{
- var lotStr = maxLotNo.Substring(0, 6);
- var timeStr = toDayTime.Substring(2, 6);
- if (lotStr == timeStr)
- {
- maxLotNo = toDayTime.Substring(2, 6) + (int.Parse(maxLotNo.Substring(6, 4)) + 1).ToString().PadLeft(4, '0');
- }
- else
- {
- maxLotNo = timeStr + "0001";
- }
+ maxBoxCodeStr = "BK" + (int.Parse(maxBoxCodeStr.Replace("BK", "")) + 1).ToString();
}
- detailModel.LotNo = maxLotNo;
+ detailModel.BoxCodeStr = maxBoxCodeStr;
}
if (detailModel.Id == 0 || detailModel.Id == null)
@@ -630,7 +656,7 @@
SkuNo = detailModel.SkuNo,
SkuName = detailModel.SkuName,
Standard = detailModel.Standard,
- LotNo = detailModel.LotNo.Trim(),
+ LotNo = detailModel.LotNo == null ? "" : detailModel.LotNo.Trim(),
LotText = detailModel.LotText,
Qty = (decimal)detailModel.Qty,
PackagNo = detailModel.PackagNo,
@@ -646,6 +672,7 @@
InspectStatus = "0",
Lot1 = detailModel.Lot1,
Lot2 = detailModel.Lot2,
+ BoxCodeStr = detailModel.BoxCodeStr,
UDF1 = detailModel.UDF1,
UDF2 = detailModel.UDF2,
UDF3 = detailModel.UDF3,
@@ -695,7 +722,7 @@
detailModel.Money = detailModel.Price * detailModel.Qty;
dbDetail.Qty = (decimal)detailModel.Qty;
- dbDetail.LotNo = detailModel.LotNo;
+ dbDetail.LotNo = detailModel.LotNo == null ? "" : detailModel.LotNo.Trim();
dbDetail.Money = detailModel.Money;
dbDetail.LotText = detailModel.LotText;
dbDetail.SupplierLot = detailModel.SupplierLot;
--
Gitblit v1.8.0