|
|
@ -31,68 +31,71 @@ |
|
|
|
|
|
|
|
|
<!-- 查询立体仓库任务统计数据 --> |
|
|
<!-- 查询立体仓库任务统计数据 --> |
|
|
<select id="queryWarehouseTaskStats" resultType="map"> |
|
|
<select id="queryWarehouseTaskStats" resultType="map"> |
|
|
-- 说明:根据实际数据库表结构调整SQL |
|
|
|
|
|
-- 这里提供示例结构,需要根据实际的任务表(如wms_task、agv_task等)调整 |
|
|
|
|
|
|
|
|
-- 说明:从 wms_order_task 表统计任务数据 |
|
|
|
|
|
-- 只统计已完成的任务(status='已完成') |
|
|
|
|
|
-- source_type 包含"入库"两个字的是入库任务,其他都是出库任务 |
|
|
SELECT |
|
|
SELECT |
|
|
-- 累计任务总数(从任务历史表统计) |
|
|
|
|
|
(SELECT COUNT(*) FROM wms_task WHERE is_deleted = '0') AS totalTasks, |
|
|
|
|
|
|
|
|
-- 累计任务总数(历史所有已完成任务) |
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
) AS totalTasks, |
|
|
|
|
|
|
|
|
-- 月度作业总数(当月任务数) |
|
|
|
|
|
(SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) AS monthlyTasks, |
|
|
|
|
|
|
|
|
-- 月度作业总数(当月已完成任务数) |
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) AS monthlyTasks, |
|
|
|
|
|
|
|
|
-- 出库作业数(当月) |
|
|
|
|
|
(SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND task_type = 'OUTBOUND' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) AS outboundTasks, |
|
|
|
|
|
|
|
|
-- 出库作业数(当月已完成,source_type不包含"入库") |
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE (source_type NOT LIKE '%入库%' OR source_type IS NULL) |
|
|
|
|
|
AND MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) AS outboundTasks, |
|
|
|
|
|
|
|
|
-- 入库作业数(当月) |
|
|
|
|
|
(SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND task_type = 'INBOUND' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) AS inboundTasks, |
|
|
|
|
|
|
|
|
-- 入库作业数(当月已完成,source_type包含"入库") |
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE source_type LIKE '%入库%' |
|
|
|
|
|
AND MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) AS inboundTasks, |
|
|
|
|
|
|
|
|
-- 出库占比(百分比) |
|
|
-- 出库占比(百分比) |
|
|
CASE |
|
|
CASE |
|
|
WHEN (SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) > 0 |
|
|
|
|
|
|
|
|
WHEN (SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) > 0 |
|
|
THEN CAST( |
|
|
THEN CAST( |
|
|
(SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND task_type = 'OUTBOUND' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) * 100.0 / |
|
|
|
|
|
(SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) |
|
|
|
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE (source_type NOT LIKE '%入库%' OR source_type IS NULL) |
|
|
|
|
|
AND MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) * 100.0 / |
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) |
|
|
AS INT) |
|
|
AS INT) |
|
|
ELSE 0 |
|
|
ELSE 0 |
|
|
END AS outboundPercent, |
|
|
END AS outboundPercent, |
|
|
|
|
|
|
|
|
-- 入库占比(百分比) |
|
|
-- 入库占比(百分比) |
|
|
CASE |
|
|
CASE |
|
|
WHEN (SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) > 0 |
|
|
|
|
|
|
|
|
WHEN (SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) > 0 |
|
|
THEN CAST( |
|
|
THEN CAST( |
|
|
(SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND task_type = 'INBOUND' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) * 100.0 / |
|
|
|
|
|
(SELECT COUNT(*) FROM wms_task |
|
|
|
|
|
WHERE is_deleted = '0' |
|
|
|
|
|
AND MONTH(created_date) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_date) = YEAR(GETDATE())) |
|
|
|
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE source_type LIKE '%入库%' |
|
|
|
|
|
AND MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) * 100.0 / |
|
|
|
|
|
(SELECT COUNT(DISTINCT task_no) |
|
|
|
|
|
FROM wms_order_task |
|
|
|
|
|
WHERE MONTH(created_time) = MONTH(GETDATE()) |
|
|
|
|
|
AND YEAR(created_time) = YEAR(GETDATE())) |
|
|
AS INT) |
|
|
AS INT) |
|
|
ELSE 0 |
|
|
ELSE 0 |
|
|
END AS inboundPercent |
|
|
END AS inboundPercent |
|
|
|