Demo
2024-02-19 b5eec4dc738e4abc20c652c041fa7b17ba0e636f
Wms/WMS.BLL/SysServer/StorageLocatServer.cs
@@ -62,6 +62,7 @@
                var data = LocatRst.GetAllByOrderPageAsync(item, limit, page,out int counts)
                    .Includes(x => x.WareHouseInfo)
                    .Includes(x => x.AreaInfo)
                    .Includes(x => x.RoadwayInfo)
                    .Includes(x => x.TemperatureInfo)
                    .Includes(x => x.CreateUserInfo)
                    .Includes(x => x.UpdateUserInfo).ToList();
@@ -70,8 +71,11 @@
                {
                    Id = m.Id,
                    LocatNo = m.LocatNo,
                    WareHouseNo = m.WareHouseNo,
                    WareHouseName = m.WareHouseInfo == null ? "" : m.WareHouseInfo.WareHouseName,
                    RoadwayNo = m.RoadwayNo,
                    RoadwayName = m.RoadwayInfo == null ? "" : m.RoadwayInfo.RoadwayName,
                    AreaNo = m.AreaNo,
                    AreaName = m.AreaInfo == null ? "" : m.AreaInfo.AreaName,
                    Status = m.Status,
                    StatusName = GetStatus(m.Status),
@@ -217,6 +221,52 @@
                throw new Exception(e.Message);
            }
        }
        /// <summary>
        /// 添加储位信息(平库)用于开发人员添加基础信息
        /// </summary>
        /// <param name="model"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public async Task<int> AddPkStorageLocat(AddLocateVm model, int userId)
        {
            try
            {
                var q = 0;
                // 排(组)循环
                for(int i=1;i<=model.Row;i++)
                {
                    // 列循环
                    for (int z = 1; z <= model.Col; z++)
                    {
                        q += await LocatRst.AddAsync(new SysStorageLocat()
                        {
                            // 区域+排+列+层
                            LocatNo = model.AreaNo + i.ToString().PadLeft(2, '0') + z.ToString().PadLeft(2, '0') + "01",
                            WareHouseNo = model.HouseNo,
                            RoadwayNo = "",
                            AreaNo = model.AreaNo,
                            Status = "0",
                            AisleOne = "1",
                            AisleTwo = "",
                            Flag = "0",
                            Depth = z.ToString(),
                            Row = i,
                            Column = z,
                            Layer = 1,
                            CreateUser = userId
                        }); ;
                    }
                }
                return q;
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }
        public bool EditStorageLocatList(EditLocateListVm model, int userId)
        {
            try
@@ -306,17 +356,14 @@
        /// <param name="wareHouseNo">仓库</param>
        /// <param name="roadway">巷道号</param>
        /// <param name="row">排 1 or 2</param>
        /// <param name="depth">深度</param>
        /// <returns></returns>
        public List<SysStorageLocat> GetStorageLocatLists(string wareHouseNo, string roadway, string row)
        public List<SysStorageLocat> GetStorageLocatLists(string wareHouseNo, string roadway, string row, string depth)
        {
            try
            {
                var road = roadway.Substring(1, roadway.Length - 1);
                var num = int.Parse(road);
                var rows = (num - 1) * 2 + int.Parse(row);//排
                var list = Db.Queryable<SysStorageLocat>().Where(m =>
                    m.IsDel == "0" && m.WareHouseNo == wareHouseNo && m.RoadwayNo == roadway && m.Row == rows).ToList();
                    m.IsDel == "0" && m.WareHouseNo == wareHouseNo && m.RoadwayNo == roadway && m.Row == int.Parse(row) && m.Depth == depth).ToList();
                 
                return list;
            }
@@ -343,7 +390,7 @@
                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 == rows).Max(m=>m.Layer);
                    m.IsDel == "0" && m.WareHouseNo == wareHouseNo && m.RoadwayNo == roadway && m.Row == int.Parse(row)).Max(m=>m.Layer);
                return maxLayer;
            }
@@ -369,7 +416,7 @@
                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 == rows).Max(m => m.Column);
                    m.IsDel == "0" && m.WareHouseNo == wareHouseNo && m.RoadwayNo == roadway && m.Row == int.Parse(row)).Max(m => m.Column);
                return maxColumn;
            }
@@ -588,7 +635,7 @@
        {
            try
            {
                string str = "select RoadwayNo,RoadwayName from SysStorageRoadway where IsDel = @isdel and WareHouseNo = @warehouseno";
                string str = "select RoadwayNo,RoadwayName,WareHouseNo from SysStorageRoadway where IsDel = @isdel and WareHouseNo = @warehouseno";
                
                List<RoadwayDto> roadway = Db.Ado.SqlQuery<RoadwayDto>(str, new
                {