| @@ -398,6 +398,7 @@ open class PickOrderService( | |||||
| open fun releaseConsoPickOrderInfo(consoCode: String): ReleasePickOrderInfoResponse { | open fun releaseConsoPickOrderInfo(consoCode: String): ReleasePickOrderInfoResponse { | ||||
| val today = LocalDate.now() | val today = LocalDate.now() | ||||
| val zero = BigDecimal.ZERO | val zero = BigDecimal.ZERO | ||||
| val one = BigDecimal.ONE | |||||
| val pos = pickOrderRepository.findAllByConsoCodeAndStatus(consoCode, PickOrderStatus.CONSOLIDATED) | val pos = pickOrderRepository.findAllByConsoCodeAndStatus(consoCode, PickOrderStatus.CONSOLIDATED) | ||||
| println(pos) | println(pos) | ||||
| // Get Inventory Data | // Get Inventory Data | ||||
| @@ -432,7 +433,8 @@ open class PickOrderService( | |||||
| .map { po -> | .map { po -> | ||||
| val releasePickOrderLineInfos = po.pickOrderLines.map { pol -> | val releasePickOrderLineInfos = po.pickOrderLines.map { pol -> | ||||
| // if (pol.item?.id != null && pol.item!!.id!! > 0) { | // if (pol.item?.id != null && pol.item!!.id!! > 0) { | ||||
| val inventory = pol.item?.id.let { inventories[it] } | |||||
| val inventory = pol.item?.id?.let { inventories[it] } | |||||
| val itemUom = pol.item?.id?.let { itemUomService.findSalesUnitByItemId(it) } | |||||
| // val inventory = inventories.find { it.itemId == pol.item?.id } | // val inventory = inventories.find { it.itemId == pol.item?.id } | ||||
| // Return | // Return | ||||
| @@ -442,7 +444,7 @@ open class PickOrderService( | |||||
| itemCode = pol.item?.code, | itemCode = pol.item?.code, | ||||
| itemName = pol.item?.name, | itemName = pol.item?.name, | ||||
| // availableQty = inventory?.availableQty, | // availableQty = inventory?.availableQty, | ||||
| availableQty = inventory?.sumOf { i -> i.availableQty ?: zero }, | |||||
| availableQty = inventory?.sumOf { i -> (i.availableQty ?: zero) * (itemUom?.ratioN ?: one) * (itemUom?.ratioD ?: one) }, | |||||
| requiredQty = pol.qty, | requiredQty = pol.qty, | ||||
| uomCode = pol.uom?.code, | uomCode = pol.uom?.code, | ||||
| uomDesc = pol.uom?.udfudesc, | uomDesc = pol.uom?.udfudesc, | ||||
| @@ -467,9 +469,13 @@ open class PickOrderService( | |||||
| // .find { it.itemId == item.first } | // .find { it.itemId == item.first } | ||||
| val inventory = item.first?.let { inventories[it] } | val inventory = item.first?.let { inventories[it] } | ||||
| val itemUom = item.first?.let { itemUomService.findSalesUnitByItemId(it) } | |||||
| item.second.let { | item.second.let { | ||||
| // it.availableQty = inventory?.availableQty | // it.availableQty = inventory?.availableQty | ||||
| it.availableQty = inventory?.sumOf { i -> i.availableQty ?: zero } | |||||
| // it.availableQty = inventory?.sumOf { i -> i.availableQty ?: zero } | |||||
| it.availableQty = inventory?.sumOf { i -> (i.availableQty ?: zero) * (itemUom?.ratioN ?: one) * (itemUom?.ratioD ?: one) } | |||||
| // return | // return | ||||
| it | it | ||||