装柜回归测试
This commit is contained in:
@@ -8571,7 +8571,7 @@ CREATE TABLE IF NOT EXISTS fl_loading_pick_operation (
|
||||
UNIQUE KEY uk_loading_pick_operation_id (operation_id),
|
||||
KEY idx_loading_pick_operation_task (pick_task_id, created_at),
|
||||
CONSTRAINT fk_loading_pick_operation_task FOREIGN KEY (pick_task_id) REFERENCES fl_loading_pick_task (id),
|
||||
CONSTRAINT chk_loading_pick_operation_action CHECK (action_type IN ('CLAIM', 'ASSIGN', 'REVIEW'))
|
||||
CONSTRAINT chk_loading_pick_operation_action CHECK (action_type IN ('CLAIM', 'ASSIGN', 'ITEM_CLAIM', 'ITEM_ASSIGN', 'REVIEW'))
|
||||
) ENGINE=InnoDB COMMENT='柜次PDA任务级幂等审计';
|
||||
|
||||
DROP TRIGGER IF EXISTS trg_loading_pick_review_before_update;
|
||||
@@ -8708,5 +8708,46 @@ USE baiyue_firstleg;
|
||||
ALTER TABLE fl_loading_pick_item
|
||||
ADD COLUMN IF NOT EXISTS release_mode VARCHAR(10) NULL COMMENT 'AUTO按比例释放,MANUAL按人工选择释放' AFTER item_status,
|
||||
ADD COLUMN IF NOT EXISTS release_location_ids JSON NULL COMMENT '人工选择释放库位ID;空数组表示明确释放0个' AFTER release_mode;
|
||||
-- PDA 多人协作:领取粒度由整柜任务下沉为单条拣货明细。
|
||||
CREATE TABLE IF NOT EXISTS fl_loading_pick_item_assignment (
|
||||
pick_item_id BIGINT UNSIGNED NOT NULL,
|
||||
assignee_id BIGINT UNSIGNED NOT NULL,
|
||||
assignee_name VARCHAR(64) NOT NULL,
|
||||
assigned_by BIGINT UNSIGNED NOT NULL,
|
||||
assigned_by_name VARCHAR(64) NULL,
|
||||
assignment_type VARCHAR(16) NOT NULL COMMENT 'CLAIMED/ASSIGNED',
|
||||
version INT UNSIGNED NOT NULL DEFAULT 0,
|
||||
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
updated_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3),
|
||||
PRIMARY KEY (pick_item_id),
|
||||
KEY idx_loading_pick_item_assignee (assignee_id, updated_at),
|
||||
CONSTRAINT fk_loading_pick_item_assignment_item FOREIGN KEY (pick_item_id) REFERENCES fl_loading_pick_item (id),
|
||||
CONSTRAINT chk_loading_pick_item_assignment_type CHECK (assignment_type IN ('CLAIMED', 'ASSIGNED'))
|
||||
) ENGINE=InnoDB COMMENT='PDA拣货明细领取与作业员分配';
|
||||
|
||||
ALTER TABLE fl_loading_pick_operation
|
||||
DROP CHECK IF EXISTS chk_loading_pick_operation_action,
|
||||
ADD CONSTRAINT chk_loading_pick_operation_action
|
||||
CHECK (action_type IN ('CLAIM', 'ASSIGN', 'ITEM_CLAIM', 'ITEM_ASSIGN', 'REVIEW'));
|
||||
|
||||
DROP PROCEDURE IF EXISTS assert_phase3_pda_item_assignment_schema;
|
||||
DELIMITER $$
|
||||
CREATE PROCEDURE assert_phase3_pda_item_assignment_schema()
|
||||
BEGIN
|
||||
IF (SELECT COUNT(*) FROM information_schema.tables
|
||||
WHERE table_schema='baiyue_firstleg' AND table_name='fl_loading_pick_item_assignment') <> 1
|
||||
OR (SELECT COUNT(*) FROM information_schema.statistics
|
||||
WHERE table_schema='baiyue_firstleg' AND table_name='fl_loading_pick_item_assignment'
|
||||
AND index_name='idx_loading_pick_item_assignee') <> 2
|
||||
OR (SELECT COUNT(*) FROM information_schema.referential_constraints
|
||||
WHERE constraint_schema='baiyue_firstleg'
|
||||
AND constraint_name='fk_loading_pick_item_assignment_item') <> 1 THEN
|
||||
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT='PDA明细级多人分配表创建失败';
|
||||
END IF;
|
||||
END$$
|
||||
DELIMITER ;
|
||||
CALL assert_phase3_pda_item_assignment_schema();
|
||||
DROP PROCEDURE IF EXISTS assert_phase3_pda_item_assignment_schema;
|
||||
|
||||
ALTER TABLE fl_inbound_pallet_allocation
|
||||
ADD COLUMN IF NOT EXISTS reservation_id BIGINT UNSIGNED NULL COMMENT '仓库预占资源唯一ID,A0共享场景用于区分托盘' AFTER location_code;
|
||||
|
||||
Reference in New Issue
Block a user