hudong
2025-05-23 27d187d5834cc6eabc0fba79c13f9d8efd6bec19
1.内采出库流程报错测试
2.称重算法逻辑优化
8个文件已修改
391 ■■■■ 已修改文件
api/ApiModel.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/ApibackModel.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/WmsSapController.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/WmsSpaHelper.cs 355 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/ZSCM2_SCFL.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
core/WCSCore.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
core/WMSCore.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
models/TN_Ll_Order.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/ApiModel.cs
@@ -353,6 +353,17 @@
            public float qty { get; set; }
        }
        /// <summary>
        /// 空托出入库
        /// </summary>
        public class KtSorting
        {
            public string cntr_code { get; set; }//容器
            public string start { get; set; }//容器
            public int? Type { get; set; }
        }
        /// <summary>
        /// 人工分拣入参
        /// </summary>
        public class FJSorting
api/ApibackModel.cs
@@ -449,8 +449,9 @@
                /// <summary>
                /// 过账日期
                /// </summary>
                public string GZRQ { get; set; }
                ///
                public string PZRQ { get; set; }
                public string GZRQ { get; set; }
                /// <summary>
                /// 过账人员
                /// </summary>
api/WmsSapController.cs
@@ -370,6 +370,16 @@
            return WmsSpaHelper.OutboundOrderSorting(model);
        }
        /// <summary>
        /// 空托出入库
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost]
        public Task<SimpleResult> InOutKT(KtSorting model)
        {
            return WmsSpaHelper.KtSorting(model);
        }
        /// <summary>
