From 500d0d4f4ba888fbba7e730e1c15be5b571f5dbb Mon Sep 17 00:00:00 2001 From: "han\\hanst" Date: Fri, 24 Oct 2025 17:46:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dashboard/task/DashboardPushTask.java | 3 +- .../mapper/dashboard/DashboardDao.xml | 233 +++++++++--------- 2 files changed, 119 insertions(+), 117 deletions(-) diff --git a/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java b/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java index 9e53b2e..57c846d 100644 --- a/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java +++ b/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java @@ -376,8 +376,7 @@ public class DashboardPushTask { log.debug("开始从数据库获取智能立体仓库看板数据"); // 查询任务统计数据 - //Map taskStats = dashboardDao.queryWarehouseTaskStats(); - Map taskStats = new HashMap<>(); + Map taskStats = dashboardDao.queryWarehouseTaskStats(); log.debug("任务统计数据: {}", taskStats); // 查询库位利用率数据 diff --git a/src/main/resources/mapper/dashboard/DashboardDao.xml b/src/main/resources/mapper/dashboard/DashboardDao.xml index 3f3acb2..fa41c54 100644 --- a/src/main/resources/mapper/dashboard/DashboardDao.xml +++ b/src/main/resources/mapper/dashboard/DashboardDao.xml @@ -31,70 +31,73 @@ @@ -104,32 +107,32 @@ SELECT -- 总库位数 (SELECT COUNT(*) FROM location WHERE is_deleted = '0' AND warehouse = 'WAREHOUSE_3D') AS totalSlots, - + -- 已使用库位数(有库存的库位) - (SELECT COUNT(DISTINCT location_code) FROM inventory_stock + (SELECT COUNT(DISTINCT location_code) FROM inventory_stock WHERE is_deleted = '0' AND in_stock_flag = 'Y') AS usedSlots, - + -- 利用率(百分比,保留1位小数) - CASE + CASE WHEN (SELECT COUNT(*) FROM location WHERE is_deleted = '0' AND warehouse = 'WAREHOUSE_3D') > 0 THEN CAST( - (SELECT COUNT(DISTINCT location_code) FROM inventory_stock - WHERE is_deleted = '0' AND in_stock_flag = 'Y') * 100.0 / + (SELECT COUNT(DISTINCT location_code) FROM inventory_stock + WHERE is_deleted = '0' AND in_stock_flag = 'Y') * 100.0 / (SELECT COUNT(*) FROM location WHERE is_deleted = '0' AND warehouse = 'WAREHOUSE_3D') AS DECIMAL(5,1)) - ELSE 0 + ELSE 0 END AS utilizationRate, - + -- 钢制托盘数量(根据pallet_type字段统计) - (SELECT COUNT(*) FROM pallet + (SELECT COUNT(*) FROM pallet WHERE is_deleted = '0' AND pallet_type = 'STEEL') AS steelPallet, - + -- 护边托盘数量 - (SELECT COUNT(*) FROM pallet + (SELECT COUNT(*) FROM pallet WHERE is_deleted = '0' AND pallet_type = 'GUARD') AS guardPallet, - + -- 平托盘数量 - (SELECT COUNT(*) FROM pallet + (SELECT COUNT(*) FROM pallet WHERE is_deleted = '0' AND pallet_type = 'FLAT') AS flatPallet @@ -150,22 +153,22 @@ efficiency, current_tasks AS tasks FROM equipment_device - WHERE is_deleted = '0' + WHERE is_deleted = '0' AND device_type = 'ROBOT' AND warehouse = 'WAREHOUSE_3D' ORDER BY id ASC - @@ -225,43 +228,43 @@ -- 说明:根据实际发货单表(如shipment_order、delivery_order等)调整SQL SELECT -- 总数 - (SELECT COUNT(*) FROM shipment_order - WHERE is_deleted = '0' + (SELECT COUNT(*) FROM shipment_order + WHERE is_deleted = '0' AND DATE(created_date) = CAST(GETDATE() AS DATE)) AS total, - + -- 已完成数 - (SELECT COUNT(*) FROM shipment_order - WHERE is_deleted = '0' + (SELECT COUNT(*) FROM shipment_order + WHERE is_deleted = '0' AND status = 'COMPLETED' AND DATE(created_date) = CAST(GETDATE() AS DATE)) AS completed, - + -- 处理中数 - (SELECT COUNT(*) FROM shipment_order - WHERE is_deleted = '0' + (SELECT COUNT(*) FROM shipment_order + WHERE is_deleted = '0' AND status = 'PROCESSING' AND DATE(created_date) = CAST(GETDATE() AS DATE)) AS processing, - + -- 待处理数 - (SELECT COUNT(*) FROM shipment_order - WHERE is_deleted = '0' + (SELECT COUNT(*) FROM shipment_order + WHERE is_deleted = '0' AND status = 'PENDING' AND DATE(created_date) = CAST(GETDATE() AS DATE)) AS pending, - + -- 完成率(百分比) - CASE - WHEN (SELECT COUNT(*) FROM shipment_order - WHERE is_deleted = '0' + CASE + WHEN (SELECT COUNT(*) FROM shipment_order + WHERE is_deleted = '0' AND DATE(created_date) = CAST(GETDATE() AS DATE)) > 0 THEN CAST( - (SELECT COUNT(*) FROM shipment_order - WHERE is_deleted = '0' + (SELECT COUNT(*) FROM shipment_order + WHERE is_deleted = '0' AND status = 'COMPLETED' - AND DATE(created_date) = CAST(GETDATE() AS DATE)) * 100.0 / - (SELECT COUNT(*) FROM shipment_order - WHERE is_deleted = '0' + AND DATE(created_date) = CAST(GETDATE() AS DATE)) * 100.0 / + (SELECT COUNT(*) FROM shipment_order + WHERE is_deleted = '0' AND DATE(created_date) = CAST(GETDATE() AS DATE)) AS INT) - ELSE 0 + ELSE 0 END AS completionRate