| | |
| | | // throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]); |
| | | //} |
| | | var material = await _wmsMaterialRepository.FindByNameAsync(input.MaterialNo); |
| | | if(material == null) |
| | | if (material == null) |
| | | { |
| | | throw new UserFriendlyException("物料信息不存在"); |
| | | } |
| | | var container = await _wmscontainerRepository.FindByNameAsync(input.ContainerNo); |
| | | var container = await _wmscontainerRepository.FindByNameAsync(input.ContainerNo); |
| | | if (container == null) |
| | | { |
| | | throw new UserFriendlyException("托盘信息不存在"); |
| | | } |
| | | var place = await _wmsplaceRepository.FindByNameAsync(input.PlaceNo); |
| | | if(place == null) |
| | | |
| | | var wmsmaterialstock = ObjectMapper.Map<WmsMaterialStockCreateDto, WmsMaterialStock>(input); |
| | | input.MapExtraPropertiesTo(wmsmaterialstock, MappingPropertyDefinitionChecks.None); |
| | | wmsmaterialstock.MaterialId = Guid.NewGuid().ToString("N"); |
| | | wmsmaterialstock.MaterialName = material.MaterialName; |
| | | |
| | | wmsmaterialstock.ContainerStatus = Domain.Shared.Enums.ContainerStatusEnum.KUWEI; |
| | | wmsmaterialstock.ContainerType = container.ContainerType; |
| | | wmsmaterialstock.StorageTypeNo = Domain.Shared.Enums.PlaceTypeEnum.XUNIKUWEI; |
| | | wmsmaterialstock.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.DAIRU; |
| | | if (!string.IsNullOrEmpty(input.PlaceNo)) |
| | | { |
| | | throw new UserFriendlyException("库位信息不存在"); |
| | | } |
| | | var area = await _wmsareaRepository.FindByNameAsync(place.AreaCode); |
| | | if(area == null) |
| | | { |
| | | throw new UserFriendlyException("库位库区信息不存在"); |
| | | var place = await _wmsplaceRepository.FindByNameAsync(input.PlaceNo); |
| | | if (place == null) |
| | | { |
| | | throw new UserFriendlyException("库位信息不存在"); |
| | | } |
| | | var area = await _wmsareaRepository.FindByNameAsync(place.AreaCode); |
| | | if (area == null) |
| | | { |
| | | throw new UserFriendlyException("库位库区信息不存在"); |
| | | } |
| | | |
| | | wmsmaterialstock.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | wmsmaterialstock.StorageTypeNo = place.StorageTypeNo; |
| | | wmsmaterialstock.AreaCode = place.AreaCode; |
| | | wmsmaterialstock.AreaName = area.AreaName; |
| | | |
| | | place.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | place.Islock = input.IsLock; |
| | | |
| | | await _wmsplaceRepository.UpdateAsync(place); |
| | | } |
| | | var wmsmaterialstockList = await _wmsmaterialstockRepository.GetStockListAsync(new WmsMaterialStock { PlaceNo = input.PlaceNo }); |
| | | if (wmsmaterialstockList.Count > 0) |
| | |
| | | |
| | | var maxSort = await _wmsmaterialstockRepository.GetMaxSortAsync(); |
| | | var sort = input.Sort ?? maxSort; |
| | | var wmsmaterialstock = ObjectMapper.Map<WmsMaterialStockCreateDto, WmsMaterialStock>(input); |
| | | input.MapExtraPropertiesTo(wmsmaterialstock, MappingPropertyDefinitionChecks.None); |
| | | wmsmaterialstock.MaterialId = Guid.NewGuid().ToString("N"); |
| | | wmsmaterialstock.MaterialName = material.MaterialName; |
| | | |
| | | wmsmaterialstock.ContainerStatus = Domain.Shared.Enums.ContainerStatusEnum.KUWEI; |
| | | wmsmaterialstock.ContainerType = container.ContainerType; |
| | | |
| | | wmsmaterialstock.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | wmsmaterialstock.StorageTypeNo = place.StorageTypeNo; |
| | | wmsmaterialstock.AreaCode = place.AreaCode; |
| | | wmsmaterialstock.AreaName = area.AreaName; |
| | | |
| | | wmsmaterialstock.MaterialModel = material.MaterialModel; |
| | | wmsmaterialstock.MaterialBatch = input.MaterialBatch; |
| | |
| | | wmsmaterialstock.InStockTime = DateTime.Now; |
| | | |
| | | var stockList = new List<WmsMaterialStock>(); |
| | | for (int i = 0; i< input.StockNumber; i++) |
| | | for (int i = 0; i < input.StockNumber; i++) |
| | | { |
| | | var stock = new WmsMaterialStock(); |
| | | var json = JsonSerializer.Serialize(wmsmaterialstock); |
| | |
| | | |
| | | |
| | | container.ContainerStatus = Domain.Shared.Enums.ContainerStatusEnum.KUWEI; |
| | | place.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | place.Islock = input.IsLock; |
| | | |
| | | await _wmscontainerRepository.UpdateAsync(container); |
| | | await _wmsplaceRepository.UpdateAsync(place); |
| | | |
| | | //if (input.Sort.HasValue && wmsmaterialstock.Sort != maxSort) |
| | | //{ |
| | |
| | | throw new UserFriendlyException("库位库区信息不存在"); |
| | | } |
| | | |
| | | foreach(var wmsmaterialstock in wmsmaterialstockList) |
| | | foreach (var wmsmaterialstock in wmsmaterialstockList) |
| | | { |
| | | if(input.StockNumber< wmsmaterialstockList.Count) |
| | | if (input.StockNumber < wmsmaterialstockList.Count) |
| | | { |
| | | wmsmaterialstock.IsDeleted = true; |
| | | input.StockNumber += 1; |
| | |
| | | wmsmaterialstock.MaterialModel = material.MaterialModel; |
| | | wmsmaterialstock.MaterialBatch = input.MaterialBatch; |
| | | } |
| | | if(input.StockNumber > wmsmaterialstockList.Count) |
| | | if (input.StockNumber > wmsmaterialstockList.Count) |
| | | { |
| | | var stockList = new List<WmsMaterialStock>(); |
| | | for (int i = 0; i < input.StockNumber - wmsmaterialstockList.Count; i++) |