diff --git a/src/main/java/com/ffii/fpsms/modules/jobOrder/service/JobOrderBomMaterialService.kt b/src/main/java/com/ffii/fpsms/modules/jobOrder/service/JobOrderBomMaterialService.kt index b9c79fc..4ac9a8a 100644 --- a/src/main/java/com/ffii/fpsms/modules/jobOrder/service/JobOrderBomMaterialService.kt +++ b/src/main/java/com/ffii/fpsms/modules/jobOrder/service/JobOrderBomMaterialService.kt @@ -33,7 +33,7 @@ open class JobOrderBomMaterialService( CreateJobOrderBomMaterialRequest( joId = joId, itemId = bm.item?.id, - reqQty = bm.qty?.times(proportion) ?: zero, + reqQty = (bm.qty?.times(proportion) ?: zero).setScale(0,RoundingMode.CEILING), uomId = salesUnit?.uom?.id ) } ?: listOf() @@ -46,14 +46,16 @@ open class JobOrderBomMaterialService( val jo = req.joId?.let { jobOrderRepository.findById(it).getOrNull() } val item = req.itemId?.let { itemsRepository.findById(it).getOrNull() } val uom = req.uomId?.let { uomConversionRepository.findById(it).getOrNull() } - val status = JobOrderBomMaterialStatus.entries.find { it.value === req.status } + val roundedReqQty = req.reqQty?.setScale(0, RoundingMode.CEILING) + val statusEnum = JobOrderBomMaterialStatus.entries.find { it.value == req.status } + ?: JobOrderBomMaterialStatus.PENDING JobOrderBomMaterial().apply { jobOrder = jo this.item = item - reqQty = req.reqQty + reqQty = roundedReqQty this.uom = uom - this.status = status + this.status = statusEnum } }