chengsc
2025-05-11 3a5257be69608f4301fe1a1e207db7d95cc4178c
修改问题
10个文件已修改
367 ■■■■■ 已修改文件
Pda/View/HouseDataSetting/agvTransport.html 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pda/View/SoSetting/palletOut.html 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs 112 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/HttpServer.cs 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/Logic/AllotLocation.cs 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.IBLL/IHttpServer.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/Wms/Controllers/DownApiController.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pda/View/HouseDataSetting/agvTransport.html
@@ -143,10 +143,7 @@
                            <div class="layui-input-block" id="selectRuku">
                                <select id="Ruku" lay-filter="getRuku" lay-search>
                                    <option value=""></option>
                                    <option value="A">A</option>
                                    <option value="B">B</option>
                                    <option value="C">C</option>
                                    <option value="D">D</option>
                                    <option value="B040101">工位9</option>
                                </select>
                                <img src="/assets/down_arraw.png">
                            </div>
Pda/View/SoSetting/palletOut.html
@@ -69,10 +69,8 @@
                            <div class="layui-input-block" id="selectDiv">
                                <select id="bar" lay-filter="getbar" lay-verify="required" lay-search>
                                    <option value=""></option>
                                    <option value="1">1</option>
                                    <option value="2">2</option>
                                    <option value="3">3</option>
                                    <option value="4">4</option>
                                    <option value="17">17</option>
                                    <option value="18">18</option>
                                </select>
                                <!-- <img src="/assets/down_arraw.png" > -->
                            </div>
Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -2313,35 +2313,35 @@
                };
                var id = Db.Insertable(modelpb).ExecuteReturnIdentity();
                var modelbb = new BllBoxInfo
                {
                    ASNNo = "",
                    ASNDetailNo = null,
                    BindNo = id,
                    PalletNo = model.PalletNo,
                    PalletNo2 = model.PalletNo2,
                    PalletNo3 = model.PalletNo3,
                    Status = "2",
                    CompleteTime = DateTime.Now,
                    Qty = (int)model.Qty,
                    FullQty = pNum,
                    SkuNo = sku.SkuNo,
                    SkuName = sku.PackagNo,
                    LotNo = "",
                    LotText = "",
                    SupplierLot = "",
                    InspectStatus = sku.IsInspect,
                    Origin = "PDA",
                    BoxNo = "",
                    BoxNo2 = "",
                    BoxNo3 = "",
                    InspectMark = "",
                    BitBoxMark = "0",
                //var modelbb = new BllBoxInfo
                //{
                //    ASNNo = "",
                //    ASNDetailNo = null,
                //    BindNo = id,
                //    PalletNo = model.PalletNo,
                //    PalletNo2 = model.PalletNo2,
                //    PalletNo3 = model.PalletNo3,
                //    Status = "2",
                //    CompleteTime = DateTime.Now,
                //    Qty = (int)model.Qty,
                //    FullQty = pNum,
                //    SkuNo = sku.SkuNo,
                //    SkuName = sku.SkuName,
                //    LotNo = "",
                //    LotText = "",
                //    SupplierLot = "",
                //    InspectStatus = sku.IsInspect,
                //    Origin = "PDA",
                //    BoxNo = "",
                //    BoxNo2 = "",
                //    BoxNo3 = "",
                //    InspectMark = "",
                //    BitBoxMark = "0",
                    CreateUser = (int)model.CreateUser,
                    CreateTime = datetime
                };
                Db.Insertable(modelbb).ExecuteCommand();
                //    CreateUser = (int)model.CreateUser,
                //    CreateTime = datetime
                //};
                //Db.Insertable(modelbb).ExecuteCommand();
                //添加库存