api/WmsSpaHelper.cs
@@ -35,6 +35,7 @@
using SqlSugar;
using static HH.WCS.Mobox3.pinggao.models.SapRoot.GYSDto;
using System.Web.Services.Protocols;
using System.Web.Http.ValueProviders;
namespace HH.WCS.Mobox3.pinggao.api
{
@@ -1736,6 +1737,7 @@
            using (var db = new SqlHelper<object>().GetInstance())
            {
                var locinfo = db.Queryable<Location>().Where(a => a.S_CODE == model.start).First();
                if (locinfo?.N_LOCK_STATE != 0)
                {
                    result.resultCode = 3;
@@ -1823,7 +1825,209 @@
            }
        }
        /// <summary>
        /// 分拣
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        internal static async Task<SimpleResult> KtSorting(KtSorting model)
        {
            var result = new SimpleResult();
            // var db = new SqlHelper<object>().GetInstance();
            using (var db = new SqlHelper<object>().GetInstance())
            {
                try
                {
                    result.resultMsg = "成功";
                    result.resultCode = 0;
                    var locinfo = db.Queryable<Location>().Where(a => a.S_CODE == model.start).First();
                    if (locinfo?.N_LOCK_STATE != 0)
                    {
                        result.resultCode = 3;
                        result.resultMsg = $"起始库位已锁/不存在";
                        return result;
                    }
                    //判断托盘是否已经生成任务,如果没有则生成
                    var wmsTaskcs = WMSHelper.GetWmsTaskByCntr(model.cntr_code);
                    if (wmsTaskcs != null)
                    {
                        result.resultCode = 3;
                        result.resultMsg = $"起点{model.start} 托盘{model.cntr_code}已经创建任务,请勿重复申请";
                        return result;
                    }
                    //出库
                    if (model.Type==2)
                    {
                        Location start = new Location();
                        if (!string.IsNullOrEmpty(model.cntr_code))
                        {
                           var loc= db.Queryable<LocCntrRel>().Where(it => it.S_CNTR_CODE == model.cntr_code).First();
                            if (loc==null)
                            {
                                LogHelper.Info($"容器{model.cntr_code}找不到对应货位");
                                result.resultMsg = $"容器{model.cntr_code}找不到对应货位";
                                result.resultCode = 1;
                                return result;
                            }
                            else
                            {
                                start= db.Queryable<Location>().Where(it => it.S_CODE == loc.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();
                            //start = db.Queryable<Location>().Where(it => S_LOC_CODElist.Contains(it.S_CODE)).First();
                            //// 获取所有被占用的容器编码
                            //var usedContainerCodes = db.Queryable<CntrItemRel>().Select(s => s.S_CNTR_CODE).ToList();
                            //// 获取未被占用的容器对应的货位编码
                            //var availableLocationCodes = db.Queryable<LocCntrRel>()
                            //    .Where(s => !usedContainerCodes.Contains(s.S_CNTR_CODE))
                            //    .Select(s => s.S_LOC_CODE)
                            //    .ToList();
                            //// 获取第一个可用货位(如果没有则返回null)
                            //var startLocation = db.Queryable<Location>()
                            //    .Where(it => availableLocationCodes.Contains(it.S_CODE))
                            //    .ToList().FirstOrDefault();
                            #endregion
                            start = db.Queryable<LocCntrRel>()
                                    .LeftJoin<CntrItemRel>((lcr, cir) => lcr.S_CNTR_CODE == cir.S_CNTR_CODE)
                                    .Where((lcr, cir) => cir.S_CNTR_CODE == null)  // 找出未被占用的容器
                                    .LeftJoin<Location>((lcr, cir, loc) => lcr.S_LOC_CODE == loc.S_CODE&&loc.S_AREA_CODE== "HJQ")
                                    .Select((lcr, cir, loc) => loc).ToList()  // 返回 Location 对象
                                    .FirstOrDefault();  // 或者 Take(1).ToList()[0]
                        }
                        if (start==null)
                        {
                            LogHelper.Info($"{model.cntr_code}未找到可用货位");
                            result.resultMsg = $"{model.cntr_code}未找到可用货位";
                            result.resultCode = 1;
                            return result;
                        }
                        //库位信息
                        var endinfo = db.Queryable<Location>().Where(it => it.S_CODE == model.start).First();
                        var wmsTask = new WMSTask
                        {
                            S_CNTR_CODE = model.cntr_code,
                            S_CODE = WMSHelper.GenerateTaskNo(),
                            S_START_LOC = start.S_CODE,
                            S_START_AREA = start.S_AREA_CODE,
                            S_START_WH = start.S_WH_CODE,
                            S_END_LOC = endinfo.S_CODE,
                            S_END_AREA = endinfo.S_AREA_CODE,
                            S_END_WH = endinfo.S_WH_CODE,
                            N_TYPE = 2,
                            // S_TYPE = WMSTask.GetTypeStr(1),
                            S_TYPE = "出库空托盘",
                            S_OP_DEF_CODE = "",
                            S_OP_DEF_NAME = "pda出库"
                        };
                        if (WMSHelper.CreateWmsTask(wmsTask))
                        {
                            LocationHelper.LockLoc(start.S_CODE, 1);
                            result.resultMsg = $"创建作业成功,作业号{wmsTask.S_CODE}";
                        }
                    }
                    else //入库
                    {
                        Location end = new Location();
                        if (!string.IsNullOrEmpty(model.cntr_code))
                        {
                            #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();
                            //start = db.Queryable<Location>().Where(it => S_LOC_CODElist.Contains(it.S_CODE)).First();
                            //// 获取所有被占用的容器编码
                            //var usedContainerCodes = db.Queryable<CntrItemRel>().Select(s => s.S_CNTR_CODE).ToList();
                            // 获取未被占用的容器对应的货位编码
                            var availableLocationCodes = db.Queryable<LocCntrRel>()
                                .Select(s => s.S_LOC_CODE)
                                .ToList();
                            // 获取第一个可用货位(如果没有则返回null)
                            end = db.Queryable<Location>()
                               .Where(it => !availableLocationCodes.Contains(it.S_CODE)&&it.S_AREA_CODE== "HJQ")
                               .ToList().FirstOrDefault();
                            #endregion
                        }
                        else
                        {
                            LogHelper.Info($"入库 容器{model.cntr_code}不能为空");
                            result.resultMsg = $"入库 容器{model.cntr_code}不能为空";
                            result.resultCode = 1;
                            return result;
                        }
                        if (end==null)
                        {
                            LogHelper.Info($"{model.cntr_code}未找到可用货位");
                            result.resultMsg = $"{model.cntr_code}未找到可用货位";
                            result.resultCode = 1;
                            return result;
                        }
                        var sart = db.Queryable<Location>().Where(it => it.S_CODE == model.start).First();
                        var wmsTask = new WMSTask
                        {
                            S_CNTR_CODE = model.cntr_code,
                            S_CODE = WMSHelper.GenerateTaskNo(),
                            S_START_LOC = sart.S_CODE,
                            S_START_AREA = sart.S_AREA_CODE,
                            S_START_WH = sart.S_WH_CODE,
                            S_END_LOC = end.S_CODE,
                            S_END_AREA = end.S_AREA_CODE,
                            S_END_WH = end.S_WH_CODE,
                            N_TYPE = 1,
                            // S_TYPE = WMSTask.GetTypeStr(1),
                            S_TYPE = "入库空托盘",
                            S_OP_DEF_CODE = "",
                            S_OP_DEF_NAME = "pda入库"
                        };
                        if (WMSHelper.CreateWmsTask(wmsTask))
                        {
                            LocationHelper.LockLoc(end.S_CODE, 1);
                            result.resultMsg = $"创建作业成功,作业号{wmsTask.S_CODE}";
                        }
                    }
                    //通用接口 对容器货品的删减 和生成回库单 都要用的接口
                    return result;
                }
                catch (Exception e)
                {
                    result.resultMsg = e.Message;
                    db.RollbackTran();
                    return result;
                    throw;
                }
            }
        }
        /// <summary>
        /// 分拣
        /// </summary>
@@ -1861,7 +2065,7 @@
                        return result;
                    }
                    LogHelper.Info($"S_OUT_TYPE{po.S_OUT_TYPE}");
                    //根据不同出库类型 回调sap
                    if (po.S_OUT_TYPE == "冲销出库")
                    {
@@ -1870,7 +2074,7 @@
                    else
                    if (po.S_OUT_TYPE == "出库")//普通出库
                    {
                        LogHelper.Info($"S_OUT_TYPE{po.S_OUT_TYPE}");
                        result = await AddOutboundOrder(db, model.MaterList, model.arrival_no, model.cntr_code, model.start);
                    }
                    else if (po.S_OUT_TYPE == "计划外发料出库")
@@ -1901,32 +2105,40 @@
                        if (string.IsNullOrEmpty(po.S_WH_CODE))
                        {
                            S_WH_CODE = util.Settings.WHCode;
                        }
                        }
                        else
                        {
                            S_WH_CODE = po.S_WH_CODE;
                        }
                        if (string.IsNullOrEmpty(po.S_AREA_CODE))
                        {
                            S_AREA_CODE = util.Settings.AREACode;
                        }
                        model.MaterList.ForEach(a =>
                        else
                        {
                            LogHelper.Info($"填充数据{util.Settings.WHCode}");
                            LogHelper.Info($"减仓库量{util.Settings.AREACode}表数据 仓库{po.S_WH_CODE} 物料编码{a.item_code} 物料名称 数量{a.qty}");
                            req.item_info.Add(new AddChangeModel.itemModel
                            S_AREA_CODE = po.S_AREA_CODE;
                        }
                            model.MaterList.ForEach(a =>
                            {
                                wh_code = S_WH_CODE,
                                item_code = a.item_code,
                                item_name = "",
                                qty = a.qty
                                LogHelper.Info($"填充数据{util.Settings.WHCode}");
                                LogHelper.Info($"减仓库量{util.Settings.AREACode}表数据 仓库{po.S_WH_CODE} 物料编码{a.item_code} 物料名称 数量{a.qty}");
                                req.item_info.Add(new AddChangeModel.itemModel
                                {
                                    wh_code = S_WH_CODE,
                                    item_code = a.item_code,
                                    item_name = "",
                                    qty = a.qty
                                });
                                LogHelper.Info($"减库区量表数据 库区{po.S_AREA_CODE} 物料编码{a.item_code} 物料名称 数量{a.qty}");
                                req2.item_info.Add(new AddChangeModel.itemModel
                                {
                                    wh_code = S_WH_CODE,
                                    area_code = S_AREA_CODE,
                                    item_code = a.item_code,
                                    item_name = "",
                                    qty = a.qty
                                });
                            });
                            LogHelper.Info($"减库区量表数据 库区{po.S_AREA_CODE} 物料编码{a.item_code} 物料名称 数量{a.qty}");
                            req2.item_info.Add(new AddChangeModel.itemModel
                            {
                                wh_code = S_WH_CODE,
                                area_code = S_AREA_CODE,
                                item_code = a.item_code,
                                item_name = "",
                                qty = a.qty
                            });
                        });
                        var reqData = JsonConvert.SerializeObject(req);
                        var AppKey = Settings.AppKey;
                        var AppSecret = Settings.AppSecret;
@@ -2677,15 +2889,15 @@
                var po = db.Queryable<TN_Outbound_Order>().Includes(s => s.Details).Where(a => a.S_NO == arrival_no).First();
                string GZRQ = "";
                string PZZDRQ = "";
                if (po.BUDAT != null)
                {
                    GZRQ = DateTime.Parse(po.BUDAT.ToString()).ToString("yyyyMMdd");
                }
                if (po.BLDAT != null)
                {
                    PZZDRQ = DateTime.Parse(po.BLDAT.ToString()).ToString("yyyyMMdd");
                //if (po.Details[0].S_CJRQ != null)
                //{
                //    GZRQ = DateTime.Parse(po.Details[0].S_CJRQ.ToString()).ToString("yyyyMMdd");
                //}
                //if (po.Details[0].S_XQRQ != null)
                //{
                //    PZZDRQ = DateTime.Parse(po.Details[0].S_XQRQ.ToString()).ToString("yyyyMMdd");
                }
                //}
                CkBcakDto.Root myRoot = new CkBcakDto.Root
                {
                    ROOT = new CkBcakDto.ROOT
@@ -2693,10 +2905,10 @@
                        WLPZ = new CkBcakDto.WLPZ
                        {
                            KEY = po.S_NO,
                            ZYWLX = "业务类型值",
                            PZRQ = PZZDRQ,
                            GZRQ = GZRQ, // 假设日期格式为"年-月-日"
                            GZRY = po.UNAME,
                            ZYWLX = "2",
                            PZRQ = DateTime.Now.ToString("yyyyMMdd"),
                            GZRQ =DateTime.Now.ToString("yyyyMMdd"), // 假设日期格式为"年-月-日"
                            GZRY = po.S_CREATOR_NAME,
                            ITEM = new List<CkBcakDto.ITEM>
                            {
                            }
@@ -2730,7 +2942,7 @@
                    //var serialNos = string.Join(",", CntrItemRels
                    //                    .Where(s => s.S_ITEM_CODE == item.item_code)
                    //                    .Select(s => s.S_SERIAL_NO));
                    listitem1.XLH = podetail?.S_SERIAL_NO.Split(',').ToList();
                    listitem1.XLH = podetail?.S_SERIAL_NO==null?null: podetail?.S_SERIAL_NO.Split(',').ToList();
                    //foreach (var xlhValue in xlhValues)
                    //{
                    //    CkBcakDto.ITEM1 newItem = new CkBcakDto.ITEM1 { XLH = xlhValue };
@@ -2740,6 +2952,10 @@
                    iTEMs.Add(ckbitem);
                }
                myRoot.ROOT.WLPZ.ITEM = iTEMs;
                if (myRoot.ROOT.WLPZ.ITEM.Where(s=>!string.IsNullOrEmpty(s.SCDD) && !string.IsNullOrEmpty(s.YLBH) && !string.IsNullOrEmpty(s.YLXMH)).Count()==0)
                {
                    myRoot.ROOT.WLPZ.ZYWLX = "2";
                }
                //db.Insertable<OutboundRecord>(records).ExecuteCommand();
                #region wms-sap回调
                //类转json
@@ -2988,7 +3204,7 @@
                                        lLDReturnRoots.MSGDESP = $"物料{a.WLBM}物料主数据不存在该物料";
                                        iTEMs.Add(lLDReturnRoots);
                                        continue;
                                        break ;
                                    }
                                    po.Details.Add(new TN_Ll_detail
                                    {
@@ -2998,14 +3214,27 @@
                                        S_ITEM_CODE = a.WLBM,
                                        S_ITEM_NAME = item.S_ITEM_NAME,
                                        F_QTY = a.XQSL,
                                        S_ZJBM = a.ZJBM,
                                        S_YLBH = a.YLBH,
                                        S_YLXMH = a.YLHXM,
                                        S_BATCH_NO = "",
                                        S_ERP_WH_CODE = a.KCDD,
                                        S_ZJWLTH = a.ZJWLTH,
                                        S_ZJWLMS = a.ZJWLMS,
                                        S_ZHFHBS = a.ZHFHBS,
                                        S_CJRQ = a.CJRQ,
                                        S_LLDSCBS = a.LLDSCBS,
                                        S_SCGLY = a.SCGLY,
                                        S_GXH = a.GXH,
                                        S_XQRQ = a.XQRQ,
                                        N_ITEM_STATE = 1
                                    });
                                }
                                var result1 = db.Insertable<TN_Ll_Order>(po).ExecuteCommand() > 0;
                                db.Insertable<TN_Ll_detail>(po.Details).ExecuteCommand();
                                if (po.Details.Count()>0)
                                {
                                    var result1 = db.Insertable<TN_Ll_Order>(po).ExecuteCommand() > 0;
                                    db.Insertable<TN_Ll_detail>(po.Details).ExecuteCommand();
                                }
                            }
                        }
