huminmin
13 小时以前 4e273eb9b2b7cb206326d979b62af37f64e83057
src/main/java/com/ruoyi/home/controller/HomeController.java
@@ -61,7 +61,8 @@
    private static final Integer ORDER_STATUS_WAIT = 1;
    private static final Integer ORDER_STATUS_RUNNING = 2;
    private static final Integer ORDER_STATUS_COMPLETED = 3;
    private static final Integer ORDER_STATUS_PAUSED = 4;
    //private static final Integer ORDER_STATUS_END = 4;  // 已取消
    private static final Integer ORDER_STATUS_END = 5;
    /********************************************************基础类*****************************************************/
    @GetMapping("/todos")
@@ -260,13 +261,14 @@
        }
        Integer statusFromParam = parseOrderStatus(status);
        if (!isBlank(status) && statusFromParam == null && !"all".equalsIgnoreCase(status.trim())) {
            return R.fail("status参数不合法,可选值:all/waiting/inProgress/completed/paused 或 1/2/3/4");
            return R.fail("status参数不合法,可选值:all/waiting/inProgress/completed/end 或 1/2/3/5");
        }
        Integer queryStatus = resolveOrderStatus(status, tab);
        long safePageNum = pageNum == null || pageNum < 1 ? 1 : pageNum;
        long safePageSize = pageSize == null || pageSize < 1 ? 10 : Math.min(pageSize, 50);
        long offset = (safePageNum - 1) * safePageSize;
        boolean queryAll = pageSize != null && pageSize == -1;
        long safePageSize = queryAll ? -1 : (pageSize == null || pageSize < 1 ? 10 : Math.min(pageSize, 50));
        long offset = queryAll ? 0 : (safePageNum - 1) * safePageSize;
        LocalDateTime startTime = queryDate == null ? null : queryDate.atStartOfDay();
        LocalDateTime endTime = queryDate == null ? null : queryDate.plusDays(1).atStartOfDay();
@@ -281,7 +283,7 @@
        long waitingCount = 0L;
        long inProgressCount = 0L;
        long completedCount = 0L;
        long pausedCount = 0L;
        long endCount = 0L;
        List<Map<String, Object>> statusCountRows = productionOrderMapper.countHomeOrderProgressByStatus(startTime, endTime);
        if (statusCountRows != null) {
            for (Map<String, Object> countRow : statusCountRows) {
@@ -293,8 +295,8 @@
                    inProgressCount = cnt;
                } else if (Objects.equals(statusKey, ORDER_STATUS_COMPLETED)) {
                    completedCount = cnt;
                } else if (Objects.equals(statusKey, ORDER_STATUS_PAUSED)) {
                    pausedCount = cnt;
                } else if (Objects.equals(statusKey, ORDER_STATUS_END)) {
                    endCount = cnt;
                }
            }
        }
@@ -303,13 +305,13 @@
        result.put("tab", mapOrderTab(queryStatus));
        result.put("status", mapOrderStatus(queryStatus));
        result.put("bizDate", queryDate == null ? null : queryDate.format(DATE_FORMATTER));
        result.put("total", toLong(productionOrderMapper.countHomeOrderProgress(queryStatus, startTime, endTime)));
        result.put("total", toLong(productionOrderMapper.countHomeOrderProgress(null, startTime, endTime)));
        result.put("pageNum", safePageNum);
        result.put("pageSize", safePageSize);
        result.put("waitingCount", waitingCount);
        result.put("inProgressCount", inProgressCount);
        result.put("completedCount", completedCount);
        result.put("pausedCount", pausedCount);
        result.put("endCount", endCount);
        result.put("records", records);
        return R.ok(result);
    }
@@ -529,8 +531,8 @@
        if ("3".equals(normalized) || "completed".equals(normalized)) {
            return ORDER_STATUS_COMPLETED;
        }
        if ("4".equals(normalized) || "paused".equals(normalized)) {
            return ORDER_STATUS_PAUSED;
        if ("5".equals(normalized) || "end".equals(normalized)) {
            return ORDER_STATUS_END;
        }
        return null;
    }
@@ -542,8 +544,8 @@
        if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
            return "completed";
        }
        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
            return "paused";
        if (Objects.equals(status, ORDER_STATUS_END)) {
            return "end";
        }
        if (Objects.equals(status, ORDER_STATUS_WAIT)) {
            return "waiting";
@@ -561,8 +563,8 @@
        if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
            return "completed";
        }
        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
            return "paused";
        if (Objects.equals(status, ORDER_STATUS_END)) {
            return "end";
        }
        return "all";
    }
@@ -577,8 +579,8 @@
        if (Objects.equals(status, ORDER_STATUS_COMPLETED)) {
            return "已完成";
        }
        if (Objects.equals(status, ORDER_STATUS_PAUSED)) {
            return "已暂停";
        if (Objects.equals(status, ORDER_STATUS_END)) {
            return "已结束";
        }
        return "未知";
    }
@@ -635,7 +637,7 @@
                .select(ProductionOrder::getQuantity, ProductionOrder::getCompleteQuantity)
                .ge(ProductionOrder::getCreateTime, day.atStartOfDay())
                .lt(ProductionOrder::getCreateTime, day.plusDays(1).atStartOfDay())
                .ne(ProductionOrder::getStatus, ORDER_STATUS_PAUSED));
                .ne(ProductionOrder::getStatus, ORDER_STATUS_END));
        BigDecimal totalQuantity = BigDecimal.ZERO;
        BigDecimal totalCompleteQuantity = BigDecimal.ZERO;