@@ -2389,35 +2389,35 @@
                #region 库存箱码明细
                var box2 = new DataBoxInfo()
                {
                    StockDetailId = sdId1,
                    BindNo = modelpb.Id,
                    BoxNo = modelbb.BoxNo,
                    BoxNo2 = modelbb.BoxNo2,
                    BoxNo3 = modelbb.BoxNo3,
                    PalletNo = modelbb.PalletNo,
                    PalletNo2 = modelbb.PalletNo2,
                    PalletNo3 = modelbb.PalletNo3,
                    Qty = modelbb.Qty,
                    FullQty = modelbb.FullQty,
                    Status = "2",
                    LotNo = modelbb.LotNo,
                    LotText = modelbb.LotText,
                    SkuNo = modelbb.SkuNo,
                    SkuName = modelbb.SkuName,
                    Standard = sku.Standard,
                    ProductionTime = modelbb.ProductionTime,
                    SupplierLot = modelbb.SupplierLot,
                    InspectStatus = sku.IsInspect,
                    InspectMark = modelbb.InspectMark,
                    BitBoxMark = modelbb.BitBoxMark,
                    ExpirationTime = modelbb.ExpirationTime,
                //var box2 = new DataBoxInfo()
                //{
                //    StockDetailId = sdId1,
                //    BindNo = modelpb.Id,
                //    BoxNo = modelbb.BoxNo,
                //    BoxNo2 = modelbb.BoxNo2,
                //    BoxNo3 = modelbb.BoxNo3,
                //    PalletNo = modelbb.PalletNo,
                //    PalletNo2 = modelbb.PalletNo2,
                //    PalletNo3 = modelbb.PalletNo3,
                //    Qty = modelbb.Qty,
                //    FullQty = modelbb.FullQty,
                //    Status = "2",
                //    LotNo = modelbb.LotNo,
                //    LotText = modelbb.LotText,
                //    SkuNo = modelbb.SkuNo,
                //    SkuName = modelbb.SkuName,
                //    Standard = sku.Standard,
                //    ProductionTime = modelbb.ProductionTime,
                //    SupplierLot = modelbb.SupplierLot,
                //    InspectStatus = sku.IsInspect,
                //    InspectMark = modelbb.InspectMark,
                //    BitBoxMark = modelbb.BitBoxMark,
                //    ExpirationTime = modelbb.ExpirationTime,
                    CreateUser = 0,
                    CreateTime = datetime
                };
                Db.Insertable(box2).ExecuteCommand();
                //    CreateUser = 0,
                //    CreateTime = datetime
                //};
                //Db.Insertable(box2).ExecuteCommand();
                #endregion
                #region 库存 
Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
@@ -839,23 +839,22 @@
                    throw Oops.Bah("储位信息不存在,请检查!");
                }
                //目标储位信息
                var storageLocatEnd = new SysStorageLocat();
                if (!string.IsNullOrEmpty(areaNo))
                {
                    storageLocatEnd = await Db.Queryable<SysStorageLocat>().FirstAsync(w => w.IsDel == "0" && w.LocatNo == EndLocat && w.Flag == "0");
                //var storageLocatEnd = new SysStorageLocat();
                var storageLocatEnd = await Db.Queryable<SysStorageLocat>().FirstAsync(w => w.IsDel == "0" && w.LocatNo == EndLocat && w.Flag == "0");
                    if (storageLocatEnd == null)
                    {
                        throw Oops.Bah("目标储位信息不存在,请检查!");
                    }
                }
                //添加出库任务
                var taskNo = new Common().GetMaxNo("TK");
                var exTask = new LogTask
                var moveTask = new LogTask
                {
                    TaskNo = taskNo,
                    Sender = "WMS",
                    Receiver = "AGV",
                    Receiver = "WCS",
                    IsSuccess = 0, //是否下发成功 0失败 1成功
                    StartLocat = stockDetail.LocatNo,//起始位置
@@ -871,7 +870,7 @@
                    CreateTime = DateTime.Now
                };
                await Db.Insertable(exTask).ExecuteCommandAsync();
                await Db.Insertable(moveTask).ExecuteCommandAsync();
                //修改库存明细信息
                //stockDetail.Status = "4";//移库锁定
