Ver Fonte

过滤在热送单中支数大于零存在于棒二、棒三、上若的炉号,在明细中不存在数据的情况

lingpeng.li há 3 meses atrás
pai
commit
a59b59eb31

+ 49 - 2
zgztBus/jeecg-module-sbm/src/main/java/org/jeecg/modules/billet/storageBill/controller/StorageBillController.java

@@ -563,6 +563,51 @@ public class StorageBillController extends JeecgController<StorageBill, IStorage
 		}
 
 		List<HeatsActuals> actualsList = heatsActualsService.list(heatsQueryWrapper);
+
+		QueryWrapper<RollClubTwoDetails> rollClubTwoDetailsQueryWrapper = new QueryWrapper<>();
+		if (!hostNoList.isEmpty()) {
+			rollClubTwoDetailsQueryWrapper.in("heat_no", hostNoList)
+					.groupBy("heat_no");
+		}
+		List<RollClubTwoDetails> list1 = rollClubTwoDetailsService.list(rollClubTwoDetailsQueryWrapper);
+		QueryWrapper<RollClubThreeDetails> rollClubThreeDetailsQueryWrapper = new QueryWrapper<>();
+		if (!hostNoList.isEmpty()) {
+			rollClubThreeDetailsQueryWrapper.in("heat_no", hostNoList)
+					.groupBy("heat_no");
+		}
+		List<RollClubThreeDetails> list2 = rollClubThreeDetailsService.list(rollClubThreeDetailsQueryWrapper);
+		QueryWrapper<RollOutShippDetails> rollOutShippDetailsQueryWrapper = new QueryWrapper<>();
+		if (!hostNoList.isEmpty()) {
+			rollOutShippDetailsQueryWrapper.in("heat_no", hostNoList)
+					.groupBy("heat_no");
+		}
+		List<RollOutShippDetails> list3 = rollOutShippDetailsService.list(rollOutShippDetailsQueryWrapper);
+
+		// 使用 Set 存储唯一的 heat_no
+		Set<String> uniqueHeatNos = new HashSet<>();
+
+		// 遍历 list1,提取 heat_no
+		for (RollClubTwoDetails item : list1) {
+			uniqueHeatNos.add(item.getHeatNo()); // 假设 getHeatNo() 是获取 heat_no 的方法
+		}
+
+		// 遍历 list2,提取 heat_no
+		for (RollClubThreeDetails item : list2) {
+			uniqueHeatNos.add(item.getHeatNo());
+		}
+
+		// 遍历 list3,提取 heat_no
+		for (RollOutShippDetails item : list3) {
+			uniqueHeatNos.add(item.getHeatNo());
+		}
+
+		// 计算最终去重后的 heat_no 总数
+		int totalSize = uniqueHeatNos.size();
+
+		System.out.println("去重后的 totalSize: " + totalSize);
+
+
+
 		// 分页查询 HeatsActuals
 		Page<HeatsActuals> heatsPage = new Page<>(pageNo, pageSize);
 		IPage<HeatsActuals> heatsPageList = heatsActualsService.page(heatsPage, heatsQueryWrapper);
@@ -805,11 +850,13 @@ public class StorageBillController extends JeecgController<StorageBill, IStorage
 			bill.setLicensePlate(licensePlateStr);
 			bill.setAssemblyNumber(assemblyNumberStr);
 			bill.setDestination(destinationStr);
-			list.add(bill);
+			if(0 != bill.getAmountTotal()) {
+				list.add(bill);
+			}
 		}
 		//设置最后返回的分页内容
 		billPageList.setRecords(list);
-		billPageList.setTotal(actualsList.size());
+		billPageList.setTotal(totalSize);
 		return Result.OK(billPageList);
 	}