@@ -3027,7 +3256,7 @@
                                        lLDReturnRoots.MSGCODE = 1;
                                        lLDReturnRoots.MSGDESP = $"执行中领料单,物料{a.WLBM}物料不允许删除";
                                        iTEMs.Add(lLDReturnRoots);
                                        continue;
                                        break;
                                    }
                                    var po1 = po.Details.Where(s => a.WLBM == s.S_ITEM_CODE).ToList();
                                    if (po1.Count() == 0)  //无则新增物料明细
@@ -3043,7 +3272,7 @@
                                            lLDReturnRoots.MSGCODE = 1;
                                            lLDReturnRoots.MSGDESP = $"物料{a.WLBM}物料主数据不存在该物料";
                                            iTEMs.Add(lLDReturnRoots);
                                            continue;
                                            break;
                                        }
                                        TN_Ll_detail tN_Outbound_Detail = new TN_Ll_detail
                                        {
@@ -3053,6 +3282,17 @@
                                            S_ITEM_CODE = a.WLBM,
                                            S_ITEM_NAME = item.S_ITEM_NAME,
                                            F_QTY = a.XQSL,
                                            S_ZJBM = a.ZJBM,
                                            S_YLBH = a.YLBH,
                                            S_YLXMH = a.YLHXM,
                                            S_ZJWLTH = a.ZJWLTH,
                                            S_ZJWLMS = a.ZJWLMS,
                                            S_ZHFHBS = a.ZHFHBS,
                                            S_CJRQ = a.CJRQ,
                                            S_LLDSCBS = a.LLDSCBS,
                                            S_GXH = a.GXH,
                                            S_XQRQ = a.XQRQ,
                                            S_SCGLY = a.SCGLY,
                                            S_BATCH_NO = "无",
                                            S_ERP_WH_CODE = a.KCDD,
                                            N_ITEM_STATE = 1
@@ -3076,7 +3316,7 @@
                                            lLDReturnRoots.MSGCODE = 1;
                                            lLDReturnRoots.MSGDESP = $"更新失败,更新数量必须大于当前物料数量{a.WLBM}";
                                            iTEMs.Add(lLDReturnRoots);
                                            continue;
                                            break;
                                        }
                                    }
                                }