@@ -897,14 +896,15 @@
                var outDto = new List<OutCommandDto>();
                outDto.Add(new OutCommandDto()
                {
                    PalletNo = exTask.PalletNo,//托盘号
                    StartLocate = exTask.StartLocat, // 起始位置
                    StartRoadway = storageLocat.RoadwayNo,//其实巷道
                    TaskNo = moveTask.TaskNo, // 任务号
                    TaskType = "2",// 任务类型 0入 1出 2移
                    PalletNo = moveTask.PalletNo,//托盘号
                    StartLocate = moveTask.StartLocat, // 起始位置
                    EndLocate = EndLocat, // 目标位置 
                    TaskNo = exTask.TaskNo, // 任务号
                    TaskType = "2",// 任务类型 (出库)0入 1出 2移
                    OutMode = "",  //出库口
                    Order = 1
                    Order = 999,
                    Type = PLCTypeEnum.AGV
                });
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -22,6 +22,7 @@
using WMS.Entity.BllAsnEntity;
using System.Threading.Tasks;
using Utility;
using WMS.BLL.Logic;
namespace WMS.BLL.BllPdaServer
{
@@ -1770,8 +1771,7 @@
                //获取当前时间
                DateTime serverTime = Db.GetDate();
                //获取库存明细是否小于等于该垛数
                //string str = "select * from DataStockDetail where IsDel = '0' and SkuNo = '100099' and Status = '0' ";
                //var stockDetail = Db.Ado.SqlQuery<DataStockDetail>(str);
                var stockDetail = await Db.Queryable<DataStockDetail>().Where(s => s.IsDel == "0" && s.SkuNo == "100099" && s.Status == "0").ToListAsync();
                if (stockDetail.Count > 0)
                {
@@ -1797,7 +1797,7 @@
                foreach (var s in stockDetail)
                {
                    //获取储位信息
                    var locat = await Db.Queryable<SysStorageLocat>().FirstAsync(l => l.LocatNo == s.LocatNo && l.IsDel == "0" && l.WareHouseNo == "W02");
                    var locat = await Db.Queryable<SysStorageLocat>().FirstAsync(l => l.LocatNo == s.LocatNo && l.IsDel == "0" && (l.WareHouseNo == "W01"||l.WareHouseNo == "W02"));
                    if (locat == null)
                    {
@@ -1872,10 +1872,10 @@
                    {
                        TaskNo = taskNo,
                        Sender = "WMS",
                        Receiver = "PDA",
                        Receiver = "WCS",
                        IsSuccess = 1, //是否下发成功 0失败 1成功
                        StartLocat = locat == null ? "零箱库" : s.LocatNo,//起始位置
                        StartLocat = s.LocatNo,//起始位置
                        EndLocat = model.OutMode,//目标位置
                        PalletNo = s.PalletNo,//托盘码
                        IsSend = 1,//是否可再次下发
@@ -1886,20 +1886,28 @@
                        OrderType = "1",//0 入库单 1 出库单  2 盘点单  3 移库单
                        CreateTime = serverTime, //创建时间
                        CreateUser = userId, //创建人
                        Msg = "Pda空托从" + locat == null ? "零箱库" : s.LocatNo + "到" + model.OutMode + "的出库任务", //关键信息
                        Msg = "Pda空托从" + s.LocatNo + "到" + model.OutMode + "的出库任务", //关键信息
                        //FinishDate = serverTime, //完成时间
                    };
                    var endroad = "";
                    if (locat.WareHouseNo == "W01")
                    {
                        endroad = new AllotLocation().RoadwayToStationNum(locat.RoadwayNo, model.OutMode);
                    }
                    outDtoList.Add(new OutCommandDto()
                    {
                        PalletNo = exTask.PalletNo,//托盘号
                        StartLocate = exTask.StartLocat, // 起始位置
                        StartRoadway = locat.RoadwayNo, //所属巷道
                        EndLocate = "", // 目标位置
                        TaskNo = exTask.TaskNo, // 任务号
                        TaskType = "1",// 任务类型 (出库)
                        OutMode = model.OutMode,  //目标地址
                        Order = 1,
                        Type = PLCTypeEnum.AGV
                        PalletNo = exTask.PalletNo,//托盘号
                        StartLocate = exTask.StartLocat, // 起始位置
                        StartRoadway = locat.RoadwayNo, //所属巷道
                        EndLocate = model.OutMode, // 目标位置
                        EndRoadway = endroad,
                        Order = 999,
                        Type = locat.WareHouseNo == "W01"?PLCTypeEnum.ShuttleCar : PLCTypeEnum.AGV
                    });
                    await Db.Insertable(exTask).ExecuteCommandAsync();
@@ -1926,17 +1934,17 @@
                        var time2 = DateTime.Now;//返回时间 .ToString("yyyy-MM-dd HH:mm:ss")
                        ////解析返回数据 
                        var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response);
                        if (wcsModel.StatusCode == 0)
                        var wcsModel = JsonConvert.DeserializeObject<WcsModel2>(response);
                        if (wcsModel.code == 0)
                        {
                            //更改任务的发送返回时间//
                            new TaskServer().EditTaskIssueOk(list2, time1, time2);
                            //str += "下发成功";
                        }
                        if (wcsModel.StatusCode == -1)
                        if (wcsModel.code == -1)
                        {
                            new TaskServer().EditTaskIssueNo(list2, time1, time2, wcsModel.Msg);
                            throw Oops.Bah(wcsModel.Msg);
                            new TaskServer().EditTaskIssueNo(list2, time1, time2, wcsModel.message);
                            throw Oops.Bah(wcsModel.message);
                        }
                    }
                    catch (AppFriendlyException e)
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -5574,9 +5574,6 @@
                                    OutMode = toLocation,  //出库口 
                                    Order = 1,
                                    UnstackingMode=unstackingMode2,//拣货方式 0机器拆托出  1 人工拣货出
                                    CompleteQty= outCount2,  //拆的件数
                                    BoxexQty = outCount,      //总件数
                                });
                                taskNoStr = exTask.TaskNo;
                            }
