| | |
| | | if (stockInfoDetailCPList != null) |
| | | { |
| | | _stockInfoDetailCPRepository.DeleteAndMoveIntoHty(stockInfoDetailCPList, App.User.UserId == 0 ? OperateType.自动完成 : OperateType.人工完成); |
| | | foreach(var stockLPNO in houseStockDetail.DetailList) |
| | | |
| | | for (int i = 0; i < stockInfoDetailCPList.Count(); i++) |
| | | { |
| | | Dt_StockInfo dt_StockInfo = BaseDal.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == stockLPNO.LPNNo).Includes(x => x.Details).First(); |
| | | for (int i = 0; i<stockInfoDetailCPList.Count(); i++) |
| | | Dt_StockInfo dt_StockInfo = BaseDal.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == item.LPNNo).Includes(x => x.Details).First(); |
| | | if (dt_StockInfo == null) |
| | | { |
| | | foreach (var item1 in dt_StockInfo.Details) |
| | | return WebResponseContent.Instance.Error($"托盘{item.LPNNo}无箱码明细信息"); |
| | | } |
| | | List<Dt_StockInfoDetail> stockdetails = dt_StockInfo.Details; |
| | | |
| | | var matchedDetail = stockdetails.FirstOrDefault(d => d.MaterielCode.Contains(stockInfoDetailCPList[i].PartNum) && d.BatchNo.Contains(item.BatchNo)); |
| | | if (matchedDetail != null) |
| | | { |
| | | matchedDetail.StockQuantity -= (decimal)stockInfoDetailCPList[i].QtyOfpcs; |
| | | matchedDetail.OutboundQuantity += (decimal)stockInfoDetailCPList[i].QtyOfpcs; |
| | | _stockInfoDetailRepository.UpdateData(matchedDetail); |
| | | |
| | | if (matchedDetail.StockQuantity == 0) |
| | | { |
| | | foreach (var batchNos in houseStockDetail.DetailList) |
| | | { |
| | | if (stockInfoDetailCPList[i].PartNum == item1.MaterielCode && batchNos.BatchNo == item.BatchNo) |
| | | { |
| | | item1.StockQuantity-=(decimal)stockInfoDetailCPList[i].QtyOfpcs; |
| | | item1.OutboundQuantity = 0; |
| | | _stockInfoDetailRepository.UpdateData(item1); |
| | | } |
| | | if (item1.StockQuantity == 0) |
| | | { |
| | | _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(item1, App.User.UserId == 0 ? OperateType.自动完成 : OperateType.人工完成); |
| | | } |
| | | //全部都出库 删除库存 |
| | | if (dt_StockInfo.Details.Sum(x => x.StockQuantity) == 0) |
| | | { |
| | | _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(dt_StockInfo, App.User.UserId == 0 ? OperateType.自动完成 : OperateType.人工完成); |
| | | } |
| | | } |
| | | _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(matchedDetail, App.User.UserId == 0 ? OperateType.自动完成 : OperateType.人工完成); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | return WebResponseContent.Instance.Error($"托盘{item.LPNNo}中未找到物料{stockInfoDetailCPList[i].PartNum}和批次{item.BatchNo}的明细"); |
| | | } |
| | | if (dt_StockInfo.Details.Sum(x => x.StockQuantity) == 0) |
| | | { |
| | | _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(dt_StockInfo, App.User.UserId == 0 ? OperateType.自动完成 : OperateType.人工完成); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | | _unitOfWorkManage.CommitTran(); |
| | | |
| | | } |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | }); |
| | | result.Item2.ForEach(x => |
| | | { |
| | | foreach(var item in result.Item2) |
| | | foreach (var item in result.Item2) |
| | | { |
| | | if(item.LockQuantity > 0) |
| | | if (item.LockQuantity > 0) |
| | | { |
| | | item.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt(); |
| | | } |
| | | } |
| | | |
| | | |
| | | }); |
| | | result.Item3.ForEach(x => |
| | | { |