From d35690ef0fbf7e44d1cf3079a8e7a69c9a4e82c9 Mon Sep 17 00:00:00 2001 From: wxw <Administrator@DESKTOP-5BIMHQ3> Date: 星期三, 25 六月 2025 11:39:23 +0800 Subject: [PATCH] 修改pad出库拣货方法 --- Wms/WMS.BLL/SysServer/StorageLocatServer.cs | 234 +++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 181 insertions(+), 53 deletions(-) diff --git a/Wms/WMS.BLL/SysServer/StorageLocatServer.cs b/Wms/WMS.BLL/SysServer/StorageLocatServer.cs index ec36530..5676ea7 100644 --- a/Wms/WMS.BLL/SysServer/StorageLocatServer.cs +++ b/Wms/WMS.BLL/SysServer/StorageLocatServer.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; +using System.Reflection.Metadata; using System.Text; using System.Threading.Tasks; using Model.ModelDto.SysDto; @@ -81,6 +82,8 @@ StatusName = GetStatus(m.Status), Flag = m.Flag, FlagName = GetFlag(m.Flag), + Make = m.Make, + MakeName = m.Make == "0" ? "璺戦亾" : m.Make == "1" ? "鍌ㄤ綅" : "", Depth = m.Depth, Row = m.Row, Column = m.Column, @@ -137,7 +140,7 @@ { try { - var bl = LocatRst.EditStorageLocat(model.Id,model.AreaNo, model.Status, model.Flag, model.Temperature, url, userId); + var bl = LocatRst.EditStorageLocat(model.Id, model.AreaNo, model.Status, model.Flag, model.Temperature, url, userId); return bl; } @@ -164,7 +167,79 @@ { try { + #region MyRegion + + //var q = 0; + ////R01 -01 -01 -02 + ////宸烽亾鈥撴帓-鍒�-灞� + //for (int r = index; r <= row; r++)//鎺� + //{ + // var r1 = "1"; + // if (r < 10) + // { + // r1 = "0" + r; + // } + // else + // { + // r1 = r.ToString(); + // } + // for (int l = 1; l <= layer; l++)//灞� + // { + // var l1 = "1"; + // if (l < 10) + // { + // l1 = "0" + l; + // } + // else + // { + // l1 = l.ToString(); + // } + // for (int c = 1; c <= col; c++)//鍒� + // { + // var c1 = "1"; + // if (c < 10) + // { + // c1 = "0" + c; + // } + // else + // { + // c1 = c.ToString(); + // } + // var area = l <= 7 ? "A12" : "A11";//鍖哄煙 + // for (int d = 1; d <= int.Parse(dept); d++) //娣卞害 + // { + // var s = "0" + d;//娣卞害 + // q += await LocatRst.AddAsync(new SysStorageLocat() + // { + // LocatNo = r1 + c1 + l1 + s, + // WareHouseNo = houseNo, + // RoadwayNo = roadwayNo, + // AreaNo = areaNo, + // Status = "0", + // Flag = "0", + // Depth = s, + // Row = r, + // Column = c, + // Layer = l, + // CreateUser = userId + // }); + // } + + + + + + // } + // } + //} + + //return q; + + #endregion + + #region jc34 var q = 0; + //R01 -01 -01 -02 //宸烽亾鈥撴帓-鍒�-灞� for (int r = index; r <= row; r++)//鎺� @@ -178,7 +253,7 @@ { r1 = r.ToString(); } - for (int l = 1; l <= layer; l++)//灞� + for (int l = 1; l <= col; l++)//鍒� { var l1 = "1"; if (l < 10) @@ -189,7 +264,7 @@ { l1 = l.ToString(); } - for (int c = 1; c <= col; c++)//鍒� + for (int c = 1; c <= layer; c++)//灞� { var c1 = "1"; if (c < 10) @@ -200,35 +275,29 @@ { c1 = c.ToString(); } - var area = l <= 7 ? "A12" : "A11";//鍖哄煙 - for (int d = 1; d <= int.Parse(dept); d++) //娣卞害 + + q += await LocatRst.AddAsync(new SysStorageLocat() { - var s = "0" + d;//娣卞害 - q += await LocatRst.AddAsync(new SysStorageLocat() - { - LocatNo = r1 + c1 + l1 + s, - WareHouseNo = houseNo, - RoadwayNo = roadwayNo, - AreaNo = areaNo, - Status = "0", - Flag = "0", - Depth = s, - Row = r, - Column = c, - Layer = l, - CreateUser = userId - }); - } - - - - + LocatNo = r1 + l1 + c1, + WareHouseNo = houseNo, + RoadwayNo = roadwayNo, + AreaNo = areaNo, + Status = "0", + Flag = "0", + Depth = "01", + Row = r, + Column = l, + Layer = c, + CreateUser = userId + }); } } } return q; + #endregion + } catch (Exception e) { @@ -248,44 +317,45 @@ { var q = 0; var depth = 0; - var depthString = ""; + var depthString = "01"; // 鎺�(缁�)寰幆 - for (int i = 1; i <= model.Row; i++) + for (int i = 19; i <= model.Row; i++) { // 鍒楀惊鐜� for (int z = 1; z <= model.Col; z++) { - if (z == 1) - { - depth += 1; - if (depth >= 10) - { - depthString = depth.ToString(); - } - else if (depth < 10) - { - depthString = "0" + depth.ToString(); - } - else { - //鍏朵綑鏉′欢 - } - } - + //if (z == 1) + //{ + // depth += 1; + // if (depth >= 10) + // { + // depthString = depth.ToString(); + // } + // else if (depth < 10) + // { + // depthString = "0" + depth.ToString(); + // } + // else { + // //鍏朵綑鏉′欢 + // } + //} + q += await LocatRst.AddAsync(new SysStorageLocat() { // 鍖哄煙+鎺�+鍒�+灞� - LocatNo = model.AreaNo + i.ToString().PadLeft(2, '0') + z.ToString().PadLeft(2, '0') + "01", + LocatNo = i.ToString().PadLeft(2, '0') + z.ToString().PadLeft(2, '0') + "02", WareHouseNo = model.HouseNo, RoadwayNo = "", AreaNo = model.AreaNo, Status = "0", - AisleOne = "1", + AisleOne = "", AisleTwo = "", Flag = "0", + Make = "1", Depth = depthString, Row = i, Column = z, - Layer = 1, + Layer = 2, CreateUser = userId }); ; } @@ -417,12 +487,12 @@ { try { - var road = roadway.Substring(1, roadway.Length - 1); + var road = roadway.Substring(2, roadway.Length - 2); var num = int.Parse(road); - var rows = (num - 1) * 2 + int.Parse(row);//鎺� + //var rows = (num - 1) * 2 + int.Parse(row);//鎺� var maxLayer = Db.Queryable<SysStorageLocat>().Where(m => - m.IsDel == "0" && m.WareHouseNo == wareHouseNo && m.RoadwayNo == roadway && m.Row == int.Parse(row)).Max(m => m.Layer); + m.IsDel == "0" && m.WareHouseNo == wareHouseNo && m.RoadwayNo == roadway && m.Row == num).Max(m => m.Layer); return maxLayer; } @@ -443,9 +513,9 @@ { try { - var road = roadway.Substring(1, roadway.Length - 1); + var road = roadway.Substring(2, roadway.Length - 2); var num = int.Parse(road); - var rows = (num - 1) * 2 + int.Parse(row);//鎺� + //var rows = (num - 1) * 2 + int.Parse(row);//鎺� var maxColumn = Db.Queryable<SysStorageLocat>().Where(m => m.IsDel == "0" && m.WareHouseNo == wareHouseNo && m.RoadwayNo == roadway && m.Row == int.Parse(row)).Max(m => m.Column); @@ -839,9 +909,9 @@ /// </summary> /// <param name="roadwayNo">宸烽亾</param> /// <returns></returns> - public List<string> ByRoadwayGetRow(string roadwayNo) + public List<string> ByRoadwayGetRow(string wareHouseNo, string roadwayNo) { - string str = $"select Row from SysStorageLocat where IsDel = '0' and WareHouseNo = 'W01' and RoadwayNo = '{roadwayNo}' group by Row order by Row"; + string str = $"select Row from SysStorageLocat where IsDel = '0' and WareHouseNo = '{wareHouseNo}' and RoadwayNo = '{roadwayNo}' group by Row order by Row"; List<string> row = Db.Ado.SqlQuery<string>(str); return row; @@ -905,5 +975,63 @@ } #endregion + + /// <summary> + /// 鑾峰彇鍌ㄤ綅淇℃伅(瀵嗛泦搴�) + /// </summary> + /// <param name="wareHouseNo">浠撳簱</param> + /// <param name="row">鎺�</param> + /// <returns></returns> + public async Task<BordModelVM> GetFlatLegend(string wareHouseNo, int layer) + { + var list = await Db.Queryable<SysStorageLocat>().Where(s => s.WareHouseNo == wareHouseNo && s.Layer == layer && s.IsDel == "0").ToListAsync(); + BordModelVM listBord = new BordModelVM() + { + Col = 15, + Row = 21 + }; + + foreach (var modLocat in list) + { + SlotsVm mod = new SlotsVm() + { + SlotColumn = modLocat.Column, + SlotRow = modLocat.Row, + SlotCode = modLocat.LocatNo, + //SlotStatusCls = modLocat.Flag!="0"? "eight": modLocat.Status == "0"? "zero":, + Make = modLocat.Make + }; + if (modLocat.Flag != "0") + mod.SlotStatusCls = "eight"; + switch (modLocat.Status) + { + case "0": + mod.SlotStatusCls = "zero"; + break; + case "1": + mod.SlotStatusCls = "one"; + break; + case "2": + mod.SlotStatusCls = "two"; + break; + case "3": + mod.SlotStatusCls = "three"; + break; + case "4": + mod.SlotStatusCls = "four"; + break; + case "5": + mod.SlotStatusCls = "five"; + break; + default: + break; + } + listBord.SlotsVm.Add(mod); + } + + return listBord; + + } + } } -- Gitblit v1.8.0