| @@ -4681,7 +4681,7 @@ open fun getAllPickOrderLotsWithDetailsHierarchical(userId: Long): Map<String, A | |||||
| val completedRecords = baseRecords | val completedRecords = baseRecords | ||||
| .filter { record -> | .filter { record -> | ||||
| val matchTargetDate = normalizedTargetDate.isNullOrBlank() || | val matchTargetDate = normalizedTargetDate.isNullOrBlank() || | ||||
| record.ticketCompleteDateTime | |||||
| record.requiredDeliveryDate | |||||
| ?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) | ?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) | ||||
| ?.contains(normalizedTargetDate, ignoreCase = true) == true | ?.contains(normalizedTargetDate, ignoreCase = true) == true | ||||
| val matchShop = request.shopName.isNullOrBlank() || | val matchShop = request.shopName.isNullOrBlank() || | ||||
| @@ -4702,15 +4702,7 @@ open fun getAllPickOrderLotsWithDetailsHierarchical(userId: Long): Map<String, A | |||||
| val lineRecords = doPickOrderLineRecordRepository.findByDoPickOrderIdInAndDeletedFalse(recordIds) | val lineRecords = doPickOrderLineRecordRepository.findByDoPickOrderIdInAndDeletedFalse(recordIds) | ||||
| val lineRecordsByRecordId = lineRecords.groupBy { it.doPickOrderId } | val lineRecordsByRecordId = lineRecords.groupBy { it.doPickOrderId } | ||||
| val filteredRecords = completedRecords.filter { record -> | |||||
| val lines = lineRecordsByRecordId[record.recordId] ?: emptyList() | |||||
| val matchTargetDate = normalizedTargetDate.isNullOrBlank() || | |||||
| record.ticketCompleteDateTime | |||||
| ?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) | |||||
| ?.contains(normalizedTargetDate, ignoreCase = true) == true | |||||
| matchTargetDate | |||||
| }.sortedByDescending { it.ticketCompleteDateTime } | |||||
| val filteredRecords = completedRecords.sortedByDescending { it.ticketCompleteDateTime } | |||||
| if (filteredRecords.isEmpty()) { | if (filteredRecords.isEmpty()) { | ||||
| return emptyList() | return emptyList() | ||||
| @@ -4729,16 +4721,14 @@ open fun getAllPickOrderLotsWithDetailsHierarchical(userId: Long): Map<String, A | |||||
| val deliveryOrderIds = lines.mapNotNull { it.doOrderId }.distinct() | val deliveryOrderIds = lines.mapNotNull { it.doOrderId }.distinct() | ||||
| val deliveryNos = lines.mapNotNull { it.deliveryOrderCode }.distinct() | val deliveryNos = lines.mapNotNull { it.deliveryOrderCode }.distinct() | ||||
| val numberOfCartons = pickOrderIds.sumOf { id -> | |||||
| pickOrdersById[id]?.pickOrderLines?.count { !it.deleted } ?: 0 | |||||
| } | |||||
| val numberOfCartons = record.cartonQty ?: 0 | |||||
| val completedDateStr = record.ticketCompleteDateTime | val completedDateStr = record.ticketCompleteDateTime | ||||
| ?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) | ?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) | ||||
| val representativePickOrder = pickOrderIds.firstOrNull()?.let { pickOrdersById[it] } | val representativePickOrder = pickOrderIds.firstOrNull()?.let { pickOrdersById[it] } | ||||
| val representativeDelivery = deliveryOrderIds.firstOrNull()?.let { deliveryOrdersById[it] } | val representativeDelivery = deliveryOrderIds.firstOrNull()?.let { deliveryOrdersById[it] } | ||||
| val shopAddress = representativeDelivery?.shop?.let { buildShopAddress(it) } ?: "" | val shopAddress = representativeDelivery?.shop?.let { buildShopAddress(it) } ?: "" | ||||
| val deliveryDateStr = representativeDelivery?.orderDate | |||||
| val deliveryDateStr = record.requiredDeliveryDate | |||||
| ?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) | ?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) | ||||
| CompletedDoPickOrderResponse( | CompletedDoPickOrderResponse( | ||||
| id = record.id ?: 0L, | id = record.id ?: 0L, | ||||