@@ -3103,7 +3343,7 @@
                                            lLDReturnRoots.MSGCODE = 1;
                                            lLDReturnRoots.MSGDESP = $"物料{a.WLBM}物料数据不存在 无法删除";
                                            iTEMs.Add(lLDReturnRoots);
                                            continue;
                                            break;
                                        }
                                    }
                                    else
@@ -3122,7 +3362,7 @@
                                                lLDReturnRoots.MSGCODE = 1;
                                                lLDReturnRoots.MSGDESP = $"物料{a.WLBM}物料主数据不存在该物料";
                                                iTEMs.Add(lLDReturnRoots);
                                                continue;
                                                break;
                                            }
                                            TN_Ll_detail tN_Outbound_Detail = new TN_Ll_detail
                                            {
@@ -3132,6 +3372,17 @@
                                                S_ITEM_CODE = a.WLBM,
                                                S_ITEM_NAME = item.S_ITEM_NAME,
                                                F_QTY = a.XQSL,
                                                S_ZJBM = a.ZJBM,
                                                S_YLBH = a.YLBH,
                                                S_YLXMH = a.YLHXM,
                                                S_ZJWLTH = a.ZJWLTH,
                                                S_ZJWLMS = a.ZJWLMS,
                                                S_ZHFHBS = a.ZHFHBS,
                                                S_CJRQ = a.CJRQ,
                                                S_LLDSCBS = a.LLDSCBS,
                                                S_SCGLY = a.SCGLY,
                                                S_GXH = a.GXH,
                                                S_XQRQ = a.XQRQ,
                                                S_BATCH_NO = "无",
                                                S_ERP_WH_CODE = a.KCDD,
                                                N_ITEM_STATE = 1
@@ -3153,6 +3404,13 @@
                                db.Insertable<TN_Ll_detail>(listtn).ExecuteCommand();
                            }
                        }
                        lLDReturnRoots.GC = itemscddll.GC;
                        lLDReturnRoots.LLDH = itemscddll.LLDH;
                        lLDReturnRoots.MSGCODE = 0;
                        lLDReturnRoots.MSGDESP = $"成功";
                        iTEMs.Add(lLDReturnRoots);
                        db.CommitTran();
                    }
