| | |
| | | MaterielCode = outboundOrderdetail.MaterielCode, |
| | | Position = item.LocationCode, |
| | | PalletCode = item.PalletCode, |
| | | AreaId = Convert.ToInt32(requestOut.AreaId), |
| | | AreaId = Convert.ToInt32(2), |
| | | }; |
| | | taskDtos.Add(task); |
| | | item.StockInfoDetails.Where(x => x.MaterielCode == outboundOrderdetail.MaterielCode).FirstOrDefault().Status = (int)StockStateEmun.åºåºéå®; |
| | |
| | | { |
| | | taskDTOs.Add(CreateTaskDTO(item)); |
| | | var result1 = _taskService.UpdateLocationStatus(item.SourceAddress, LocationEnum.InStockDisable, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound); |
| | | var result2 = _taskService.UpdateLocationStatus(item.TargetAddress, LocationEnum.Lock, item.TaskNum.Value, (int)StatusChangeTypeEnum.AutomaticOutbound); |
| | | locationStatusChangeRecords.AddRange(result1.Item1); |
| | | locationStatusChangeRecords.AddRange(result2.Item1); |
| | | locations.AddRange(result1.Item2); |
| | | locations.AddRange(result2.Item2); |
| | | } |
| | | var result2 = _taskService.UpdateEndLocationStatus(item.TargetAddress, LocationEnum.Lock, item.TaskNum.Value, StatusChangeTypeEnum.AutomaticOutbound); |
| | | if (result2.Item1 != null && result2.Item2 != null) |
| | | { |
| | | locationStatusChangeRecords.AddRange(result2.Item1); |
| | | locations.AddRange(result2.Item2); |
| | | } |
| | | |
| | | locationStatusChangeRecords.AddRange(result1.Item1); |
| | | locations.AddRange(result1.Item2); |
| | | } |
| | | outboundOrder.OrderStatus = (int)OrderStateEmun.å¼å§; |
| | | await _unitOfWorkManage.UseTranAsync(async () => |
| | | { |
| | | _taskRepository.AddData(taskNews); |
| | | _stockInfoRepository.UpdateDataNav(result.Item1); |
| | | await _locationStatusChangeRecordRepository.AddDataAsync(locationStatusChangeRecords); |
| | | await _locationRepository.UpdateDataAsync(locations); |
| | | BaseDal.UpdateData(outboundOrder); |
| | | _productionoutboundOrderDetailRepository.UpdateData(result.Item2); |
| | | _outDetailsRepository.AddData(outDetails); |
| | | }); |
| | |
| | | Id = 0, |
| | | TaskType = task.TaskType, |
| | | AGVTaskNum = task.AGVTaskNum, |
| | | Remark = task.Remark |
| | | Remark = task.Remark, |
| | | Floor =task.Floor, |
| | | DoubleTray = task.DoubleTray, |
| | | }; |
| | | } |
| | | public (List<DtStockInfo>, Dt_ProductionOutboundOrderDetail) AssignStockOutbound(Dt_ProductionOutboundOrderDetail outboundOrderdetail, List<StockSelectViewDTO> stockSelectViews) |
| | |
| | | |
| | | } |
| | | outboundOrderdetail.OverOutQuantity = outboundOrderdetail.OrderQuantity - needQuantity; |
| | | outboundOrderdetail.NotOutQuantity = outboundOrderdetail.OrderQuantity - outboundOrderdetail.OverOutQuantity; |
| | | |
| | | if (outboundOrderdetail.OverOutQuantity != 0) |
| | | { |
| | | outboundOrderdetail.OrderDetailStatus = (int)OrderStateEmun.å¼å§; |
| | | } |
| | | if (outboundOrderdetail.OverOutQuantity == outboundOrderdetail.OrderQuantity) |
| | | { |
| | | outboundOrderdetail.OrderDetailStatus = (int)OrderStateEmun.已宿; |
| | | } |
| | | return (outStockNews, outboundOrderdetail); |
| | | } |
| | | |