| | |
| | | _serviceProvider = serviceProvider; |
| | | } |
| | | |
| | | public async Task BindMaterialContaienrAsync(BindInstockInput input) |
| | | public async Task<WmsMaterialStockDto> BindMaterialContaienrAsync(BindInstockInput input) |
| | | { |
| | | using var scope = _serviceProvider.CreateScope(); |
| | | var unitOfWorkManager = scope.ServiceProvider.GetRequiredService<IUnitOfWorkManager>(); |
| | |
| | | MaterialName = material.MaterialName, |
| | | MaterialBatch = input.MaterialBatch, |
| | | StockNumber = input.StockNumber, |
| | | CheckStatus = Domain.Shared.Enums.MaterialCheckStatusEnum.HEGE, |
| | | IsLock = Domain.Shared.Enums.YesNoEnum.N, |
| | | CheckStatus = MaterialCheckStatusEnum.HEGE, |
| | | IsLock = YesNoEnum.N, |
| | | PlaceNo = input.PlaceNo, |
| | | ContainerNo = containerNo, |
| | | EmptyContainer = Domain.Shared.Enums.YesNoEnum.N, |
| | | MaterialModel = input.MaterialModel, |
| | | EmptyContainer = YesNoEnum.N, |
| | | }; |
| | | await _wmsMaterialStockAppService.CreateAsync(materialStock); |
| | | var result = await _wmsMaterialStockAppService.CreateAsync(materialStock); |
| | | |
| | | await uow.SaveChangesAsync(); |
| | | await uow.CompleteAsync(); |
| | | |
| | | return result; |
| | | } |
| | | |
| | | |
| | |
| | | await BindMaterialContaienrAsync(input); |
| | | |
| | | // 生成任务 |
| | | var plactDict = await _wmsCommonAppService.FindAvailablePlacesAsync(input.MaterialNo, input.StockNumber); |
| | | var plactDict = await _wmsCommonAppService.FindAvailablePlacesAsync(input.MaterialModel, input.StockNumber); |
| | | var taskList = new List<WmsTask>(); |
| | | foreach (var kvp in plactDict) |
| | | { |
| | |
| | | TaskLevel = 999, |
| | | Aisle = 1, |
| | | DodeviceId = 0, |
| | | Dodevicetype = DodevicetypeEnum.Srm, |
| | | TaskDodeviceStatus = TaskDodeviceStatus.SrmNoStart, |
| | | IsNextTask = (int)YesNoEnum.Y, |
| | | IsRead = true, |
| | | PlcTaskId = new Random(Guid.NewGuid().GetHashCode()).Next(101, 99999), |
| | | MutableParam1 = input.MaterialModel, |
| | | }; |
| | | taskList.Add(task); |