@@ -5691,9 +5688,7 @@
                                                    OutMode = toLocation,  //目标地址
                                                    Order = 1,
                                                    UnstackingMode = "1",//拣货方式 0机器拆托出  1 人工拣货出
                                                    CompleteQty = 0,  //拆的件数
                                                    BoxexQty = 0,      //总件数
                                                });
                                                #endregion
@@ -5749,9 +5744,6 @@
                                    OutMode = toLocation,  //目标地址
                                    Order = 1,
                                    UnstackingMode = unstackingMode2,//拣货方式 0机器拆托出  1 人工拣货出
                                    CompleteQty = outCount2,  //拆的件数
                                    BoxexQty = outCount,      //总件数
                                });
                                taskNoStr = exTask1.TaskNo;
                                #endregion
Wms/WMS.BLL/HttpServer.cs
@@ -416,6 +416,10 @@
                foreach (var item in stockDetail)
                {
                    var skuItem = skuList.First(m => m.SkuNo == item.SkuNo);
                    if (skuItem.SkuNo == "100099")
                    {
                        continue;
                    }
                    if (skuItem.Type != "2")
                    {
                        throw new Exception("托盘上有不是成品的物料");
@@ -528,7 +532,7 @@
                }
                //巷道组信息
                var roadList = Db.Queryable<SysStorageLocat>().Where(m => m.WareHouseNo == houseNo && areaList.Contains(m.AreaNo))
                var roadList = Db.Queryable<SysStorageLocat>().Where(m => m.IsDel == "0" && m.WareHouseNo == houseNo && areaList.Contains(m.AreaNo) && !string.IsNullOrWhiteSpace(m.RoadwayNo))
                    .GroupBy(m => m.RoadwayNo).OrderBy(m => m.RoadwayNo).Select(m => m.RoadwayNo).ToList();
                #endregion
@@ -719,6 +723,10 @@
                foreach (var item in stockDetail)
                {
                    var skuItem = skuList.First(m => m.SkuNo == item.SkuNo);
                    if (skuItem.SkuNo == "100099")
                    {
                        continue;
                    }
                    if (skuItem.Type != "2")
                    {
                        throw new Exception("托盘上有不是成品的物料");
@@ -839,7 +847,10 @@
                }
                locate = allotLocate.GetMiJiSuiTableLocate(roadwayNo, areaList);
                if (locate == null)
                {
                    throw new Exception($"没有空储位");
                }
                #endregion
@@ -1021,12 +1032,21 @@
                {
                    throw new Exception($"未查询到任务中的储位信息");
                }
                var pingAreaStr = Db.Queryable<SysStorageArea>().Where(m => m.IsDel == "0" && m.WareHouseNo == "W04" && m.AreaNo != "B06" && m.AreaNo != "B07").Select(m => m.AreaNo).ToList();
                var pingAreaStr = Db.Queryable<SysStorageArea>().Where(m => m.IsDel == "0" && m.WareHouseNo == "W04").Select(m => m.AreaNo).ToList();
                var pingLocateInfo = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == locate.LocatNo && pingAreaStr.Contains(m.AreaNo) && m.IsDel == "0");
                if (pingLocateInfo == null)
                {
                    throw new Exception("当前任务起始储位不在平库储位");
                }
                var stockDetail = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == task.PalletNo).ToList();
                foreach (var item in stockDetail)
                {
                    item.WareHouseNo = "";
                    item.RoadwayNo = "";
                    item.AreaNo = "";
                    item.LocatNo = "";
                }
                Db.Updateable(stockDetail).ExecuteCommand();
                locate.Status = "0";
                Db.Updateable(locate).ExecuteCommand();
            }
