杨前锦
1 天以前 06a8b6963d6d4f229d4e196b4b09ce57e2cbf2dd
HH.WCS.Mobox3/HH.WCS.Mobox3.FJJT/core/Monitor.cs
@@ -136,21 +136,21 @@
        /// <summary>
        /// 自动补充空工装到接驳位
        /// 自动补空工装到固定空工装出库站台
        /// </summary>
        public static void AutoReplenishEmptyPallet() 
        {
            var logicConfigs = WMSHelper.getLogicConfigByTaskType("3");
            if (logicConfigs != null && logicConfigs.Count > 0)
            var emptyFixedOutLocList = WMSHelper.GetEmptyFixedOutLocList();
            foreach (var emptyLoc in emptyFixedOutLocList)
            {
                foreach (var item in logicConfigs)
                var wmsTask = WMSHelper.GetWmsTaskByEnd(emptyLoc.S_CODE);
                if (wmsTask == null )
                {
                    var jbLoc = LocationHelper.GetLoc(item.S_LKKTJBLOC);
                    var wmsTask = WMSHelper.GetWmsTaskByEnd(item.S_LKKTJBLOC);
                    if (wmsTask == null && jbLoc.N_CURRENT_NUM == 0)
                    LogHelper.Info($"固定空工装出库站台:{emptyLoc.S_CODE}补充空工装", "WMS");
                    var areaRelevance = Settings.areaRelevanceList.Where(a => a.jbAreaCode == emptyLoc.S_AREA_CODE).First();
                    if (areaRelevance != null)
                    {
                        LogHelper.Info($"非直连接驳位:{jbLoc.S_CODE},需要补充空工装", "WMS");
                        Location startLoc = WMSHelper.getOutStockStartLoc(item.S_AREA_CODE, null);
                        Location startLoc = WMSHelper.getOutStockStartLoc(areaRelevance.areaCode, null);
                        if (startLoc != null)
                        {
                            var locCntrRels = LocationHelper.GetLocCntr(startLoc.S_CODE);
@@ -160,10 +160,10 @@
                                S_CODE = WMSHelper.GenerateTaskNo(),
                                S_START_LOC = startLoc.S_CODE,
                                S_START_AREA = startLoc.S_AREA_CODE,
                                S_END_LOC = jbLoc.S_CODE,
                                S_END_AREA = jbLoc.S_AREA_CODE,
                                S_TYPE = "空工装自动出库任务",
                                S_OP_DEF_NAME = "自动补充空工装到接驳位",
                                S_END_LOC = emptyLoc.S_CODE,
                                S_END_AREA = emptyLoc.S_AREA_CODE,
                                S_TYPE = "空工装出库任务",
                                S_OP_DEF_NAME = "自动补充空工装到固定出库站台",
                                T_START_TIME = DateTime.Now,
                            };
                            if (WMSHelper.CreateWmsTask(wmsTask))
@@ -177,8 +177,8 @@
                                    S_TYPE = wmsTask.S_TYPE,
                                    S_START_LOC = startLoc.S_CODE,
                                    S_START_AREA = startLoc.S_AREA_CODE,
                                    S_END_LOC = jbLoc.S_CODE,
                                    S_END_AREA = jbLoc.S_AREA_CODE,
                                    S_END_LOC = emptyLoc.S_CODE,
                                    S_END_AREA = emptyLoc.S_AREA_CODE,
                                    S_SCHEDULE_TYPE = "WCS",
                                    N_PRIORITY = 10,
                                    T_START_TIME = DateTime.Now,
@@ -198,7 +198,7 @@
                        }
                        else 
                        {
                            WMSHelper.addAlarmRecord("流程异常", "高", $"非直连接驳位:{jbLoc.S_CODE}补充空工装失败,原因:库区:{item.S_AREA_CODE}没有空工装");
                            WMSHelper.addAlarmRecord("流程异常", "高", $"固定空工装出库站台:{emptyLoc.S_CODE}补充空工装失败,原因:库区:{areaRelevance.areaCode}没有空工装");
                        }
                    }
                }
@@ -239,7 +239,7 @@
        public static void UpdateInventoryRegularly()
        {
            var db = new SqlHelper<object>().GetInstance();
            var areaCodeList = Settings.areaPropertyList.Select(a => a.areaCode).ToList();
            var areaCodeList = Settings.areaRelevanceList.Select(a => a.areaCode).ToList();
            var locations = db.Queryable<Location>()
                .LeftJoin<LocCntrRel>((a, b) => a.S_CODE == b.S_LOC_CODE)
                .Where((a,b) => a.N_CURRENT_NUM > 0 && b.S_CNTR_CODE != null && areaCodeList.Contains(a.S_AREA_CODE) )