Kaynağa Gözat

updarte

master
CANCERYS\kw093 19 saat önce
ebeveyn
işleme
4d7c0295e9
1 değiştirilmiş dosya ile 5 ekleme ve 5 silme
  1. +5
    -5
      src/main/java/com/ffii/fpsms/modules/productProcess/service/ProductProcessService.kt

+ 5
- 5
src/main/java/com/ffii/fpsms/modules/productProcess/service/ProductProcessService.kt Dosyayı Görüntüle

@@ -695,7 +695,7 @@ val sufficientStockQty = bomMaterials
// ✅ 获取 req UOM - 对于 reqQty,使用 bomMaterial.uom(BOM 的 UOM)
// ✅ 对于 stockReqQty,使用 line.uom(库存单位,已按比例调整)
val reqUomId = bomMaterial?.uom?.id ?: line.uom?.id ?: 0L // BOM 的 UOM
val stockReqUomId = line.uom?.id ?: bomMaterial?.salesUnit?.id ?: 0L // 库存单位 UOM
val stockReqUomId = line.uom?.id ?: bomMaterial?.stockUnit?.toLong() ?: 0L // 库存单位 UOM
val reqUom = reqUomId.takeIf { it > 0 }?.let { uomConversionRepository.findByIdAndDeletedFalse(it) }
val uomName = reqUom?.udfudesc
@@ -709,7 +709,7 @@ val sufficientStockQty = bomMaterials
println("=== Quantity Calculation for Item: ${line.item?.code} (id=$itemId) ===")
println("JobOrderBomMaterial reqQty (adjusted, stock unit): $actualReqQty in UOM: ${stockReqUom?.udfudesc} (id=$stockReqUomId)")
println("BomMaterial qty (base): ${bomMaterial?.qty}, saleQty (base): ${bomMaterial?.saleQty}")
println("BomMaterial qty (base): ${bomMaterial?.qty}, stockQty (base): ${bomMaterial?.stockQty}")
println("Original stockQty: $stockQtyValue in UOM: $stockUomNameForStock (id=$stockUomId)")
val jobOrder = jobOrderRepository.findById(joid).orElse(null)
@@ -724,8 +724,8 @@ val sufficientStockQty = bomMaterials
// ✅ reqQty 使用 bomMaterial.qty * proportion(BOM 单位)
val reqQtyInBomUnit = (bomMaterial?.qty?.times(proportion) ?: BigDecimal.ZERO)
// ✅ stockReqQty 使用 bomMaterial.saleQty * proportion(库存单位,已按比例调整)
val stockReqQtyInStockUnit = (bomMaterial?.saleQty?.times(proportion) ?: BigDecimal.ZERO)
// ✅ stockReqQty 使用 bomMaterial.stockQty * proportion(库存单位,已按比例调整)
val stockReqQtyInStockUnit = (bomMaterial?.stockQty?.times(proportion) ?: BigDecimal.ZERO)
// ✅ Convert reqQty (BOM unit) to base unit
val baseReqQtyResult = if (reqUomId > 0 && reqQtyInBomUnit > BigDecimal.ZERO) {
@@ -851,7 +851,7 @@ val sufficientStockQty = bomMaterials
baseReqQty = baseReqQty,
stockQty = stockQty,
// ✅ stockReqQty:使用 bomMaterial.saleQty * proportion(库存单位,已按比例调整)
// ✅ stockReqQty:使用 bomMaterial.stockQty * proportion(库存单位,已按比例调整)
stockReqQty = if (stockReqUomId in decimalUomIds) {
stockReqQtyInStockUnit.toDouble()
} else {


Yükleniyor…
İptal
Kaydet