@@ -1118,6 +1138,109 @@
        }
        /// <summary>
        /// 移库任务完成JC34
        /// </summary>
        /// <param name="taskNo"></param>
        /// <param name="userId"></param>
        /// <exception cref="Exception"></exception>
        public void MoveSuccess(string taskNo, int userId)
        {
            try
            {
                Db.BeginTran();
                //正常入库
                var task = Db.Queryable<LogTask>().First(m => m.IsDel == "0" && m.TaskNo == taskNo);
                if (task == null)
                {
                    throw new Exception("未查询到任务信息");
                }
                if (task.Status == "2")
                {
                    throw new Exception("当前任务已完成");
                }
                var stockDetail = Db.Queryable<DataStockDetail>().Where(m => m.PalletNo == task.PalletNo).ToList();
                //判断是否是回流入库完成
                if (!stockDetail.Any())
                {
                    throw new Exception("没有查询到库存信息");
                }
                //当前任务中的储位信息
                var locate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.StartLocat);
                if (locate == null)
                {
                    throw new Exception($"未查询到任务中的起始储位信息");
                }
                //当前任务中的储位信息
                var locate2 = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.EndLocat);
                if (locate2 == null)
                {
                    throw new Exception($"未查询到任务中的目标储位信息");
                }
                task.Status = "2";//任务状态
                task.IsSend = 0;
                task.IsCancel = 0;
                task.IsFinish = 0;
                task.FinishDate = DateTime.Now;//完成时间
                Db.Updateable(task).ExecuteCommand();
                if (userId != 0)
                {
                    //添加操作日志记录
                    var k = new OperationASNServer().AddLogOperationAsn("入库作业", "入库日志", taskNo, "完成", $"点击完成按钮、完成任务号为:{taskNo}的任务", userId);
                }
                foreach (var item in stockDetail)
                {
                    if (locate2.LocatNo == "B040101")
                    {
                        item.WareHouseNo = "";
                        item.RoadwayNo = "";
                        item.AreaNo = "";
                        item.LocatNo = "";
                    }
                    else
                    {
                        item.WareHouseNo = locate2.WareHouseNo;
                        item.RoadwayNo = locate2.RoadwayNo;
                        item.AreaNo = locate2.AreaNo;
                        item.LocatNo = locate2.LocatNo;
                    }
                    item.UpdateTime = DateTime.Now;
                    if (userId != 0)
                    {
                        item.UpdateUser = userId;
                    }
                }
                if (locate.WareHouseNo != "W04")
                {
                    locate.Status = "0";
                    Db.Updateable(locate).ExecuteCommand();
                }
                if (locate2.LocatNo == "B040101")
                {
                    locate2.Status = "0";
                    Db.Updateable(locate2).ExecuteCommand();
                }
                else
                {
                    locate2.Status = "1";
                    Db.Updateable(locate).ExecuteCommand();
                }
                Db.Updateable(stockDetail).ExecuteCommand();
                Db.CommitTran();
            }
            catch (Exception e)
            {
                Db.RollbackTran();
                throw new Exception(e.Message);
            }
        }
    }
