From 5bbaca0f07194414ca1249d0d6fdbd7368859071 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期四, 31 七月 2025 16:47:33 +0800
Subject: [PATCH] 修改接收SAP下发入库单接口
---
Wms/Wms/Controllers/UpApiController.cs | 1 +
Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs | 32 ++++++++++++++++++++++++++++----
2 files changed, 29 insertions(+), 4 deletions(-)
diff --git a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
index 87d19a9..6dec684 100644
--- a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
@@ -1258,9 +1258,16 @@
resultModel.Message = "鍏ュ簱鍗曟槑缁嗕笉鍙负绌�!";
return resultModel;
}
+ var asnModel = Db.Queryable<BllArrivalNotice>().First(w => w.IsDel == "0" && w.OrderCode == model.orderNo);
+ if (asnModel != null)
+ {
+ resultModel.Message = $"{model.orderNo}璇ュ崟鍙峰凡瀛樺湪鍏ュ簱鍗�!";
+ return resultModel;
+ }
+
// 鍏ュ簱鎬昏〃淇℃伅
string asnNo = new Common().GetMaxNo("ASN");
- var asnModel = new BllArrivalNotice()
+ asnModel = new BllArrivalNotice()
{
ASNNo = asnNo,
Status = "0",//绛夊緟鎵ц
@@ -1287,9 +1294,9 @@
resultModel.Message = "搴旀敹鐗╂枡鏁伴噺搴斿ぇ浜�0!";
return resultModel;
}
- if (string.IsNullOrEmpty(asnDetailModel.lotNo.ToString()))
+ if (string.IsNullOrEmpty(asnDetailModel.lotNo) && asnModel.Type != "1")
{
- resultModel.Message = "鎵规鍙蜂笉鍙负绌�!";
+ resultModel.Message = "闈為噰璐叆搴擄紝鎵规鍙蜂笉鍙负绌�!";
return resultModel;
}
@@ -1310,7 +1317,7 @@
SkuNo = asnDetailModel.skuNo.ToString(),
SkuName = skuModel.SkuName,
Standard = skuModel.Standard,
- LotNo = asnDetailModel.lotNo.ToString(),
+ LotNo = asnDetailModel.lotNo,
LotText = "",
Qty = Convert.ToDecimal(asnDetailModel.expectedQty),
FactQty = 0,
@@ -1324,6 +1331,23 @@
InspectStatus = "0",
CreateUser = 0
};
+ detailModel.BoxCodeStr = 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("yyyyMM") == DateTime.Now.ToString("yyyyMM")).Max(m => m.BoxCodeStr);
+ if (string.IsNullOrWhiteSpace(maxBoxCodeStr))
+ {
+ maxBoxCodeStr = "BK" + toDayTime.Substring(2, 4) + "0001";
+ }
+ else
+ {
+ maxBoxCodeStr = "BK" + (int.Parse(maxBoxCodeStr.Replace("BK", "")) + 1).ToString();
+ }
+ detailModel.BoxCodeStr = maxBoxCodeStr;
+ }
detailModels.Add(detailModel);
}
diff --git a/Wms/Wms/Controllers/UpApiController.cs b/Wms/Wms/Controllers/UpApiController.cs
index bc1297e..0543cb8 100644
--- a/Wms/Wms/Controllers/UpApiController.cs
+++ b/Wms/Wms/Controllers/UpApiController.cs
@@ -177,6 +177,7 @@
}
catch (Exception e)
{
+ LogFile.SaveLogToFile($"Sap鍏ュ簱鍗曚笅鍙戝紓甯革細{e.Message}", logStr);
return Ok(new { result = false, code = "400", message = e.Message });
}
}
--
Gitblit v1.8.0