4.0 KiB
Warehouse 03 Cargo Spaces Implementation Plan
For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: Create the five-floor warehouse 03 dense-storage layout shown in the supplied diagram, with stable status values and lane-level group_coding.
Architecture: Add one safe, one-time SQL migration that seeds warehouse/roadway metadata, derives every valid coordinate from compact layout ranges, classifies equipment and mother-channel nodes, and inserts five floors inside a transaction. The migration refuses to overwrite existing warehouse 03 data and aborts unless all expected totals, status counts, coordinate uniqueness rules, and lane grouping rules pass.
Tech Stack: SQL Server T-SQL, dbo.bas_warehouse, dbo.bas_roadway, dbo.bas_cargo_space, RuoYi dictionary tables.
Task 1: Add the warehouse 03 layout migration
Files:
-
Create:
sql/20260714_warehouse_03_cargo_spaces.sql -
Step 1: Encode the valid diagram footprint
Create an in-memory layout from these inclusive column ranges. the_platoon is the diagram's horizontal 排 coordinate and the_column is its vertical 列 coordinate.
insert into @footprint(the_column, platoon_from, platoon_to)
values
(1,1,3),(2,1,3),(3,1,3),
(4,1,5),(4,9,13),
(5,1,7),(5,9,13),
(6,1,13),
(7,1,13),(8,1,13),(9,1,13),(10,1,13),(11,1,13),
(12,1,13),(13,1,13),(14,1,13),(15,1,13),(16,1,13),
(17,1,13),(18,1,13),(19,1,13),(20,1,13),(21,1,13),
(22,1,5),(22,9,13),(23,9,13),(24,9,13);
- Step 2: Classify all five floors
Use the eight-digit ID 03 + 排(2) + 列(2) + 层(2). Apply statuses in this precedence order:
case
when the_platoon = 7 and the_column in (5,21) then '7'
when the_platoon = 7 and the_column in (6,20) then '8'
when the_column in (7,13,19)
or (the_platoon = 7 and the_column between 7 and 19) then '9'
else '1'
end
Set this_cargo_area to zones 1-8 for ordinary storage coordinates. Leave equipment and mother-channel nodes unzoned.
- Step 3: Assign stable lane groups
For ordinary positions only, define a lane as the same warehouse, 排, floor, and one of the four storage bands 01-06, 08-12, 14-18, or 20-25. Use that lane's lowest existing cargo-space ID as group_coding; special nodes keep group_coding = NULL.
min(cargo_space_id) over (
partition by the_platoon, the_floor, channel_band
)
- Step 4: Seed metadata and insert atomically
Insert warehouse 03 as 密集库, roadway 1 as 密集库巷道, and dictionary values 7/8/9 when missing. Refuse to overwrite existing warehouse 03 cargo-space rows; insert all generated rows in one transaction.
Task 2: Verify the generated data
Files:
-
Verify:
sql/20260714_warehouse_03_cargo_spaces.sql -
Step 1: Run the migration against FTC25009-WMS
Run the SQL through the configured project SQL Server connection. Expected result: one committed transaction and 1295 warehouse 03 rows.
- Step 2: Verify totals and status distribution
select status, count(*)
from dbo.bas_cargo_space
where warehouse_id = '03'
group by status;
Expected: status 1 = 1030, status 7 = 10, status 8 = 10, status 9 = 245.
- Step 3: Verify IDs and lane grouping
select count(*) as invalid_ids
from dbo.bas_cargo_space
where warehouse_id = '03'
and cargo_space_id not like '03[0-9][0-9][0-9][0-9][0-9][0-9]';
select count(distinct group_coding) as lane_groups
from dbo.bas_cargo_space
where warehouse_id = '03' and status = '1';
Expected: invalid_ids = 0 and lane_groups = 240 (48 physical lanes on each of five floors).
- Step 4: Commit
git add docs/superpowers/plans/2026-07-14-warehouse-03-cargo-spaces.md sql/20260714_warehouse_03_cargo_spaces.sql
git commit -m "feat: add warehouse 03 cargo spaces"
Only perform this step when the user explicitly requests a Git commit.