| | |
| | | throw Oops.Bah("出库单的状态不是正在执行,不能拣货"); |
| | | } |
| | | //出库单明细 |
| | | var noticeDetail = await Db.Queryable<BllExportNoticeDetail>() |
| | | .FirstAsync(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); |
| | | var noticeDetail = await Db.Queryable<BllExportNoticeDetail>().FirstAsync(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); |
| | | if (noticeDetail == null) |
| | | { |
| | | throw Oops.Bah("未查询到该出库单明细的信息"); |
| | | } |
| | | //出库分配信息 |
| | | var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => |
| | | m.IsDel == "0" && (m.Status == "2" || m.Status == "3" || m.Status == "5") && m.SONo == soNo && |
| | | m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo); |
| | | var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => m.IsDel == "0" && (m.Status == "2" || m.Status == "3" || m.Status == "5") && m.SONo == soNo && m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo); |
| | | if (allot == null) |
| | | { |
| | | throw Oops.Bah("未查询到该托盘的分配信息"); |
| | |
| | | throw Oops.Bah("出库单的状态不是正在执行,不能拣货"); |
| | | } |
| | | //出库单明细 |
| | | var noticeDetail = await Db.Queryable<BllExportNoticeDetail>() |
| | | .FirstAsync(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); |
| | | var noticeDetail = await Db.Queryable<BllExportNoticeDetail>().FirstAsync(m => m.IsDel == "0" && m.Id == int.Parse(soDetailId)); |
| | | if (noticeDetail == null) |
| | | { |
| | | throw Oops.Bah("未查询到该出库单明细的信息"); |
| | | } |
| | | //出库分配信息 |
| | | var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => |
| | | m.IsDel == "0" && (m.Status == "2" || m.Status == "3") && m.SONo == soNo && |
| | | m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo); |
| | | var allot = await Db.Queryable<BllExportAllot>().FirstAsync(m => m.IsDel == "0" && (m.Status == "2" || m.Status == "3") && m.SONo == soNo && m.SODetailNo == int.Parse(soDetailId) && m.PalletNo == palletNo); |
| | | if (allot == null) |
| | | { |
| | | throw Oops.Bah("未查询到该托盘的分配信息"); |
| | |
| | | |
| | | if (isNew) |
| | | { |
| | | var sd = new DataStockDetail(); |
| | | var sd = new DataStockDetail |
| | | { |
| | | LotNo = stockDetail.LotNo, |
| | | LotText = stockDetail.LotText, |
| | | SupplierLot = stockDetail.SupplierLot, |
| | | SkuNo = stockDetail.SkuNo, |
| | | SkuName = stockDetail.SkuName, |
| | | Standard = stockDetail.Standard, |
| | | |
| | | sd.LotNo = stockDetail.LotNo; |
| | | sd.LotText = stockDetail.LotText; |
| | | sd.SupplierLot = stockDetail.SupplierLot; |
| | | sd.SkuNo = stockDetail.SkuNo; |
| | | sd.SkuName = stockDetail.SkuName; |
| | | sd.Standard = stockDetail.Standard; |
| | | Qty = int.Parse(PickQty), |
| | | LockQty = int.Parse(PickQty), |
| | | |
| | | sd.Qty = int.Parse(PickQty); |
| | | sd.LockQty = int.Parse(PickQty); |
| | | FrozenQty = 0, |
| | | InspectQty = 0, |
| | | ASNNo = "", |
| | | ASNDetailNo = null, |
| | | SONo = soNo,//出库单号 |
| | | WareHouseNo = "", |
| | | RoadwayNo = "", |
| | | AreaNo = "", |
| | | LocatNo = "", |
| | | PalletNo = palletNoNew, |
| | | PalletNo2 = "", |
| | | PalletNo3 = "", |
| | | //PalletType = item.PalletType, |
| | | CompleteTime = nowDate, |
| | | ProductionTime = stockDetail.ProductionTime, |
| | | ExpirationTime = stockDetail.ExpirationTime, |
| | | Status = "2",//状态,已分配 |
| | | InspectMark = stockDetail.InspectMark, |
| | | InspectStatus = stockDetail.InspectStatus, |
| | | BitPalletMark = "0", |
| | | PackagNo = noticeDetail.PackagNo, |
| | | IsBale = stockDetail.IsBale, |
| | | IsBelt = stockDetail.IsBelt, |
| | | Demo = stockDetail.Demo, |
| | | OwnerName = stockDetail.OwnerName, |
| | | OwnerNo = stockDetail.OwnerNo, |
| | | SupplierName = stockDetail.SupplierName, |
| | | SupplierNo = stockDetail.SupplierNo, |
| | | |
| | | sd.FrozenQty = 0; |
| | | sd.InspectQty = 0; |
| | | sd.ASNNo = ""; |
| | | sd.ASNDetailNo = null; |
| | | sd.SONo = soNo;//出库单号 |
| | | sd.WareHouseNo = ""; |
| | | sd.RoadwayNo = ""; |
| | | sd.AreaNo = ""; |
| | | sd.LocatNo = ""; |
| | | sd.PalletNo = palletNoNew; |
| | | sd.PalletNo2 = ""; |
| | | sd.PalletNo3 = ""; |
| | | //PalletType = item.PalletType, |
| | | sd.CompleteTime = nowDate; |
| | | sd.ProductionTime = stockDetail.ProductionTime; |
| | | sd.ExpirationTime = stockDetail.ExpirationTime; |
| | | sd.Status = "2";//状态,已分配 |
| | | sd.InspectMark = stockDetail.InspectMark; |
| | | sd.InspectStatus = stockDetail.InspectStatus; |
| | | sd.BitPalletMark = "0"; |
| | | sd.PackagNo = noticeDetail.PackagNo; |
| | | sd.IsBale = stockDetail.IsBale; |
| | | sd.IsBelt = stockDetail.IsBelt; |
| | | sd.Demo = stockDetail.Demo; |
| | | sd.OwnerName = stockDetail.OwnerName; |
| | | sd.OwnerNo = stockDetail.OwnerNo; |
| | | sd.SupplierName = stockDetail.SupplierName; |
| | | sd.SupplierNo = stockDetail.SupplierNo; |
| | | |
| | | sd.IsDel = "0"; |
| | | sd.CreateUser = userId; |
| | | sd.CreateTime = nowDate; |
| | | sd.UDF5 = "1"; |
| | | IsDel = "0", |
| | | CreateUser = userId, |
| | | CreateTime = nowDate, |
| | | UDF5 = "1" |
| | | }; |
| | | |
| | | //新增拼托库存明细信息 |
| | | await Db.Insertable(sd).ExecuteReturnIdentityAsync(); |
| | |
| | | noticeDetail.CompleteQty += int.Parse(PickQty); |
| | | await Db.Updateable(noticeDetail).ExecuteCommandAsync(); |
| | | |
| | | var num = await Db.Queryable<BllExportNoticeDetail>() |
| | | .CountAsync(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); |
| | | var num = await Db.Queryable<BllExportNoticeDetail>().CountAsync(m => m.IsDel == "0" && m.SONo == soNo && m.CompleteQty < m.Qty); |
| | | if (num <= 0) |
| | | { |
| | | notice.Status = "4"; //更改为执行完成 |
| | |
| | | #endregion |
| | | |
| | | //添加操作日志记录 |
| | | var k = new OperationSOServer().AddLogOperationSo("PDA模块", "车间出库", |
| | | skuModel.SkuName, "拣货", $"在PDA车间出库页上对::{skuModel.SkuName}的物料进行拣货操作", userId); |
| | | var k = new OperationSOServer().AddLogOperationSo("PDA模块", "车间出库", skuModel.SkuName, "拣货", $"在PDA车间出库页上对:{skuModel.SkuName}的物料进行拣货操作", userId); |
| | | Db.CommitTran(); |
| | | } |
| | | catch (AppFriendlyException e) |
| | | { |
| | | Db.RollbackTran(); |
| | | } |
| | | //catch (AppFriendlyException e) |
| | | //{ |
| | | // Db.RollbackTran(); |
| | | //} |
| | | catch (Exception e) |
| | | { |
| | | Db.RollbackTran(); |