| | |
| | | { |
| | | SkuNo = d.SkuNo, |
| | | LotNo = d.LotNo, |
| | | Qty = int.Parse(d.CompleteQty.ToString()) |
| | | Qty = (decimal)d.CompleteQty |
| | | }; |
| | | list.Add(item); |
| | | } |
| | |
| | | #endregion |
| | | |
| | | notice.Status = "6"; |
| | | notice.UpdateTime = DateTime.Now; |
| | | notice.UpdateUser = userId; |
| | | notice.CheckTime = DateTime.Now; |
| | | notice.CheckUser = userId; |
| | | Db.Updateable(notice).ExecuteCommand(); |
| | | |
| | | new OperationSOServer().AddLogOperationSo("出库作业", "出库单据", notice.SONo, "复核", $"复核了单据号为{notice.SONo}的单据信息", userId); |
| | |
| | | break; |
| | | case "6"://代储出库 |
| | | skuType = "(2)"; |
| | | break; |
| | | case "8"://寄存出库 |
| | | skuType = "(3)"; |
| | | break; |
| | | default: //其它出库 |
| | | skuType = "(0,1,2,3,4)"; |
| | |
| | | foreach (var item in list) |
| | | { |
| | | string toLocation = string.Empty;//目标位置 |
| | | string unstackingMode2 = unstackingMode;//拆垛方式,0:机器人拆垛 1:PDA拆垛 |
| | | #region 判断是否需要拆箱 |
| | | string isChai = "0";//是否需要拆箱,0:不需要 1:需要 |
| | | string isChai = "0";//是否需要拆箱,0:否 1:是 |
| | | var skuInfo = skuList.First(w => w.SkuNo == item.SkuNo); |
| | | if (skuInfo == null) |
| | | { |
| | |
| | | { |
| | | if (item.Qty % (decimal)packagInfo.L2Num != 0)//能整除说明不用拆箱,不能整除说明需要拆箱 |
| | | { |
| | | isChai = "1";//需要拆箱 |
| | | unstackingMode = "1";//需要拆箱需走PDA拆垛 |
| | | isChai = "1"; |
| | | unstackingMode2 = "1";//需要拆箱需走PDA拆垛 |
| | | } |
| | | } |
| | | if (isChai == "0") |
| | | { |
| | | var boxInfo = Db.Queryable<DataBoxInfo>().Where(w => w.IsDel == "0" && w.PalletNo == item.PalletNo && w.BitBoxMark == "1").ToList(); |
| | | if (boxInfo != null)//托盘上有零箱需要拆箱 |
| | | { |
| | | isChai = "1"; |
| | | unstackingMode2 = "1";//需要拆箱需走PDA拆垛 |
| | | } |
| | | } |
| | | #endregion |
| | | if (unstackingMode == "0")//机器人拆垛 |
| | | if (unstackingMode2 == "0")//机器人拆垛 |
| | | { |
| | | toLocation = loadingAddre;//装车口 |
| | | } |
| | |
| | | Type = "1",//任务类型 0 入库任务 1 出库任务 2 移库任务 |
| | | Status = "0",//任务状态0:等待执行1正在执行2执行完成 |
| | | OrderType = "1",//0 入库单 1 出库单 2 盘点单 3 移库单 |
| | | Msg = "从" + locate.LocatNo + "到" + outMode + "的出库任务", //关键信息 |
| | | Msg = "从" + locate.LocatNo + "到" + toLocation + "的出库任务", //关键信息 |
| | | }; |
| | | Db.Insertable(exTask).ExecuteCommand(); |
| | | logTaskList.Add(exTask); |
| | |
| | | |
| | | item.TaskNo = exTask.TaskNo; // 出库分配信息中更新任务号 |
| | | item.Status = "1"; // 出库分配信息状态改为正在执行 |
| | | item.UnstackingMode = unstackingMode;//拆垛方式 |
| | | item.OutMode = unstackingMode == "1" ? outMode : "";//出库口 |
| | | item.LoadingAddre = unstackingMode == "0" ? loadingAddre : "";//装车口 |
| | | item.UnstackingMode = unstackingMode2;//拆垛方式 |
| | | item.OutMode = unstackingMode2 == "1" ? outMode : "";//出库口 |
| | | item.LoadingAddre = unstackingMode2 == "0" ? loadingAddre : "";//装车口 |
| | | Db.Updateable(item).ExecuteCommand(); |
| | | |
| | | #endregion |
| | |
| | | } |
| | | item.TaskNo = taskNo.TaskNo; |
| | | item.Status = "1"; // 出库分配信息状态改为正在执行 |
| | | item.OutMode = unstackingMode == "1" ? taskNo.EndLocat : "";//出库口 |
| | | item.LoadingAddre = unstackingMode == "0" ? taskNo.EndLocat : "";//装车口 |
| | | item.OutMode = unstackingMode2 == "1" ? taskNo.EndLocat : "";//出库口 |
| | | item.LoadingAddre = unstackingMode2 == "0" ? taskNo.EndLocat : "";//装车口 |
| | | Db.Updateable(item).ExecuteCommand(); |
| | | flagList.Add(0); |
| | | #endregion |
| | |
| | | LocatNo = a.LocatNo, |
| | | RoadwayNo = a.RoadwayNo, |
| | | PalletNo = a.PalletNo, |
| | | Demo = a.Demo, |
| | | }).ToList(); |
| | | |
| | | return list; |
| | |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | var boxInfo = Db.Queryable<DataBoxInfo>().Where(w => w.IsDel == "0" && w.PalletNo == item.PalletNo && w.BitBoxMark == "1").ToList(); |
| | | if (boxInfo != null)//托盘上有零箱需要拆箱 |
| | | { |
| | | result = "1";//需要拆箱 |
| | | break; |
| | | } |
| | | } |
| | | return result; |
| | | } |
| | | catch (Exception ex) |