pan
2025-12-02 366fe40a67783f7f22d13f59f9863c2cb6eac5b5
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_BasicService/InvokeMESService.cs
@@ -283,7 +283,7 @@
                                                   Qty = row.BarcodeQty,
                                                   BatchNo = row.BatchNo,
                                                   SupplyCode = row.SupplyCode,
                                                   Unit = row.Unit
                                                   Unit = row.BarcodeUnit
                                               }).ToList()
                                           }).ToList();
                                        allocatefeedmodel.Details = groupedData;
@@ -399,11 +399,7 @@
                var pendingDetails = orderDetails.Where(x => x.ReturnToMESStatus == 0).ToList();
                foreach (var detail in pendingDetails)
                {
                    if (detail.OverOutQuantity >= detail.NeedOutQuantity)
                    {
                        detailIds.Add(detail.Id);
                    }
                    else
                    if (detail.OverOutQuantity < detail.NeedOutQuantity)
                    {
                        allCompleted = false;
                    }
@@ -449,7 +445,7 @@
                };
                // å¡«å……明细和条码信息
                foreach (var detail in orderDetails.Where(x => detailIds.Contains(x.Id)).ToList())
                foreach (var detail in orderDetails )
                {
                    // æŸ¥è¯¢è¯¥æ˜Žç»†å¯¹åº”的锁定条码记录
                    var detailLocks = await _outStockLockInfoService.Db.Queryable<Dt_OutStockLockInfo>()
@@ -473,27 +469,30 @@
                    // å¡«å……条码信息(含单位转换)
                    foreach (var item in detailLocks)
                    {
                        var barModel = new WIDESEA_DTO.Outbound.BarcodesModel
                        if (item.PickedQty > 0)
                        {
                            barcode = item.CurrentBarcode,
                            supplyCode = item.SupplyCode,
                            batchNo = item.BatchNo,
                            unit = item.BarcodeUnit,
                            qty = item.BarcodeQty
                        };
                            var barModel = new WIDESEA_DTO.Outbound.BarcodesModel
                            {
                                barcode = item.CurrentBarcode,
                                supplyCode = item.SupplyCode,
                                batchNo = item.BatchNo,
                                unit = item.BarcodeUnit,
                                qty = item.BarcodeQty
                            };
                        // å•位不一致时转换
                        if (item.BarcodeUnit != item.Unit)
                        {
                            var convertResult = await _materialUnitService.ConvertAsync(
                                item.MaterielCode, item.BarcodeQty, item.Unit, item.BarcodeUnit);
                            barModel.unit = convertResult.Unit;
                            barModel.qty = convertResult.Quantity;
                            // å•位不一致时转换
                            if (item.BarcodeUnit != item.Unit)
                            {
                                var convertResult = await _materialUnitService.ConvertAsync(
                                    item.MaterielCode, item.BarcodeQty, item.Unit, item.BarcodeUnit);
                                barModel.unit = convertResult.Unit;
                                barModel.qty = convertResult.Quantity;
                            }
                            detailModel.qty += barModel.qty;
                            detailModel.currentDeliveryQty += barModel.qty;
                            detailModel.barcodes.Add(barModel);
                        }
                        detailModel.qty += barModel.qty;
                        detailModel.currentDeliveryQty += barModel.qty;
                        detailModel.barcodes.Add(barModel);
                    }
                    feedModel.details.Add(detailModel);