From 16b0a2c97ee5349079f4deda0aab512af8a06dae Mon Sep 17 00:00:00 2001
From: chengsc <11752@DESKTOP-DS49RCP>
Date: 星期四, 08 五月 2025 08:26:31 +0800
Subject: [PATCH] 修改采购入库测出的问题
---
Wms/WMS.BLL/Logic/AllotLocation.cs | 102 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 99 insertions(+), 3 deletions(-)
diff --git a/Wms/WMS.BLL/Logic/AllotLocation.cs b/Wms/WMS.BLL/Logic/AllotLocation.cs
index 8d1ca0a..4b4aff6 100644
--- a/Wms/WMS.BLL/Logic/AllotLocation.cs
+++ b/Wms/WMS.BLL/Logic/AllotLocation.cs
@@ -105,16 +105,16 @@
/// <param name="areaList">鍖哄煙闆嗗悎</param>
/// <param name="lotNo">鎵规鍙�</param>
/// <returns></returns>
- public SysStorageLocat GetMiJiSuiTableLocate(SysStorageRoadway roadway, List<string> areaList, string sku, string lotNo = "")
+ public SysStorageLocat GetMiJiSuiTableLocate(string roadwayNo, List<string> areaList)
{
var db = DataContext.Db;
// 鍒ゆ柇褰撳墠宸烽亾(缁�)鏄惁鏈夌┖浣欏偍浣�
- var locateList = db.Queryable<SysStorageLocat>().Where(m => m.IsDel == "0" && m.RoadwayNo == roadway.RoadwayNo && areaList.Contains(m.AreaNo)).ToList();
+ var locateList = db.Queryable<SysStorageLocat>().Where(m => m.IsDel == "0" && m.RoadwayNo == roadwayNo && areaList.Contains(m.AreaNo)).ToList();
if (locateList.Count(m => m.Status == "0") > 0)
{
- var bl = GetLocateASCOrDesc(roadway.RoadwayNo);
+ var bl = GetLocateASCOrDesc(roadwayNo);
var locate = locateList.OrderBy(m => m.LocatNo).First();
@@ -191,6 +191,102 @@
}
/// <summary>
+ /// 鏍规嵁璧峰缁勮幏鍙栦綅缃渶浼樼殑鍥涢」杞﹀彇璐у伐浣�
+ /// </summary>
+ /// <param name="straRoadway">璧峰缁�</param>
+ /// <param name="outModel">鍑哄簱鍙e伐浣� 9銆� 17銆� 18</param>
+ /// <returns></returns>
+ public string RoadwayToStationNum(string straRoadway, string outModel)
+ {
+ var db = DataContext.Db;
+ string stationNum = "";
+
+ string[] lists = straRoadway.Split("MR");
+ var model = db.Queryable<SysStorageLocat>().First(m => m.RoadwayNo == straRoadway && m.IsDel == "0");
+ string stat = model.AisleOne;
+
+ if (model.Layer == 1)
+ { // 涓�灞�
+ switch (outModel) // 鐢宠鐨勫叆搴撳彛
+ {
+ case "9":
+
+ var path13 = Math.Abs(19 - int.Parse(stat.Substring(0, 2))) + Math.Abs(6 - int.Parse(stat.Substring(2, 2)));
+ var path14 = Math.Abs(19 - int.Parse(stat.Substring(0, 2))) + Math.Abs(12 - int.Parse(stat.Substring(2, 2)));
+
+ if (path13 <= path14)
+ {
+ stationNum = "190601";
+ }
+ else
+ {
+ stationNum = "191201";
+ }
+ break;
+ case "17":
+ stationNum = "030401";
+ break;
+ case "18":
+ var path03 = Math.Abs(03 - int.Parse(stat.Substring(0, 2))) + Math.Abs(06 - int.Parse(stat.Substring(2, 2)));
+ var path05 = Math.Abs(03 - int.Parse(stat.Substring(0, 2))) + Math.Abs(12 - int.Parse(stat.Substring(2, 2)));
+
+ if (path03 <= path05)
+ {
+ stationNum = "030601";
+ }
+ else
+ {
+ stationNum = "031201";
+ }
+ break;
+ default: break;
+ }
+ }
+ else
+ { // 浜屽眰
+ switch (outModel) // 鐢宠鐨勫叆搴撳彛
+ {
+ case "9":
+
+ var path15 = Math.Abs(19 - int.Parse(stat.Substring(0, 2))) + Math.Abs(6 - int.Parse(stat.Substring(2, 2)));
+ var path16 = Math.Abs(19 - int.Parse(stat.Substring(0, 2))) + Math.Abs(12 - int.Parse(stat.Substring(2, 2)));
+
+ if (path15 <= path16)
+ {
+ stationNum = "190602";
+ }
+ else
+ {
+ stationNum = "191202";
+ }
+
+ break;
+ case "17":
+ stationNum = "030402";
+ break;
+ case "18":
+ var path03 = Math.Abs(03 - int.Parse(stat.Substring(0, 2))) + Math.Abs(06 - int.Parse(stat.Substring(2, 2)));
+ var path05 = Math.Abs(03 - int.Parse(stat.Substring(0, 2))) + Math.Abs(12 - int.Parse(stat.Substring(2, 2)));
+
+ if (path03 <= path05)
+ {
+ stationNum = "030602";
+ }
+ else
+ {
+ stationNum = "031202";
+ }
+
+ break;
+ default: break;
+ }
+ }
+
+ return stationNum;
+ }
+
+
+ /// <summary>
/// 鑾峰彇鍚堥�傜殑搴撲綅
/// </summary>
/// <param name="houseNo">浠撳簱鍙�</param>
--
Gitblit v1.8.0