海波 张
14 小时以前 61ece19b5b178d1b23bed16c733b01af1185f838
wms/LocationHelper.cs
@@ -105,6 +105,19 @@
            return result;
        }
        internal static List<string> GetConnectionListNoYN(string S_AREA_CODE)
        {
            var db = new SqlHelper<object>().GetInstance();
            var ConnectionList = db.Queryable<Location>().Where(s => s.S_AREA_CODE == S_AREA_CODE ).OrderBy(a => a.N_ROW).OrderBy(a => a.N_COL).ToList();
            List<string> result = new List<string>();
            foreach (var item in ConnectionList)
            {
                result.Add(item.S_CODE);
            }
            return result;
        }
        /// <summary>
        /// 获取货位信息,参数库区编号
        /// </summary>
@@ -163,7 +176,17 @@
            var db = new SqlHelper<object>().GetInstance();
            
          return db.Queryable<WMSTask>().Where(a => ( a.S_START_LOC.Contains(jbLoc)&& a.S_SCHEDULE_TYPE.Contains(type)  && a.S_B_STATE != "完成" && a.S_B_STATE != "取消" && a.S_B_STATE != "失败" && a.S_B_STATE != "已完成" && a.S_B_STATE != "未执行")).OrderBy(b=>b.T_CREATE).First();
        }
        /// <summary>
        /// 返回出库agv任务
        /// </summary>
        internal static WMSTask GetConnectionTask(string jbLoc, string type,DateTime time)
        {
            var db = new SqlHelper<object>().GetInstance();
            return db.Queryable<WMSTask>().Where(a => (a.S_START_LOC.Contains(jbLoc) && a.S_SCHEDULE_TYPE.Contains(type) && a.S_B_STATE != "完成" && a.S_B_STATE != "取消" && a.S_B_STATE != "失败" && a.S_B_STATE != "已完成" && a.S_B_STATE != "未执行"&&a.T_CREATE<time)).OrderBy(b => b.T_CREATE).First();
        }
        /// <summary>
@@ -325,8 +348,13 @@
                //获取string接驳位集合
                var connectionList = LocationHelper.GetConnectionList(CONNECTION);
                var connectionListNoYN = LocationHelper.GetConnectionListNoYN(CONNECTION);
                //不可用接驳位集合
                var flaseConnectionList = LocationHelper.GetConnectionListByst(connectionList);
                var flaseConnectionList = LocationHelper.GetConnectionListByst(connectionListNoYN);
                List<Location> jblist = new List<Location>();
@@ -341,7 +369,7 @@
                    List<Location> difference = flaseConnectionList
    .Where(loc1 => !balanceConnectionList.Any(loc2 => loc2.S_CODE == loc1.S_CODE))
    .ToList();
                    jblist = difference;
@@ -404,8 +432,13 @@
                    {
                        if (rowList.Count(a => a.N_ROADWAY == item2.CONNEC_ROADWAY) > 0)
                        {
                            flag2 = true;
                            break;
                            var ConnectionY = db.Queryable<Location>().Where(s => s.S_AREA_CODE == CONNECTION && s.C_ENABLE == "Y" && s.CONNEC_ROADWAY == item2.CONNEC_ROADWAY).First();
                            if (ConnectionY == null)
                            {
                                flag2 = true;
                                break;
                            }
                        }
                    }
@@ -463,8 +496,10 @@
                //获取string接驳位集合
                var connectionList = LocationHelper.GetConnectionList(CONNECTION);
                var connectionListNoYN = LocationHelper.GetConnectionListNoYN(CONNECTION);
                //不可用接驳位集合
                var flaseConnectionList = LocationHelper.GetConnectionListByst(connectionList);
                var flaseConnectionList = LocationHelper.GetConnectionListByst(connectionListNoYN);
                List<Location> jblist = new List<Location>();
@@ -539,8 +574,12 @@
                    {
                        if (rowList.Count(a => a.N_ROADWAY == item2.CONNEC_ROADWAY) > 0)
                        {
                            flag2 = true;
                            break;
                            var ConnectionY = db.Queryable<Location>().Where(s => s.S_AREA_CODE == CONNECTION && s.C_ENABLE == "Y" && s.CONNEC_ROADWAY == item2.CONNEC_ROADWAY).First();
                            if (ConnectionY == null)
                            {
                                flag2 = true;
                                break;
                            }
                        }
                    }
@@ -1265,10 +1304,6 @@
                var balanceConnectionList = LocationHelper.GetConnectionListByst(connectionList);
                LogHelper.Info($"ZCSendTask出库任务排除不可用巷道开始", "Mes任务下发");
                //作业流程的巷道