@@ -3240,6 +3498,17 @@
                                        S_BATCH_NO = a.S_BATCH_NO,
                                        S_SERIAL_NO = a.S_SERIAL_NO,
                                        S_CGPZH = a.S_CGPZH,
                                        S_ZJBM = a.S_ZJBM,
                                        S_YLBH = a.S_YLBH,
                                        S_ZJWLTH = a.S_ZJWLTH,
                                        S_ZJWLMS = a.S_ZJWLMS,
                                        S_ZHFHBS = a.S_ZHFHBS,
                                        S_CJRQ = a.S_CJRQ,
                                        S_LLDSCBS = a.S_LLDSCBS,
                                        S_SCGLY = a.S_SCGLY,
                                        S_GXH = a.S_GXH,
                                        S_XQRQ = a.S_XQRQ,
                                        S_YLXMH = a.S_YLXMH,
                                        S_CGPZXMBH = a.S_CGPZXMBH,
                                        S_ERP_WH_CODE = a.S_ERP_WH_CODE,
                                        N_ITEM_STATE = a.N_ITEM_STATE
api/ZSCM2_SCFL.cs
@@ -32,7 +32,7 @@
    
    /// <remarks/>
    public ZSCM2_SCFL() {
        this.Url = "http://ceerptest.cee.com.cn:8000/sap/bc/srt/rfc/sap/zscm2_scfl/110/zscm2_scfl/bin" +
        this.Url = "http://10.89.33.217:8000/sap/bc/srt/rfc/sap/zscm2_scfl/110/zscm2_scfl/bin" +
            "ding";
    }
    
