|
@@ -1220,76 +1220,6 @@ public class BilletOriginalProductRecordController extends JeecgController<Bille
|
|
|
.setScale(4, RoundingMode.HALF_UP);
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 棒一统计明细查询
|
|
|
- * @param ccmNo
|
|
|
- * @param queryDate
|
|
|
- * @return
|
|
|
- */
|
|
|
- private List<BilletDetailsInfo> queryRollClubOneStatisticsByDate(String ccmNo, String queryDate) {
|
|
|
- List<BilletDetailsInfo> billetDetailsInfoList = new ArrayList<>();
|
|
|
- String queryDateTime = queryDate + " 00:00:00";
|
|
|
- Date date = DateUtils.parseDatetime(queryDateTime);
|
|
|
- Date startTime = DateUtils.getStartOfDayByDate(date);
|
|
|
- Date endTime = DateUtils.getEndOfDayByDate(date);
|
|
|
-
|
|
|
- // 通过铸机号、开始时间、结束时间查询
|
|
|
- QueryWrapper<BilletOriginalProductRecord> queryWrapper = new QueryWrapper<>();
|
|
|
- queryWrapper.eq("ccm_no", ccmNo);
|
|
|
- queryWrapper.between("create_time", startTime, endTime);
|
|
|
- List<BilletOriginalProductRecord> billetOriginalProductRecordList = billetOriginalProductRecordService.list(queryWrapper);
|
|
|
- if (oConvertUtils.listIsEmpty(billetOriginalProductRecordList)){
|
|
|
- return billetDetailsInfoList;
|
|
|
- }
|
|
|
-
|
|
|
- Map<String, BilletStatisticsDetail> statisticsMap = new HashMap<>();
|
|
|
-
|
|
|
- int grandTotalCount = 0;
|
|
|
- double grandTotalWeight = 0.0d;
|
|
|
-
|
|
|
- for (BilletOriginalProductRecord record : billetOriginalProductRecordList) {
|
|
|
- String rollClubOneDetails = record.getRollClubOneDetails();
|
|
|
- if (rollClubOneDetails != null && !rollClubOneDetails.isEmpty()) {
|
|
|
- try {
|
|
|
- JSONObject detailsJson = JSON.parseObject(rollClubOneDetails);
|
|
|
- // 此处totalCount未被使用,可以考虑移除
|
|
|
- int totalCount = detailsJson.getIntValue("directRollingTotalCount");
|
|
|
- grandTotalCount += totalCount;
|
|
|
-
|
|
|
- JSONObject lengthGroupCount = detailsJson.getJSONObject("lengthGroupCount");
|
|
|
- if (lengthGroupCount != null) {
|
|
|
- for (Map.Entry<String, Object> entry : lengthGroupCount.entrySet()) {
|
|
|
- String size = entry.getKey();
|
|
|
- // 增加类型检查,避免潜在的空指针异常
|
|
|
- int count = Integer.parseInt(entry.getValue().toString());
|
|
|
- double sizeValue = Double.parseDouble(size);
|
|
|
- updateStatistics(statisticsMap, size, count, sizeValue);
|
|
|
- }
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("解析rollClubOneDetails失败: {}", rollClubOneDetails, e);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- grandTotalWeight = statisticsMap.values().stream()
|
|
|
- .mapToDouble(BilletStatisticsDetail::getBlankOutput)
|
|
|
- .sum();
|
|
|
-
|
|
|
- if (!statisticsMap.isEmpty()) {
|
|
|
- BilletDetailsInfo info = new BilletDetailsInfo();
|
|
|
- info.setCcmNo(ccmNo);
|
|
|
- info.setCounts(grandTotalCount);
|
|
|
- info.setTotalWeight(grandTotalWeight);
|
|
|
-
|
|
|
- List<BilletStatisticsDetail> detailsList = new ArrayList<>(statisticsMap.values());
|
|
|
- info.setRollClubOneStatisticsList(detailsList);
|
|
|
-
|
|
|
- billetDetailsInfoList.add(info);
|
|
|
- }
|
|
|
-
|
|
|
- return billetDetailsInfoList;
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 棒一统计明细查询
|
|
|
* @param ccmNo
|