|
|
|
@@ -4681,7 +4681,7 @@ open fun getAllPickOrderLotsWithDetailsHierarchical(userId: Long): Map<String, A |
|
|
|
val completedRecords = baseRecords |
|
|
|
.filter { record -> |
|
|
|
val matchTargetDate = normalizedTargetDate.isNullOrBlank() || |
|
|
|
record.ticketCompleteDateTime |
|
|
|
record.requiredDeliveryDate |
|
|
|
?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) |
|
|
|
?.contains(normalizedTargetDate, ignoreCase = true) == true |
|
|
|
val matchShop = request.shopName.isNullOrBlank() || |
|
|
|
@@ -4702,15 +4702,7 @@ open fun getAllPickOrderLotsWithDetailsHierarchical(userId: Long): Map<String, A |
|
|
|
val lineRecords = doPickOrderLineRecordRepository.findByDoPickOrderIdInAndDeletedFalse(recordIds) |
|
|
|
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()) { |
|
|
|
return emptyList() |
|
|
|
@@ -4729,16 +4721,14 @@ open fun getAllPickOrderLotsWithDetailsHierarchical(userId: Long): Map<String, A |
|
|
|
val deliveryOrderIds = lines.mapNotNull { it.doOrderId }.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 |
|
|
|
?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) |
|
|
|
|
|
|
|
val representativePickOrder = pickOrderIds.firstOrNull()?.let { pickOrdersById[it] } |
|
|
|
val representativeDelivery = deliveryOrderIds.firstOrNull()?.let { deliveryOrdersById[it] } |
|
|
|
val shopAddress = representativeDelivery?.shop?.let { buildShopAddress(it) } ?: "" |
|
|
|
val deliveryDateStr = representativeDelivery?.orderDate |
|
|
|
val deliveryDateStr = record.requiredDeliveryDate |
|
|
|
?.format(DateTimeFormatter.ofPattern("yyyyMMdd")) |
|
|
|
CompletedDoPickOrderResponse( |
|
|
|
id = record.id ?: 0L, |
|
|
|
|