Wms/WMS.BLL/Logic/AllotLocation.cs
@@ -38,8 +38,8 @@
                dataStock = dataStock.Where(m => m.LotNo == lotNo);
            }
            //库存查找相同物料/批次的巷道
            var yiYouRoad = dataStock.GroupBy(m => m.RoadwayNo).Select(m => m.RoadwayNo).OrderBy(m => m).ToList();
            foreach (var l in yiYouRoad)
            var yiYouRoad = dataStock.GroupBy(m => m.RoadwayNo).Select(m => m.RoadwayNo).ToList();
            foreach (var l in yiYouRoad.OrderBy(m=>m).ToList())
            {
                // 判断当前巷道(组)是否有空余储位
                 
@@ -78,6 +78,7 @@
                            
                        }
                    }
                }
                    if (bl)
                    {
                        // 判断当前巷道(组)是否有空余储位
@@ -89,7 +90,6 @@
                        if (locateCount - bindNum > 0)
                        {
                            return l;
                        }
                    }
                }
            }
@@ -110,7 +110,7 @@
            var db = DataContext.Db;
            
            // 判断当前巷道(组)是否有空余储位
            var locateList = db.Queryable<SysStorageLocat>().Where(m => m.IsDel == "0" && m.RoadwayNo == roadwayNo && areaList.Contains(m.AreaNo)).ToList();
            var locateList = db.Queryable<SysStorageLocat>().Where(m => m.IsDel == "0" && m.RoadwayNo == roadwayNo && areaList.Contains(m.AreaNo) && m.Status == "0").ToList();
            if (locateList.Count(m => m.Status == "0") > 0)
            {
                var bl = GetLocateASCOrDesc(roadwayNo);
@@ -145,7 +145,7 @@
            var locate = db.Queryable<SysStorageLocat>().First(m => m.IsDel == "0" && m.RoadwayNo == roadStr);
            var a = locate.LocatNo.Substring(2,2);//储位列
            var b = locate.AisleOne.Substring(2, 2);//通道口列
            return int.Parse(a) < int.Parse(b);
            return int.Parse(a) > int.Parse(b);
        }
        /// <summary>
@@ -165,22 +165,22 @@
            var locatList2 = db.Queryable<SysStorageLocat>().Where(m => m.IsDel == "0" && m.RoadwayNo == locate.RoadwayNo && m.Column > a).ToList();
            if (bl)
            {
                if (locatList1.Count(m => str1.Contains(m.Status)) > 0)
                if (locatList1.Count(m => str2.Contains(m.Status)) > 0)
                {
                    return false;
                }
                if (locatList2.Count(m => str2.Contains(m.Status)) > 0)
                if (locatList2.Count(m => str1.Contains(m.Status)) > 0)
                {
                    return false;
                }
            }
            else
            {
                if (locatList1.Count(m => str2.Contains(m.Status)) > 0)
                if (locatList1.Count(m => str1.Contains(m.Status)) > 0)
                {
                    return false;
                }
                if (locatList2.Count(m => str1.Contains(m.Status)) > 0)
                if (locatList2.Count(m => str2.Contains(m.Status)) > 0)
                {
                    return false;
                } 
@@ -380,7 +380,7 @@
        /// <param name="areaList">区域集合</param>
        /// <param name="isRoadway">是否指定巷道</param>
        /// <returns></returns>
        private SysStorageLocat GetLocateByRoadways(List<SysStorageRoadway> roadways,List<string> areaList,bool isRoadway = false ,string houseNo = "W01")
        private SysStorageLocat GetLocateByRoadways(List<SysStorageRoadway> roadways,List<string> areaList,bool isRoadway = false ,string houseNo = "W02")
        {
            try
            {
Wms/WMS.IBLL/IHttpServer.cs
@@ -47,5 +47,12 @@
        /// <param name="userId">操作人(下游系统时为空)</param> 
        void ArrivalSuccess2(string taskNo, int userId);
        /// <summary>
        /// 移库完成
        /// </summary>
        /// <param name="taskNo"></param>
        /// <param name="userId"></param>
        void MoveSuccess(string taskNo, int userId);
    }
}
Wms/Wms/Controllers/DownApiController.cs
@@ -436,9 +436,11 @@
                        }
                        break;
                    case "3"://移库完成任务、优化储位
                        if (model.TaskType == "3") //0:入库 1:出库 2:移库
                        if (model.TaskType == "2") //0:入库 1:出库 2:移库
                        {
                            //填写移库完成代码
                            _http.MoveSuccess(model.TaskNo, 0);
                            return Ok(new WcsModel { StatusCode = 0, Msg = "移库完成" });
                        }
                        break;
                    default: