hudong
2025-06-24 fddd1f3d621a1947d698652c72b6a16cc3f6ee2d
增加 审核表 审核逻辑优化
出入库逻辑修改
1个文件已修改
53 ■■■■ 已修改文件
api/WmsSpaHelper.cs 53 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/WmsSpaHelper.cs
@@ -1750,15 +1750,21 @@
            using (var db = new SqlHelper<object>().GetInstance())
            {
                Location endloc = new Location();
                var hwbd = db.Queryable<TN_Container_Code>().Where(a => a.S_CNTR_CODE == model.start).First();
                var hwbd = db.Queryable<TN_Container_Code>().Where(a => a.S_CNTR_CODE == model.cntr_code).First();
                if (hwbd!=null)
                {
                    endloc = db.Queryable<Location>().Where(a => a.S_CODE == hwbd.S_LOC_CODE).First();
                    if (endloc?.N_LOCK_STATE != 0)
                    {
                        result.resultCode = 3;
                        result.resultMsg = $"终点库位已锁/不存在";
                        return result;
                    }
                }
                else
                {
                    result.resultCode = 3;
                    result.resultMsg = $"托盘找不到货位";
                    result.resultMsg = $"{model.cntr_code}托盘找不到货位";
                    return result;
                }
                   
@@ -2019,6 +2025,14 @@
                        if (!string.IsNullOrEmpty(model.cntr_code))
                        {
                            var hwbd = db.Queryable<TN_Container_Code>().Where(a => a.S_CNTR_CODE == model.cntr_code).First();
                            if (hwbd!=null)
                            {
                                end = db.Queryable<Location>().Where(s => s.S_CODE == hwbd.S_LOC_CODE).First();
                            }
                            else
                            {
                            #region MyRegion
                            //var list = db.Queryable<CntrItemRel>().Select(s => s.S_CNTR_CODE).ToArray();
                            //var S_LOC_CODElist =   db.Queryable<LocCntrRel>().Where(s=>!list.Contains(s.S_CNTR_CODE)).Select(s=>s.S_LOC_CODE).ToArray();
@@ -2026,7 +2040,7 @@
                            //// 获取所有被占用的容器编码
                            //var usedContainerCodes = db.Queryable<CntrItemRel>().Select(s => s.S_CNTR_CODE).ToList();
                                #endregion
                            // 获取未被占用的容器对应的货位编码
                            var availableLocationCodes = db.Queryable<LocCntrRel>()
                                .Select(s => s.S_LOC_CODE)
@@ -2037,8 +2051,16 @@
                               .Where(it => !availableLocationCodes.Contains(it.S_CODE) && it.S_AREA_CODE == "HJQ")
                               .ToList().FirstOrDefault();
                                if (end!=null)
                                {
                                    TN_Container_Code tN_Container_Code = new TN_Container_Code();
                                    tN_Container_Code.S_CNTR_CODE= model.cntr_code;
                                    tN_Container_Code.S_LOC_CODE = end.S_CODE;
                                    var sss = db.Insertable<TN_Container_Code>(tN_Container_Code).ExecuteCommand();
                                }
                            #endregion
                            }
                        }
                        else
                        {
@@ -2317,7 +2339,7 @@
                            else
                            {
                                db.Updateable(cir).UpdateColumns(it => new { it.F_QTY, it.S_CNTR_TYPE, it.F_ALLOC_QTY, it.T_MODIFY }).ExecuteCommand();
                                //添加回库作业
                            }
                        }
                        else
@@ -2370,11 +2392,18 @@
                        if (hwbd != null)
                        {
                            endloc = db.Queryable<Location>().Where(a => a.S_CODE == hwbd.S_LOC_CODE).First();
                            if (endloc?.N_LOCK_STATE != 0)
                            {
                                result.resultCode = 3;
                                result.resultMsg = $"终点库位已锁/不存在";
                                return result;
                            }
                        }
                        else
                        {
                            result.resultCode = 3;
                            result.resultMsg = $"托盘找不到货位";
                            result.resultMsg = $"{cntr_code}托盘找不到货位";
                            return result;
                        }
@@ -2387,12 +2416,12 @@
                            S_START_AREA = startinfo.S_AREA_CODE,
                            S_START_WH = startinfo.S_WH_CODE,
                            S_END_LOC = start,
                            S_END_AREA = startinfo.S_AREA_CODE,
                            S_END_WH = startinfo.S_AREA_CODE,
                            //S_END_LOC = locs?.S_START_LOC,
                            //S_END_AREA = locs?.S_START_AREA,
                            //S_END_WH = locs?.S_START_WH,
                            //S_END_LOC = start,
                            //S_END_AREA = startinfo.S_AREA_CODE,
                            //S_END_WH = startinfo.S_AREA_CODE,
                            S_END_LOC = endloc?.S_CODE,
                            S_END_AREA = endloc?.S_AREA_CODE,
                            S_END_WH = endloc?.S_WH_CODE,
                            N_TYPE = 1,
                            // S_TYPE = WMSTask.GetTypeStr(1),