HH.WCS.QingXiNongfu/core/Monitor.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HH.WCS.QingXiNongfu/obj/Debug/HH.WCS.QingXigongchang.csproj.FileListAbsolute.txt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HH.WCS.QingXiNongfu/process/DeviceProcess.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
HH.WCS.QingXiNongfu/core/Monitor.cs
@@ -8,7 +8,6 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using System.Web.UI.WebControls.WebParts; namespace HH.WCS.QingXigongchang.core { @@ -1029,7 +1028,7 @@ static bool InworkLock = false; /// <summary> /// 原材料 检测各流转位置。 写入托盘货位s_type 中 下一个目的地。就开始中转。 /// 原物料纸箱,入库堆叠区转运 /// 原物料纸箱,入库堆叠区转运 YWLRGDD--人工堆叠区 /// </summary> internal static void BottTask() { @@ -1037,9 +1036,9 @@ var usingSpace = new List<string> { "入库接驳区", "库内接驳区", "出库接驳区", "提升机退料口" }; //usingSpace = new List<string> { "YWLRGDD", "YWLWJJB", "YWLYLTKQ", "YWLTKKTQ", "YWLKTDDQ", "YWLT1TSJ", "YWLT1TSJCD", "YWLT2TSJ", "YWLT2TSJCD" }; usingSpace = new List<string> { "YWLYLTKQ", "YWLTKKTQ", "YWLWJJB", "YWLRGDD", "YWLT1TSJ", "YWLT2TSJ" }; var dbll = new SqlHelper<object>().GetInstance(); ///----------------------------退余料中间库区,退空中间库区, /// /*托盘货位表的 S_TYPE。 库区1,库区,*/ foreach (var area in usingSpace) { try @@ -1124,7 +1123,7 @@ var arloclist = LocationHelper.GetAreaNormalLocList(EdnRarea);// LocationHelper.GetList<Location>(x => x.S_AREA_CODE == _clrel0.S_TYPE && x.S_LOCK_STATE != "报废"); if (arloclist.Any()) { if (EdnRarea == "YWLWJJB") if (EdnRarea == "YWLWJJB")//纸箱无菌接驳区 // InworkLock = true; //else InworkLock = false; //if (od.S_ZZ_AREA == "YWLWJJB") @@ -1138,14 +1137,43 @@ Location endbit = null; //foreach (var rss in arloclist.GroupBy(x => x.N_ROW).OrderByDescending(x => x.Count(y => y.N_CURRENT_NUM > 0)).ThenBy(xx => xx.Key)) RowLock inlock = null; List<RowLock> inlockLis = new List<RowLock>(); bool isCd = false; if (CDlist.Contains(EdnRarea)) { isCd = true; inlock = LocationHelper.GetList<RowLock>(x => x.S_AREA_CODE == EdnRarea && x.S_LOCK_SRC == cir1.S_ITEM_CODE + cir1.S_ITEM_NAME + cir1.S_CJ_NAME && x.S_LOCK_STATE == "入库锁").FirstOrDefault(); inlockLis = LocationHelper.GetList<RowLock>(x => x.S_AREA_CODE == EdnRarea && x.S_LOCK_SRC == cir1.S_ITEM_CODE + cir1.S_ITEM_NAME + cir1.S_CJ_NAME && x.S_LOCK_STATE == "入库锁").ToList(); inlock = inlockLis.FirstOrDefault(); if (inlock != null) { //当入库的任务能放满一排并且还有余的时候 开第二排 //先判断起点有多少相同的 能入的物料 if (_cl.S_AREA_CODE == "YWLRGDD")//判断起点是否是人工堆叠区 { //然后判断人工堆叠区需要入库多少托同品种物料 startMum //货位 托盘 物料表联查 LogHelper.Info($"查起点有多少同品种的物料 开始"); var ca = Expressionable.Create<Location, LocCntrRel, CntrItemRel>(); ca.And((o, p, t) => o.N_CURRENT_NUM > 0 && o.S_LOCK_STATE == "无" && t.S_ITEM_CODE == cir1.S_ITEM_CODE && t.S_ITEM_NAME == cir1.S_ITEM_NAME && t.S_CJ_NAME == cir1.S_CJ_NAME && o.S_AREA_CODE == "YWLRGDD" && p.S_TYPE == _clrel0.S_TYPE); var lstCanOutL = dbll.Queryable<Location>().InnerJoin<LocCntrRel>((o, p) => o.S_LOC_CODE == p.S_LOC_CODE).InnerJoin<CntrItemRel>((o, p, t) => p.S_CNTR_CODE == t.S_CNTR_CODE).Where(ca.ToExpression()).Includes(e => e.LocCntrRel, p => p.CntrItemRel).ToList(); LogHelper.Info($"起点要入CD的有多少托盘数量为{lstCanOutL.Count()}"); //判断终点排能入多少 少于入库托盘数则多开一排 EndMum var EndMum = dbll.Queryable<Location>().Where(l => l.S_AREA_CODE == EdnRarea && l.N_CURRENT_NUM == 0 && l.S_LOCK_STATE == "无" && inlockLis.Select(e => e.N_ROW).ToList().Contains(l.N_ROW)).ToList(); if (lstCanOutL.Count <= EndMum.Count()) { arloclist = arloclist.FindAll(x => inlockLis.Select(e => e.N_ROW).ToList().Contains(x.N_ROW)).ToList(); } else { arloclist = arloclist.FindAll(x => !inlockLis.Select(e => e.N_ROW).ToList().Contains(x.N_ROW)).ToList(); inlock = null; } LogHelper.Info($"查起点有多少同品种的物料 结束"); } else { arloclist = arloclist.FindAll(x => x.N_ROW == inlock.N_ROW).ToList(); } } } foreach (var rss in arloclist.GroupBy(x => x.N_ROW).OrderByDescending(x => x.Count(y => y.N_CURRENT_NUM > 0)).ThenBy(x => x.Key)) @@ -3589,7 +3617,6 @@ /// </summary> public static void AutoRun13TSJ() { Action<YWLWorkOrder> _sAB没物料或者余量不足开始触发跟根据自动转运_名字越长越好 = (od) => { LogHelper.Info($"AutoRun13TSJ{od.SQL_WorkNo}对应工单的{od.S_ROW} 物料数量不足。触发转运。"); HH.WCS.QingXiNongfu/obj/Debug/HH.WCS.QingXigongchang.csproj.FileListAbsolute.txt
@@ -305,3 +305,27 @@ G:\1AGIT\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\obj\Debug\HH.WCS.Q.FBA0BAD2.Up2Date G:\1AGIT\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\obj\Debug\HH.WCS.QingXigongchang.exe G:\1AGIT\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\obj\Debug\HH.WCS.QingXigongchang.pdb E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Microsoft.Owin.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Microsoft.Owin.Host.HttpListener.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Microsoft.Owin.Hosting.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\NLog.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Owin.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\SqlSugar.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\System.Net.Http.Formatting.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\System.Runtime.InteropServices.RuntimeInformation.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\System.Web.Http.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\System.Web.Http.Owin.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Topshelf.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Topshelf.NLog.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Microsoft.Owin.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Microsoft.Owin.Host.HttpListener.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Microsoft.Owin.Hosting.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Newtonsoft.Json.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\NLog.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\System.Net.Http.Formatting.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\System.Web.Http.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\System.Web.Http.Owin.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Topshelf.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\Topshelf.NLog.xml E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\zh-Hans\System.Net.Http.Formatting.resources.dll E:\GitProject\HH-0014_NongFu_QingXi\HH.WCS.QingXiNongfu\bin\Debug\zh-Hans\System.Web.Http.resources.dll HH.WCS.QingXiNongfu/process/DeviceProcess.cs
@@ -1,28 +1,14 @@ using HH.WCS.QingXigongchang.core; using HH.WCS.QingXigongchang.device; using HH.WCS.QingXigongchang.device; using HH.WCS.QingXigongchang.dispatch; using HH.WCS.QingXigongchang.util; using HH.WCS.QingXigongchang.wms; using Microsoft.SqlServer.Server; using Newtonsoft.Json; using NLog.Time; using SqlSugar; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Diagnostics.Eventing.Reader; using System.Linq; using System.Reflection; using System.Runtime.InteropServices; using System.Security.Cryptography; using System.Threading; using System.Threading.Tasks; using System.Timers; using System.Web.Http.Results; using System.Web.Security; using System.Web.UI.WebControls; using static HH.WCS.QingXigongchang.dispatch.NDC; using static HH.WCS.QingXigongchang.util.Settings; namespace HH.WCS.QingXigongchang.process @@ -336,7 +322,10 @@ { LogHelper.Info($" time:{_clrel0?.T_CREATE} = s_type:{_clrel0.S_TYPE}"); if (_clrel.Any()) if (DateTime.Now.Subtract(_clrel0.T_CREATE).TotalSeconds < 10 || !string.IsNullOrEmpty(_clrel0.S_TYPE)) //if (DateTime.Now.Subtract(_clrel0.T_CREATE).TotalSeconds < 10 || !string.IsNullOrEmpty(_clrel0.S_TYPE)) // goto ballll; //plg 2025年6月23日 去除10秒时间限制 if (DateTime.Now.Subtract(_clrel0.T_CREATE).TotalSeconds < 3 || !string.IsNullOrEmpty(_clrel0.S_TYPE)) goto ballll; LocationHelper.DoAction(db =>