| | |
| | | using System.Threading.Tasks; |
| | | using static HH.WCS.Mobox3.pinggao.models.SapRoot.WcReturnRoot; |
| | | using static HH.WCS.Mobox3.pinggao.api.OtherModel; |
| | | using NLog.Fluent; |
| | | |
| | | namespace HH.WCS.Mobox3.pinggao.process |
| | | { |
| | |
| | | db.CommitTran(); |
| | | if (!string.IsNullOrEmpty(TN_Task.S_STATE_PRE) && !string.IsNullOrEmpty(TN_Task.S_EQ_TASK_CODE)) |
| | | { |
| | | if (TN_Task.S_START_LOC == TN_Task.S_END_LOC) |
| | | { |
| | | weight(TN_Task); |
| | | } |
| | | } |
| | | |
| | | |
| | |
| | | db.CommitTran(); |
| | | if (!string.IsNullOrEmpty(TN_Task.S_STATE_PRE) && !string.IsNullOrEmpty(TN_Task.S_EQ_TASK_CODE)) |
| | | { |
| | | if (TN_Task.S_START_LOC == TN_Task.S_END_LOC) |
| | | { |
| | | weight(TN_Task); |
| | | } |
| | | } |
| | | |
| | | } |
| | |
| | | .PartitionBy(it => it.N_LAYER) |
| | | .Take(1) |
| | | .ToList(); |
| | | if (TN_Task.N_ERR == 2)//前移车 |
| | | { |
| | | |
| | | endlist = endlist.Where(s => s.N_LAYER < 7).ToList(); |
| | | } |
| | | foreach (var item in endlist) |
| | | { |
| | | LogHelper.Info($"重量{decimal.Parse(extData)}"); |
| | |
| | | .PartitionBy(it => it.N_LAYER) |
| | | .Take(1) |
| | | .ToList(); |
| | | if (TN_Task.N_ERR == 2)//前移车 |
| | | { |
| | | endlist = endlist.Where(s => s.N_LAYER < 7).ToList(); |
| | | } |
| | | foreach (var item in endlist) |
| | | { |
| | | LogHelper.Info($"重量{decimal.Parse(extData)}"); |
| | |
| | | LogHelper.Info($"小车回调未找到可用库位"); |
| | | throw new Exception($"小车回调未找到可用库位"); |
| | | } |
| | | |
| | | //var lcrList = db.Queryable<LocCntrRel>().Includes(a => a.Container).Where(a => a.S_LOC_CODE == TN_Task.S_CNTR_CODE).ToList(); |
| | | //if (lcrList.Count == 0) { |
| | | TN_Task.S_END_LOC = result.S_CODE; |
| | | TN_Task.S_END_AREA = result.S_AREA_CODE; |
| | | TN_Task.S_END_WH = result.S_WH_CODE; |
| | | |
| | | db.Updateable<WCSTask>(TN_Task).UpdateColumns(a => new { a.S_END_LOC, a.S_END_AREA, a.S_END_WH }).ExecuteCommand(); |
| | | WMStask.S_END_LOC = result.S_CODE; |
| | | WMStask.S_END_AREA = result.S_AREA_CODE; |
| | | WMStask.S_END_WH = result.S_WH_CODE; |
| | | |
| | | db.Updateable<WMSTask>(WMStask).UpdateColumns(a => new { a.S_END_LOC, a.S_END_AREA, a.S_END_WH }).ExecuteCommand(); |
| | | //} |
| | | |
| | | var S_AGV_SITE = ""; |
| | | if (TN_Task.N_ERR==1)//前移车 |
| | | { |
| | |
| | | } |
| | | var dic = new Dictionary<string, string>(); |
| | | dic.Add("No", TN_Task.S_CODE); |
| | | dic.Add("ParamNo", "3"); |
| | | dic.Add("ParamNo", "2"); |
| | | dic.Add("Param1", S_AGV_SITE); |
| | | //dic.Add("Pri", TN_Task.N_PRIORITY.ToString()); |
| | | //dic.Add("No", TN_Task.S_CODE.Trim()); |
| | |
| | | dics.Add("Param1", "2"); |
| | | var ss = NDC.ChangeOrder(dics); |
| | | LogHelper.Info($"小车前往新库位" + JsonConvert.SerializeObject(ss)); |
| | | |
| | | |
| | | //if (lcrList.Count()==0) |
| | | //{ |
| | | LocationHelper.BindingLoc(TN_Task.S_END_LOC, TN_Task.S_CNTR_CODE.Split(',').ToList()); |
| | | LocationHelper.LockLoc(TN_Task.S_END_LOC,1); |
| | | //} |
| | | } |
| | | |
| | | db.CommitTran(); |
| | | } |
| | | catch (Exception) |
| | |
| | | var startloc = LocationHelper.GetLoc(mst.S_START_LOC); |
| | | var endloc = LocationHelper.GetLoc(mst.S_END_LOC); |
| | | LogHelper.Info($"获取站点{startloc.N_LAYER}"); |
| | | if (mst.S_TYPE.Contains("入库")) |
| | | { |
| | | var task = WCSHelper.GetWaitingTaskGoList();//查询是否有前移车正在执行的任务 |
| | | if (task.Count() == 0) |
| | | { |
| | | mst.N_ERR = 1; |
| | | start = startlocs; |
| | | end = endlocs; |
| | | } |
| | | else |
| | | { |
| | | var task12 = WCSHelper.GetWaitingTaskGoBackList();//查询是否有堆垛车正在执行的任务、 |
| | | LogHelper.Info($"count{task12.Count()}"); |
| | | if (task12.Count() == 0) |
| | | { //堆垛车 去 站点表去查 |
| | | mst.N_ERR = 2; |
| | | start = dstart; |
| | | end = dend; |
| | | } |
| | | else |
| | | { |
| | | var task1 = WCSHelper.GetWaitingTaskGoList();///查询是否有前移车正在执行的任务 |
| | | LogHelper.Info($"查询是否有前移车正在执行的任务count{task1.Count()}"); |
| | | if (task1.Count() == 0) |
| | | { |
| | | mst.N_ERR = 1; |
| | | start = startlocs; |
| | | end = endlocs; |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | else |
| | | { |
| | | if (startloc.N_LAYER > 7 || endloc.N_LAYER > 7)//大于七层 找有无 前移车的任务 有 不推 无推送 |
| | | { |
| | | var task = WCSHelper.GetWaitingTaskGoList();//查询是否有前移车正在执行的任务 |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | LogHelper.Info($"站点{start}/{end}"); |
| | | if (!string.IsNullOrEmpty(start) && !string.IsNullOrEmpty(end)) |
| | | { |