core/WCSCore.cs
@@ -133,10 +133,6 @@
                var end = LocationHelper.GetLoc(wcsTask.S_END_LOC);
                if (model.code == "0") {
                    
                    //入库
                    //标记任务完成
                    //标记作业完成
                    wcsTask.N_B_STATE = 3;
                    WCSHelper.UpdateStatus(wcsTask,"完成");
                    var wmsTask = WMSHelper.GetWmsTask(wcsTask.S_OP_CODE);
@@ -147,6 +143,6 @@
                    sendsencondtask(wcsTask);
                }
            }
        }
        }
    }
}
core/WMSCore.cs
@@ -50,7 +50,7 @@
                        if (startloc != null )//&&  
                        {
                            //终点货位
                            var endloc = db.Queryable<Location>().Where(it => it.S_AREA_CODE == "QYQXHQ" && it.N_LOCK_STATE == 0 && it.N_CURRENT_NUM == 0).First();
                            var endloc = db.Queryable<Location>().Where(it => it.S_AREA_CODE == "AGVXHQ" && it.N_LOCK_STATE == 0 && it.N_CURRENT_NUM == 0).First();
                           // var endloc = db.Queryable<Location>().Where(it => it.S_CODE == item.S_END_LOC).First();
                            if (endloc != null )
models/TN_Ll_Order.cs
@@ -16,7 +16,7 @@
        /// 年份
        /// </summary>
        public string S_WLPZNF { get; set; }
        public string S_WLPZND { get; set; }
        public string S_WLPZND { get; set; } = "2025";
        /// <summary>
        /// 仓库编码
        /// </summary>