111
cjs
昨天 64d2bad5e5d8440a40a80baad0ab41d7a65e8675
111
3个文件已修改
58 ■■■■ 已修改文件
HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3.NongFuLinZhi/wms/WMSHelper.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs
@@ -106,6 +106,7 @@
            #endregion
        }
        public static bool B_FLAGE = false;
        /// <summary>
        /// 瓶坯翻斗机非即产满框区补满托
        /// </summary>
@@ -121,19 +122,24 @@
                    string areaName = a.S_PLineNo.Split('-')[1].Substring(0, 1) + "号瓶坯翻斗机非即产满框";
                    LogHelper.Info($"PPFDFullIn area:{areaName}");
                    var areaInfo = Settings.areaInfos.Where(b => b.areaName == areaName && b.enable == 1).FirstOrDefault();
                    if(areaInfo != null)
                    if (areaInfo != null)
                    {
                        var locInfo = db.Queryable<Location>().Where(b => b.S_AREA_CODE == areaInfo.areaCode && b.N_CURRENT_NUM == 0 && b.S_LOCK_STATE == "无").First();
                        if(locInfo != null)
                        if (locInfo != null)
                        {
                            //生成任务
                            Location location = TaskProcess.BCPInOrOutTwo(db, "瓶坯库区", a.S_ItemCode);
                            if(location != null)
                            if (!B_FLAGE)
                            {
                                string cntrCode = getCntrCode(db,location);
                                //创建作业
                                WMSHelper.CreateOpTask(location.S_CODE, locInfo.S_CODE, "入库", "瓶坯非即产补满框", cntrCode, "瓶坯");
                                B_FLAGE = true;
                                //生成任务
                                Location location = TaskProcess.BCPInOrOutTwo(db, "瓶坯库区", a.S_ItemCode);
                                if (location != null)
                                {
                                    string cntrCode = getCntrCode(db, location);
                                    //创建作业
                                    WMSHelper.CreateOpTask(location.S_CODE, locInfo.S_CODE, "入库", "瓶坯非即产补满框", cntrCode, "瓶坯");
                                }
                            }
                            B_FLAGE = false;
                        }
                    }
                    else
HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs
@@ -51,6 +51,37 @@
                {
                    try
                    {
                        if(a.S_OP_DEF_NAME == "接驳位入库")
                        {
                            if (!Monitor.B_FLAGE)
                            {
                                Monitor.B_FLAGE = true;
                                //判断当前是否有等待或者错误的接驳位入库任务,并且起点货位在当前货位的外面
                                var taskList = db.Queryable<WMSTask>().Where(b => b.S_OP_DEF_NAME == "接驳位入库" && b.S_ID != a.S_ID && (b.N_B_STATE == 0 || b.N_B_STATE == 3)).ToList();
                                if(taskList.Count > 0)
                                {
                                    bool task_flage = false;
                                    foreach(var x in taskList)
                                    {
                                        var startLocInfo = db.Queryable<Location>().Where(y => y.S_CODE == x.S_START_LOC).First();
                                        var startLocInfoTwo = db.Queryable<Location>().Where(y => y.S_CODE == a.S_START_LOC).First();
                                        if(startLocInfo.N_ROW == startLocInfoTwo.N_ROW && startLocInfo.N_COL > startLocInfoTwo.N_COL)
                                        {
                                            task_flage = true;
                                            break;
                                        }
                                    }
                                    if (task_flage)
                                    {
                                        continue;
                                    }
                                }
                            }
                            else
                            {
                                continue;
                            }
                        }
                        if (a.N_TYPE == 1)
                        {
                            //查询托盘所在位置
@@ -153,6 +184,10 @@
                                LogHelper.Info($"作业{a.S_CODE} 获取终点失败");
                            }
                        }
                        if (a.S_OP_DEF_NAME == "接驳位入库")
                        {
                            Monitor.B_FLAGE = false;
                        }
                    }
                    catch (Exception ex)
                    {
HH.WCS.Mobox3.NongFuLinZhi/wms/WMSHelper.cs
@@ -719,6 +719,7 @@
                        {
                            string areaName = a.S_NOTE.Split('-')[1];
                            result = TaskProcess.BCPInOrOut(db, true, areaName, itemCode);
                            //查询终点货位,是由否相同排的作业
                        }
                        else
                        {