From b88cbdbc97735732fe6406fbe5aa3228eaa1b551 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期一, 20 十月 2025 13:13:44 +0800
Subject: [PATCH] 修改包装管理,包装可输入小数
---
Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs | 108 +++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 87 insertions(+), 21 deletions(-)
diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index 39754eb..cb79491 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -514,7 +514,7 @@
CreateTime = a.CreateTime,
UpdateTime = a.UpdateTime
- }).OrderByDescending(a => a.CreateTime).OrderBy(a => a.BoxNo).ToOffsetPage(model.Page, model.Limit, ref total);
+ }).OrderByDescending(a => a.ASNNo).OrderBy(a => a.BoxNo).ToOffsetPage(model.Page, model.Limit, ref total);
count = total;
return data;
}
@@ -534,8 +534,17 @@
{
throw new Exception("鏈煡璇㈠埌鍗曟嵁鏄庣粏淇℃伅锛岃鏍稿疄");
}
+ var skuInfo = Db.Queryable<SysMaterials>().First(w => w.IsDel == "0" && w.SkuNo == asnDetail.SkuNo);
+ if (skuInfo == null)
+ {
+ throw new Exception("鏈煡璇㈠埌鐗╂枡淇℃伅锛岃鏍稿疄");
+ }
+ if (string.IsNullOrEmpty(skuInfo.PackagNo))
+ {
+ throw new Exception("鏈煡璇㈠埌鐗╂枡鐨勫寘瑁呬俊鎭紝璇锋牳瀹�");
+ }
- var packInfo = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == asnDetail.PackagNo);
+ var packInfo = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == skuInfo.PackagNo);
if (packInfo == null)
{
throw new Exception("鏈煡璇㈠埌鍗曟嵁鏄庣粏涓殑鐗╂枡鍖呰淇℃伅");
@@ -597,17 +606,31 @@
{
throw new Exception("鍗曟嵁鏁伴噺涓嶈兘灏忎簬绛変簬0");
}
- if (string.IsNullOrWhiteSpace(asnList.LotNo))
+ //if (string.IsNullOrWhiteSpace(asnList.LotNo))
+ //{
+ // throw new Exception("鍗曟嵁鎵规鍙蜂笉鑳戒负绌�");
+ //}
+ if (string.IsNullOrWhiteSpace(asnList.BoxCodeStr))
{
- throw new Exception("鍗曟嵁鎵规鍙蜂笉鑳戒负绌�");
+ throw new Exception("鍗曟嵁绠辩爜甯稿�间笉鑳戒负绌�");
}
var asn = Db.Queryable<BllArrivalNotice>().First(m => m.ASNNo == asnList.ASNNo && m.IsDel == "0");
if (asn == null)
{
throw new Exception("鏈煡璇㈠埌鍗曟嵁淇℃伅");
}
-
- var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == asnList.PackagNo);
+ //鍖呰缂栫爜
+ var packagNo = asnList.PackagNo;
+ if (string.IsNullOrEmpty(packagNo))
+ {
+ var skuInfo = Db.Queryable<SysMaterials>().First(w => w.IsDel == "0" && w.SkuNo == asnList.SkuNo);
+ if (skuInfo == null)
+ {
+ throw new Exception("鏈煡璇㈠埌鐗╂枡淇℃伅");
+ }
+ packagNo = skuInfo.PackagNo;
+ }
+ var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == packagNo);
if (pack == null)
{
throw new Exception("鏈煡璇㈠埌褰撳墠鍗曟嵁涓墿鏂欑殑鍖呰淇℃伅");
@@ -649,8 +672,8 @@
#region 鍖呰鏌ヨ
- var bNum = 0;//绠辩墿鍝佹暟閲�
- var zNum = 0;//鏀墿鍝佹暟閲�
+ var bNum = 0m;//绠辩墿鍝佹暟閲�
+ var zNum = 0m;//鏀墿鍝佹暟閲�
var packLevel = 0;
if (pack.L2Num.HasValue)
@@ -658,7 +681,7 @@
if (pack.L2Name != "鎵�")
{
packLevel = 1;//JC34椤圭洰鍙湁涓�绾ф爣绛�
- bNum = Convert.ToInt32(pack.L2Num);
+ bNum = Convert.ToDecimal(pack.L2Num);
}
}
if (pack.L1Num.HasValue)
@@ -666,9 +689,9 @@
if (packLevel == 0)
{
packLevel = 1;
- bNum = Convert.ToInt32(pack.L1Num);
+ bNum = Convert.ToDecimal(pack.L1Num);
}
- zNum = Convert.ToInt32(pack.L1Num);
+ zNum = Convert.ToDecimal(pack.L1Num);
}
if (packLevel < 1)//鍖呰绛夌骇灏忎簬1锛屾寜鐓�1绾ф爣绛炬墦鍗�
@@ -723,9 +746,16 @@
string maxLotNoStr = ""; //鎵规鍙�
string maxBoxCode = ""; //绠辩爜鍙�
-
- maxLotNoStr = asnList.LotNo;
- maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
+
+ maxLotNoStr = asnList.BoxCodeStr;//asnList.LotNo;
+ if (string.IsNullOrEmpty(asnList.LotNo))
+ {
+ maxBoxCode = label.Where(m => m.ASNDetailNo == asnList.Id).Max(a => a.BoxNo);
+ }
+ else
+ {
+ maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
+ }
#endregion
for (int i = 1; i <= labelNum; i++)
@@ -771,7 +801,7 @@
Status = "0",
SkuNo = asnList.SkuNo,
SkuName = asnList.SkuName,
- LotNo = maxLotNoStr,
+ LotNo = asnList.LotNo,//maxLotNoStr,
Standard = asnList.Standard,
PackageStandard = packStr,
SupplierLot = supplierLot,
@@ -779,14 +809,26 @@
BitBoxMark = bNum > boxQty ? "1" : "0",
InspectStatus = "0",
- ProductionTime = DateTime.Parse(productionTime),
- StoreTime = DateTime.Parse(storeTime),
- ExpirationTime = DateTime.Parse(expirationTime),
+ ProductionTime = null,
+ StoreTime = null,
+ ExpirationTime = null,
Origin = "WMS鐢熸垚",
CreateUser = userId,
CreateTime = DateTime.Now,
};
+ if (!string.IsNullOrEmpty(productionTime))
+ {
+ labelModel.ProductionTime = DateTime.Parse(productionTime);
+ }
+ if (!string.IsNullOrEmpty(storeTime))
+ {
+ labelModel.StoreTime = DateTime.Parse(storeTime);
+ }
+ if (!string.IsNullOrEmpty(expirationTime))
+ {
+ labelModel.ExpirationTime = DateTime.Parse(expirationTime);
+ }
Db.Insertable(labelModel).ExecuteCommand();
modelList.Add(labelModel);
@@ -931,14 +973,26 @@
BitBoxMark = bNum > boxQty ? "1" : "0",
InspectStatus = "0",
- ProductionTime = DateTime.Parse(productionTime),
- StoreTime = DateTime.Parse(storeTime),
- ExpirationTime = DateTime.Parse(expirationTime),
+ ProductionTime = null,
+ StoreTime = null,
+ ExpirationTime = null,
Origin = "WMS鐢熸垚",
CreateUser = userId,
CreateTime = DateTime.Now,
};
+ if (!string.IsNullOrEmpty(productionTime))
+ {
+ labelModel.ProductionTime = DateTime.Parse(productionTime);
+ }
+ if (!string.IsNullOrEmpty(storeTime))
+ {
+ labelModel.StoreTime = DateTime.Parse(storeTime);
+ }
+ if (!string.IsNullOrEmpty(expirationTime))
+ {
+ labelModel.ExpirationTime = DateTime.Parse(expirationTime);
+ }
Db.Insertable(labelModel).ExecuteCommand();
modelList.Add(labelModel);
@@ -1026,6 +1080,7 @@
model.ExpirationTime = data.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = data.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = dataList.Sum(m => m.Qty);// 鏁伴噺
@@ -1081,6 +1136,7 @@
model.ExpirationTime = data.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = data.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = data1.Sum(m => m.Qty);// 鏁伴噺
@@ -1133,6 +1189,7 @@
model.ExpirationTime = data.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = data.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = data.Qty;// 鏁伴噺
@@ -1185,6 +1242,7 @@
model.ExpirationTime = data.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = data.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = data.Qty;// 鏁伴噺
@@ -1251,6 +1309,7 @@
model1.ExpirationTime = data.ExpirationTime; // 鏈夋晥鏈熻嚦
model1.StoreTime = data.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model1.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
model1.Qty = dataList.Sum(m => m.Qty);// 鏁伴噺
model1.BoxNo = data.BoxNo; // 绠卞彿
@@ -1270,6 +1329,7 @@
model.ExpirationTime = data.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = data.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = data.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = data.Qty;// 鏁伴噺
model.BoxNo = data.BoxNo3; // 鏀彿
@@ -1317,6 +1377,7 @@
model.ExpirationTime = boxData.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = boxData.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = boxData.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = data.Sum(m => m.Qty); // 鏁伴噺
model.BoxNo = boxData.BoxNo; // 鏀彿
@@ -1339,6 +1400,7 @@
model1.ExpirationTime = item.ExpirationTime; // 鏈夋晥鏈熻嚦
model1.StoreTime = item.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model1.ProductionTime = item.ProductionTime;//鐢熶骇鏃ユ湡
model1.Qty = item.Qty;// 鏁伴噺
model1.BoxNo = item.BoxNo3; // 鏀彿
@@ -1385,6 +1447,7 @@
model.ExpirationTime = boxData.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = boxData.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = boxData.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = data.Sum(m => m.Qty); // 鏁伴噺
model.BoxNo = boxData.BoxNo; // 鏀彿
@@ -1409,6 +1472,7 @@
model1.ExpirationTime = item.ExpirationTime; // 鏈夋晥鏈熻嚦
model1.StoreTime = item.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = item.ProductionTime;//鐢熶骇鏃ユ湡
model1.Qty = item.Qty; // 鏁伴噺
model1.BoxNo = item.BoxNo3; // 鏀彿
@@ -1477,6 +1541,7 @@
model.ExpirationTime = boxData.ExpirationTime; // 鏈夋晥鏈熻嚦
model.StoreTime = boxData.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = boxData.ProductionTime;//鐢熶骇鏃ユ湡
model.Qty = data.Sum(m => m.Qty); // 鏁伴噺
model.BoxNo = boxData.BoxNo; // 鏀彿
@@ -1505,6 +1570,7 @@
model1.ExpirationTime = item.ExpirationTime; // 鏈夋晥鏈熻嚦
model1.StoreTime = item.StoreTime; // 鍌ㄥ瓨鏈熻嚦
+ model.ProductionTime = item.ProductionTime;//鐢熶骇鏃ユ湡
model1.Qty = item.Qty;// 鏁伴噺
model1.BoxNo = item.BoxNo3; // 鏀彿
--
Gitblit v1.8.0